Modelo de madurez de la capacidad (CMM) explicado en 5 minutos o menos

El Modelo de Madurez de Capacidad (CMM) es una forma efectiva y más fácil de escalar múltiples funciones de su negocio.

Para dirigir una empresa, controlar un sistema o administrar un grupo, comprender las capacidades es un aspecto esencial.

Una vez que reduzca las diferentes funciones de su negocio, debe evaluar el desempeño de todas esas funciones. De acuerdo con eso, establece estándares y objetivos para su negocio.

Entonces, para medir y controlar el desempeño y el progreso del trabajo de cada función e individuo, los empresarios y líderes empresariales necesitan tener una solución sólida y capturarla.

De esta manera, una empresa puede desarrollar sistemas que pueden soportar la carga de las complejidades y brindar la precisión que se necesita para escalar.

Aquí es donde CMM entra en escena.

En este artículo, discutiré qué son CMM y CMMI, sus niveles y las diferencias entre ellos.

¡Empecemos!

¿Qué es el modelo de madurez de la capacidad?

El modelo de madurez de capacidad (CMM) es una metodología simple que se utiliza para crear y refinar el proceso de desarrollo de aplicaciones de una organización. Esto permite a los desarrolladores desarrollar y mejorar el proceso de desarrollo de software, lo que resulta en una mayor consistencia y eficiencia.

Independientemente del rol que se le haya asignado en el equipo de desarrollo, familiarizarse con CMM puede ayudarlo a mejorar su rendimiento. Por lo tanto, puede decir que CMM es un método que ayuda a evaluar, desarrollar y mejorar el proceso de desarrollo de software.

CMM describe los procedimientos principales para el desarrollo de software y otras princesas que se someten a ingeniería, gestión y planificación. Supone que se puede lograr un proceso de mejora regular a través de pequeños signos de progreso en lugar de grandes avances.

Además, ofrece un marco para gestionar señales menores en varios niveles de madurez con el fin de proporcionar una plataforma para la mejora continua del proceso de desarrollo de software. Por lo tanto, esta metodología actúa como el corazón de los sistemas de gestión especialmente diseñados para mejorar la calidad del desarrollo de productos y servicios junto con sus entregas.

CMM fue desarrollado y promovido por el SEI (Software Engineering Institute), un centro de I+D patrocinado por el Departamento de Defensa de EE. UU. Ahora es parte de la Universidad Carnegie Mellon. SEI se fundó por primera vez en el año 1984 para abordar varios problemas de software y avanzar en metodologías de software.

SEI se estableció para optimizar el proceso de desarrollo, adquisición y mantenimiento de sistemas altamente reservados de software para el Departamento de Defensa (DOD). Aboga por la adopción centrada en la industria del CMM en evolución, es decir, la integración de CMM (CMMI).

¿Por qué necesita CMM?

CMM tiene muchas fortalezas, y el beneficio más útil de usar esta metodología es su capacidad de ahorro de tiempo y dinero. Esto se debe a que el sistema está perfectamente diseñado para conocer los defectos en el proceso de mejora de manera más eficiente que otros modelos.

Además, CMM mejora los procesos comerciales y también reduce el cambio repentino en los programas de producción. Dado que el CMM fue el primer modelo diseñado para mejorar el proceso industrial, puede ser la piedra angular para la creación de otros modelos, como la versión mejorada de CMM (es decir, CMMI), Business Capability Maturity Model (BCMM) y más.

CMM es un modelo bastante flexible para todos los procesos y mercados. No importa a qué sector pertenezca, si tiene un equipo de desarrollo, los miembros pueden utilizar el modelo para corregir errores en el proceso.

Cinco niveles de madurez en CMM

Los cinco niveles del modelo de madurez de capacidad (CMM) en el proceso de desarrollo son:

#1. Nivel inicial

En este nivel, los procesos no están en el orden correcto. Incluso puede ser caótico a veces. Aquí, el éxito depende de los esfuerzos del miembro individual y no se considera un proceso repetible. Esto se debe únicamente a que el proceso no está bien documentado y lo suficientemente definido como para poder replicarlo.

