9. Metodologías y Herramientas para el Aseguramiento de Calidad LS3148 - Calidad de Software 3IM1...
-
Upload
olegario-picazo -
Category
Documents
-
view
218 -
download
0
Transcript of 9. Metodologías y Herramientas para el Aseguramiento de Calidad LS3148 - Calidad de Software 3IM1...
9. Metodologías y 9. Metodologías y Herramientas para el Herramientas para el
Aseguramiento de CalidadAseguramiento de CalidadLS3148 - Calidad de SoftwareLS3148 - Calidad de Software
3IM1
Universidad Antonio de NebrijaJusto Hidalgo –con algunos apuntes de Manuel Fernando Juan-
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
2
ContenidosContenidos
• Introducción
• Metodologías
• Herramientas
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
3
Introducción (I)Introducción (I)
• Las mejoras con éxito se inician desde y son lideradas por la Alta Dirección de la organización.
• La mejora de calidad del software requiere inversiones, planificación, personal dedicado, dedicación de los gerentes y capital.
• La mejora de la calidad del software es un trabajo de equipo: los que no participan no solo no obtienen los beneficios, sino que pueden impedir el progreso. Al final, toda la organización está involucrada en la mejora continua.
La mejora de la calidad del SW tiene los siguientes principios básicos:
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
4
Introducción (II)Introducción (II)
• Para que las mejoras sean efectivas deben estar basadas en un conocimiento previo de la situación actual, y en unos objetivos claros: hay que saber donde se está y a donde se quiere llegar.
• La mejora es continua, no un esfuerzo en un momento dado: debe haber aprendizaje y evolución continua
• Se requiere un esfuerzo sostenido y continuo para que las mejoras se implementen
• Se requiere un apoyo visible y reiterado de la Alta Dirección
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
5
Introducción (y III)Introducción (y III)
Mejora de la calidad
Peticiones de mejorade la calidad
Normas de la industriaNecesidades de la org.y objetivos del negocio
Objetivos de mejora trasanteriores evaluacioneso auditorías.
Mejoras en los procesosde la organización
Petición de nuevasevaluaciones oauditorías
Planes de mejora
Mejoras en los productos SW de la organización
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
6
MetodologíasMetodologías
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
7
Metodologías SQAMetodologías SQA
La planificación de la mejora continua se debe basar en un modelo que ayude a definir los pasos y actividades a realizar
Una metodología es necesaria para proporcionar una guía a los proyectos de mejora, con una secuencia ordenada de tareas:
- Qué se debe hacer- Cuándo se debería hacer- Quién debe hacerlo
Y para proporcionar una base para la gestión y la supervisión de los proyectos de mejora
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
8
Plan Do Check Act (PDCA)
1. PlanIdentificar nuevos cambios y datos sobre su efectividad(objetivos, políticas, planes de acción)
2. DoLlevar a cabo el cambio(formación, ejecución)
Ciclo de Shewart/Deming (I)Ciclo de Shewart/Deming (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
9
3. CheckMedir los efectos del cambio(análisis y revisión de resultados)
4. ActEstudiar los resultados para determinar las lecciones
aprendidas y que acciones se deberían tomar(documentación, estandarización, revisión de planes)
Ciclo de Shewart/Deming (II)Ciclo de Shewart/Deming (II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
10
Descripción del problema Diagramas de afinidadRecopilación de datos Matrices
Diagramas de controlAnálisis de datos HistogramasFormulación de las causas Diagramas de raspa
Diagramas de relacionesDiagramas de flujo
Elaboración de hipótesisComprobación de hipótesis Histogramas
Nubes de puntosIdentificar las causas raíz Diagramas de raspa
Paretos
Plan (I)Plan (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
11
Propuesta de acciones Diagramas de árbolEvaluación y selección de Diagramas de matrizaccionesIdentificación de métricas Diagramas de tendencias
HistogramasPlanificación de las acciones Diagramas de flechas
Diagramas de Gantt
Recopilación del material para tomar una decisión
Presentación al gestor del programa de los resultados y la propuesta de la fase de planificación.
Plan (y II)Plan (y II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
12
• Ejecución de las acciones planificadas en la fase de Plan.• Ejecución de las mediciones oportunas para establecer
una línea base.• Ejercer un seguimiento de la ejecución del plan• Recopilación de la información necesaria para la toma de
decisiones entes de la fase de check.
DoDo
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
13
• Ejercer un seguimiento de las acciones implementadas• Analizar los resultados• Evaluación de las mejoras• Planificar la estandarización de las mejoras si procede• Tener en cuenta la posible resistencia de la organización al
cambio• Recopilar la información necesaria para tomar la decisión de
estandarizar o no.
CheckCheck
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
14
• Supone el establecer la nueva manera de hacer las cosas que elimina las causas de los problemas que se quería resolver.
• Documentarla nueva manera de hacer las cosas.• Informar a todas las partes implicadas de los nuevos métodos
de trabajo.• Proporcionar formación sobre la nueva manera de hacer las
cosas.• Establecer los nuevos mecanismos de control para asegurar
que la nueva manera de hacer las cosas subsiste en la organización.
ActAct
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
15
PlanIdentificar oportunidades de mejora.
DoProbar las mejoras a pequeña escala.
CheckAnalizar los resultados de la fase anterior
ActEstandarizar las mejoras
Ciclo de Shewart/Deming (III)Ciclo de Shewart/Deming (III)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
16
Gestión del programa de mejoras
Desarrollo de una mejora
Identificación de un objeto de mejora
Definición del trabajo de mejora
Plan
Toma de decisión: qué hacer
Do
Seguimiento y supervisión
Toma de decisión: proyectos piloto
Check
Toma de decisión: estandarización
Act
Aseguramiento de la estandarixzación
Ciclo de Shewart/Deming (y IV)Ciclo de Shewart/Deming (y IV)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
17
Inicio
Diagnóstico Establecimiento
Actuaciones
Aprendizaje
Proponer nuevas actuaciones
Analizar y validar
Afinar las soluciones
Probar las soluciones
Crear soluciones
Planificar acciones
Establecer prioridades
Elaborar recomendaciones
Evaluar el estado actual y definir el deseado
Obtener patrocinio
Establecer el contexto
Estímulos para las mejoras
Definir la infraestructura
Determinar estrategias
Modelo IDEAL del SEIModelo IDEAL del SEI
Initiating
Diagnosing
Establishing
Acting
Learning
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
18
Modelo de ISO/IEC TR 15504Modelo de ISO/IEC TR 15504
1.Examine
organisation’sneeds
8.Monitor
performance
7.Sustain
improvementgains
6.Confirm
improvements
5.Implement
improvements4.Analyze results
and deriveaction plan
2.Initiate processimprovement
3.Prepare and
conduct processassessment
• Industrial benchmarksPractice descriptions from the assessmentmodel in Part 5 or another assessmentmodel compatible (Part 2)
• Process improvement programme plan forFor capability determination.
• Target capability profiles from capability determination
(Part 8)
Assessmentresults
Approvedaction plan
Analyzedre-assessmentresults
Implementedimprovements
Validatedimprovementresults
Re-assessmentrequest
Identifiedscope andpriorities
Improvementinitiation
Software processimprovement request
Organisation’s needs
Institutionalisedimprovements
Improvements inorganisational unit’s
software process
Assessmentrequest (Parts 3 and 4)
current assessedcapability
Preliminary processimprovementprogrammeplan
model compatible with Part 2
•
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
19
HerramientasHerramientas
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
20
Herramientas de soporte del trabajo de mejora:
• Las 7 herramientas de gestión• Las 7 herramientas de control
Introducción (I)Introducción (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
21
Las 7 herramientas de Gestión
• Diagramas de Afinidad• Diagramas de Raspa• Diagramas de relaciones• Diagramas de árbol• Matrices• Diagramas de flechas• Diagramas de flujo
Introducción (y II)Introducción (y II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
22
Se usa para definir un problema y sus síntomas. Se usan para buscar respuestas a problemas del tipo:
¿Qué nos impide reducir el tiempo de desarrollo de 12 meses a sólo 8?
¿Por qué no podemos reducir el coste de mantenimiento de los sistemas software que producimos?
¿Cual es el problema más importante que tenemos en la fase de pruebas?
Diagramas de Afinidad (I)Diagramas de Afinidad (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
23
Paso 1: Escribir el problema que queremos analizar usando frases del estilo:¿Qué nos impide...?¿Cual es la mayor dificultad que tenemos para...?
Consensuar el enunciado del problema y discutir brevemente (5 minutos) posibles respuestas.
Paso 2: Distribuir ‘post-its’ y rotuladores entre los participantes.
Paso 3: Cada miembro del grupo escribe el problema tal y como lo entiende, en un ‘post-it’
Diagramas de Afinidad (II)Diagramas de Afinidad (II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
24
Paso 3: Cada miembro del grupo escribe todas y cada una de las posibles respuestas a la pregunta del enunciado que se le ocurra. Para cada problema (cada posible respuesta al enunciado) se usa un ‘post-it’ diferente.
Tan pronto como se escribe un ‘post-it’ se coloca en un lugar visible para el resto del grupo.
Paso 4: Cuando ya no se le ocurre a nadie nada más, el líder del grupo lee cada uno de los ‘post-its’ para clarificar su significado y asegurarse que el grupo comprende lo que dice.
Diagramas de Afinidad (III)Diagramas de Afinidad (III)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
25
Paso 5: Los ‘post-its’ con mensajes similares se agrupan y se busca una formulación común.
Es posible que haya ‘post-its’ que no se puedan agrupar.
Paso 6: Distribuir los grupos por áreas comunes (ej. personal, formación, recursos, tecnología, etc.).
Analizar si hay alguna relación causa - efecto.
Diagramas de Afinidad (IV)Diagramas de Afinidad (IV)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
26
Paso 7: Evaluar la importancia de cada uno de los problemas descritos.
Se hace por votación. Cada miembro del grupo puede clasificar hasta 5 problemas con 5, 4, 3, 2 o 1 punto.
Paso 8: Elaboración del informe final del estudio, con los problemas priorizados y las posibles relaciones causa efecto encontradas.
Diagramas de Afinidad (y V)Diagramas de Afinidad (y V)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
27
(Causa-Efecto)
Se usan para descubrir las causas raíz más probables de un problema. Se usan para buscar respuestas a preguntas del tipo:
¿Cuales son las causas de que cometamos tantos errores de programación?
¿Por qué el cliente no está satisfecho con nuestros sistemas?
Diagramas de Raspa (I)Diagramas de Raspa (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
28
Paso 1: Escribir el problema que queremos analizar usando frases del estilo:
¿Cuáles son las causas de que...?¿Por qué no podemos...?¿Por qué tenemos problemas con...?
Consensuar el enunciado del problema y discutir brevemente (5 minutos) posibles respuestas.
Paso 2: Distribuir ‘post-its’ y rotuladores entre los participantes.
Diagramas de Raspa (II)Diagramas de Raspa (II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
29
Paso 3: Cada miembro del grupo escribe todas y cada una de las posibles causas al problema del enunciado que se le ocurra. Para cada causa se usa un ‘post-it’ diferente.
Tan pronto como se escribe un ‘post-it’ se coloca en un lugar visible para el resto del grupo.
Paso 4: Cuando ya no se le ocurre a nadie nada más, el líder del grupo lee cada uno de los ‘post-its’ para clarificar su significado y asegurarse que el grupo comprende lo que dice.
Diagramas de Raspa (III)Diagramas de Raspa (III)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
30
Paso 5: Los ‘post-its’ con causas similares se agrupan y se busca una formulación común.
Es posible que haya ‘post-its’ que no se puedan agrupar.
Paso 6: Dibujar una flecha horizontal apuntando al problema a la derecha. Dibujar tantas flechas inclinadas como grupos se hayan hecho con las causas.
Para cada grupo dibujar una estructura de causa efecto usando los ‘post-its’ que lo componen.
Diagramas de Raspa (IV)Diagramas de Raspa (IV)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
31
Paso 7: Se vuelve a analizar cada grupo buscando las causas raíz.El proceso de búsqueda concluye cuando ya no se encuentran más respuestas a la pregunta ¿por qué?
Paso 8: Evaluar la importancia de cada una de las causas descritas.Se hace por votación. Cada miembro del grupo puede clasificar hasta 5 causas con 5, 4, 3, 2 o 1 punto.
Paso 9: Elaboración del informe final del estudio, con las causas priorizadas.
Diagramas de Raspa (y V)Diagramas de Raspa (y V)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
32
Se usan para descubrir las posibles causas de un problema y la secuencia de eventos que llevan dicho problema.
Diagramas de RelaciónDiagramas de Relación
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
33
Se usan para buscar soluciones a problemas.
Paso 1: Escribir el problema que queremos solucionar usando frases del estilo:
¿Cómo podemos resolver...?¿Cómo podemos mejorar...?
Consensuar el enunciado del problema y discutir brevemente (5 minutos) posibles respuestas.
Diagramas de Árbol (I)Diagramas de Árbol (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
34
Paso 2: Distribuir ‘post-its’ y rotuladores entre los participantes.
Paso 3: Cada miembro del grupo escribe el problema tal y como lo entiende, en un ‘post-it’
Paso 4: Cada miembro del grupo escribe todas y cada una de las posibles acciones para solucionar el problema que se le ocurran. Para cada acción se usa un ‘post-it’ diferente.
Tan pronto como se escribe un ‘post-it’ se coloca en un lugar visible para el resto del grupo.
Diagramas de Árbol (Ii)Diagramas de Árbol (Ii)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
35
Paso 5: Cuando ya no se le ocurre a nadie nada más, el líder del grupo lee cada uno de los ‘post-its’ para clarificar su significado y asegurarse que el grupo comprende lo que dice.
Paso 6: Se agrupan las acciones con un propósito similar y se formula este propósito.
Es posible que haya ‘post-its’ que no se puedan agrupar.
Paso 7: Se agrupan ahora los propósitos similares y se formulan propósitos de segundo nivel
Diagramas de Árbol (III)Diagramas de Árbol (III)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
36
Paso 8: Dibujar una matriz de evaluación en la parte baja del diagrama, con tres filas:
• Efecto• Viabilidad• Prioridad
Paso 9: Evaluar el efecto de cada una de las acciones sugeridas en alto, moderado o bajo.
Paso 10: Evaluar la viabilidad en muy viable, viable o poco viable.
Diagramas de Árbol (IV)Diagramas de Árbol (IV)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
37
Paso 11: Priorizar las acciones:
Alta: Efecto alto y muy viable.Efecto alto y viable.
Media: Efecto moderado y muy viable.Efecto moderado y viable.
Baja: Efecto moderado y viabilidad moderada.
A analizar: Efecto alto y poco viable.
Paso 12: Elaboración del informe final del estudio, con las acciones priorizadas.
Diagramas de Árbol (y V)Diagramas de Árbol (y V)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
38
Se usan para la descripción sistemática de relaciones entre factores. Por ejemplo, para analizar las relaciones entre una serie de acciones (soluciones) y una serie de problemas.
Por ejemplo:
¿Cuales son las acciones más efectivas para mejorar la efectividad de las auditorías de calidad?
¿Cuales son las acciones más efectivas para aumentar la eficacia de las inspecciones de código?
Matrices (I)Matrices (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
39
Las matrices permiten la comparación sistemática de un cierto número de acciones, orientadas a resolver un cierto número de problemas, o a conseguir un cierto número de objetivos.
Se consigue saber el efecto y la viabilidad de todas las acciones propuestas en relación a los problemas u objetivos a resolver o alcanzar.
Son la base del QFD (Quality Function Deployment), en donde se relacionan los atributos de procesos o productos con los requisitos del usuario o cliente.
Matrices (y II)Matrices (y II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
40
Se usan fundamentalmente para hacer las planificaciones de las acciones de mejora, u otras.
Permite visualizar la secuencia de acciones y lo que se puede o no se puede hacer en paralelo.
Concepto fundamental: camino crítico.
Diagramas de flechasDiagramas de flechas
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
41
Se usan fundamentalmente para describir procesos, tanto técnicos como de gestión.
Permiten visualizar la manera en que se está trabajando, para facilitar la simplificación u optimización de los procesos. También sirven para representar la manera en que se debería trabajar.
Diagramas de flujosDiagramas de flujos
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
42
Las 7 herramientas de Control
• Matrices de frecuencia• Diagramas de barras• Diagramas de Pareto• Histogramas• Nubes de puntos• Diagramas de control• Estratificación
Herramientas de ControlHerramientas de Control
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
43
Se usan fundamentalmente para recopilar datos para hacer análisis.
Unidad SW
Errores tipo A B C D E
1
2
3
7
1
0
2
2
1
3
0
0
0
1
0
0
5
2
Matrices de frecuencia (I)Matrices de frecuencia (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
44
Antes que nada debemos definir:
• Cuál es el propósito de la medida.• Qué se va a medir.• En qué parte del proceso se va a tomar la medida.• Cómo se va ha tomar la medida.• Quién va a tomar la medida.• Cuándo se va a tomar la medida.• Cómo se debe controlar el entorno en que se va a tomar la
medida.• Cómo se va a reportar la medida.
Matrices de frecuencia (II)Matrices de frecuencia (II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
45
Recopilación de datos:
• Establecer el propósito de la métrica.• Planificar las mediciones.• Recopilar los datos y las condiciones del entorno.• Clasificar los datos según la matriz que se esté rellenando.• Analizar la matriz una vez completadas las mediciones.
Matrices de frecuencia (y III)Matrices de frecuencia (y III)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
46
Se usan para mostrar como una cantidad varía según diferentes categorías o clases.
La cantidad que representan las barras puede ser un número, una frecuencia o tiempo (retraso, por ejemplo).
El eje horizontal suele ser las diferentes categorías o clases, y el vertical la cantidad, frecuencia o el tiempo. La altura de la barra es proporcional al tamaño de la variable observada.
No confundir los diagramas de barras con los histogramas.
Diagramas de barrasDiagramas de barras
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
47
Estos diagramas son un tipo especial de diagramas de barras que se usan para mostrar las frecuencias relativas de diferentes tipos de fallos o defectos.
Las barras se ordenan de izquierda a derecha, con el fallo o defecto más frecuente a la izquierda, y el menos frecuente a la derecha.
Lo normal es que un determinado tipo de fallo o defecto (o unos pocos tipos distintos), ocasionen la mayoría de los problemas o costes.
Esto se llama normalmente el principio 20-80: el 20 % de los fallos ocasionan el 80 % de los costes.
Diagramas de ParetoDiagramas de Pareto
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
48
Es un tipo concreto de diagramas de barras que divide los datos en un cierto número de clases o intervalos. Es una representación de la dispersión de una variable respecto a otra.
Es posible sacar una idea de como los valores se distribuyen alrededor de la media.
Si hay límites de tolerancia respecto a los valores medidos, hay que representarlos en el histograma.
Histogramas (I)Histogramas (I)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
49
Preguntas que nos podemos hacer respecto a los histogramas:
¿Están los valores distribuidos simétricamente?¿Hacia que lado están desplazados los valores?¿Hay valores muy extremos?¿Cuantos picos hay en el diagrama?
Las respuestas a estas preguntas pueden dar lugar a ideas sobre como continuar o dirigir las investigaciones.
Cuantas más medidas tenga el diagrama, más seguros podremos estar de su forma. Si hay pocas medidas, pueden aparecer representaciones que no se dan en la realidad.
Histogramas (y II)Histogramas (y II)
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
50
Se usan para encontrar relaciones entre dos variables, aunque en ocasiones lo que se busca es poder demostrar la falta de relación entre dos variables.
Las posibles conclusiones son:
• Correlación positiva.• Correlación negativa.• Sin correlación.• Otras correlaciones.
Nubes de puntosNubes de puntos
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
51
Se usan normalmente cuando una de las variables de las que se busca saber si están relacionadas es el tiempo.
Sirve para representar la evolución de una variable con el tiempo.
En estos diagramas es especialmente importante saber elegir la escala de los ejes para poder sacar conclusiones válidas.
Diagramas de controlDiagramas de control
Calidad de Software - 9. Metodologías de SQA - Justo Hidalgo
52
Es la división de los datos en diferentes grupos para ayudar en la investigación. Por ejemplo, diferentes plataformas, distintos lenguajes de programación, distintos procesos.
Se usa asociado a otros diagramas, por ejemplo los de barras, histogramas o de nubes de puntos.
EstratificaciónEstratificación