SlideShare una empresa de Scribd logo
1 de 35
Descargar para leer sin conexión
CALIDAD EN EL DESARROLLO DE
SOFTWARE
Agenda
1. Calidad de Software
2. Elementos de aseguramiento de calidad
3. Defect Prevention
4. Ampliación y eliminación de defectos
5. Eficacia en la remoción de defectos
6. Inspecciones y Revisiones Técnicas
7. Control Estadístico
8. Estándares
9. Calidad Proactiva
10. Objetivos y Meta del proceso
Calidad de Software
“Lo que ahoga a alguien no es caerse al río, sino mantenerse sumergido en el”
Proceso eficaz que se aplica de manera que crea un producto útil que proporciona valor
medible a quienes lo producen y a quienes lo utilizan. Debe estar alineado a los
estándares relacionados con el aseguramiento de la calidad en los entregables y la
gestión de riesgos.
Producto
que
funciona
Buena
calidad
Entrega
dentro de
presupuesto
y plazo
Satisfacción
del usuario
Calidad de Software
Un producto es de buena calidad si le sirve a quien lo adquiere y si este lo usa para
realizar la tarea para lo que fue concebido.
Practicar el control de calidad consiste en realizar las acciones necesarias para este
producto cumpla con los atributos de calidad y con las prestaciones que lo califican.
Un proceso que implique el aseguramiento de calidad de los productos, bien concebido
e implementado generará la mayor cantidad de las veces productos de buena calidad.
Proceso de
calidad
Colaboración del
equipo
Mejor calidad,
bajos costos
Calidad de Software
• Reglas del aseguramiento de la calidad del software:
 Regla del 67%: dos terceras partes de los errors son introducidos en las fases de
análisis y diseño.
 Regla del 60/1000: Por cada 1000 líneas de código, son introducidos 60 errors.
 Regla del 80%: Todo proceso inpección logra detector 80% de los errors.