Los procesos seguidos son inmaduros y Adhoc, que es un entorno inestable para el desarrollo de su software. Además, no hay base para predecir la calidad del producto y su tiempo de finalización.

#2. repetible

En este nivel, los procesos requeridos están bien establecidos, documentados y definidos. Como resultado, las técnicas de gestión de proyectos se establecen correctamente y es posible que el éxito no se reproduzca en algunas áreas clave del proceso.

El nivel repetible se puede lograr estableciendo algunas políticas básicas de gestión de proyectos. La experiencia en proyectos anteriores se utiliza para gestionar proyectos de naturaleza similar. Incluye la definición de los recursos necesarios, objetivos, restricciones y más para el proyecto.

Este nivel presenta un plan detallado que debe seguirse correctamente para completar con éxito un software de calidad. El objetivo principal es mantener el rendimiento del producto, como su componente, durante todo el ciclo de vida del software.

El nivel repetible también incluye comentarios de los clientes y gestión de revisiones, lo que puede generar algunos cambios en el requisito establecido. Esta gestión de requisitos consiste en acomodar los requisitos modificados.

Además, la gestión de subcontratos se centra en la gestión de contratistas calificados para el desarrollo de software. Esto significa que administra algunas partes de software desarrolladas por terceros. El aseguramiento de la calidad del software garantiza un producto de software de calidad con ciertas reglas y pautas estándar durante el proceso de desarrollo.

#3. definido

La documentación de las directrices y procedimientos se lleva a cabo en este nivel. Es un conjunto bien definido de procesos y gestión de ingeniería de software. Esto incluye:

  • Revisiones por pares: en este método, los defectos deben eliminarse mediante una variedad de procesos de revisión como inspecciones, verificaciones de amigos, recorridos, etc.
  • Coordinación intergrupal: este método consiste en interacciones entre múltiples equipos de desarrollo para garantizar el cumplimiento adecuado y eficiente de las necesidades.
  • Definición de proceso de organización: El método se centra en el desarrollo y mantenimiento de procesos de desarrollo de software.
  • Enfoque en el proceso de la organización: esto incluye prácticas y actividades que deben seguirse para mejorar las capacidades de proceso de la organización.
  • Programas de formación: Los programas de formación se centran en la mejora de los conocimientos y habilidades de los miembros del equipo y aseguran una mejora en la eficiencia del trabajo.

#4. Administrado

En este nivel, se establecen objetivos cuantitativos para la calidad del producto de software y los procesos de software de una organización. Las mediciones realizadas permiten a la organización predecir la calidad del proceso y del producto dentro de los límites definidos cuantitativamente.

Este nivel incluye estrategias y planes establecidos para desarrollar y comprender el análisis cuantitativo y la calidad del producto. También se centra en la gestión del rendimiento del proyecto.

#5. optimizando

Esta es la etapa final de la madurez del proceso en el CMM que se enfoca solo en la mejora continua de los procesos de desarrollo en la organización a través de la retroalimentación cuantitativa. Esto se hace mediante el uso de técnicas, evaluación y herramientas para procesos de software para evitar la repetición de defectos conocidos.

Este nivel incluye:

  • Gestión de cambios de procesos: Este proceso de gestión se centra en la mejora continua de los procesos de desarrollo de software. Esto mejora la calidad, el tiempo de ciclo y la productividad del producto de software.
  • Gestión del cambio tecnológico: Consiste en el uso de tecnologías y técnicas de identificación para mejorar la calidad del producto y minimizar el tiempo de desarrollo.
  • Prevención de defectos: la prevención de defectos se puede realizar identificando la causa de los defectos y evitando que esos defectos se repitan en los próximos proyectos. Esto mejora los procesos definidos por el proyecto.

Integración del modelo de madurez de la capacidad

