La norma ISO 9126 define seis factores de calidad de software: funcionalidad, confiabilidad, usabilidad, eficiencia, mantenibilidad y portabilidad. Cada factor se compone de subcaracterísticas que pueden medirse directamente. La norma proporciona una estructura para especificar requisitos de calidad y evaluar productos de software.
2. DEFINICION
Enfatiza tres puntos importantes:
◦Los requisitos del software constituyen el
fundamento para medir la calidad. La carencia de
conformidad con los requisitos es carencia de
calidad.
◦Los estándares especificados definen un conjunto de
criterios de desarrollo que guían la manera en que el
software se somete al trabajo ingenieril. Si no se
siguen los criterios, la carencia de calidad será un
resultado casi seguro.
27/02/17 CALIDAD DE SOFTWARE 2
3. DEFINICION
◦Existe un conjunto de requisitos implícitos que a
menudo no se mencionan (por ejemplo,
mantenibilidad). Si el software se conforma con los
requisitos explícitos pero falla en atender los
requisitos implícitos, la calidad del software es
sospechosa.
27/02/17 CALIDAD DE SOFTWARE 3
4. MODELADO DE LA
CALIDAD DEL
SOFTWARE
Debido a que la calidad se compone, realmente, de
muchas características, la noción de calidad se
captura, usualmente, en un modelo que retrata las
características compuestas y sus relaciones.
Los modelos antiguos fueron McCall (1977) y
Boehm. (1978).
Ambos modelos son jerárquicos con refinamientos
sucesivos que culminan en primitivas que se
pueden medir directamente.
27/02/17 CALIDAD DE SOFTWARE 4
5. ISO 9126
La necesidad de comparar productos motiva el
trabajo para la definición de un modelo
estándar.
ISO 9126 entrega la definición de las
características y los procesos de evaluación de
calidad asociados para usar cuando se
especifican los requisitos y la evaluación de los
productos de software a lo largo de su vida útil.
27/02/17 CALIDAD DE SOFTWARE 5
6. ISO 9126
Define la Calidad del Software como: “La totalidad de características de
un producto de software que se manifiesta en su habilidad para
satisfacer necesidades establecidas o implícitas”.
Se relaciona con seis factores: funcionalidad, confiabilidad, eficiencia,
usabilidad, mantenibilidad y portabilidad.
27/02/17 CALIDAD DE SOFTWARE 6
7. ISO 9126
27/02/17 CALIDAD DE SOFTWARE 7
FUNCIONALIDAD
PORTABI
LIDAD
CONFIABI
LIDAD
MANTENIBI
LIDAD
USABI
LIDAD
EFICIENCIA
Las funciones requeridas
están disponibles en el
software?
Qué tan
confiable es el
software?
Es fácil de usar
el software?Qué tan
eficiente es el
software?
Qué tan fácil es
transferir el
software a otro
entorno?
Qué tan fácil
de modificar
es el
software?
8. ISO 9126
Funcionalidad: conjunto de atributos que soporta
la existencia de un conjunto de funciones y sus
propiedades específicas. Las funciones son tales
que satisfacen las necesidades implícitas o
establecidas.
Confiabilidad: El conjunto de atributos que soporta
la capacidad del software para mantener su nivel
de rendimiento bajo condiciones establecidas por
un periodo de tiempo establecido.
27/02/17 CALIDAD DE SOFTWARE 8
9. ISO 9126
Usabilidad: El conjunto de atributos que soporta el
esfuerzo necesario para el uso y la evaluación
individual de tal uso mediante un conjunto de
usuarios establecidos e implícitos.
Eficiencia: el conjunto de atributos que soporta las
relaciones entre el nivel de rendimiento del
software y el monto de recursos empleados, bajo
condiciones establecidas.
27/02/17 CALIDAD DE SOFTWARE 9
10. ISO 9126
Mantenibilidad: El conjunto de atributos que soporta el esfuerzo
necesario para realizar modificaciones especificadas
Portabilidad: El conjunto de atributos que soporta la habilidad del
software para transferirlo de un entorno a otro.
27/02/17 CALIDAD DE SOFTWARE 10
11. FUNCIONALIDAD
Se asocia con otros conceptos (1/2):
◦ Ajustabilidad: atributos del software que soportan la presencia y propiedad
de un conjunto de funciones para tareas específicas.
◦ Precisión: Atributos del software que soportan la provisión de resultados o
efectos correctos o acordados.
◦ Interoperabilidad: Atributos del software que soportan su habilidad para
interactuar con sistemas específicos.
27/02/17 CALIDAD DE SOFTWARE 11
12. FUNCIONALIDAD
Se asocia con otros conceptos (2/2):
◦ Conformidad: Atributos del software que hacen que el mismo se adhiera a
los estándares o convenciones relativas a la aplicación o a regulaciones de
tipo legal y prescripciones similares.
◦ Seguridad: Atributos del software que soportan su habilidad para prevenir
acceso no autorizado, ya sea accidental o deliberado, a los programas o
datos.
27/02/17 CALIDAD DE SOFTWARE 12
13. CONFIABILIDAD
Se asocia con otros conceptos (1/2):
◦ Madurez: Atributos del software que soportan la frecuencia de falla por
defectos en el software.
◦ Tolerancia a los defectos: Atributos del software que soportan su habilidad
para mantener un nivel especificado de rendimiento en caso de defectos del
software o de infracción de su interfaz especificada.
27/02/17 CALIDAD DE SOFTWARE 13
14. CONFIABILIDAD
Se asocia con otros conceptos (2/2):
◦Recuperabilidad: Atributos del software
que soportan la capacidad para restablecer
su nivel de rendimiento y recuperar los
datos directamente afectados en caso de
una falla y en el tiempo y esfuerzo
requeridos para ello.
27/02/17 CALIDAD DE SOFTWARE 14
15. PREDICCION DE LA
CONFIABILIDAD
Cuáles son las consideraciones para la predicción de cómo el sistema
operará en la práctica?
◦ Qué tan a menudo ocurre un defecto.
◦ Dificultad para determinar la severidad de un defecto.
◦ Variabilidad en la manera en que el usuario puede utilizar el sistema.
27/02/17 CALIDAD DE SOFTWARE 15
16. USABILIDAD
Según Boehm, es la magnitud para la cual el producto es conveniente y
práctico de usar.
Es más que la amigabilidad con el usuario.
Requiere aproximaciones simples a la recolección de datos.
27/02/17 CALIDAD DE SOFTWARE 16
17. USABILIDAD
Se asocia con los siguientes términos:
◦Habilidad de comprensión: Atributos del software
que soportan los esfuerzos del usuario por reconocer
los conceptos lógicos y su aplicabilidad.
◦Habilidad de aprendizaje: Atributos del software que
soportan los esfuerzos del usuario por aprender su
aplicación.
◦Operabilidad: Atributos del software que soportan
los esfuerzos del usuario para la operación y control
del software.
27/02/17 CALIDAD DE SOFTWARE 17
18. POSIBLES MÉTRICAS DE
LA USABILIDAD
Nivel de entrada, habilidad de aprendizaje, manipulabilidad.
Efectividad en las tareas.
Eficiencia temporal.
Periodo productivo.
Eficiencia relativa al usuario.
27/02/17 CALIDAD DE SOFTWARE 18
19. EFICIENCIA
Comportamiento del tiempo: Atributos del
software que soportan los tiempos de
respuesta y procesamiento y las tasas de
rendimiento total en desempeño de sus
funciones.
Comportamiento de los recursos: Atributos del
software que soportan la cantidad de recursos
empleados y la duración de ese uso en el
desempeño de sus funciones.
27/02/17 CALIDAD DE SOFTWARE 19
20. PORTABILIDAD
Se asocia con los siguientes términos (1/2):
◦Adaptabilidad: Atributos del software que soportan
la oportunidad para su adaptación a los diferentes
entornos especificados sin la aplicación de otras
acciones o medios diferentes a los provistos para
este propósito en el software considerado.
◦Instalabilidad: Atributos del software que soportan
el esfuerzo requerido para instalar el software en un
entorno especificado.
27/02/17 CALIDAD DE SOFTWARE 20
21. PORTABILIDAD
Se asocia con los siguientes términos (2/2):
◦Conformidad: Atributos del software que
hacen que éste se adhiera a estándares o
convenciones relativas a la portabilidad.
◦Reemplazabilidad: Atributos del software que
soportan la oportunidad y el esfuerzo
empleándolo en lugar de otro software
especificado en el entorno de ese software.
27/02/17 CALIDAD DE SOFTWARE 21
22. TASA DE PORTABILIDAD
Portabilidad = 1 – (ET/ER)
◦ET son los recursos necesarios para mover la
aplicación al nuevo entorno.
◦ER es una medida de los recursos requeridos
para crear el sistema para el entorno
residente.
27/02/17 CALIDAD DE SOFTWARE 22
23. MANTENIBILIDAD
Se asocia con los siguientes conceptos (1/2):
◦Analizabilidad: Atributos del software que soportan
el esfuerzo requerido para el diagnóstico de
deficiencias o causas de falla, o para la identificación
de las partes que se deben modificar.
◦Cambiabilidad: Atributos del software que soportan
el esfuerzo requerido para la modificación, remoción
de fallas o para cambios en el entorno.
27/02/17 CALIDAD DE SOFTWARE 23
24. MANTENIBILIDAD
Se asocia con los siguientes conceptos (2/2):
◦Estabilidad: Atributos del software que
soportan el riesgo de un efecto o
modificación inesperados.
◦Habilidad de Pruebas: Atributos del software
que soportan el esfuerzo necesario para
validación del software modificado.
27/02/17 CALIDAD DE SOFTWARE 24
25. ASPECTOS DEL
MANTENIMIENTO DE SOFTWARE
Tipos de empresas de mantenimiento:
◦ Organizaciones de soporte al cliente.
◦ Organizaciones de servicios de campo.
◦ Equipos de mantenimiento en sitio.
Otros aspectos a considerar:
◦ Administración del mantenimiento.
◦ Mantenimiento de manuales de usuario.
◦ Litigios asociados con defectos.
27/02/17 CALIDAD DE SOFTWARE 25
26. ASPECTOS DEL
MANTENIMIENTO DE SOFTWARE
Factores que incrementan los costos de mantenimiento:
◦ Tamaño del software.
◦ Fecha de realización del mantenimiento relativa al tiempo de
funcionamiento.
◦ Complejidad en el software.
◦ Defectos latentes.
27/02/17 CALIDAD DE SOFTWARE 26
27. MEDICIÓN DE LOS ASPECTOS
DE CALIDAD: DEFECTOS
La medición de muchos de los factores de calidad
descritos en los modelos de calidad es dependiente
de aspectos subjetivos.
Para suprimir la variabilidad de esos aspectos, se
debe tener conciencia de la necesidad de
consistencia.
Las medidas de calidad del software que usan el
enfoque de descomposición requieren planeación
cuidadosa y recolección de datos para conservar
bajos los extracostos involucrados.
27/02/17 CALIDAD DE SOFTWARE 27
28. MEDICIÓN DE LOS ASPECTOS
DE CALIDAD: DEFECTOS
Una solución es mirar la calidad como la carencia
de defectos y así concentrarnos en el registro de
errores, faltas y fallas.
Los defectos se pueden clasificar como defectos
conocidos y defectos latentes.
Una medida estándar de hecho de la calidad del
software es la densidad de defectos.
◦DD = # Defectos conocidos / Tamaño del producto.
Esta métrica no incluye defectos latentes.
27/02/17 CALIDAD DE SOFTWARE 28
29. OTROS CONTEOS DE
DEFECTOS
Fallas post entrega.
Faltas residuales (faltas descubiertas después de la
entrega).
Todas las faltas conocidas.
El conjunto de faltas descubiertas después de un
punto fijo arbitrario en el ciclo de vida del software
(por ejemplo después de una prueba).
Densidad de faltas o tasa de fallas.
27/02/17 CALIDAD DE SOFTWARE 29