Calidad de Software
• Atributos de la calidad:
Atributos
Funcionalidad
Adecuación
Precisión
Seguridad
Cumplimiento
Fiabilidad
Tolerancia a Fallos
Recuperación
Usabilidad
Comprensibilidad
Aprendizaje
Eficiencia
Uso de recursos
Mantenibilidad
Analizable
Modificable
Estabilidad
Fácil de Probar
Portabilidad
Adaptabilidad
Co-existencia
Calidad de Software
• Calidad de Uso:
Atributos
Efectividad Productividad Seguridad Satisfacción
Calidad de Software
• Aseguramiento de la calidad:
Un patrón planificado y sistemático de acciones necesarias para para asegurar que
el producto cumple con los requisitos funcionales y técnicos establecidos.
• Control de calidad:
Conjunto de acciones que ayudan a asegurar que todo producto cumpla con las
metas de calidad establecidas.
Tiempo Costos Alcance
Calidad
Calidad de Software
• Costo de la calidad:
El costo de la calidad incluye costos que genera la calidad o que demanda el
desarrollo de actividades relacionada con la calidad. Se divide en:
• Costos asociados con prevención: Revisiones técnicas.
• Costos asociados con la evaluación: inspecciones en el proceso y fallas.
• Garantía de la calidad:
Consiste en un conjunto de
funciones de auditoría e
información que evalúa la
efectividad y completitud de
las actividades de control y
aseguramiento de la calidad.
Calidad de Software
• Proceso básico de SQA:
Calidad de Software
• Proceso básico de pruebas:
Elementos de Aseguramiento de Calidad
• Estándares: Aplicar los estándares establecidos y definir todos aquellos que permitan
mejorar la calidad de los productos.
Aseguramiento
Marco de
referencia
Estándares
propios
Revisiones
Control de
Calidad
Elementos de Aseguramiento de Calidad
• Revisiones: Realizar actividades orientadas a validar la calidad de los productos en
cada punto de control del proceso. Las revisiones incluyen las revisiones técnicas,
IQA’s y EQA’s.
• IQA: Evaluaciones internas al equipo del proyecto.
• EQA: Evaluaciones externas al equipo del proyecto.
• Todas las IQA’s y EQA’s deben ser registradas en IPMS.
Elementos de Aseguramiento de Calidad
• Revisiones: En todos los proyecto se deben realizar por menos una IQA / EQA a mitad
del proyecto y al final.
• Criterios para realizar las IQA y EQA:
• Dividir las unidades de revisión en Simple, Medio y Complejo y tomar al
menos 20% de cada componente para realizar la IQA.
• Seleccionar 10% de las unidades que han tenido número máximo de
defectos en la IQA para realizar EQA.
Elementos de Aseguramiento de Calidad
• Revisiones: El 60% de los errores de un proyecto son detectados por este medio
contra el 40% restante detectados por los test.
40% 60%
Elementos de Aseguramiento de Calidad
• Pruebas: Función de control de calidad que tiene como objetivo principal detectar
errores. Como punto de control se exigirá la elaboración del plan de pruebas unitarias
requerido como parte de los entregables del proyecto.
Diseño de
pruebas unitarias
Plan de pruebas,
Casos de pruebas y
evidencia de pruebas
unitarias
Especificar casos de
pruebas unitarias
Describir casos de
pruebas unitarias
Ejecutar y
documentar casos de
pruebas unitarias
Elementos de Aseguramiento de Calidad
• Recolección y análisis de errores: Realizar mediciones en los puntos de control,
analizar y aplicar las acciones correctivas.
Control de calidad
Recolección de
datos
Análisis de datos
Determinar
acciones
correctivas
Aplicar Acciones
correctivas
Elementos de Aseguramiento de Calidad
• Educación: Determinar las necesidades de conocimiento relacionadas con la
generación de productos de software de calidad y planificar los programas de
capacitación que permitan darlos a conocer al personal.
Necesidades
Debilidades
Programas
de
capacitación
Elementos de Aseguramiento de Calidad
• Estimaciones: En los procesos de desarrollo de software se deben considerar como
parte de las actividades de estimación factores de calculo que permitan predecir la
cantidad de defectos que se pueden generar en cada fase de un proyecto de
desarrollo de software de modo de establecer de forma clara las actividades de
prevención de defectos.
Defect Prevention
• Que es un defecto:
• Un defecto en un producto es:
• Producto que no cumpla los requisitos documentados.
• No es apto para su uso.
• Un defecto en un proceso es: Desviación no autorizada del proceso y
procedimiento aprobado.
• Impacto de los defectos: Los defectos
tienen un impacto importante en la
satisfacción del cliente. resultado de
defectos en la considerable reelaborar
lo que conduce tanto a horario y el
deslizamiento esfuerzo.
Defect Prevention
• Proceso:
• Responsables:
• Desarrolladores: Realizar IQA.
• Revisores asignados: Realizar EQA.
• Equipo QA: (Documentación / Código), realizar análisis causal y definir planes de acción.
Proceso de
Software
Identificación de
defectos: IQA s,
EQA s, Revisones,
Pruebas
Remoción del
defecto
Acción Correctiva
Análisis Causal
Prevención de
Defectos: Plan para
prevenirlo en el
futuro
Modificación del
plan y/o proceso
de software
Prevención de defectos
Ampliación y Eliminación de Defectos
• “Dicen los médicos que en sus inicios algunas enfermedades son fáciles de curar
pero difíciles de reconocer… más con el paso del tiempo, si no se detectaron al
principio, se vuelven fáciles de reconocer pero difíciles de curar”
Nicolás Maquiavelo
Errores de la
Etapa anterior Errores que pasan
a la siguiente etapa
Etapa
Errores pasados
por alto
Errores
amplificados
Nuevos Errores
generados
Porcentaje de eficiencia
en la detección y
eliminación de errores
Eficacia en la remoción de defectos
• Medición de la capacidad de remoción de los defectos detectados. Se evalúa con la
siguiente ecuación:
• Donde:
• E = Número de errores detectados en la inspección
• D = Número de defectos detectados después de la corrección pos-inspección.
𝐸𝑅𝐷 = 𝐸
𝐸+𝐷
Inspecciones y Revisiones Técnicas
• Proceso básico revisiones:
Inspecciones y Revisiones Técnicas
• Esfuerzo realizado con y sin revisiones:
Esfuerzo
Tiempo
Sin
Inspecciones
Con
Inspecciones
Entrega
Inspecciones y Revisiones Técnicas
• Costos y Fallas con y sin revisiones:
Costos
Inspecciones y Revisiones Técnicas
• Resultados obtenidos con y sin revisiones:
Proceso
Construcción de
Software
Entra basura
Incrementa los costos por
retrabajo y reprocesamiento
Sale basura
Disminuye la credibilidad
Proceso
Construcción de
Software
Entran insumos
De calidad
Se reducen los costos
Salen productos de calidad
Incrementa la credibilidad
Inspecciones y Revisiones Técnicas
• Modelo de referencia:
• Responsables:
• Equipo de QA de la documentación
• Equipo de QA del código / Catalogaciones
Planificar
Se conoce el
proyecto
No
Visión General
Si Preparación Realizar inspección
Se encontraron
defectos
No
Validar estado
defectos
Si
Validar y corregir
defectos
Clasificar defectos
Se requiere nueva
inspección
Generar reporte de
defectos por tipo
NoGenerar MétricasFin
Si
Si
Control Estadístico
• Objetivos:
• Detectar y clasificar los defectos del software.
• Rastrear cada defecto a su causa subyacente.
• Aislar las causas vitales de la fuente principal de todos los errores.
• Corregir los problemas que han causado los defectos.
17
8 9 10
6 7
9
16
7
10
14
8
6
8
16
11
5
11 12
9
0
5
10
15
20
25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Datos Media LSC LIC
Control Estadístico
• Método:
• Muestreo estadístico doble por atributos: Se evalúan y validan todos los
atributos de calidad del software basados en criterios de aceptación estadística.
Estándares
Documentación Programación
Implícitos
No Funcionales
Calidad Proactiva
• Calidad Proactiva: La calidad es una acción proactiva donde todos los miembros del
equipo deben participar en forma proactiva en la prevención, detección de
oportunidades de mejora, solución de defectos y definición de planes de acción.
Acción
Preventiva
Evaluar riesgos del proyecto
Definir planes de acción preventiva
Revisiones técnicas, IQA’s y EQA’s
Determinar oportunidades de mejora
Objetivos y Meta del Proceso
• Meta:
• Entregar productos de calidad que cumplan con los requerimientos funcionales
establecidos y no funcionales, dentro de los tiempos y costos estimados en cada proyecto,
reduciendo los costos asociados del re-trabajo mediante la implementación de controles
para el aseguramiento de la calidad progresiva en el proceso de desarrollo de software en
todos los proyectos y con un índice de CERO DEFECTOS.
Objetivos y Meta del Proceso
• Objetivos:
• Entregar productos de calidad que cumplan con los requerimientos del cliente y requisitos
implícitos de calidad.
• Asegurar la participación activa del equipo en todas las actividades de aseguramiento de la
calidad.
• Realizar revisiones en todos los proyectos tanto de IQA como de EQA en forma objetiva.
• Reportar cualquier cambio solicitado de forma no oficial en los proyectos ya que esto
afecta la calidad.
• Llevar un control claro y conciso de los defectos generados en el software que permita
establecer oportunidades de mejora, controlar el tiempo invertido en re-trabajo y
gestionar el costo de la calidad.
Calidad en el Desarrollo de Software: Aseguramiento y Prevención de Defectos

