Upload
lylien
View
219
Download
0
Embed Size (px)
Citation preview
Aseguramiento de la calidad y pruebas
de software
2- Estándares y Modelos para la mejora del proceso de software
Blanca A. Vargas Govea – [email protected] – Febrero 8, 2013
Objetivo
2
Conocer los diferentes estándares y modelos de
referencia para la mejora de procesos de
software
SQA (Software Quality Assurance)
3
SQA tiene su propio ciclo de vida y cubre todas
las facetas de un proyecto se software
Ciclo de vida de la administración de proyectos (PMLC)
Inicio Planeación Ejecución Monitoreo y
control
Cierre
4
Procesos de aseguramiento de la calidad de software (SQA)
Análisis Diseño Desarrollo Implementación Pruebas
Ciclo de vida de desarrollo de software (SLDC)
5
Inicio del
proyecto Planeación Análisis Codificación Pruebas
Cierre del
proyecto Diseño
Inicio
SQA
Planeación
SQA
Aseguramie
nto Req
Aseguramie
nto
Desarrollo
Aseguram
iento
Pruebas
Cierre
SQA
Aseguram
iento
Diseño
Ciclo de vida de administración de proyectos y
desarrollo de software
Ciclo de vida de aseguramiento de la calidad
(SQA)
Proceso de software
6
Puede definirse como un conjunto de actividades,
métodos y prácticas que la gente usa para desarrollar y
mantener software y los productos asociados (e.g.,
planes, documentación del diseño, código, casos de
prueba, manuales de usuario).
Capability Maturity Model SM for Software, Version 1.1
Estándares y modelos de referencia
7
CMMI
TSP
PSP
ISO 15504/SPICE
Six Sigma
MoProSoft
Cada organización
puede adoptar un
modelo para trabajar
conforme a él o bien
adoptar guías propias
Estándares y modelos de referencia
8
CMMI GP 1.1 Identify Work Scope
Identify the scope of the work to be performed and
work products or services to be produced, and
communicate this information to those performing the
work.
The purpose of this practice is to ensure that the
people doing the work have a common understanding
of the work to be performed and work products to be
produced.
Ejemplo de una práctica genérica (Nivel 1)
CMMI SM for Systems Engineering/Software Engineering, Version
1.02 (CMMI-SE/SW, V1.02)
Evaluadas
9 https://sas.cmmiinstitute.com/pars/pars.aspx
Aunque es común escuchar
los términos “certificación”
y “acreditación”, para
CMMI no existen. Las
organizaciones son
evaluadas por un evaluador
autorizado por SEI
(Software Engineering
Institute) http://www.sei.cmu.edu/
http://everac99.wordpress.com/2010/10/20/cmmi-certified-companies-in-
mexico-and-the-world/
10
Team Software Process / Personal Software
Process
http://www.sei.cmu.edu/library/abstracts/reports/00tr022.cfm
http://www.sei.cmu.edu/tsp/
11
PSP
12
CMMI se enfoca en “qué” se debe hacer y no “cómo”.
PSP guía a los ingenieros a mejorar su calidad y productividad en los procesos en los que participan.
Define 4 niveles de madurez e identifica los pasos para alcanzar el siguiente.
1. PSP0 – Medición personal-
2. PSP1 – Planeación personal
3. PSP2 – Calidad personal
4. PSP3 – Proceso cíclico
13
PSP
14
Recolección de tamaño,
tiempo y datos
Cómo estimar el trabajo
en una forma consistente
y explicable
Cómo usar las propias
medidas para mejorar la
estimación
Cómo mejorar de forma
contínua la calidad del
trabajo http://www.sei.cmu.edu/reports/00tr022.pdf
Si ahora
agrego 10
contactos por
minuto, ¿cómo
hacer para
mejorar?
15
16
PSP - Niveles
17
PSP0
Cómo medir el tiempo de
desarrollo y los defectos
que han introducido y
eliminado.
Se introduce el uso de
estándares de código,
medidas y una forma de
proponer mejoras al
proceso personal.
PSP1,
Se aprenden técnicas para
estimar el tamaño y tiempo
de desarrollo con base en
los datos recolectados en
PSP0.
Se aprende a planear tareas
y horarios.
PSP - Niveles
18
PSP2 - Adminstración de
defectos. Se usan los datos
de las etapas anteriores
para construir listas e
identificar los defectos
que más se generan.
PSP3 – Proceso cíclico.
Constante monitoreo de
errores introducidos y
eliminados y constante
revisión de la lista de
defectos llevará a mejoras
en la calidad personal.
TSP (Team Software Process)
19
TSP usa las habilidades de PSP.
Team Software Process (TSP) extiende y refina CMM y PSP para guiar a los ingenieros en el desarrollo y mantenimiento de equipos de trabajo (20p)
Enseña cómo construir un equipo auto-dirigido efectivo, cómo guiarlos y administrarlos
20
21
22
SPICE (Software Process Improvement and Capability
Determination)
SPICE
23
Surgimiento de diversas
metodologías de
evaluación originó la no-
estandarización
Iniciativa de ISO
International Organization
for Standardization y de
IEC International
Electrotechnical
Commission 1993
Armonizar las
metodologías existentes
en un modelo
comprensivo
SPICE: meta
24
Construir un estándar internacional para evaluación del proceso de software cubriendo el desarrollo, adquisición, administración, soporte al cliente y calidad, también preocupaciones del cliente y transferencia de tecnología.
Se basa en el conocimiento adquirido de otras metodologías.
http://www.cs.helsinki.fi/u/paakki/Pyhajarvi.pdf
Estructura
25
6 niveles de
competencia
Existe gran conformidad con el modelo CMM
Partes del estándar
26
¿y en relación a CMMI?
27
ISO/IEC 15504 no ha sido tan exitoso como CMMI.
ISO/IEC 15504 no está disponible de forma gratuita. CMM yCMMI están disponibles del sitio de SEI.
CMMI es patrocinado por el Departamento de Defensa de Estados Unidos.
CMM surgió primero.
28
Six Sigma
29
Filosofía de administración
Enfocada en el cliente
Orientada a metas
Escuchar la voz del cliente
y convertir sus
necesidades en
requerimientos medibles
Six Sigma
30
Six Sigma proceso que ayuda al desarrollo y entrega de productos y servicios casi perfectos.
Six Sigma se originó en Motorola a finales de 1980s,Bill Smith.
Sigma es un término estadístico que mide que tanto se desvía un producto de la perfección.
Six Sigma
31
La idea central es que si
puedes medir cuántos
defectos tienes en un
proceso, puedes
sistemáticamente descubrir
cómo eliminarlos y
acercarte a tener cero
defectos.
Para lograr calidad Six Sigma,
un proceso debe producir
no más de 3.4 defectos por
millón de oportunidades.
Una “oportunidad” se define como una
probabilidad de no-conformidad, o no lograr
las especificaciones requeridas
Escala Sigma
32
Medida universal del desempeño de una organización.
A mayores valores de Sigma corresponde mejor desempeño.
Si la salida es defectuosa 69% de las veces, significa que tiene Un Sigma de conformidad.
Si la salida es defectuosa 31% de las veces, está mostrando una conformidad de Dos Sigma.
Table: The Sigma Scale
Sigma Percent Defective Defects per Million
1 69% 691,462
2 31% 308,538
3 6.70% 66,807
4 0.62% 6,210
5 0.02% 233
6 0.00% 3.4
7 0.00% 0.019
Seis Sigma significa una salida casi perfecta,
solamente de 3.4 defectos por millón de
La mayoría de las organizaciones entregan
resultados entre el Tres y Cuatro Sigma.
Metodología básica: DMAIC
33
Para modificar un proceso existente
Definir las metas para la mejora del proceso de acuerdo
a las demandas del cliente y las estrategias de la
organización.
Medir el desempeño actual y reunir datos relevantes
para el futuro.
Analizar el escenario actual y observar la relación entre
los parámetros y el desempeño.
Mejorar el proceso con base en el análisis para
optimizarlo.
Controlar los parámetros antes de que afecten la salida.
Implementación
34
Profesionalizó los roles de
administración de la
calidad. Adopta una
nomenclatura de artes
marciales para definir la
jerarquía que cubre todos
los tipos de funciones de
negocios
Líderes ejecutivos:
visionarios que autorizan a
otros miembros del equipo y
les proporcionan los
recursos para la mejora del
proceso.
Campeones o líderes de calidad: Implementan e integran la metodología Seis Sigma en la organización. Son seleccionados por los líderes ejecutivos. Son mentores de los Cinturones Negros.
Maestros Cinturones Negros, son entrenadores expertos en Seis Sigma. Actúan como guías de Cinturones Negros y Verdes y ayudan a los Campeones a implementar Seis Sigma.
Implementación
35
Cinturones negros: operan bajo
la guía de los Maestros Cinturones
Negros y su tarea es aplicar la
metodología Seis Sigma. Su
función principal es la ejecución de
Seis Sigma.
Cinturones Verdes Trabajan en
la implementación de Seis Sigma.
Son guiados por los Cinturones
negros.
Cinturones amarillos han sido
entrenados en Seis Sigma pero no
lo han aplicado.
Por otro lado
36
El estándar no puede ser
óptimo para algunos
procesos.
Salud: puede requerirse
más.
Ciertas operaciones
pueden funcionar bien con
un valor menor.
No hay clara justificación
acerca del número Seis.
¿Por qué 6?
CMM Six Sigma
37
CMM se basa en el punto
de vista de la
organización.
Six Sigma se basa en el
punto de vista del cliente.
Lo que él necesite se
traduce a productos y
procesos en Six Sigma.
http://crackmba.com/difference-between-six-sigma-and-cmm/
38
Modelo de Procesos de Software
MoProSoft
39
A solicitud de la
Secretaría de Economía
para servir de base a la
Norma Mexicana para la
Industria de Desarrollo y
Mantenimiento de
Software bajo el convenio
con la Facultad de
Ciencias, Universidad
Nacional Autónoma de
México.
MoProSoft
40
Modelo de procesos de software. Norma NMX-059/01-
NYCE-2005 declarada el 15 de Agosto del 2005
CMMI y SPICE no apropiadas para empresas pequeñas,
medianas
1er versión Nov 2002
http://blogadmi1.files.wordpress.com/2009/02/moprosoft.pdf
Divide el proyecto en 4 fases
41
Estructura: 3 Categorías
42
Alta dirección (DIR) Se establecen los lineamientos para los procesos de la Categoría de Gerencia y se retroalimenta con la información generada por ellos en apoyo a la estrategia de la organización.
Gerencia (GER) Se definen los elementos para el funcionamiento de los procesos de la Categoría de Operación en función de la estrategia de Dirección.
Operación (OP) Se realizan las actividades de acuerdo a los elementos proporcionados por la Categoría de Gerencia y entrega a ésta la información y productos generados.
Estructura: 3 Categorías
43
1. Categoría Dirección
Gestión de negocios
2. Categoría Gerencia
Gestión de proyectos
Gestión de recursos
Recursos humanos y ambiente de trabajo
Bienes, servicios e infraestructura
Conocimiento de la organización
3. Categoría Operación
Administración específica de proyectos
Desarrollo y mantenimiento de software
Niveles de madurez
44
1. Realizado. El proceso se
implementa y alcanza su
propósito.
2. Gestionado. El proceso
realizado se administra. Sus
productos de trabajo están
establecidos, controlados y
mantenidos.
3. Establecido. El proceso
realizado y gestionado se
implementa por medio de
un proceso definido.
4. Predecible. El proceso
establecido opera bajo
límites definidos y
conocidos.
5. Optimizado. El proceso
predecible se mejora
continuamente.
Uso de metodologías
45
Encuesta 114 empresas de desarrollo de software (2007)
Metodologías propias 45.41%
Metodologías ágiles 41.25% (XP, Scrum, espiral)
Modelos y estándares 13.34% (CMM, CMMI, ISO)
Actividad 7: en equipo
46
Investigación:
Buscar en medios diversos (foros de discusión, blogs, documentos, etc.) problemas, quejas, inconformidades que los usuarios/clientes describen sobre los modelos/metodologías/estándar (CMMI, TSP, PSP, SPICE, Six Sigma y MoProSoft)
Hacer un reporte crítico que contraste lo que el modelo/metodología/estándar ofrece con los problemas que encontraste. ¿Consideras que son problemas reales o uso deficiente de los
modelos?
¿Estás de acuerdo con los aspectos negativos reportados? ¿por qué?
Viendo ambas caras, ¿cuál es su opinión sobre el uso de modelos/metodologías/estándares?
Enviar por correo – formato pdf
Avance de proyecto
47
Martes 12 de Febrero
Descripción y alcance del proyecto, requerimientos
funcionales y no funcionales: Documento basado en el
estándar SRS830-1998 IEEE
Guía inicial para los componentes del aseguramiento de la
calidad (Sesión 4):
1. Control de calidad
2. Administración de configuraciones de software
Presentación (Power Point o cualquier software de
presentaciones) No documento de texto.
Examen – Primer parcial
48
Viernes 15 de Febrero
Referencias
49
Galin, Daniel. Software Quality Assurance, Software quality assurance : from
theory to implementation, Harlow, Essex ; New York, N.Y. :
Pearson/Addison Wesley, 2004., England, 2004.
http://www.navegapolis.net/content/view/515/59/
Sergio Alan Flores Rosales. Modelo de calidad para la microempresa basado
en MoProSoft. Tesis de maestría. Universidad de Colima. Febrero 2012.
http://www.ge.com/en/company/companyinfo/quality/whatis.htm
http://www.allsoft.mx/recursos/AS-Moprosoft.pdf
http://sixsigmabasics.com/
http://www.ge.com/en/company/companyinfo/quality/whatis.htm
http://crackmba.com/difference-between-six-sigma-and-cmm/
http://www.navegapolis.net/content/view/515/59/
http://blogadmi1.files.wordpress.com/2009/02/moprosoft.pdf