Proceso de desarrollo con
UML y el modelo CMM
M. de la Cámara Delgado
F. Sanchis Marco
[email protected]
[email protected]
Objetivo
Presentar
la
adecuación
de
las
técnicas y métodos de UML (Unified
Modeling Language) al proceso de
mejora de una organización, tomando
como
modelo
Maturity Model)
el
CMM
(Capability
Agenda
Modelo CMM
Áreas Claves del Proceso (KPA) en un
Proyecto de Desarrollo Software.
Técnicas UML en el modelo CMM
Conclusiones
Modelo CMM: Objetivos
Objetivo 1: Determinar el nivel de
madurez del Proceso de Desarrollo que
permita establecer un indicador de Calidad
del proceso. -> 5 Niveles de Madurez
Objetivo 2: Servir de guía en el Proceso de
Desarrollo permitiendo la Mejora Continua
de la organización -> Control de Procesos
Modelo CMM
N5: Optimizado
N4: Gestionado
N3: Definido
N2: Repetible
N1: Inicial
Resultados cuantificados, con
opción de mejora
Medidas de Producto y Proceso.
Registro de valores de Calidad
Desarrollo
y
Mantenimiento
documentado y Estandarizado
Gestión del proceso seguimiento de:
coste, planificación y funcionalidad
El éxito del proceso depende del esfuerzo
individual
Modelo CMM
N5: Optimizado
N4: Gestionado
5 Niveles de Madurez
18 Áreas Clave de Proceso
(KPA) en el CVS
Marco de trabajo
Actividades
N3: Definido
N2: Repetible
N1: Inicial
Conjunto de Tareas
Tareas
Hitos, entregas
Puntos SQA
Actividades de Protección
Claves del Proceso (KPA)
KPA
 Objetivos
 Compromisos sobre distintas Unid.Negocio
 Capacidades organizativas y técnicas
 Actividades
 Métodos de supervisar la implantación
 Métodos de verificar la implantación
KPA: Proceso Desarrollo Software
NIVEL 2: Repetible
Gestión de Requisitos
Planificación del Proyecto
Seguimiento y Supervisión del Proyecto
Software
Gestión de Subcontratación del Software
Garantía de Calidad del Software
Gestión de Configuración del Software
KPA: Proceso Desarrollo Software
Nivel 3: Definido
Enfoque del proceso de la organización
Definición del proceso de organización
Programa de formación
Gestión de integración del software
Ingeniería de productos software
Coordinación entre grupos
Revisiones periódicas
KPA: Proceso Desarrollo Software
Nivel 4: Gestionado
Gestión cuantitativa del proceso
Gestión de calidad del software
Nivel 5: Optimización
Prevención de defectos
Gestión de la tecnología
Gestión de cambios en el proceso
Proceso de Desarrollo con UML
Dirigido por los
Casos de Uso
Centrado en la
Arquitectura
Iterativo e
Incremental
Proceso de Desarrollo con UML
FASES
Workflow
Identificación
Planificación Elaboración
Anál. Riesgos
Preparación
Construcción
Verificación
Transición
Iteración en
Fase de Elaboración
Análisis
Diseño
Implantación
Prueba
Iteración-es
Inicial-es
Iter.
#1
Iter.
#2
Iter.
#3
Iter.
#4
Fuente: Gráfico adaptado de documentos www.rational.com
Iter.
#5
Iter.
#6
Iter.
#7
Iteraciones
Proceso de Desarrollo: Modelos
Factores
NO Medibles
P
r
o
y
e
c
t
o
SQA
Factores
Medibles
Cliente
Gestión
de
Proyect o
----------------------------------------------
---------------------------------------------Plan de
Desarrollo
----------------------------------------------
Proceso de
Ingeniería
Plan de
Iteración
Diseño
Pruebas
Gestor de
Configuración
Riesgos
---------------------------------------------Control de
Iteración
---------------------------------------------Plan de
Prueba
Ingeniería del Software
---------------------------------------------Plan de
Proyect o
---------------------------------------------Plan de
Medida
---------------------------------------------Casos de
Negocio
----------------------------------------------
---------------------------------------------Control de
Estado
---------------------------------------------Plan de
Gestión de
Configuración
Cambios de
Requisit os
Defect os
---------------------------------------------Desarrollo
de Casos
SQA
Organización
SQA
---------------------------------------------Plan de
Control de
Desarrollo
Estándares
Técnicas UML en el modelo
CMM. Nivel 2: Repetible
Gestión de Requisitos: Captura y Gestión de Requisitos en
todo el CVS
Captura (Escenarios)
Modelo de Casos de Uso
Especificaciones no funcionales
Inspección de Casos de uso
Informes de Casos de Uso
Diccionario
Controles
Iterativos:
• Gestión de Requisitos:
– Plan de Iteración
– Plan de Integración
– Plan de Proyecto
– Plan de Desarrollo
• Medida
• Riesgo
• Tiempo
Objetivos (Identificación)
Arquitectura (Elaboración)
Capacidad de Operación (Construcción)
Versiones de Productos (Transición)
Técnicas UML en el modelo
CMM. Nivel 2: Repetible
Planificación del Proyecto: Plan realista de ejecución de IS
Estimaciones Software: Medidas • Actividades y Acuerdos
Planificados y Documentados
Progreso (LOC, NC, Reusabilidad ...)
Estabilidad (Tip.de Reusabilidad, …)
Adaptabilidad (Costes de Reusabilidad)
Modularidad (Impacto de Extensiones)
Calidad (Error descubierto, Densidad,
Profundidad de Herencia, Reusabilidad)
Madurez (Horas de Prueba por fallo)
Perfil de Recursos (Plan/Actual)
– Casos de Negocio
– Plan de Desarrollo de Software
• Plan de Medida
• Lista de Riesgos
• Plan de Proyecto
– Plan de Iteración
– Control de Iteración
– Estado de Control
Técnicas UML en el modelo
CMM. Nivel 2: Repetible
Seguimiento
y
Supervisión
Software: Reproducir el estado actual
del
Proyecto
y progreso del proceso,
permitiendo tomar las acciones de corrección cuando se produzca
desviación.
Informe de Control de Estado: En cada iteración, y a lo largo
de todo el CVS. Entrada de la toma de decisiones
Lista de Riesgos: recoge los puntos críticos del proyecto.
Entrada de Planificación y de Seguimiento:
Impacto del punto crítico
Plan de contingencia
Control de Cambios: De acuerdo al Plan Inicial - Afectados
Técnicas UML en el modelo
CMM. Nivel 2: Repetible
Gestión de “Sub-Contratación” de Software:
Selección de software cualificado, y gestionarlo correctamente.
Definido en los Casos de Negocio. Software para:
Gestión de Requisitos
Planificación de Proyectos
Seguimiento y Control de Proyectos
Aseguramiento de Calidad
Gestión de Configuración
Técnicas UML en el modelo
CMM. Nivel 2: Repetible
Garantía de Calidad del Software: Tanto en la IS como
en la gestión de procesos. Responsabilidad de todos los implicados
y por lo tanto embebida en la organización.
Actividades Planificadas: Cada
actividad está dotada de un control
con los criterios de revisión ->
Auditoría
Estándares
aplicables
a
actividades y productos: Plantillas
Informar del estado a los
grupos e individuos implicados:
Añadir a las entradas de calidad
Informes de recursos (técnicos y
financieros)
Medidas:
Progreso (LOC, NC, Reusabilidad ...)
Estabilidad (Tip.de Reusabilidad, …)
Adaptabilidad (Costes de Reusabilidad)
Modularidad (Impacto de Extensiones)
Calidad (Error descubierto, Densidad,
Profundidad de Herencia, Reusabilidad)
Madurez (Horas de Prueba por fallo)
Perfil de Recursos (Plan/Actual)
Técnicas UML en el modelo
CMM. Nivel 2: Repetible
Gestión de Configuración del Software: Establecer y
mantener la integridad de los productos del proyecto.
Plan
de
Gestión
de
Configuración e Integración
Descripción de la configuración
de control y de su gestión.
Identificación y gestión de los
cambios en los productos software
Información y ayuda en el
rastreo de las líneas base a todos
los implicados
Control de Versiones
Modelos de Proceso y Configuración
de Modelos
Gestión de Cambios y Versiones
Conclusión
La aplicación del Modelo de Proceso de
Desarrollo con UML en un proyecto software,
permite situar a la organización en el nivel 2
del modelo CMM
La definición del Modelo de Proceso de
Desarrollo con UML en la organización, puede
adecuarse para llevar a cabo proyectos con
otro tipo de productos, y situarla en el nivel 3
Descargar

Proceso de desarrollo con UML y el modelo CMM