Más contenido relacionado

La actualidad más candente

Tsp (Team Software Process )
Tsp (Team Software Process )Tsp (Team Software Process )
Tsp (Team Software Process )silviachmn
 
Aseguramiento de la calidad del software SQA
Aseguramiento de la calidad del software SQAAseguramiento de la calidad del software SQA
Aseguramiento de la calidad del software SQAAnita Ortiz
 
Software Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devilSoftware Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devilNahian Al Hossain Basunia
 
Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4Professional Testing
 
Especificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de softwareEspecificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de softwareJesús E. CuRias
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 
Testing Software
Testing SoftwareTesting Software
Testing Softwareodelorenzi
 
Aseguramiento de la calidad en software III
Aseguramiento de la calidad en software IIIAseguramiento de la calidad en software III
Aseguramiento de la calidad en software IIITensor
 
Juego de calidad total
Juego de calidad totalJuego de calidad total
Juego de calidad totalAlterEvo Ltd
 
Software Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, PuneSoftware Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, Punesanjayjadhav8789
 

La actualidad más candente (20)

Tsp (Team Software Process )
Tsp (Team Software Process )Tsp (Team Software Process )
Tsp (Team Software Process )
 
Aseguramiento de la calidad del software SQA
Aseguramiento de la calidad del software SQAAseguramiento de la calidad del software SQA
Aseguramiento de la calidad del software SQA
 
CMMI Y SCAMPI
CMMI Y SCAMPICMMI Y SCAMPI
CMMI Y SCAMPI
 
Software Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devilSoftware Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devil
 
Tipos de-pruebas
Tipos de-pruebasTipos de-pruebas
Tipos de-pruebas
 
tecnicas de revisión del software
tecnicas de revisión del softwaretecnicas de revisión del software
tecnicas de revisión del software
 
Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4
 
Especificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de softwareEspecificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de software
 
Guia iso 9126
Guia iso 9126Guia iso 9126
Guia iso 9126
 
Sqap ejemplos
Sqap ejemplosSqap ejemplos
Sqap ejemplos
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Testing Software
Testing SoftwareTesting Software
Testing Software
 
Aseguramiento de la calidad en software III
Aseguramiento de la calidad en software IIIAseguramiento de la calidad en software III
Aseguramiento de la calidad en software III
 
Juego de calidad total
Juego de calidad totalJuego de calidad total
Juego de calidad total
 
Conceptos basicos calidad software
Conceptos basicos calidad softwareConceptos basicos calidad software
Conceptos basicos calidad software
 
Iso 9126
Iso 9126Iso 9126
Iso 9126
 
ISO/IEC 14598-5
ISO/IEC 14598-5ISO/IEC 14598-5
ISO/IEC 14598-5
 
Gqm
GqmGqm
Gqm
 
PLAN SQA
PLAN SQAPLAN SQA
PLAN SQA
 
Software Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, PuneSoftware Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, Pune
 

Destacado

Introduccion a la Ingenieria de software
Introduccion a la Ingenieria de softwareIntroduccion a la Ingenieria de software
Introduccion a la Ingenieria de softwareFabricio Sanchez
 
