CMM y CMMI
Sistemas de calidad en TI
7ITI3 : P R E S E N T A N
Hernández Tello José Rodolfo José
Martínez Gutiérrez Gustavo
Montoya Oliva Jovanna Viviana
Olvera Araujo Osmaly
Osorio Álvarez Jorge Isai
Contenido
Introducción
Los sistemas de gestión de calidad son un conjunto de normas y estándares internacionales relacionados entre sí para cumplir los requisitos de calidad y así poder satisfacer los requerimientos acordados con clientes.
Existen varios sistemas de gestión de calidad, y dependiendo del giro de la organización se emplea el más adecuado. Los sistemas se encuentran normados bajo un organismo internacional no gubernamental llamado ISO (international Organization for Standardization).
A continuación se detallara más información sobre algunos estándares como CMM y CMMI
CMM
El Modelo de Capacidad de Madurez (Capability Maturity Model) es una metodología utilizada para desarrollar y mejorar el proceso de desarrollo de Software.
CMM fue desarrollado y promovido por el Instituto de Ingeniería de Software (SEI), un centro de investigación y desarrollo patrocinado por el Departamento de Defensa de los Estados Unidos (DoD). SEI fue fundada en 1984 para abordar cuestiones de ingeniería de software y, en un sentido amplio, para avanzar en las metodologías de ingeniería de software. Más específicamente, se estableció SEI para optimizar el proceso de desarrollo, adquisición y mantenimiento de sistemas altamente dependientes de software para el DoD.
El modelo describe una trayectoria evolutiva de cinco niveles de procesos cada vez más organizados y sistemáticamente más maduros. Las prácticas de desarrollo son transformadas desde un estado indisciplinado, ad hoc, hasta procesos disciplinados capaces de obtener resultados predecibles.
Niveles CMM
Nivel Inicial
En el nivel inicial, la organización típicamente no provee un entorno estable para el desarrollo de nuevos productos. Cuando una organización carece de prácticas de gerenciamiento correctas, los beneficios de buenas prácticas de desarrollo de producto integradas son debilitados por la planificación inefectiva.
En el nivel inicial, los procesos son desorganizados, incluso caóticos. Es probable que el éxito dependa de los esfuerzos individuales y no se considera que sea repetible, porque los procesos no estarían suficientemente definidos y documentados para permitir su repetición.
Nivel Repetible
En el nivel repetible, se establecen técnicas básicas de gestión de proyectos y se pueden repetir los éxitos, ya que los procesos requeridos habrían sido establecidos, definidos y documentados.
Se institucionalizan procesos efectivos para el gerenciamiento de los proyectos de desarrollo, que permiten a las organizaciones repetir prácticas exitosas desarrolladas en proyectos anteriores, aun cuando los procesos específicos implementados por el proyecto podrían diferir.
Nivel Definido
En el nivel definido, una organización ha desarrollado su propio proceso estándar de software a través de una mayor atención a la documentación, estandarización e integración. Se documenta el proceso estándar para desarrollar nuevos productos, basado en prácticas de desarrollo integrado de productos, y estos procesos son integrados en un todo coherente.
Los procesos son utilizados para ayudar a que los gerentes, líderes de equipo, y miembros del equipo de desarrollo se desempeñen más efectivamente.
Nivel Gerenciado
En el nivel gerenciado, la organización establece métricas para productos y procesos y mide los resultados. Los proyectos llevan a cabo controles sobre sus productos y procesos, estrechando la variación en el desempeño de su proceso de forma tal de caer dentro de límites aceptables, una organización monitorea y controla sus propios procesos a través de la recolección y análisis de datos.
Nivel de Optimización
En el nivel de optimización, los procesos se mejoran constantemente a través del seguimiento de la retroalimentación de los procesos actuales y la introducción de procesos innovadores para atender mejor las necesidades particulares de la organización.
Los equipos de desarrollo de productos analizan las fallas y defectos para determinar sus causas. Los procesos de desarrollo son evaluados para prevenir la ocurrencia de tipos conocidos de fallas y defectos que fueran recurrentes, y se distribuyen las lecciones aprendidas a otros proyectos.
Beneficios
Algunos beneficios de la implementación de este modelo son:
- Reducción de costo de proyectos
- Reducción de los desfases en tiempo del proyecto
- Mitigación de riesgos
- Mayor efectividad en la detección de errores
- Tolerancia al cambio e incremento de la adopción de nuevas tecnologías
CMMI
CMMI Por sus siglas en inglés (Capability Maturity Model Integration) es un modelo de madurez de mejora de procesos para desarrollar productos y servicios provee a las organizaciones aquellos elementos que son esenciales para que los procesos de negocio sean efectivos. Atreves de las prácticas que tratan las actividades de desarrollo y de mantenimiento estas cubren, el ciclo de vida del producto, desde la visión a la entrega y el mantenimiento.
La versión más reciente de CMMI es la 1.3 la cual fue liberada el 1 de noviembre de 2010
En esta última versión del modelo se integran las nuevas características que son esenciales para el desarrollo y el mantenimiento, pero que se han tratado por separado en el pasado, tales como:
- La ingeniería del software
- La ingeniería de sistemas
- La ingeniería del hardware
- La ingeniería de diseño
- Los aspectos no funcionales
- La adquisición
La importancia del uso de este modelo es principalmente que permite comprender cuáles son los elementos específicos de una organización, igualmente ayuda a formular y hablar de qué es se puede mejorar y cómo se pueden lograr dichas mejoras.
Implementación
Para la implementación de CMMI existe un modelo llamado IDEAL
Iniciar (I nitiating), Diagnosticar (D iagnosing), Establecer (E stablishing), Ejecutar (A cting), Aprender (L earning).
Modelo IDEAL
Iniciar
Esta fase se compone de críticas para alcanzar el éxito aquí se establecen las bases del trabajo. Se empieza con en reconocimiento de que necesidades se requieren cambiar en la organización. Mientras más visibles sean estas necesidades mayor posibilidad de éxito tendrá el cambio.
Una vez consideradas las razones para iniciar el cambio es necesario establecer las metas y objetivos del trabajo a realizar, evaluar la forma en que se afectará el trabajo y los beneficios que se esperan obtener.
Diagnosticar
El objetivo de esta fase es entender el trabajo a realizar para lo cual es necesario redactar el estado actual de la organización y el estado futuro. Y por lo general se realiza con el modelo SCAMPI
SCAMPI es una forma para: Identificar qué haces, entender cómo lo haces, verificar que haces lo que dices, como dices que lo haces.
Establecer
En esta fase se elabora un plan detallado c basado en los resultados del diagnóstico y en los objetivos que se quieren alcanzar. Para realizar el plan se inicia definiendo las prioridades para el esfuerzo de mejora, para esto se consideran los recursos, dependencias, factores externos y necesidades de la organización.
También se integran las métricas que permitirán medir el progreso alcanzado y se comienzan a definir y capacitar a los grupos técnicos de trabajo que desarrollarán los procesos.
Ejecutar
Es la fase en la que más tiempo y recursos consume debido a que es cuando se implementan las acciones que han sido planeadas. La fase se inicia con la definición de la solución que cubre los objetivos de la organización. La solución comprende de lo siguiente: herramientas, procesos, habilidades, asesorías e información.
Aprender
Con esta fase se cierra el ciclo de mejora y su objetivo es garantizar que el próximo ciclo sea más efectivo.
Conclusión
En conclusión CMM y CMMI son modelos diseñados para la mejora y evaluación de procesos para el desarrollo, implementación y operación de sistemas de software. Basados en niveles o etapas en la que se lleva una organización por cada etapa.
Referencias
https://es.wikipedia.org/wiki/Modelo_de_Capacidad_y_Madurez
https://es.slideshare.net/uzairakram503/c-m-m-lec-01
http://www.selectbs.com/process-maturity/what-is-the-capability-maturity-model
https://es.wikipedia.org/wiki/Capability_Maturity_Model_Integration