Professional Documents
Culture Documents
SEMANA 1
Conceptos y herramientas
bsicas de calidad
Todos los derechos de autor son de la exclusiva propiedad de IACC o de los otorgantes de sus licencias. No est
permitido copiar, reproducir, reeditar, descargar, publicar, emitir, difundir, poner a disposicin del pblico ni 1
ESTE
utilizarDOCUMENTO
los contenidos paraCONTIENE LAdeSEMANA
fines comerciales 1
ninguna clase.
2
ESTE DOCUMENTO CONTIENE LA SEMANA 1
NDICE
3
ESTE DOCUMENTO CONTIENE LA SEMANA 1
NDICE DE FIGURAS
Figura 1: Criterios para la operacin del producto ............................................................................ 11
Figura 2: Criterios para la revisin del producto ............................................................................... 12
Figura 3: Criterios para la transicin del producto ............................................................................ 12
Figura 4: Modelo de Bohm .............................................................................................................. 14
Figura 5: Comparacin entre McCall y Bohm .................................................................................. 16
Figura 6: Elementos grficos de un diagrama de flujo. ..................................................................... 16
Figura 7: Ejemplo de un diagrama de flujo ....................................................................................... 17
Figura 8: Diagrama Ishikawa (Causa-Efecto) .................................................................................... 18
Figura 9: Ejemplo de aplicacin del modelo ...................................................................................... 18
Figura 10: Variacin y detalle aplicado en el modelo........................................................................ 19
Figura 11: Categorizacin motivos de prdidas ................................................................................ 20
Figura 12: Aplicacin del principio de Pareto .................................................................................... 21
4
ESTE DOCUMENTO CONTIENE LA SEMANA 1
CONCEPTOS Y HERRAMIENTAS BSICAS DE CALIDAD
OBJETIVOS ESPECFICOS
Comprender los aspectos fundamentales del concepto de calidad y su importancia segn
la perspectiva de la calidad del software.
Comprender los modelos clsicos de calidad del software.
Utilizar las distintas herramientas bsicas de calidad en un proceso de software.
INTRODUCCIN
En general, quienes desarrollan productos o brindan servicios a terceros compiten en diferentes
mercados y focalizan sus esfuerzos en satisfacer la demanda de quienes estn dispuestos a
adquirirlos por un determinado valor econmico. En el mercado de las tecnologas de informacin,
ocurre exactamente lo mismo y, por tal razn, la calidad del producto de software se ha
transformado en un diferenciador que determina si el esfuerzo invertido realmente se capitalizar
en una solucin til y valorada en el entorno donde se utilice. Para lograrlo, es necesario entender
los conceptos que fundamentan la calidad vista desde la perspectiva del proceso de desarrollo de
software, y tambin, del producto de software como tal. Para poder realizarlo, es necesario
disponer de herramientas (tcnicas y mtodos) que faciliten la medicin y control de la calidad
durante el ciclo de desarrollo y uso posterior.
En la actualidad, existe una gran cantidad de modelos de calidad orientados a mejorar tanto el
proceso y el producto de software. En esta semana se revisarn algunos de los estndares ms
utilizados en la actualidad.
5
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1. FUNDAMENTOS DE LA CALIDAD
Al referirse a calidad, se pueden encontrar bastantes definiciones en la literatura y otras fuentes
de informacin. Sin embargo, en forma natural se relaciona con una serie de caractersticas
propias que permiten identificar un mayor valor en un producto o servicio respecto a otros
similares.
Lo anterior habla de caractersticas que bien podran clasificarse como subjetivas, porque se
construyen sobre la base de percepciones y no por algn criterio medible. Siguiendo la idea del
ejemplo anterior, la percepcin de dos personas respecto a la calidad del auto puede ser distinta.
Uno puede preferir un auto desde el punto de vista funcional, y la otra persona guiarse por los
accesorios que pueda o no tener. Por tanto, la calidad vista de esa manera no necesariamente
debe ser la misma y va a depender de la informacin disponible que tenga cada uno para evaluar,
o tal vez de las expectativas que espera satisfacer.
En ambos casos el concepto es abstracto y subjetivo, por lo cual es necesario establecer criterios
sobre la base de estndares, para poder cuantificar o medir en forma objetiva el grado de
calidad en un producto o la prestacin de un servicio determinado.
Al leer cada una de estas definiciones, podemos pensar que la segunda de ellas parece ser ms
clara que las otras, o al menos pareciera ser la ms concreta. Sin embargo, como se mencion
anteriormente, al referirnos a la calidad de un producto o servicio, resultar subjetivo
dependiendo de cmo sea evaluada. Asimismo, la primera definicin abre la posibilidad de
1
http://goo.gl/e5NvDg
6
ESTE DOCUMENTO CONTIENE LA SEMANA 1
determinar ciertos aspectos, propiedades o caractersticas que son medibles o cuantificables. Por
consiguiente, dan una idea de precisar qu aspectos se van a medir y con qu criterios se van a
hacer.
Ahora bien, cuando se desarrolla un producto de software, uno de los factores que determina su
calidad es el cumplimiento de las expectativas declaradas antes de su desarrollo. En este caso, se
puede establecer que la definicin de los requerimientos funcionales y de sistema es la que
ayudar a determinar el grado de adherencia del producto de software respecto al resultado final.
Esto es concluyente, categrico (ISO 9126-2001).
Por ejemplo, un sistema de recaudacin para las cajas de un supermercado debe ser preciso,
realizar bien los clculos, tener inventariados todos los productos y, adems, tener un tiempo de
respuesta rapidsimo. De qu servira un sistema que demora en buscar los productos y realizar
las operaciones en forma lenta? Si bien se puede llegar al mismo resultado, el impacto en la
atencin de los clientes es relevante y de inters para los administradores del supermercado. En
este caso se dir que un sistema de recaudacin es de calidad si satisface ampliamente las
necesidades de la empresa, en funcin de sus clientes.
7
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Grado con que un sistema, componente o proceso cumple con los requerimientos
especificados y las necesidades o expectativas del cliente o usuario (definicin sobre la base
del estndar IEEE, Std. 610-1990).
Estas definiciones sealan que para un sistema de software el concepto de calidad debe definirse
previamente para poder medirlo en forma posterior. La pregunta que se puede plantear en virtud
de lo anterior sera: quin o quines realizarn estas mediciones? La respuesta es simple: todos
los involucrados en el proceso de desarrollo del software, por ejemplo, ingenieros (analistas,
desarrolladores, testers) y usuarios.
Es importante destacar que el software tiene caractersticas especiales, las cuales se pueden citar
a continuacin (Pressman, 2010):
Por esta razn, si producto del proceso de calidad empleado baja la tasa de errores y, adems, la
solucin cumple con las expectativas definidas junto al usuario, entonces, esta forma de hacer
software puede repetirse bajando costos y asegurando el cumpliendo plazos.
8
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1.3. CALIDAD TOTAL
Anteriormente se entregaron conceptos que definen la calidad en su amplio contexto de
aplicacin y, particularmente, en la industria del desarrollo de software. Respecto a esta, se
identifica lo siguiente:
Sin embargo, el concepto de calidad total es mucho ms que lo anterior. Corresponde a una
estrategia corporativa que se transforma en una filosofa de hacer las cosas y su foco objetivo es la
satisfaccin del cliente. Cabe sealar respecto a esto que un cliente puede ser interno o externo a
una organizacin.
Se define como cliente interno cuando el resultado de un trabajo desarrollado por un rea
especfica es el insumo que requiere otra rea (cliente interno) para realizar sus actividades. Por
ejemplo, en una empresa de la industria bancaria, el rea comercial es un cliente interno de las
reas de apoyo, como es el rea informtica. Por qu? Porque el rea comercial requiere
informacin para preparar el lanzamiento de nuevos productos e identificar un nuevo mercado
objetivo, por nombrar algunos casos. Entonces, es el rea informtica la que provee esa
informacin (proveedor interno). Dicho lo anterior, se entiende que el cliente externo a una
organizacin es el que ya se conoce, y sobre el cual se hacen los mayores esfuerzos para satisfacer
sus requerimientos de productos o servicios.
Continuando con la idea de calidad total, se puede establecer que no se refiere solamente al
producto o servicio que desarrolla la organizacin, sino que ms bien cubre todos los aspectos y
actividades organizacionales y es transversal a las jerarquas o jefaturas. Es decir, desde un gerente
hasta el empleado de menor rango estn alineados y comprometidos con los objetivos de la
empresa, generando todos los procesos y herramientas para desarrollar un producto o servicio de
calidad para sus clientes, no solamente en lo que a software se refiere. Todos sus procesos
internos son gobernados a travs de mecanismos de calidad donde la suma de todas las partes
asegura la produccin de un producto o servicio de calidad.
9
ESTE DOCUMENTO CONTIENE LA SEMANA 1
2.1. MODELO DE CALIDAD DE MCCALL
El modelo de McCall describe la calidad como la integracin de relaciones jerrquicas entre
factores, criterios y mtricas
El modelo se organiza sobre la base de tres grandes conceptos, donde en cada uno de ellos se
definen factores de calidad (Piattini, Garca, Garca, Ignacio y Pino, 2012):
10
ESTE DOCUMENTO CONTIENE LA SEMANA 1
El concepto de calidad abarca, entonces, tres aspectos en un producto de software: (1) operacin
del producto, (2) revisin del producto y (3) transicin del producto. Y es a partir de estos
conceptos desde donde se definen las caractersticas claves que debe tener un producto de
software de calidad.
El factor de calidad se compone de una serie de atributos que se denominan criterios de calidad,
los cuales son medidos a travs de mtricas utilizadas para cuantificarlos. A continuacin se
muestra un detalle de criterios en cada uno de los factores de calidad indicados.
11
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Figura 2: Criterios para la revisin del producto
Fuente: material elaborado para esta asignatura (J. Reyes, 2015)
Sobre la base de lo anterior, el modelo permite cuantificar la calidad del producto, haciendo lo
siguiente:
12
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Evaluacin de mtricas
Correlacin de las mtricas a un conjunto de guas que cualquier equipo de desarrollo
podra seguir
Desarrollo de las recomendaciones para la coleccin de mtricas
Adems, sindicar los valores deseables para los criterios, donde es necesario emplear datos
histricos, el promedio en la industria, con los cuales se debe establecer los valores finales y otros
intermedios o predictivos en cada perodo de medicin durante el desarrollo, as tambin, valores
mnimos aceptables.
Durante el desarrollo hay que establecer mtricas, analizar sus resultados y sensibilizar los valores
registrados. Posteriormente, finalizado el proyecto, realizar una comparacin de medidas
predictivas utilizadas y ver si se pueden tomar como indicadores de los valores finales.
Este modelo tiene por objeto la calidad del software, para que este:
13
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Es un modelo que enriquece al de McCall, pero es muy similar, ya que posee una jerarqua de
caractersticas y se basa en un amplio rango de caractersticas. Incorpora 19 criterios que incluyen
caractersticas de performance del hardware.
Caractersticas de
Utilidad, mantenimiento, portabilidad
alto nivel
Caractersticas de
Portabilidad, fiabilidad, eficiencia,
Modelo de Bohm nivel intermedio
usabilidad, capacidad de prueba,
(factores de comprensibilidad, flexibilidad
calidad)
Segundo nivel
14
ESTE DOCUMENTO CONTIENE LA SEMANA 1
o Ingeniera social: se refiere al entendimiento y aceptacin del sistema por parte
del usuario solicitante de la solucin.
o Pruebas: corresponde al conjunto de evaluaciones que se realiza sobre el
software, una vez desarrollado. El objetivo es validar que la funcionalidad
corresponda a lo especificado previamente.
o Facilidad de entendimiento: se refiere a la claridad con que fue escrito el cdigo
fuente del software, es decir, la lgica asociada es fcil de entender.
o Entendibilidad: es la claridad de la lgica del cdigo fuente de una pieza de
software.
o Modificabilidad: este atributo del software facilita la incorporacin de
modificaciones durante la vida til del producto. Asimismo, est directamente
relacionado con el atributo de entendibilidad, debido a que si el cdigo es
entendible, podr ser modificado sin que los cambios produzcan efectos
negativos.
Tercer nivel
El modelo tiene como finalidad verificar que el producto de software cumpla lo siguiente:
En la siguiente figura aparece una breve comparacin entre los modelos de McCall y Bohm.
15
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Figura 5: Comparacin entre McCall y Bohm
Fuente: material elaborado para esta asignatura (J. Reyes, 2015).
Dada su naturaleza, facilitan la comunicacin entre los profesionales que desarrollan el software y
aquellos que se especializan en el proceso de negocio. Idealmente se deben utilizar para
solucionar problemas complejos y extensos.
Para realizar una representacin de un problema a travs de un diagrama de flujo, ser necesario
conocer la nomenclatura que define este mtodo. Algunos de los smbolos utilizados son los
presentados en la siguiente tabla. Se sugiere investigar otros smbolos y su utilizacin.
Toma de decisin o
ramificacin ante un
evento
Figura 6: Elementos grficos de un diagrama de flujo.
Fuente: material elaborado para esta asignatura (J. Reyes, 2015).
16
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1) Escribirse desde arriba y hacia abajo.
2) Los smbolos se unen con lneas, las cuales tienen una flecha indicando el sentido del flujo
(idealmente trazarlas en forma vertical u horizontal).
3) Evitar el cruce de lneas, para no ensuciar el dibujo.
4) No deben quedar lneas hurfanas. Esto es, lneas de flujo sin conectar.
5) Todo texto en los smbolos debe representar un verbo (asignar, contar, validar, calcular).
6) Todo smbolo puede tener ms de una lnea de entrada, a excepcin del smbolo final.
7) Solamente los smbolos de decisin pueden tener ms de una lnea de salida (usualmente
dos).
17
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Este diagrama se usa para mostrar la relacin entre distintos factores que pueden llegar a
determinar un evento determinado. Idealmente se sugiere su utilizacin para analizar y discutir
entre varios participantes una problemtica determinada.
Por ejemplo, revise la siguiente situacin, en que una empresa forestal analiza las principales
causas y efectos en su modelo productivo para poder mitigar los daos ambientales que se
desprenden de su funcionamiento y que, por cierto, provocan un problema legal segn las normas
ambientales vigentes.
18
ESTE DOCUMENTO CONTIENE LA SEMANA 1
En el ejemplo anterior, las causas principales que se analizan corresponden a la maquinaria
utilizada, los procedimientos productivos que se utilizan, los controles internos vigentes y la
calidad de los materiales que se utilizan. Tambin se podran considerar causas secundarias, por
ejemplo, las siguientes:
Mantenimiento
Al analizar los aspectos asociados al uso de maquinaria, hay varios temas que considerar. Uno de
ellos sera revisar si la poltica actual para el mantenimiento es la adecuada segn las normas
medioambientales vigentes.
De esta forma, si se revisaran cada una de ellas, se lograra establecer un mapa de causas y
efectos, los cuales podran ser modificados (en este caso atendiendo las causas) para mejorar
aquello que es exigido por las leyes ambientales, evitando las demandas, multas y acciones que se
desprenden al no ser cumplidas.
19
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Para aplicar este principio, se deben ejecutar las siguientes actividades:
Un ejemplo sencillo:
En una planta de produccin industrial han ocurrido una serie de interrupciones, las cuales
obedecen a una serie de eventos no deseados. Luego de hacer un registro estadstico de estos, se
obtuvo la siguiente tabla de datos, los cuales se presentan en la Figura 10.
Las categoras de eventos se muestran en la columna prdida. La frecuencia de cada uno de ellos
es presentada en la columna frecuencia. Asimismo, en la columna %Total, se muestra el
porcentaje asociado a cada evento, mientras que en la columna %Acumulado se suma cada uno de
los porcentajes indicados para cada evento.
20
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Aplicacin principio de Pareto
Si se considera como punto de quiebre un 70% del acumulado (ver el crculo rojo), se puede
establecer que la principal causa de las prdidas en la produccin es el fallo de UPS, microcortes y
cada de sistemas, que es donde se debiera invertir el esfuerzo para mejorar el proceso
productivo.
El proceso se encuentra bajo control estadstico cuando se producen variaciones por motivos
aleatorios. Mientras que el proceso se encuentra fuera del proceso estadstico cuando las
variaciones son producto de motivos no aleatorios.
De cada proceso que se requiere medir es necesario registrar muestras peridicas de una o ms
variables de anlisis. De estas ltimas, se registra un porcentaje de las piezas con fallas en el
intervalo de tiempo definido. Por ejemplo, mediciones cada 6 horas registran 3 piezas con fallas
21
ESTE DOCUMENTO CONTIENE LA SEMANA 1
usualmente. En este caso se debe considerar el lapso de tiempo y la cantidad total de piezas
monitoreadas en ese perodo.
Ajustando estas definiciones a la produccin de software, las piezas con fallas corresponderan,
por ejemplo, a las piezas de software que registran errores en su etapa de desarrollo, antes de
pasarlas a la etapa de pruebas o testing. Asimismo, una vez puestas en la etapa de pruebas, se
puede precisar otro tipo de mediciones.
Al igual que las anteriores herramientas, el grfico estadstico permite identificar una tendencia y
sobre esa base ajustar para mejorar los procesos. Por ejemplo, si en la etapa de desarrollo se
considera aceptable diez errores de programacin por programa, si se quisiera mejorar aun ms,
se podra establecer que el mximo nmero de errores fuera cinco, y medirlos posteriormente,
habiendo atendido tambin las causas que los generaban.
22
ESTE DOCUMENTO CONTIENE LA SEMANA 1
COMENTARIO FINAL
La calidad en la produccin de software es de vital importancia, dado que ayuda a las empresas a
cumplir con fluidez sus objetivos estratgicos, maximizar el costo de sus inversiones en la
implantacin de nuevos sistemas, mejorar el apoyo a las reas en el desempeo de sus funciones,
brindar mejor atencin a sus clientes finales y disponer en forma oportuna de la informacin
necesaria para la mejor gestin y planificacin de los recursos.
El contenido de esta semana entrega una visin del concepto de calidad del software que se debe
aplicar en las organizaciones que lo utilizan para mejorar la productividad en sus procesos de
negocio especficos.
23
ESTE DOCUMENTO CONTIENE LA SEMANA 1
REFERENCIAS
Piattini, M.; Garca F.; Garca, I. y Pino, F. (2012). Calidad de sistemas de informacin. Mxico:
International Organization for Standardization. (2001). ISO 9126 Software engineering. Ginebra,
Suiza: ISO.
Pressman, R. (2010). Ingeniera de software, un enfoque prctico. 7.a ed. Espaa: McGraw Hill
Interamericana S. A.
Futrell, R.; Shafer, D. y Shafer, L. (2002). Quality Software Project Management. EE.UU.: Prentice
Hall.
IACC (2015). Conceptos y herramientas bsicas de calidad. Modelos y Control de Calidad. Semana
1.
24
ESTE DOCUMENTO CONTIENE LA SEMANA 1
25
ESTE DOCUMENTO CONTIENE LA SEMANA 1