Plan De Aseguramiento De Calidad
Plan De Aseguramiento De CalidadPlan De Aseguramiento De Calidad
Plan De Aseguramiento De CalidadPatricio Abad
 
Que es la ingenieria de software de agl.
Que es la ingenieria de software de agl.Que es la ingenieria de software de agl.
Que es la ingenieria de software de agl.aics-1986-13-saraguro
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de softwarearmenia
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del softwaredaniel0520
 
Desarrollo De Software
Desarrollo De SoftwareDesarrollo De Software
Desarrollo De Softwareguesta11255
 
1. introduccion a la calidad del software
1. introduccion a la calidad del software1. introduccion a la calidad del software
1. introduccion a la calidad del softwareJuan Pablo Carvallo
 
Diapositivas Calidad de desarrollo del software
Diapositivas Calidad de desarrollo del softwareDiapositivas Calidad de desarrollo del software
Diapositivas Calidad de desarrollo del softwareFaby Carlos Cortes Nuñez
 
Ingenieria del-software
Ingenieria del-softwareIngenieria del-software
Ingenieria del-softwaremenamigue
 
Políticas del uso y desarrollo del software libre en venezuela
Políticas del uso y desarrollo del software libre en venezuelaPolíticas del uso y desarrollo del software libre en venezuela
Políticas del uso y desarrollo del software libre en venezuelaKaren Carrera
 
Calidad en el desarrollo de software
Calidad en el desarrollo de softwareCalidad en el desarrollo de software
Calidad en el desarrollo de softwareNoe Moctezuma
 
Conceptos Básicos del Aseguramiento de la Calidad
Conceptos Básicos del Aseguramiento de la CalidadConceptos Básicos del Aseguramiento de la Calidad
Conceptos Básicos del Aseguramiento de la CalidadIsaac Pacheco Corella
 
Calidad del software[1]
Calidad del software[1]Calidad del software[1]
Calidad del software[1]daniel0520
 
Tema5 la calidad del software
Tema5 la calidad del softwareTema5 la calidad del software
Tema5 la calidad del softwarefalconsrazor
 
Desarrollando software de calidad
Desarrollando software de calidadDesarrollando software de calidad
Desarrollando software de calidadEQ SOFT EIRL
 

Destacado (20)

Introduccion a la Ingenieria de software
Introduccion a la Ingenieria de softwareIntroduccion a la Ingenieria de software
Introduccion a la Ingenieria de software
 
Plan De Aseguramiento De Calidad
Plan De Aseguramiento De CalidadPlan De Aseguramiento De Calidad
Plan De Aseguramiento De Calidad
 
Que es la ingenieria de software de agl.
Que es la ingenieria de software de agl.Que es la ingenieria de software de agl.
Que es la ingenieria de software de agl.
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 
Desarrollo De Software
Desarrollo De SoftwareDesarrollo De Software
Desarrollo De Software
 
1. introduccion a la calidad del software
1. introduccion a la calidad del software1. introduccion a la calidad del software
1. introduccion a la calidad del software
 
Diapositivas Calidad de desarrollo del software
Diapositivas Calidad de desarrollo del softwareDiapositivas Calidad de desarrollo del software
Diapositivas Calidad de desarrollo del software
 
Trabajo final
Trabajo finalTrabajo final
Trabajo final
 
Ingenieria de calidad
Ingenieria de calidadIngenieria de calidad
Ingenieria de calidad
 
Ingenieria del-software
Ingenieria del-softwareIngenieria del-software
Ingenieria del-software
 
Políticas del uso y desarrollo del software libre en venezuela
Políticas del uso y desarrollo del software libre en venezuelaPolíticas del uso y desarrollo del software libre en venezuela
Políticas del uso y desarrollo del software libre en venezuela
 
Tcs2007 3
Tcs2007 3Tcs2007 3
Tcs2007 3
 
Calidad en el desarrollo de software
Calidad en el desarrollo de softwareCalidad en el desarrollo de software
Calidad en el desarrollo de software
 
Conceptos Básicos del Aseguramiento de la Calidad
Conceptos Básicos del Aseguramiento de la CalidadConceptos Básicos del Aseguramiento de la Calidad
Conceptos Básicos del Aseguramiento de la Calidad
 
factors
 factors factors
factors
 
Calidad del software[1]
Calidad del software[1]Calidad del software[1]
Calidad del software[1]
 
Erp
ErpErp
Erp
 
Tema5 la calidad del software
Tema5 la calidad del softwareTema5 la calidad del software
Tema5 la calidad del software
 
Desarrollando software de calidad
Desarrollando software de calidadDesarrollando software de calidad
Desarrollando software de calidad
 

Similar a Calidad en el Desarrollo de Software: Aseguramiento y Prevención de Defectos

Similar a Calidad en el Desarrollo de Software: Aseguramiento y Prevención de Defectos (20)

Gestión De Calidad
Gestión De CalidadGestión De Calidad
Gestión De Calidad
 