Capability Maturity Model Integration (CMMI) es un modelo de proceso simple que las organizaciones pueden usar para mejorar los procesos de desarrollo, impulsar comportamientos eficientes y mejorar la productividad en el flujo de trabajo mientras desarrollan un producto, servicio o proyecto. Esto se traduce en la reducción de riesgos a lo largo del proceso.

CMMI fue desarrollado e introducido por la Universidad Carnegie Mellon. La intención principal de este desarrollo es aumentar la eficiencia y la facilidad de uso de los modelos de madurez que pueden medir la capacidad de una organización para tener una mejora continua en áreas particulares. Esto solo puede suceder mediante la integración de múltiples modelos en un solo marco.

La primera versión se lanzó en 2002 y la siguiente versión se lanzó en 2006. En 2010 apareció la versión 1.3 y la última versión 2.0 se lanzó en 2018, que vino con varios cambios como hacerlo más accesible, efectivo, etc. ., por negocios.

CMMI fue comprada por ISACA (anteriormente conocida como Asociación de Auditoría y Control de Sistemas de Información), que posee certificaciones como el marco COBIT. CMMI es un modelo de procesos y comportamiento que ayuda a las organizaciones en todo el proceso de desarrollo de productos o servicios.

Así, el objetivo de CMMI es bastante claro. Se utiliza para mejorar la calidad del servicio o producto siguiendo el modelo que cumple con las expectativas del cliente y aumenta el valor de una organización en el mercado. También evalúa la reputación de su negocio y el valor de las partes interesadas en la industria.

El CMMI actualmente aborda las siguientes áreas de interés:

  • CMMI for Development: Es para desarrollar productos y servicios.
  • CMMI para Servicios: Es para el establecimiento, entrega y gestión de servicios.
  • CMMI para Adquisición: Implica la adquisición de productos y servicios.

Representación de CMMI

La representación de CMMI permite que una organización persiga un conjunto de objetivos de mejora. Hay dos representaciones:

Representación por etapas

  • Utiliza un conjunto definido de áreas de proceso de desarrollo para describir la ruta de mejora.
  • Proporciona una serie de mejoras, donde cada parte de la serie sirve como estructura para la próxima mejora.
  • Define un camino mejorado con la ayuda de los niveles de madurez. Y el nivel de madurez informa sobre la madurez de los diferentes procesos en la organización.
  • Permite la comparación entre diferentes organizaciones para varios niveles de madurez.

Representación continua

  • Permite la selección de áreas de proceso particulares.
  • Utiliza niveles de capacidad para medir la mejora del proceso individual.
  • Además, permite la comparación entre organizaciones en función del área de proceso por área de proceso.
  • La representación continua también permite a las organizaciones elegir entre diferentes procesos para una mejor mejora.
  • En esta representación, las organizaciones pueden cumplir mejor sus objetivos y reducir riesgos seleccionando el orden de mejora de los diferentes procesos.

Etapas en CMMI

Hay cinco etapas de madurez en CMMI con representación por etapas:

#1.Inicial: En este nivel, los procesos de desarrollo están mal controlados o gestionados. También implica resultados impredecibles de los procesos de desarrollo. Además, se utilizan enfoques caóticos y ad hoc. No encontrará áreas de proceso clave (KPA) definidas. La calidad no es tan buena y el producto o los servicios corren el mayor riesgo.

#2. Gestionado: en esta etapa de madurez, los requisitos se gestionan correctamente y los procesos de desarrollo se controlan y planifican. Aquí, el proyecto se administra e implementa adecuadamente según los planes documentados. Sin embargo, el riesgo aún existe, pero es más bajo que el nivel inicial.

#3.Definido: En el nivel de madurez definido, los procesos de desarrollo están bien descritos y caracterizados utilizando procedimientos, estándares, herramientas y métodos adecuados. La calidad que encontrarás es de grado medio, y el riesgo también es medio.

