24/11/2016
El Modelo de Madurez de Capacidades ( CMM, Capability Maturity Model) es un marco de referencia para evaluar la capacidad de una organización para gestionar sus procesos, especialmente en el desarrollo de software. Desarrollado por el Software Engineering Institute (SEI) de la Universidad Carnegie Mellon, el CMM proporciona una mejorar la eficiencia, la calidad y la predictibilidad de los proyectos.
¿Qué es el CMM y para qué sirve?
El CMM define cinco niveles de madurez, cada uno con un conjunto de áreas clave de proceso (KPA) que deben ser implementadas para alcanzar ese nivel. Estos niveles representan el grado de sofisticación y consistencia de los procesos de la organización. Una organización que opera en un nivel superior de madurez generalmente produce proyectos de mayor calidad, con menos errores y dentro del presupuesto y plazo previsto.
Los cinco niveles de madurez del CMM
- Inicial: Falta de control y planificación. El éxito se basa en el esfuerzo individual y la predictibilidad es baja. Los proyectos suelen tener retrasos y sobrecostes.
- Repetible: Se establecen procesos básicos de gestión de proyectos y seguimiento de la calidad. La gestión de subcontratistas y clientes es sistemática.
- Definido: Se definen estándares y procesos documentados para la gestión de proyectos, coordinación de equipos, formación y métricas de procesos. Se implementan revisiones por pares.
- Gestionado: Se utilizan métricas para la toma de decisiones y gestión de riesgos. El software resultante es de alta calidad.
- Optimizado: La organización se enfoca en la mejora continua de los procesos a través de la innovación y el uso intensivo de métricas.
Áreas Clave de Proceso (KPA)
Cada nivel de madurez en el CMM comprende varias KPA. Estas son áreas específicas del proceso que deben ser abordadas para avanzar a un nivel superior. Las KPA se dividen en tres tipos:
- Gestión: Se enfoca en la planificación, seguimiento y control de proyectos.
- Organizacional: Trata con las estructuras, procesos y políticas de la organización.
- Ingeniería: Se centra en las técnicas y prácticas utilizadas para el desarrollo del software.
Algunas KPAs comunes incluyen gestión de requisitos, gestión de configuración, gestión de calidad, gestión de riesgos y gestión de proyectos. Cada KPA define un conjunto de prácticas que deben ser implementadas para alcanzar la madurez.
Características Comunes del CMM
Para que una KPA se considere efectiva, debe cumplir con cinco características comunes:
- Compromiso de la realización: La organización se compromete a implementar la KPA.
- Capacidad de realización: La organización tiene los recursos y la formación necesarios para implementar la KPA.
- Actividades realizadas: Las actividades de la KPA se realizan de forma sistemática.
- Mediciones y análisis: Se realizan mediciones para monitorear el progreso y el desempeño.
- Verificación de la implementación: Se verifica que la KPA se haya implementado correctamente.
CMMI : Evolución del CMM
El CMMI (Capability Maturity Model Integration) es la evolución del CMM. Integra varios modelos de madurez, incluyendo el CMM para software, en un único marco. El CMMI es más flexible que el CMM, permitiendo a las organizaciones adaptar el modelo a sus necesidades específicas.
Diferencias clave entre CMM y CMMI
A continuación, una tabla comparativa que resume las diferencias clave entre el CMM y el CMMI :
Característica | CMM | CMMI |
---|---|---|
Enfoque | Software | Multidisciplinario |
Estructura | Niveles secuenciales | Modelo continuo o estacionario |
Flexibilidad | Menos flexible | Más flexible |
Implementación | Más complejo | Más adaptable |
Certificación | Ya no disponible | Disponible |
Beneficios de la implementación del CMM / CMMI
La implementación del CMM o CMMI ofrece numerosos beneficios, entre ellos:
- Mejora de la calidad del software: Los procesos más robustos producen software de mayor calidad.
- Reducción de costos: La eficiencia mejorada reduce los costos de desarrollo.
- Reducción de tiempo de entrega: La planificación y el control mejorados reducen el tiempo de desarrollo.
- Mayor predictibilidad: La gestión de riesgos mejorada permite predecir mejor los resultados del proyecto.
- Mejora de la satisfacción del cliente: La calidad y la predictibilidad mejoradas aumentan la satisfacción del cliente.
- Mejor gestión de riesgos: Se identifica y mitiga los riesgos de manera más eficaz.
Consultas habituales sobre CMM
A continuación, algunas de las consultas más habituales sobre el CMM :
- ¿Es necesario certificarse en CMM o CMMI? La certificación no es obligatoria, pero puede ser un factor clave para algunos clientes.
- ¿Cuánto cuesta implementar el CMM o CMMI? El costo varía según el tamaño de la organización y el nivel de madurez que se busca alcanzar.
- ¿Cuánto tiempo lleva implementar el CMM o CMMI? El tiempo también varía, pero suele ser un proceso a largo plazo.
El CMM y el CMMI son herramientas valiosas para mejorar la capacidad de una organización para gestionar sus procesos de desarrollo de software. Si bien requieren un esfuerzo significativo, los beneficios a largo plazo pueden ser sustanciales.