GestióN De Calidad
GestióN De CalidadGestióN De Calidad
GestióN De Calidad
 
Gestion De Calidad Cap 26
Gestion De Calidad Cap 26Gestion De Calidad Cap 26
Gestion De Calidad Cap 26
 
Unidad 5
Unidad 5Unidad 5
Unidad 5
 
Auditoria calidad final2
Auditoria calidad final2Auditoria calidad final2
Auditoria calidad final2
 
1 calidad de_software1
1 calidad de_software11 calidad de_software1
1 calidad de_software1
 
Webminar herramientas y técnicas para planear la calidad
Webminar   herramientas y técnicas para planear la calidadWebminar   herramientas y técnicas para planear la calidad
Webminar herramientas y técnicas para planear la calidad
 
5 Inteco Solo Pruebas 2009
5 Inteco Solo Pruebas 20095 Inteco Solo Pruebas 2009
5 Inteco Solo Pruebas 2009
 
Estándares del procesos.pptx
Estándares del procesos.pptxEstándares del procesos.pptx
Estándares del procesos.pptx
 
14-Unidad 4: QA-4.1 Aplicación QA
14-Unidad 4: QA-4.1 Aplicación QA14-Unidad 4: QA-4.1 Aplicación QA
14-Unidad 4: QA-4.1 Aplicación QA
 
Software quality assurance (sqa) parte iii-plan de calidad y prueba v3.0
Software quality assurance (sqa)  parte iii-plan de calidad y prueba v3.0Software quality assurance (sqa)  parte iii-plan de calidad y prueba v3.0
Software quality assurance (sqa) parte iii-plan de calidad y prueba v3.0
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 
3 u3 mecanicas_calidad1
3 u3 mecanicas_calidad13 u3 mecanicas_calidad1
3 u3 mecanicas_calidad1
 
A U D I T O R I A D E C A L I D A D
A U D I T O R I A  D E  C A L I D A DA U D I T O R I A  D E  C A L I D A D
A U D I T O R I A D E C A L I D A D
 
Cap11 l2
Cap11 l2Cap11 l2
Cap11 l2
 
GestióN De Calidad
GestióN De CalidadGestióN De Calidad
GestióN De Calidad
 
SQA
SQASQA
SQA
 
labs-cgc-mod7.ppt
labs-cgc-mod7.pptlabs-cgc-mod7.ppt
labs-cgc-mod7.ppt
 
1 u2 calidad_productoproceso
1 u2 calidad_productoproceso1 u2 calidad_productoproceso
1 u2 calidad_productoproceso
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 

Más de Giovanny Guillen

Curso java desde cero nivel i - modulo v
Curso java desde cero   nivel i - modulo vCurso java desde cero   nivel i - modulo v
Curso java desde cero nivel i - modulo vGiovanny Guillen
 
Curso java desde cero nivel i - modulo iv
Curso java desde cero   nivel i - modulo ivCurso java desde cero   nivel i - modulo iv
Curso java desde cero nivel i - modulo ivGiovanny Guillen
 
Curso java desde cero nivel i - modulo iii
Curso java desde cero   nivel i - modulo iiiCurso java desde cero   nivel i - modulo iii
Curso java desde cero nivel i - modulo iiiGiovanny Guillen
 
Curso java desde cero nivel i - modulo ii
Curso java desde cero   nivel i - modulo iiCurso java desde cero   nivel i - modulo ii
Curso java desde cero nivel i - modulo iiGiovanny Guillen
 
Curso java desde cero nivel i - modulo i
Curso java desde cero   nivel i - modulo iCurso java desde cero   nivel i - modulo i
Curso java desde cero nivel i - modulo iGiovanny Guillen
 
Libro Ingeniería del Software
Libro Ingeniería del SoftwareLibro Ingeniería del Software
Libro Ingeniería del SoftwareGiovanny Guillen
 
Programacion RPG - Gestión de Errores y Excepciones
Programacion RPG - Gestión de Errores y ExcepcionesProgramacion RPG - Gestión de Errores y Excepciones
Programacion RPG - Gestión de Errores y ExcepcionesGiovanny Guillen
 
Programacion RPG: Conceptos ILE
Programacion RPG: Conceptos ILEProgramacion RPG: Conceptos ILE
Programacion RPG: Conceptos ILEGiovanny Guillen
 
Programacion RPG Operaciones
Programacion RPG OperacionesProgramacion RPG Operaciones
Programacion RPG OperacionesGiovanny Guillen
 
Programacion RPG Especificaciones de Entrada y Salida
Programacion RPG Especificaciones de Entrada y SalidaProgramacion RPG Especificaciones de Entrada y Salida
Programacion RPG Especificaciones de Entrada y SalidaGiovanny Guillen
 
Programación RPG - Conceptos
Programación RPG - ConceptosProgramación RPG - Conceptos
Programación RPG - ConceptosGiovanny Guillen
 
