CMM-SW
Modelo de Madurez de la Capacidad para el desarrollo de Software (Capability Maturity Model for Software, SW-CMM) es un modelo de procesos para el desarrollo y mantenimiento de sistemas de software, diseñado sobre los siguientes criterios:
- La calidad de un producto o sistema es consecuencia directa de los procesos empleados en su desarrollo.
- Las organizaciones que desarrollan software presentan un atributo denominado madurez, cuya medida es proporcional a los niveles de capacidad e institucionalización de los procesos que emplean en su trabajo.
Origen
Fue diseñado a finales de los ochenta por Software Engineering Institute (SEI) a instancias del Congreso Norteamericano, como medio para evaluar a las empresas suministradoras de software para el Departamento de Defensa Norteamericano.
CMM (como se le denomina abreviadamente) define 5 niveles de madurez para las organizaciones, en función de cuáles son los procesos que emplean en el desarrollo y mantenimiento de software y los grados de capacidad e institucionalización de cada uno; y puede emplearse con dos finalidades:
- Criterio para la evaluación de la madurez de la organización.
- Guía para la mejora de sus procesos.
Evolución
Tras su creación en 1984 SEI comenzó la investigación para desarrollar un marco de mejora y evaluación de la previsibilidad y calidad de las empresas y el resultado se denominó "Capability Maturity Model for Software" SW-CMM o abreviadamente CMM, cuya versión 1.0 se publicó en agosto de 1991. Posteriormente se publicaron las revisiones 1.1 en 1993 y 1.2 en 1997.
Hoy es un modelo obsoleto, que SEI ya no mantiene desde que en 2000 fue relevado e integrado en el nuevo CMMI.
Niveles de madurez definidos en SW-CMM
Nivel 1: inicial
Los resultados de calidad obtenidos son consecuencia de las personas y de las herramientas que emplean. No de los procesos, porque o no los hay o no se emplean.
Nivel 2: repetible
Se considera un Nivel 2 de madurez cuando se llevan a cabo prácticas básicas de gestión de proyectos, de gestión de requisitos, control de versiones y de los trabajos realizados por subcontratistas. Los equipos de los proyectos pueden aprovechar las prácticas realizadas para aplicarlas en nuevos proyectos.
Nivel 3: definido
Los procesos comunes para desarrollo y mantenimiento del software están documentados de manera suficiente en una biblioteca accesible a los equipos de desarrollo. Las personas han recibido la formación necesaria para comprender los procesos. Para cada proyecto en particular, se adaptan los procesos estándar según las necesidades del caso, es consistente la base de procesos.
Nivel 4: gestionado
La organización mide la calidad del producto y del proceso de forma cuantitativa con base a métricas establecidas
La capacidad de los procesos empleados es previsible, y el sistema de medición permite detectar si las variaciones de capacidad exceden los rangos aceptables para adoptar medidas correctivas.
Nivel 5: optimizado
La mejora continua de los procesos afecta a toda la organización, que cuenta con medios para identificar las debilidades y reforzar la prevención de defectos. Se analizan de forma sistemática datos relativos a la eficacia de los procesos de software para analizar el coste y el beneficio de las adaptaciones y las mejoras.
Se analizan los defectos de los proyectos para determinar las causas, y su mapeado sobre los procesos. Es el nivel más alto de CMM por el momento.
Véase también
- CMMI.