#4.Gestionado cuantitativamente: En este modelo, se establecen los objetivos cuantitativos para los procesos de calidad y desempeño. Se basa en las necesidades de la organización, los requisitos del cliente y más. Las medidas de rendimiento del proceso se analizan cuantitativamente. Aquí encontrará procesos de mayor calidad con menor riesgo.

#5.Optimización: Esta es la última etapa del modelo de madurez que involucra la mejora continua en el desempeño y los procesos. La mejora en este nivel es tanto innovadora como incremental. Los procesos y actuaciones son de mayor calidad, y el riesgo es el más bajo.

Niveles de capacidad de CMMI

Un nivel de capacidad informa sobre las prácticas relevantes para un área de proceso en particular para mejorar los procesos de una organización relacionados con el área de proceso. Hay seis niveles de capacidad para los modelos CMMI:

  • Nivel de capacidad 0 (Incompleto): Incluye procesos incompletos, parciales y no realizados. En este nivel, no hay metas genéricas.
  • Nivel de capacidad 1 (realizado): el rendimiento del proceso no es estable en este nivel. No se cumplen los objetivos de costo, tiempo y calidad. El proceso de nivel 1 necesita realizar prácticas específicas.
  • Nivel de capacidad 2 (Administrado): El proceso se supervisa, controla y planifica en este nivel. Aquí, los objetivos son tanto el modelo como otros como la calidad, el cronograma y el costo. La organización necesita gestionar los procesos de forma activa con la ayuda de métricas.
  • Nivel de capacidad 3 (definido): es un nivel definido donde el proceso se gestiona bien y cumple con un conjunto de pautas y estándares organizacionales. Se centra en la estandarización de procesos.
  • Nivel de capacidad 4 (gestionado cuantitativamente): aquí, el proceso se controla mediante técnicas cuantitativas y estadísticas. En este nivel, el desempeño del proceso se entiende en términos métricos y estadísticos.
  • Nivel de capacidad 5 (optimización): este nivel se centra en la mejora continua del rendimiento del proceso. El rendimiento se mejora tanto de manera innovadora como incremental.

CMM frente a CMMI: diferencia

CMMI es un modelo actualizado o más nuevo de CMM. El SEI desarrolló CMMI para estandarizar e integrar CMM, que tiene varios modelos para cada función que cubre. Estos modelos no están sincronizados; integrarlos hace que el proceso sea flexible y eficiente.

Con respecto a las áreas clave del proceso, las prácticas, los niveles de madurez y los objetivos, la estructura de CMMI es similar a la estructura de CMM. Sin embargo, CMMI ofrece dos representaciones diferentes de los procesos.

Descubramos algunas diferencias más entre CMM y CMMI:

CMMCMMICMM significa Capability Maturity Model, desarrollado en el año 1984. CMMI significa Capability Maturity Model Integration, desarrollado en el año 2006. Es un modelo de comportamiento que se desarrolla para medir los procesos de desarrollo de software en una organización. Es la versión actualizada del modelo CMM que es más orientado a tareas y eficaz. El objetivo principal es evaluar los niveles de madurez en el proceso de desarrollo de software. El propósito principal es combinar diferentes modelos de software en un solo software y superar algunos inconvenientes de CMM. CMM tiene cinco etapas: inicial, repetida, definida, administrada y optimizada. CMMI tiene cinco etapas: inicial, administrada, definida, administrada cuantitativamente y optimizada. CMM es menos eficaz. CMMI es más eficaz. Está demasiado orientado a procesos. Está orientado a objetivos.

Conclusión

Capability Maturity Model (CMM) es un sistema de resolución de problemas para los procesos de desarrollo de software en las industrias. Esto puede evitar que las empresas se enfrenten a problemas de proceso.

Por otro lado, CMMI tiene una metodología más avanzada que CMM. Implica cumplir con las expectativas del cliente, valorar la creación, el crecimiento del marketing, mejorar la calidad del producto y el servicio y mejorar la reputación.

También puede explorar el marco de gestión del ciclo de vida de la aplicación que ayuda a desarrollar y entregar el software a tiempo, dentro del presupuesto y de la mejor calidad.