IBM i - Manejo de archivos y datos
IBM i - Manejo de archivos y datosIBM i - Manejo de archivos y datos
IBM i - Manejo de archivos y datosGiovanny Guillen
 
Gestión de la Capacidad en Fábricas de Software
Gestión de la Capacidad en Fábricas de SoftwareGestión de la Capacidad en Fábricas de Software
Gestión de la Capacidad en Fábricas de SoftwareGiovanny Guillen
 

Más de Giovanny Guillen (20)

Curso java desde cero nivel i - modulo v
Curso java desde cero   nivel i - modulo vCurso java desde cero   nivel i - modulo v
Curso java desde cero nivel i - modulo v
 
Curso java desde cero nivel i - modulo iv
Curso java desde cero   nivel i - modulo ivCurso java desde cero   nivel i - modulo iv
Curso java desde cero nivel i - modulo iv
 
Curso java desde cero nivel i - modulo iii
Curso java desde cero   nivel i - modulo iiiCurso java desde cero   nivel i - modulo iii
Curso java desde cero nivel i - modulo iii
 
Curso java desde cero nivel i - modulo ii
Curso java desde cero   nivel i - modulo iiCurso java desde cero   nivel i - modulo ii
Curso java desde cero nivel i - modulo ii
 
Curso java desde cero nivel i - modulo i
Curso java desde cero   nivel i - modulo iCurso java desde cero   nivel i - modulo i
Curso java desde cero nivel i - modulo i
 
Cobol training
Cobol trainingCobol training
Cobol training
 
Libro Ingeniería del Software
Libro Ingeniería del SoftwareLibro Ingeniería del Software
Libro Ingeniería del Software
 
Portafolio de proyectos
Portafolio de proyectosPortafolio de proyectos
Portafolio de proyectos
 
Seguridad del ibm i as400
Seguridad del ibm i as400Seguridad del ibm i as400
Seguridad del ibm i as400
 
Programacion RPG - Gestión de Errores y Excepciones
Programacion RPG - Gestión de Errores y ExcepcionesProgramacion RPG - Gestión de Errores y Excepciones
Programacion RPG - Gestión de Errores y Excepciones
 
Programacion RPG: Conceptos ILE
Programacion RPG: Conceptos ILEProgramacion RPG: Conceptos ILE
Programacion RPG: Conceptos ILE
 
Programacion RPG Operaciones
Programacion RPG OperacionesProgramacion RPG Operaciones
Programacion RPG Operaciones
 
Programacion RPG Especificaciones de Entrada y Salida
Programacion RPG Especificaciones de Entrada y SalidaProgramacion RPG Especificaciones de Entrada y Salida
Programacion RPG Especificaciones de Entrada y Salida
 
Programación RPG - Conceptos
Programación RPG - ConceptosProgramación RPG - Conceptos
Programación RPG - Conceptos
 
Organizational values
Organizational valuesOrganizational values
Organizational values
 
IBM i - AS/400 - SDA
IBM i - AS/400 - SDAIBM i - AS/400 - SDA
IBM i - AS/400 - SDA
 
IBM i - Manejo de archivos y datos
IBM i - Manejo de archivos y datosIBM i - Manejo de archivos y datos
IBM i - Manejo de archivos y datos
 
Ingenieria requerimientos
Ingenieria requerimientosIngenieria requerimientos
Ingenieria requerimientos
 
Earn value
Earn valueEarn value
Earn value
 
Gestión de la Capacidad en Fábricas de Software
Gestión de la Capacidad en Fábricas de SoftwareGestión de la Capacidad en Fábricas de Software
Gestión de la Capacidad en Fábricas de Software
 

