2009-11-18

Modelo CMM - Modelo CMMI

Por Joaquin Gracia
14 de Agosto de 2005

Cuando el responsable del departamento de desarrollo me dijo que íbamos a implantar un modelo de calidad llamado CMM - CMMI, pensé "Oh! Dios mío esto va a ser muyyyy, muyyyy aburrido".

Me pasó el documento con el modelo y mis peores pensamientos se confirmaron. Por si alguno de vosotros no ha visto el modelo de calidad CMM - CMMI el lomo tiene más de cuatro dedos de grosor, tu pones la mano encima de la mesa y el modelo CMMI sobresale.

Sin embargo, al final de este camino, la implantación de procesos de gestión y desarrollo de proyectos ha sido una de las cosas más enriquecedoras que he podido hacer. Si, porque al instalar procesos te permite trabajar con personas, que aunque siempre es difícil, también es muy satisfactorio.

Por aquel entonces lo poco que había oído de modelos de calidad era sobre la ISO 9000, también había oído la mayoría de las empresas realmente les importa muy poco la calidad de lo que producen si no más bien tener la certificación y poner dicho sello en su publicidad. Muchas de ellas siguen todavía esta filosofía.

Pero como soy muy curioso y confío más en la Web que en los estándares oficiales para entender las cosas, me puse a investigar (cotillear) por la web.

De mis experiencias en estos 2 años con el modelo CMM - CMMI voy a intentar explicaros de una forma clara y sencilla en que consiste este modelo de calidad del software.

El nacimiento de CMM - CMMI

El departamento de defensa de los estados unidos tenía muchos problemas con el software que encargaba desarrollar a otras empresas, los presupuestos se disparaban, las fechas alargaban más y más. ¿Quién no se ha encontrado con este tipo de problemas si ha trabajado con una empresa de software?

Como esta situación les parecía intolerable convocó un comité de expertos para que solucionase estos problemas, en el año 1983 dicho comité concluyó "Tienen que crear un instituto de la ingeniería del software, dedicado exclusivamente a los problemas del software, y a ayudar al Departamento de Defensa".

Convocaron un concurso público en el que dijeron: "Cualquiera que quiera enviar una solicitud tiene que explicar como van a resolver estos 4 problemas", se presentaron diversos estamentos y la Universidad Carnegie Mellon ganó el concurso en 1985, creando el SEI.

El SEI (Software Engineering Institute) es el instituto que creó y mantiene el modelo de calidad CMM - CMMI

¿Qué es el CMM - CMMI?

El CMM - CMMI es un modelo de calidad del software que clasifica las empresas en niveles de madurez. Estos niveles sirven para conocer la madurez de los procesos que se realizan para producir software.

Niveles CMM - CMMI

Los niveles CMM - CMMI son 5:
  • Inicial o Nivel 1 CMM - CMMI. Este es el nivel en donde están todas las empresas que no tienen procesos. Los presupuestos se disparan, no es posible entregar el proyecto en fechas, te tienes que quedar durante noches y fines de semana para terminar un proyecto. No hay control sobre el estado del proyecto, el desarrollo del proyecto es completamente opaco, no sabes lo que pasa en él.

    Es el típico proyecto en el que se da la siguiente situación:
    - ¿Cómo va el proyecto?
    - Bien, bien.

    Dos semanas después…
    - ¿Cómo va el proyecto?
    - Bien, bien.

    Tres semanas después…
    - El lunes hay que entregar el proyecto.- No se por qué pero los proyectos se entregan los lunes.
    - El lunes !!?. Todavía falta mucho!!
    - ¿Cómo? Me dijiste que el proyecto iba bien!! Arréglatelas como quieras, pero el proyecto tiene que estar terminado para el lunes.


    Si no sabes el tamaño del proyecto y no sabes cuanto llevas hecho, nunca sabrás cuando vas a terminar.


  • Repetible o Nivel 2 CMM - CMMI. Quiere decir que el éxito de los resultados obtenidos se pueden repetir. La principal diferencia entre este nivel y el anterior es que el proyecto es gestionado y controlado durante el desarrollo del mismo. El desarrollo no es opaco y se puede saber el estado del proyecto en todo momento.

    Los procesos que hay que implantar para alcanzar este nivel son:
    • Gestión de requisitos
    • Planificación de proyectos
    • Seguimiento y control de proyectos
    • Gestión de proveedores
    • Aseguramiento de la calidad
    • Gestión de la configuración


  • Definido o Nivel 3 CMM - CMMI. Resumiéndolo mucho, este alcanzar este nivel significa que la forma de desarrollar proyectos (gestión e ingeniería) esta definida, por definida quiere decir que esta establecida, documentada y que existen métricas (obtención de datos objetivos) para la consecución de objetivos concretos.

    Los procesos que hay que implantar para alcanzar este nivel son:
    • Desarrollo de requisitos
    • Solución Técnica
    • Integración del producto
    • Verificación
    • Validación
    • Desarrollo y mejora de los procesos de la organización
    • Definición de los procesos de la organización
    • Planificación de la formación
    • Gestión de riesgos
    • Análisis y resolución de toma de decisiones

    La mayoría de las empresas que llegan al nivel 3 paran aquí, ya que es un nivel que proporciona muchos beneficios y no ven la necesidad de ir más allá porque tienen cubiertas la mayoría de sus necesidades.


  • Cuantitativamente Gestionado o Nivel 4 CMM - CMMI. Los proyectos usan objetivos medibles para alcanzar las necesidades de los clientes y la organización. Se usan métricas para gestionar la organización.

    Los procesos que hay que implantar para alcanzar este nivel son:
    • Gestión cuantitativa de proyectos
    • Mejora de los procesos de la organización


  • Optimizado o Nivel 5 CMM - CMMI. Los procesos de los proyectos y de la organización están orientados a la mejora de las actividades. Mejoras incrementales e innovadoras de los procesos que mediante métricas son identificadas, evaluadas y puestas en práctica.

    Los procesos que hay que implantar para alcanzar este nivel son:
    • Innovación organizacional
    • Análisis y resolución de las causas

    Normalmente las empresas que intentan alcanzar los niveles 4 y 5 lo realizan simultáneamente ya que están muy relacionados.

A grandes rasgos os he intentado introducir el modelo de calidad del software CMM - CMMI para aquella gente que se encuentra por primera vez con él. La implantación de un modelo de estas características es un proceso largo y costoso que puede costar varios años de esfuerzo. Aun así el beneficio obtenido para la empresa es mucho mayor que lo invertido.



"Y a este respecto se debe tener en cuenta hasta qué punto no hay cosa más difícil de tratar, ni más dudosa de conseguir, ni más peligrosa de conducir, que hacerse promotor de la implantación de nuevas instituciones.

La causa de tamaña dificultad reside en que el promotor tiene por enemigos a todos aquellos que sacaban provecho del viejo orden y encuentra unos defensores tímidos en todos los que se verían beneficiados por el nuevo.

Esta timidez nace en parte al temor de los adversarios, que tienen la ley de su lado, y en parte también la incredulidad de los hombres, quienes -en realidad- nunca creen en lo nuevo hasta que adquieren una firme experiencia en ello.

De ahí nace que, siempre que los enemigos encuentran la ocasión de atacar, lo hacen con ánimo faccioso, mientras los demás sólo proceden a la defensa con tibieza, de lo cual resulta un serio peligro para el príncipe y para ellos."

El Principe, Nicolás Maquiavelo, 1513

Si os interesa profundizar más en el conocimiento de los procesos de calidad CMM-CMMI, podéis empezar con introduciros en el Nivel 2 de CMM-CMMI.

No hay comentarios: