Upload
stephany-silva
View
7
Download
0
Embed Size (px)
DESCRIPTION
SQA / Ingenieria de software 1
Citation preview
Aseguramiento de la calidad en el software (SQA)
Ingeniera de Software 1
Plan actualizacin 2013
Puntos
Calidad en el software
Actividades de SQA Tipos de actividades
Costos de la calidad
Tcnicas de SQA Revisiones e inspecciones
Auditoras
Anlisis causal
QFD
2
CALIDAD EN EL SOFTWARE
Calidad e ingeniera de software
Definicin de calidad [Juran 1999]
(a) Calidad es el conjunto de caractersticas de un producto que satisfacen las necesidades de los clientes y, en consecuencia, hacen satisfactorio el producto
(b) Calidad consiste en no tener deficiencias en el producto o en el proceso
4
Calidad en el software
Componentes mensurables de la calidad
Satisfaccin del cliente
Nivel de satisfaccin (Expectativas vs Percepcin)
Valor agregado del producto
Atributos de calidad del producto
No deficiencias en el producto y proceso
Ausencia de defectos
Calidad del proceso de produccin
5
Calidad en el software
Definicin [Pressman]
Concordancia con los requerimientos funcionales y no funcionales explcitamente establecidos, con los estndares de desarrollo explcitamente documentados y con las caractersticas implcitas que se espera de todo software desarrollado profesionalmente
6
Calidad en el software
Concordancia con los requerimientos. Es el concepto de adecuacin al uso, si no se cumple con los requerimientos no hay calidad
Estndares de desarrollo. Criterios definidos que guan el proceso de ingeniera
Requerimientos implcitos, que pueden no ser documentados pero se esperan de todo software de calidad
7
Calidad en el software
Dos perspectivas de la calidad
Calidad de diseo
Caractersticas de la especificacin para satisfacer las necesidades del cliente
Calidad de la solucin para resolver el problema
Calidad de concordancia
Grado de apego con las especificaciones en la implantacin
Calidad de la implementacin para corresponderse con la solucin
8
Calidad en el software
Control de calidad
Parte de la gestin de la calidad orientada al cumplimiento de los requisitos de la calidad ISO 9000:2005
9
Calidad en el software
Aseguramiento de la calidad
Parte de la gestin de la calidad orientada a proporcionar confianza en que se cumplirn los requisitos de la calidad ISO 9000:2005
Un modo planificado y sistemtico de asegurar a la gerencia que se aplican los estndares, prcticas, procedimientos y mtodos definidos del proceso CMMI-DEV v1.2
10
Calidad en el software
Gestin de la calidad
Actividades coordinadas para dirigir y controlar una organizacin en lo relativo a la calidad ISO 9000:2005
Generalmente incluye el establecimiento de la poltica, los objetivos, la planificacin, el control, el aseguramiento y la mejora de la calidad
11
Calidad en el software
12
ACTIVIDADES DE SQA
Actividades de SQA
La forma de dar confianza de que los requisitos de un producto de software se cumplirn es realizando determinadas actividades sistemticamente
A estas actividades se las conoce como actividades de aseguramiento de la calidad del software
Forman parte de los procesos de apoyo para la produccin de software
14
Actividades de SQA
1. Establecer un plan de SQA para el proyecto
2. Participacin en la definicin del proceso
3. Revisar las actividades para verificar ajuste al proceso
4. Asegurar el apego a los estndares definidos (del producto y del proceso)
5. Auditar las actividades de calidad
6. Mtricas del software
15
Actividades de SQA
7. Auditar proceso de SCM
8. Indicar acciones correctivas y preventivas
9. Aplicacin de herramientas y mtodos tcnicos
10.Realizacin de revisiones
11.Prueba del software
12.Registro y realizacin de informes
16
Actividades de SQA
Tipos
Actividades preventivas Planificacin de la calidad
Anlisis causal
Revisiones y auditoras
Actividades correctivas Verificacin y validacin (Prueba de productos)
Actividades registrales Registro de resultados y redaccin de informes
Recoleccin de mtricas: de productividad, de re trabajo, de fallas
17
18
Registro de incidentes
Evaluar objetivamente procesos y productos
Actividades de evaluacin Revisiones, verificaciones, validaciones y auditoras
Medicin y anlisis
Actividades de medicin y anlisis
Productos y procesos
Mtricas e indicadores
Informes y reportes
Proporcionar visin objetiva
Actividades de comunicacin y seguimiento
Actividades de SQA
Plan de SQA
Cada proyecto de desarrollo y mantenimiento debe tener un plan de SQA especificando sus metas, tareas de SQA a desarrollar, los estndares a utilizar, los procedimientos y estructura organizacional
Se debe considerar el tipo de proyecto y el grupo que lo desarrolla para seleccionar las actividades de aseguramiento de la calidad
Los estndares que se aplican deben ser concordante con los atributos de calidad del sistema
19
Actividades de SQA
Contenido del plan de SQA (IEEE) Propsito y referencias
Gerenciamiento (Tareas y responsabilidades)
Documentacin
Estndares, prcticas y mtricas
Revisiones y auditoras
Pruebas
Gestin del cambio (SCM)
Reporte de problemas y acciones correctivas
Herramientas, tcnicas y metodologas
Recoleccin, mantenimiento y retencin de registros
20
Actividades de SQA
Relacin con el equipo de produccin El SQA es el responsable de muchas de las
verificaciones de los productos, por esto debe cuidar especialmente la relacin con el equipo
La calidad del producto no es responsabilidad del SQA sino de cada productor para con su cliente interno u externo
SQA debe poseer buen relacionamiento con los desarrolladores y el gerente
21
Actividades de SQA
Costos de la calidad
Los costos de calidad nunca pueden considerarse en forma aislada, solo en conjunto con el ahorro de costos producido por la no calidad
Llevar a cabo cierta actividad si estamos seguros que reducirn los costos
22
Actividades de SQA
Costo de prevencin
Planificacin, organizacin y capacitacin
Costo de la evaluacin
Revisiones, auditoras, verificacin y validacin.
Costo de fallas
Internas Reparacin
Externas Resolucin de quejas, devolucin y sustitucin de productos,
soporte, trabajo de garanta
23
24
TCNICAS DE SQA
Tcnicas de SQA
Pruebas Para verificacin y validacin del software
Revisiones Para identificar problemas y oportunidades de mejora del producto
Auditoras Para identificar problemas y oportunidades de mejora del proceso
Anlisis Causal Para la deteccin de las causas que ocasionan los defectos
QFD Trazabilidad de elementos del desarrollo
26
Tcnicas de SQA
27
Necesidades del
cliente
Requerimientos Proceso de desarrollo Productos de trabajo
Verificaciones
Validaciones
Auditorias
Pro
ceso
Pro
du
ctos
Revisiones
Revisiones
Revisin del trabajo por parte de un grupo distinto al productor para identificar mejoras al producto
confirmar las partes que no es necesario mejorar
estandarizar el nivel de calidad del trabajo tcnico
Idea: los desarrolladores no ven ciertos errores de su trabajo que otras personas s pueden ver
Efecto secundario: las personas se esfuerzan ms
Mecanismo para asegurar el cumplimiento de estndares, til a la vez como formacin
Se pueden aplicar durante todo el proceso
Beneficio ms claro: deteccin temprana de defectos 28
Revisiones
Tipos de revisiones
Revisiones gerenciales (Proyecto)
Se evala el estado del proyecto con respecto a los planes, cronogramas, estndares y guas disponibles
Revisiones tcnicas (Producto)
Discrepancia con los requerimientos y estndares
29
Revisiones
Proceso general de una revisin
Planificacin
Preparacin
Ejecucin de la revisin
Re-trabajo
Anlisis de resultados
30
Revisiones
31
Tipos de revisiones
32
Inspecciones
Utilizan listas de verificacin para concentrar la atencin en reas problemticas
nfasis en deteccin, no en correccin
Se revisa el material con anticipacin a la reunin
Se asignan roles a los participantes (el moderador no puede ser el productor). El moderador tiene entrenamiento especfico
Se registran datos para mejorarlas
Reunin de tiempo limitado, por ejemplo 2 horas
Se revisa el producto, no al productor
33
Inspecciones
Qu inspeccionar?
Requisitos, diseo, cdigo, planes, casos de prueba, documentacin, etc.
34
Anlisis Diseo Codificacin
Insp. requisitos Insp. diseo Insp. cdigo
Inspecciones
35
Inspecciones
Procedimiento
1. Planificacin
2. Preparacin
3. Sesin
4. Reporte
5. Retrabajo
6. Seguimiento
7. Mejora del procedimiento
Roles
Moderador (no puede ser el autor)
Autor
Revisor
Registrador
36
Inspecciones
Beneficios de las revisiones
Efectivas en la deteccin de errores
Relativamente econmicas comparadas con las pruebas
Detectan los defectos antes que las pruebas
Estimula a comprender a los distintos integrantes las metas de los dems
Ms del 60 % de los errores de un programa se pueden detectar en inspecciones [Fagan]
37
Anlisis causal
Anlisis causal
Actividad fundamental donde se atacan las causas de los problemas, donde se proponen cambios en las herramientas o el proceso
Se debe realizar en forma temprana para aprovechar la experiencia
Es necesario realizar un plan de acciones y seguimiento de los cambios propuestos, es importante el compromiso del gerente
38
Anlisis causal
Anlisis causal
Objetivo: prevenir los defectos en base a la eliminacin de las causas que los provocan
Se analizan los registros de defectos detectados
registros de inspecciones
registros de pruebas
registros de reportes de problemas
Categorizar las causas de los defectos (el 20% de las causas provocan el 80% de los defectos)
39
Anlisis causal
5 porques
Baja venta del producto
Porque? Porque estamos vendiendo menos
Porque? Porque el cliente no quiere nuestros productos
Porque? Porque el competidor tiene mejores productos
Porque? Porque no hemos producido buenos productos ltimamente
Porque? Porque hemos reducido el presupuesto de investigacin y desarrollo
40
Anlisis causal
41
Ciclo de prevencin
42
Tcnicas de SQA
Reportes de SQA
Reporte de problemas
Reporte de anlisis causal
Reporte de inspeccin
Sumario de defectos
Reporte de testing
Reportes de SCM
43
Tcnicas de SQA
QFD
Es un mapa conceptual del problema, utilizado para la comunicacin y la planificacin
Permite la comunicacin dentro del grupo de trabajo, para que los productos diseados reflejen los deseos de sus consumidores
44
Tcnicas de SQA
Aplicacin del QFD
El esquema es una matriz que vincula el que (en las filas), con el como (en las columnas)
El paso inicial es la identificacin de los requerimientos del usuario, que son el punto de partida
45
Tcnicas de SQA
Ejemplo QFD
46
X CU7
X CU6
X X CU5
X X CU4
X X CU3
X X CU2
CL6 CL 5 CL 4 CL 3 CL 2 CL 1
Clases Casos de uso
Tcnicas de SQA
Matrices QFD
Pueden vincularse distintos elementos del desarrollo por matrices QFD
Id. de Req. vs. Esp. de Req. (casos de uso)
Casos de uso vs. Clases
Casos de uso vs. Casos de Prueba
47
Tcnicas de SQA
Beneficios del QFD
Ayuda a verificar que se cumpla con todos los requerimientos
Evita que se realice trabajo repetido
Ayuda a rastrear el impacto de los cambios en cualquier etapa del sistema
48
Referencias
Captulo 8, Ingeniera del Software, Pressman
Managing the Software Process, Watts S. Humphrey
Rapid Development, Steve McConnell
49
Nota sobre este documento
Esta presentacin es una gua para docentes y estudiantes sobre los temas dados en clase
La presentacin por si sola no es una fuente completa para el estudio de la materia
Para complementar esta informacin debe usarse la bibliografa de la materia
50