Calidad en el Desarrollo de Software: Aseguramiento y Prevención de Defectos

  • 1. CALIDAD EN EL DESARROLLO DE SOFTWARE
  • 2. Agenda 1. Calidad de Software 2. Elementos de aseguramiento de calidad 3. Defect Prevention 4. Ampliación y eliminación de defectos 5. Eficacia en la remoción de defectos 6. Inspecciones y Revisiones Técnicas 7. Control Estadístico 8. Estándares 9. Calidad Proactiva 10. Objetivos y Meta del proceso
  • 3. Calidad de Software “Lo que ahoga a alguien no es caerse al río, sino mantenerse sumergido en el” Proceso eficaz que se aplica de manera que crea un producto útil que proporciona valor medible a quienes lo producen y a quienes lo utilizan. Debe estar alineado a los estándares relacionados con el aseguramiento de la calidad en los entregables y la gestión de riesgos. Producto que funciona Buena calidad Entrega dentro de presupuesto y plazo Satisfacción del usuario
  • 4. Calidad de Software Un producto es de buena calidad si le sirve a quien lo adquiere y si este lo usa para realizar la tarea para lo que fue concebido. Practicar el control de calidad consiste en realizar las acciones necesarias para este producto cumpla con los atributos de calidad y con las prestaciones que lo califican. Un proceso que implique el aseguramiento de calidad de los productos, bien concebido e implementado generará la mayor cantidad de las veces productos de buena calidad. Proceso de calidad Colaboración del equipo Mejor calidad, bajos costos
  • 5. Calidad de Software • Reglas del aseguramiento de la calidad del software:  Regla del 67%: dos terceras partes de los errors son introducidos en las fases de análisis y diseño.  Regla del 60/1000: Por cada 1000 líneas de código, son introducidos 60 errors.  Regla del 80%: Todo proceso inpección logra detector 80% de los errors.
  • 6. Calidad de Software • Atributos de la calidad: Atributos Funcionalidad Adecuación Precisión Seguridad Cumplimiento Fiabilidad Tolerancia a Fallos Recuperación Usabilidad Comprensibilidad Aprendizaje Eficiencia Uso de recursos Mantenibilidad Analizable Modificable Estabilidad Fácil de Probar Portabilidad Adaptabilidad Co-existencia
  • 7. Calidad de Software • Calidad de Uso: Atributos Efectividad Productividad Seguridad Satisfacción
  • 8. Calidad de Software • Aseguramiento de la calidad: Un patrón planificado y sistemático de acciones necesarias para para asegurar que el producto cumple con los requisitos funcionales y técnicos establecidos. • Control de calidad: Conjunto de acciones que ayudan a asegurar que todo producto cumpla con las metas de calidad establecidas. Tiempo Costos Alcance Calidad
  • 9. Calidad de Software • Costo de la calidad: El costo de la calidad incluye costos que genera la calidad o que demanda el desarrollo de actividades relacionada con la calidad. Se divide en: • Costos asociados con prevención: Revisiones técnicas. • Costos asociados con la evaluación: inspecciones en el proceso y fallas. • Garantía de la calidad: Consiste en un conjunto de funciones de auditoría e información que evalúa la efectividad y completitud de las actividades de control y aseguramiento de la calidad.
  • 10. Calidad de Software • Proceso básico de SQA:
  • 11. Calidad de Software • Proceso básico de pruebas:
  • 12. Elementos de Aseguramiento de Calidad • Estándares: Aplicar los estándares establecidos y definir todos aquellos que permitan mejorar la calidad de los productos. Aseguramiento Marco de referencia Estándares propios Revisiones Control de Calidad
  • 13. Elementos de Aseguramiento de Calidad • Revisiones: Realizar actividades orientadas a validar la calidad de los productos en cada punto de control del proceso. Las revisiones incluyen las revisiones técnicas, IQA’s y EQA’s. • IQA: Evaluaciones internas al equipo del proyecto. • EQA: Evaluaciones externas al equipo del proyecto. • Todas las IQA’s y EQA’s deben ser registradas en IPMS.
  • 14. Elementos de Aseguramiento de Calidad • Revisiones: En todos los proyecto se deben realizar por menos una IQA / EQA a mitad del proyecto y al final. • Criterios para realizar las IQA y EQA: • Dividir las unidades de revisión en Simple, Medio y Complejo y tomar al menos 20% de cada componente para realizar la IQA. • Seleccionar 10% de las unidades que han tenido número máximo de defectos en la IQA para realizar EQA.
  • 15. Elementos de Aseguramiento de Calidad • Revisiones: El 60% de los errores de un proyecto son detectados por este medio contra el 40% restante detectados por los test. 40% 60%
  • 16. Elementos de Aseguramiento de Calidad • Pruebas: Función de control de calidad que tiene como objetivo principal detectar errores. Como punto de control se exigirá la elaboración del plan de pruebas unitarias requerido como parte de los entregables del proyecto. Diseño de pruebas unitarias Plan de pruebas, Casos de pruebas y evidencia de pruebas unitarias Especificar casos de pruebas unitarias Describir casos de pruebas unitarias Ejecutar y documentar casos de pruebas unitarias
  • 17. Elementos de Aseguramiento de Calidad • Recolección y análisis de errores: Realizar mediciones en los puntos de control, analizar y aplicar las acciones correctivas. Control de calidad Recolección de datos Análisis de datos Determinar acciones correctivas Aplicar Acciones correctivas
  • 18. Elementos de Aseguramiento de Calidad • Educación: Determinar las necesidades de conocimiento relacionadas con la generación de productos de software de calidad y planificar los programas de capacitación que permitan darlos a conocer al personal. Necesidades Debilidades Programas de capacitación
  • 19. Elementos de Aseguramiento de Calidad • Estimaciones: En los procesos de desarrollo de software se deben considerar como parte de las actividades de estimación factores de calculo que permitan predecir la cantidad de defectos que se pueden generar en cada fase de un proyecto de desarrollo de software de modo de establecer de forma clara las actividades de prevención de defectos.
  • 20. Defect Prevention • Que es un defecto: • Un defecto en un producto es: • Producto que no cumpla los requisitos documentados. • No es apto para su uso. • Un defecto en un proceso es: Desviación no autorizada del proceso y procedimiento aprobado. • Impacto de los defectos: Los defectos tienen un impacto importante en la satisfacción del cliente. resultado de defectos en la considerable reelaborar lo que conduce tanto a horario y el deslizamiento esfuerzo.
  • 21. Defect Prevention • Proceso: • Responsables: • Desarrolladores: Realizar IQA. • Revisores asignados: Realizar EQA. • Equipo QA: (Documentación / Código), realizar análisis causal y definir planes de acción. Proceso de Software Identificación de defectos: IQA s, EQA s, Revisones, Pruebas Remoción del defecto Acción Correctiva Análisis Causal Prevención de Defectos: Plan para prevenirlo en el futuro Modificación del plan y/o proceso de software Prevención de defectos
  • 22. Ampliación y Eliminación de Defectos • “Dicen los médicos que en sus inicios algunas enfermedades son fáciles de curar pero difíciles de reconocer… más con el paso del tiempo, si no se detectaron al principio, se vuelven fáciles de reconocer pero difíciles de curar” Nicolás Maquiavelo Errores de la Etapa anterior Errores que pasan a la siguiente etapa Etapa Errores pasados por alto Errores amplificados Nuevos Errores generados Porcentaje de eficiencia en la detección y eliminación de errores
  • 23. Eficacia en la remoción de defectos • Medición de la capacidad de remoción de los defectos detectados. Se evalúa con la siguiente ecuación: • Donde: • E = Número de errores detectados en la inspección • D = Número de defectos detectados después de la corrección pos-inspección. 𝐸𝑅𝐷 = 𝐸 𝐸+𝐷
  • 24. Inspecciones y Revisiones Técnicas • Proceso básico revisiones:
  • 25. Inspecciones y Revisiones Técnicas • Esfuerzo realizado con y sin revisiones: Esfuerzo Tiempo Sin Inspecciones Con Inspecciones Entrega
  • 26. Inspecciones y Revisiones Técnicas • Costos y Fallas con y sin revisiones: Costos
  • 27. Inspecciones y Revisiones Técnicas • Resultados obtenidos con y sin revisiones: Proceso Construcción de Software Entra basura Incrementa los costos por retrabajo y reprocesamiento Sale basura Disminuye la credibilidad Proceso Construcción de Software Entran insumos De calidad Se reducen los costos Salen productos de calidad Incrementa la credibilidad
  • 28. Inspecciones y Revisiones Técnicas • Modelo de referencia: • Responsables: • Equipo de QA de la documentación • Equipo de QA del código / Catalogaciones Planificar Se conoce el proyecto No Visión General Si Preparación Realizar inspección Se encontraron defectos No Validar estado defectos Si Validar y corregir defectos Clasificar defectos Se requiere nueva inspección Generar reporte de defectos por tipo NoGenerar MétricasFin Si Si
  • 29. Control Estadístico • Objetivos: • Detectar y clasificar los defectos del software. • Rastrear cada defecto a su causa subyacente. • Aislar las causas vitales de la fuente principal de todos los errores. • Corregir los problemas que han causado los defectos. 17 8 9 10 6 7 9 16 7 10 14 8 6 8 16 11 5 11 12 9 0 5 10 15 20 25 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Datos Media LSC LIC
  • 30. Control Estadístico • Método: • Muestreo estadístico doble por atributos: Se evalúan y validan todos los atributos de calidad del software basados en criterios de aceptación estadística.
  • 32. Calidad Proactiva • Calidad Proactiva: La calidad es una acción proactiva donde todos los miembros del equipo deben participar en forma proactiva en la prevención, detección de oportunidades de mejora, solución de defectos y definición de planes de acción. Acción Preventiva Evaluar riesgos del proyecto Definir planes de acción preventiva Revisiones técnicas, IQA’s y EQA’s Determinar oportunidades de mejora
  • 33. Objetivos y Meta del Proceso • Meta: • Entregar productos de calidad que cumplan con los requerimientos funcionales establecidos y no funcionales, dentro de los tiempos y costos estimados en cada proyecto, reduciendo los costos asociados del re-trabajo mediante la implementación de controles para el aseguramiento de la calidad progresiva en el proceso de desarrollo de software en todos los proyectos y con un índice de CERO DEFECTOS.
  • 34. Objetivos y Meta del Proceso • Objetivos: • Entregar productos de calidad que cumplan con los requerimientos del cliente y requisitos implícitos de calidad. • Asegurar la participación activa del equipo en todas las actividades de aseguramiento de la calidad. • Realizar revisiones en todos los proyectos tanto de IQA como de EQA en forma objetiva. • Reportar cualquier cambio solicitado de forma no oficial en los proyectos ya que esto afecta la calidad. • Llevar un control claro y conciso de los defectos generados en el software que permita establecer oportunidades de mejora, controlar el tiempo invertido en re-trabajo y gestionar el costo de la calidad.