isw07_revisiones de sw
TRANSCRIPT
-
7/22/2019 ISW07_Revisiones de Sw
1/30
CALIDAD DE SOFTWARE
Inspecciones de SW
Erick Vicente
-
7/22/2019 ISW07_Revisiones de Sw
2/30
.REVISIONES
Informales Tcnicas
-ComprobacinEscritorio
-Revisin por
pares
-Inspecciones
-Recorridos
Tipos de verificacin
-
7/22/2019 ISW07_Revisiones de Sw
3/30
Ventajas No requiere ejecutable, por lo que puede ser
realizada desde el inicio del proceso de desarrollo
de software Se encuentran varios defectos a la vez. Hasta un
85% de los defectos del software.
Podemos localizar la posicin exacta del defecto
Refuerza el uso de estndares. Mejora la capacitacin de los ingenieros de
software.
Revisiones de software
-
7/22/2019 ISW07_Revisiones de Sw
4/30
Desventajas
Requiere del tiempo de los expertos.
No se pueden verificar caractersticas nofuncionales (Ej. Rendimiento).
Validan el cumplimiento de lo que se especific envez de lo que realmente desea el cliente.
Difcil de implementar (es vista como improductivapor los desarrolladores ).
Revisiones de software
-
7/22/2019 ISW07_Revisiones de Sw
5/30
Los requerimientos son las fuentes ms comunesde problemas dentro del proceso de desarrollode software.
Los requerimientos estn escritos en lenguajenatural, por personas que tienen poca o ningunacapacitacin en captura de requerimientos.
El lenguaje es impreciso, ambiguo y nodeterminstico. Por el contrario un software espreciso, no ambiguo y determinstico.
Importancia de las
revisiones
-
7/22/2019 ISW07_Revisiones de Sw
6/30
.Anlisis de
requerimientos
Anlisis
Diseo
Implementacin
Pruebas
Mantenimiento
1$
5$
20$
50$
100$
Costo de encontrar y corregir
defectos
-
7/22/2019 ISW07_Revisiones de Sw
7/30
Sin revisiones
6
2
4x1
9
7
8x3.5
20
40
15x5
30
Defectos
Defectos
en cadena
Nuevosdefectos
SRS
SDD
Code
6
15
55
50%
50%
50%
Pruebas
unitarias
Pruebas
del sistema
Pruebas
de aceptacin
145
72
36
18
Fuente IBM
Propagacin de errores
-
7/22/2019 ISW07_Revisiones de Sw
8/30
Con revisiones
6
1
2x1
9
4
2x3.5
20
12
3x5
30
Defectos
Defectos
en cadena
Nuevosdefectos
SRS
SDD
Code
3
6
15
50%
50%
50%
Pruebas
unitarias
Pruebas
del sistema
Pruebas
de aceptacin
28
14
7
3.5
Fuente IBM
50%
50%
50%
50%
Propagacin de errores
-
7/22/2019 ISW07_Revisiones de Sw
9/30
.Inspecciones
Walkthrough
Pair Review
Desk Checking
Ad-Hoc
Formales
Informales
Tipos de revisin
-
7/22/2019 ISW07_Revisiones de Sw
10/30
Son realizadas por el propio autor(es) o personas de lamisma categora del artefacto generado durante elproceso de desarrollo. Los artefactos a revisar son:
Especificaciones : SRS, UCS, SDS, etc.
Modelos de anlisis y diseo
Cdigo fuente
Son llevadas a cabo de manera informal, por tantodepende de la experiencia del autor o sus pares.
Revisiones informales
-
7/22/2019 ISW07_Revisiones de Sw
11/30
Revisin del artefacto o documentorecientemente elaborado.
Puede ser aplicado a todos los artefactosrealizados durante el proceso de desarrollo
Por ejemplo, despus de escribir unprogramas se verifica que cumpla con losestndares establecidos de programacin.
Desk Checking
-
7/22/2019 ISW07_Revisiones de Sw
12/30
Consiste en la revisin de un artefacto porpersonas que pertenecen a la misma rea y nivel
que el autor. Se puede poner en prctica cuando un panel
dentro del rea se encarga de revisarperidicamente muestras de cdigo.
Por ejemplo, se puede someter a revisin delcdigo de un programador por otrosprogramadores (sus pares).
Revisin por pares (Pair
review)
-
7/22/2019 ISW07_Revisiones de Sw
13/30
Los artefactos producidos durante el procesode desarrollo son revisados por un grupo
especializado de personas. La responsabilidad de la calidad del artefacto
producido no recae solamente sobre eldesarrollador, analista o diseador o sus
pares.
Revisiones tcnicas
-
7/22/2019 ISW07_Revisiones de Sw
14/30
Una inspeccin es una revisin formal, rigurosa y tcnicamentedetallada para identificar problemas, los mas cerca posible al punto deorigen.
Son realizadas hasta la implementacin del programa. Se analizan:
Especificaciones
Modelos Cdigo en lenguaje de alto nivel
Son tcnicas altamente efectivas:
En una sesin de inspeccin se pueden detectar varios defectos,mientras que las pruebas dinmicas pueden detectar un error porprueba
Se aprovecha el conocimiento sobre los errores comunes en unlenguaje de programacin y aplicacin.
Inspecciones
-
7/22/2019 ISW07_Revisiones de Sw
15/30
No deben reemplazar a las pruebas dinmicas
(validacin), sino como un proceso de verificacin
inicial para encontrar muchos defectos en el programa
o especificaciones. Verifica que los programas se encuentren codificados
de acuerdo a las especificaciones, pero no validan elcomportamiento dinmico del mismo.
Son un mtodo eficaz para detectar desviacionesrespecto a las especificaciones en las etapas inicialesdel proceso de desarrollo de software.
Inspecciones
-
7/22/2019 ISW07_Revisiones de Sw
16/30
Objetivos
Encontrar problemas los mas temprano posible dentro del
proceso de desarrollo.
Asegurar que las modificaciones solicitadas sean realizadas. Mejorar el conocimiento tcnico de los miembros del
equipo.
Incrementar la efectividad de la validacin de software.
Incrementar la calidad de los productos realizados por losingenieros de software.
Inspecciones
-
7/22/2019 ISW07_Revisiones de Sw
17/30
EquipoParticipante Descripcin
Autor El productor del artefacto sometido a revisin
Moderador Un inspector responsable de organizar (planificar, preparar
los checklist y distribuir los documentos) y ejecutar unainspeccin de software
Lector Presentar y guiar la revisin del artefacto durante la reunin
Registrador Registrar y documentar problemas, defectos y
recomendaciones encontrados durante la reunin en el
inspection issue log.
Inspector Un miembro de un equipo de inspeccin adems del autor.
Se elige de acuerdo a los skills necesarios para revisar el
artefacto.
Inspecciones - Roles
-
7/22/2019 ISW07_Revisiones de Sw
18/30
Caractersticas
Todos son inspectores El autor no puede ser ni moderador, ni registrador, ni inspector. Los otros roles pueden ser compartidos.
No son para evaluar el progreso de un producto, ni evaluar alautor del producto Esta orientado a encontrar defectos y no en corregirlos Existe un registro de la deteccin y correccin de defectos. El gerente no deben asistir a las reuniones de revisin. El autor debe estar para esclarecer, no para justificar el producto. No se debe preguntar el porqu, sino el para qu?
Inspecciones
-
7/22/2019 ISW07_Revisiones de Sw
19/30
Son revisiones en las que se intentademostrar la funcionalidad del objetorevisado, mediante la simulacin de sufuncionamiento con casos de prueba yejemplos.
Se introducen al objeto los casos de prueba y
se van registrando los resultados intermedios.
Recorridos Walkthrough
-
7/22/2019 ISW07_Revisiones de Sw
20/30
Atributos Inspeccin Walkthrough
Objetivo Encontrar problemas
Seguimiento a las
correcciones
Centrado en que el productocumpla con los
requerimientos
Encontrar problemas
Discutir alternativas de solucin
Centrado en demostrar que el
producto cumple con losrequerimientos.
Toma de decisiones El equipo de inspeccin
toma decisiones basado en
consenso
El autor toma todas las
decisiones
Lder El moderador El autor
Reunin Inspectores con
documentacinPares y gerentes. No
documentados
Inspecciones y recorridos
-
7/22/2019 ISW07_Revisiones de Sw
21/30
. .
Atributos Inspeccin Walkthrough
Presentacin dematerial
El material es presentadopor el lector
El material es presentado por elproductor
Procedimientos Formalmente documentados Informal
Capacitacin Requerida para todos los
participantes
No requiere
Inspecciones y recorridos
-
7/22/2019 ISW07_Revisiones de Sw
22/30
Quin decide que debe ser inspeccionado? El autor y el gerente del autor. No todos los
productos deben ser inspeccionados. Ej. criterios
para revisar el cdigo: Mdulos que son crticos para el correcto
funcionamiento del producto. Mdulos que son relativamente ms complejos que
otros (mayor complejidad ciclomtica).
En el pasado se han tenido gran cantidad errores enmdulos de similares caractersticas. Cuando un nuevo miembro del equipo o con poca
experiencia ha escrito el cdigo.
Preguntas frecuentes
-
7/22/2019 ISW07_Revisiones de Sw
23/30
Cules son los materiales necesarios para realizar la inspeccin?
Tipo Producto Inspeccionar si Materiales requeridos
Requerimientos SRSUCS
El equipo se encuentracapacitado
Los documentos previos se
encuentra aprobados
Documento de SRS UCSChecklist de req. o casos de
uso.
Diseo SDD El SRS ha sido inspeccionado y
las correcciones resueltas
SRS y SDD checklist
Cdigo Cdigofuente
El SDD ha sido inspeccionado ylas correcciones resueltas.
Elegir segn criterio.
Cdigo compilado
Cdigo listado yenumerado. Documento de
SDD y estndares de
programacin.
Checklist de cdigo
Preguntas frecuentes
-
7/22/2019 ISW07_Revisiones de Sw
24/30
Quin decide si es un problema?
Para poner una observacin como error o defecto, la decisin setoma por consenso.
Qu es un error? Un error es un problema en el cual el software o su
documentacin no concuerda con los requerimientos y esencontrado en su punto de origen.
Qu es un defecto? Es tambin un problema, pero es encontrado como una
consecuencia, no en su punto de origen. Por ejemplo: unproblema en los requerimientos encontrado durante la inspeccinde cdigo.
Preguntas frecuentes
-
7/22/2019 ISW07_Revisiones de Sw
25/30
Quin es el responsable de distribuir elmaterial? El autor es responsable de enviar todos los materiales
requeridos al moderador. El moderador es responsablede distribuir el material al equipo de inspeccin.
Qu pasa si el autor no esta de acuerdo con la
decisin? El equipo de inspeccin es quien decide cuales de los
problemas son registrados como errores o defectos. Elautor no participa en esta decisin.
Preguntas frecuentes
-
7/22/2019 ISW07_Revisiones de Sw
26/30
Inicializacin
Preparacin
Ejecucin
Reporte de
Resultados
Modificacin
y
seguimiento
Inicio
Fin
Politicas y
planes
Checklist
Defectos
Proceso de inspeccin
-
7/22/2019 ISW07_Revisiones de Sw
27/30
La inspeccin de los requerimientos debe ser una de lasactividades que nunca debe ser dejada de lado, enmuchos casos los requerimientos no son interpretadosde manera correcta porque estn escritos de manera
deficiente, incompleta, inconsistente y ambigua.
Muchas personas con diferente formacin yconocimientos se encuentran involucrados en elproceso de captura de requerimientos, y no son
consientes del impacto que tienen un requerimientosescrito de manera deficiente en el proceso de desarrollode software.
Inspeccin de requerimientos
-
7/22/2019 ISW07_Revisiones de Sw
28/30
Una especificacin de requerimientos debe tener lossiguientes atributos: No ambiguo: Cada requerimientos debe tener una sola
interpretacin
Completo: Un SRS es completo si tiene requerimientosrelacionados a la funcionalidad, performance, tiempos derespuesta, restricciones de diseo, interfaces externas, etc.Adems, debe contener la definicin de las respuestas atodas entradas conocidas en todas las situacionesconocidas.
Verificable: Cada requerimiento debe ser verificable por unproceso finito y efectivo.
Inspeccin de requerimientos
-
7/22/2019 ISW07_Revisiones de Sw
29/30
Consistente: No hay conflicto entrerequerimientos.
Modificable: Puede ser cambiado de manera
completa y consistente.
Rastreable: Cada requerimiento debe serclaramente rastreable a los documentospredecesores y tambin a los documentossubsecuentes.
Usable: Debe proveer suficiente informacin paralos futuros mantenimientos.
Inspeccin de requerimientos
-
7/22/2019 ISW07_Revisiones de Sw
30/30
P R E G U N T A S ?