75.48 – Calidad en el desarrollo de sistemas – Prácticamaterias.fi.uba.ar/7548/Clase1.pdf ·...
Transcript of 75.48 – Calidad en el desarrollo de sistemas – Prácticamaterias.fi.uba.ar/7548/Clase1.pdf ·...
75.48 – Calidad en el desarrollo
de sistemas – Práctica
Herramientas para el aseguramiento y control de la
calidad
Agenda
Definiciones
Medir la calidad
Evolución de la calidad
SQA
Presentación del modelo propuesto
¿Qué es calidad?
Es una cualidad y propiedad inherente de las cosas, que permite que éstas sean comparadas con otras de su misma especie.
La definición de calidad nunca puede ser precisa, ya que se trata de una apreciación subjetiva y dependiente del contexto.
La calidad tiene un costo asociado por hacerla (inversión) y otro asociado por no hacerla (pérdida).
Definiciones de calidad
Es la suma de todos aquellos aspectos o características de un producto o servicio que influyen en su capacidad de satisfacer las necesidades, expresadas o implícitas (ISO 8402).
Grado con el cuál un cliente o usuario percibe que el SW satisface sus expectativas (IEEE 729-83).
”Calidad es cumplimiento de requisitos” (Philip Crosby).
“Calidad es adecuación al uso del cliente” (Joseph Juran).
“Calidad es satisfacción del cliente” (William Edwards Deming).
Calidad “interna” y “externa”
Calidad externa: es lo que perciben los usuarios del sistema. Una interfaz de usuario lenta y poco intuitiva es un ejemplo de baja calidad externa.
Calidad interna: se refiere a aquellos aspectos que normalmente no son visibles al usuario, pero que tienen un profundo efecto en la mantenibilidad del sistema. Cosas como consistencia del diseño del sistema, cobertura de pruebas, legibilidad del código, refactorización, etc.
Un sistema con alta calidad interna puede, aun así, tener una baja calidad externa. Pero un sistema con baja calidad interna rara vez
tendrá buena calidad externa.
Como medir la calidad
Densidad de bugs (defectos detectados durante el testing).
Tiempo entre fallas (tiempo transcurrido entre una falla reportada y la siguiente).
Cantidad de fallas (defectos detectados por el usuario/cliente en producción).
Satisfacción del usario/cliente.
ISO – INTERNATIONAL ORGANIZATION FOR STANDARIZATION 9126
Evolución de la calidad
Control de calidad
• Detectar defectos
• Verifica el producto
Aseguramiento de la calidad
• Prevenir defectos
• Asegurar que la calidad es la que debe ser
Calidad total
• Mejora continua
• Satisfacción del cliente
• Aplica al producto y a la organización
Calidad total
Filosofía, cultura, estrategia o estilo de
gerencia de una empresa según la cual todas
las personas en la misma, estudian, practican,
participan y fomentan la mejora continua de
la calidad – Kaoru Ishikawa
QC vs QA
QC ◦ Orientado al producto.
◦ Detecta.
◦ Actividades relacionadas a la evaluación de un producto.
QA ◦ Orientado al proceso.
◦ Previene.
◦ Actividades relacionadas a la creación y mejora de procesos asociados al desarrollo y mantenimiento de un producto.
SQA – Definición
Conjunto de tareas, actividades y acciones
llevadas a cabo para proveer a la gerencia
de información objetiva y a tiempo,
orientada a fundamentar las decisiones.
Realizadas en forma independiente del
grupo de desarrollo de software.
SQA – Service Quality Assurance
Perspectivas de la calidad
◦ Producto
◦ Proceso
◦ Contexto de negocio
Calidad en el contexto de negocio valor agregado al negocio
◦ Calidad en planificación
◦ Calidad en desarrollo
◦ Calidad donde me de mayor retorno de la inversión
SQA – Implementación
Definir las metas y objetivos de SQA
Alinear las metas y objetivos generales con los objetivos de negocio. Tener en cuenta los riesgos del negocio.
Contratar a profesionales
Establecer procesos efectivos de SQA Focalizarse en los siguientes objetivos: ◦ Ayudar en la definición de procesos y en la revisión de los
mismos
◦ Determinar la adherencia a los procesos y procedimientos.
◦ Proveer información a la gerencia para tomar decisiones.
SQA – Terminología
Proceso: Conjunto de actividades que se llevan adelante para lograr un objetivo determinado. En general se prolonga en el tiempo y tiene estados.
Actividad: Conjunto de tareas que se llevan adelante para lograr un objetivo determinado. Empieza y termina, no se prolonga en el tiempo.
Procedimiento: definición de una forma ordenada de llevar adelante una actividad.
Asset (activo): son los elementos (programas, planillas, documentos, hardware, etc.) con que los roles realizan las actividades.
Modelo propuesto DESCRIPCIÓN
Describe la actividad para la cual se escribe el procedimiento.
CONDICIONES DE ENTRADA
Condiciones que deben cumplirse para que se de inicio a la actividad en cuestión.
ENTRADAS
Elementos de entrada a la actividad.
ROLES
Roles que participan en la realización de la actividad.
ACTIVOS
Activos necesarios para realizar la actividad (herramientas de sw, hw, documentos, planillas, plantillas, etc.)
PASOS DE LA ACTIVIDAD
Enumeración de los pasos de la actividad, los roles que la realizan y sus respectivas entradas y salidas.
Modelo propuesto (continua)
SALIDA
Elementos generados durante la actividad.
CONDICIONES DE SALIDA
Condiciones que deben cumplirse para que termine la realización de la actividad.
METRICAS
Medidas que a partir de los datos que se recolectan durante la actividad sirven para evaluar su realización e identificar oportunidades de mejora así como construir indicadores útiles para el negocio.
VERIFICACIÓN Y VALIDACIÓN
Descripción del modo en que se comprobará la realización de la actividad de acuerdo al procedimiento definido.
Bibliografía sugerida
Ingeniería de Software – Un enfoque práctico – Quinta Edición – Roger S. Presman – McGraw- Hill – 2002
Software Survival Guide - Steve McConnell - Microsoft Press – 1998
Practical Guide to Software Quality Management, Second Edition - Artech House © 2003