Control de Calidad del Software - ldc.usb.vemgoncalves/IS2/sd07/clase10.pdf · Aseguramiento de la...
Transcript of Control de Calidad del Software - ldc.usb.vemgoncalves/IS2/sd07/clase10.pdf · Aseguramiento de la...
Referencias básicas
Ingeniería de software. Un enfoque práctico. Pressman, R. Quinta edición. Mc. Graw Hill 2002
Ingeniería de software. Sommerville, I. Séptima edición. Addison Wesley 2005
• Trata de los métodos que aseguran ciertos estándares preestablecidos en varios aspectos del SW y su desarrollo
• Calidad de Diseño: Se ocupa generalmente de las características especificadas por un diseñador para un elemento particular.
• Calidad de Conformidad: Se ocupa del gradocon el cual las especificaciones se cumplen durante el proceso de desarrollo.
Calidad
Aseguramiento de la Calidad de Software - SQA
• Serie de actividades que tienen que ser implementadas a través del proceso de desarrollo de software
• Producir un conjunto de actividades para asegurar alta calidad de producto
• Realizar pruebas de aseguramiento de calidad
• Usar métricas para desarrollar estrategias que mejorarán el proceso de software
SQA
• Conformidad a las necesidades funcionales y de rendimiento, a los estándares de desarrollo y a las características implícitas requeridas de todo el software que se ha desarrollado profesionalmente
SQA - Actividades
• Preparación del plan SQA (IEEE)• Desarrollo de la descripción del proceso
de software• Revisión de software• Actividades de verificación • Documentación• Reporte de no conformidad
Control de Calidad de Software
• Inspecciones, revisiones y pruebas realizadas durante el proceso de software de forma de asegurar que los productos desarrollados cumplen los estándares establecidos.
Revisiones de software
• 50-60% de todos los errores pueden ser atribuidos a diferentes actividades de diseño emprendidas durante el proceso de desarrollo de software
• En el 75% de los casos, introducir un proceso formal de revisión permite la detección temprana de los defectos del diseño
Confiablidad
• Considere un programa con una confiabilidad de 0.90 sobre ocho horas de procesamiento El programa funcionará de manera correcta cada 90 de 100 veces por cada 8 horas de ejecución
Medidas de Confiablidad y Disponibilidad
• Confiablidad– Tiempo promedio entre falla (MTBF) =
tiempo promedio de fallar (MTTF) + tiempo promedio de reparar (MTTR)
• Disponibilidad: Probabilidad que un paquete de SW esté trabajando según los requerimientos en un punto dado del tiempo– Disponibilidad = (MTTF/MTBF) *100%
Seguridad del Software
• Operación de SQA• Identifica y determina zonas peligrosas
potenciales que puede causar fallas del sistema
– Proceso de modelación y análisis donde las amenazas potenciales se identifican y se agrupan basándose en lo crítico y el riesgo
– Las técnicas de análisis determinan su severidad y posibilidad de ocurrencia
– Determinación de los requerimientos de seguridad
Diferencias
• Confiabilidad: Análisis estadístico de la calidad para localizar la posibilidad de falla de software. No hay contratiempos.
• Seguridad: diversas maneras en que las fallas terminan en contratiempo.
Sistemas de Aseguramiento de Calidad
• Un sistema de aseguramiento de calidad es el nombre dado a una estructura total que incluye las responsabilidades, procesos, procedimientos y recursos que ayudan a implementar una función de administración de la calidad dentro de una organización
Sistemas de Aseguramiento de Calidad
• ISO 9000 fue creada por la Organización Internacional de Estándares y se ocupa de los sistemas de aseguramiento de calidad que se pueden aplicar a los diversos negocios y servicios.
Sistemas de Aseguramiento de Calidad
• Una compañía que desee registrarse en el modelo de aseguramiento de calidad definido en ISO 9000 debe permitir que un auditor neutral examine sus sistemas y operaciones de calidad, y el auditor debe certificar que están en conformidad con los estándares ISO
Sistemas de Aseguramiento de Calidad
• ISO 9000 no indica cómo los diferentes elementos del sistema de calidad tienen que ser implementados por una organización.
• La organización debe diseñar e implementar los sistemas de aseguramiento de calidad que cumplen con los estándares fijados por ISO
Sistemas de Aseguramiento de Calidad
• ISO 9001 tiene elementos que aplican a la IS.
• Requiere que una organización de software cumpla 20 especificaciones para un sistema de aseguramiento de calidad efectivo
Sistemas de Aseguramiento de Calidad
• Requerimientos de ISO– Control de diseño y proceso– Técnicas estadísticas– Responsabilidad de gerencia– Documentación y control de data– Entrenamiento– Identificación y seguimiento de producto– Pruebas e inspección; Prevención y corrección de defectos– Servicios– Control de registros de calidad; calidad del sistema; verificación de
calidad– Proceso de revisión de contrato
Modelo de Capacidad de Madurez - CMM
• El Instituto de Ingeniería de Software (SEI) en la Universidad de Carnegie-Mellon desarrolló un marco de trabajo del proceso de madurez
• CMM consiste de el Modelo y un documento de prácticas claves.
• Posee 5 niveles
Modelo de Capacidad de Madurez - CMM
• Nivel I – Iniciado• Nivel II – Repetible: Procesos
principales de la administración de proyecto requeridos para mantener el control sobre costo, cronograma y funcionalidad
Modelo de Capacidad de Madurez - CMM
• Nivel III – Definido: Documentación, estandarización e integración del proceso de software para las operaciones de administración e ingeniería en todos los departamentos
Modelo de Capacidad de Madurez - CMM
• Nivel IV – Administrado: Comparación de los datos detallados del proceso de SW y de calidad de producto. Se entienden cuantitativamente y después se controlan