Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CMMI y Scrum
CMMI y Scrum
CMMI y Scrum
Índice
¿Qué es Calidad? ........................................................................................................................................3
CMMI
Representaciones .......................................................................................................................................6
Representación Escalonada........................................................................................................................7
Ejemplo Práctico.........................................................................................................................................14
Referencias .................................................................................................................................................18
¿Qué es calidad?
Existen muchas definiciones propuestas por diversos especialistas profesionales en el
tema de calidad.
Por otro lado, acercándonos a definiciones con mayor relación a la ingeniería, la IEEE
(Institute of Electrical and Electronics Engineers) define calidad como “El grado en que
un sistema, componente o proceso cumple con los requerimientos especificados, y
necesidades o expectativas del cliente o usuario”.
CMMI
Historia y evolución
Capability Maturity Model Integration (CMMI) (Integración de modelos de madurez de capacidades) del
Software Engineering Institute (SEI).
Este modelo CMMI es la evolución natural que el SEI ha hecho de su modelo inicial CMM (que dejó de ser
mantenido por el SEI el 31 de diciembre de 2005).
El CMMI es quizás el producto más importante del SEI. Su antecesor, CMM, surgió como respuesta a la solicitud
que hizo el DoD (Department of Defense) de los EEUU, quizás el mayor consumidor de software del mundo (el
tamaño total de sistemas se mide en billones de líneas de código), a la Carnegie Mellon University para poder
evaluar a sus proveedores de software, y que dio origen al SEI.
CMMI se ha convertido en el estándar de facto dentro de la industria mundial de las TI para definir el proceso
software y mejorarlo. (1.830.000 entradas en google) [1].
Su propósito es proveer una guía de las mejores prácticas para mejorar los procesos de una organización, en
cuanto al desarrollo, adquisición y mantenimiento de productos software y servicios.
Constelaciones
Las constelaciones en el modelo CMMI aparecen a partir de la versión 1.2 publicada en Agosto del 2006, como
CMMI-DEV (CMMI for Development). Una constelación es una colección de componentes utilizados para
construir modelos, materiales de capacitación y evaluación en un área de interés. Hasta la fecha existen tres
constelaciones publicadas:
CMMI-DEV publicada en agosto del 2006 y sirve como guía para medir, monitorear y administrar el
proceso de desarrollo y mantenimiento de productos y servicios.
CMMI-ACQ (Acquisition) publicada en noviembre del 2007 y sirve como guía para mejorar el proceso
de adquisición de productos y servicios.
CMMI-SVC (Services) publicada en febrero del 2009 y sirve como guía para guía para proporcionar
servicios internos en una organización y a clientes externos.
Para facilitar el uso de múltiples modelos en la arquitectura del modelo CMMI se establecen componentes
comunes y específicos. Los componentes comunes se conocen como el modelo base (Model Foundation) y lo
integran las cinco metas genéricas y sus respectivas prácticas genéricas, así como 16 áreas de proceso que son
comunes a todas las constelaciones (ver cuadro más adelante) [2].
El modelo - Componentes
El modelo CMMI declara un conjunto de prácticas que se deben llevar a cabo sin detallar la forma de
implantarlas en cada empresa, y se estructura en un conjunto de áreas de proceso, entendidas como el
conjunto de prácticas relacionadas que son ejecutadas de forma conjunta para conseguir un conjunto de
objetivos. [2] Cada área de proceso se descompone en objetivos:
Representaciones [3]
Existen 2 formas de representación en CMMI
Representación Continua:
La representación continua permite a una organización seleccionar una determinada área o grupo de áreas de
procesos y mejorarlos para alcanzar la capacidad deseada. Esta representación proporciona una mayor
flexibilidad al momento de utilizar el modelo CMMI para la mejora de procesos ya que la organización puede
elegir mejorar el o las áreas de procesos que están más alineadas a los objetivos del negocio o presentan una
deficiencia con respecto a las demás áreas de proceso.
Para la representación continua, se definen 6 niveles de capacidad de los procesos (del 0 al 6).
Madurez Concepto: Atributo de las organizaciones que desarrollan o mantienen los sistemas de software.
En la medida que éstas llevan a cabo su trabajo siguiendo procesos, y en la que éstos se encuentran
homogéneamente implantados, definidos con mayor o menor rigor; conocidos y ejecutados por todos los
equipos de la empresa; y medidos y mejorados de forma constante, las organizaciones serán más o menos
“maduras”.
Niveles de Madurez: los niveles de madurez en CMMI son 5, y hacen referencia a un conjunto de áreas de
proceso, una vez institucionalizadas todas la áreas de proceso de un nivel, se puede decir, que la empresa tiene
Nivel de Madurez N, donde N es el nivel que se compone de todas las áreas de proceso que la empresa
cumplió.
Área de proceso: Es un conjunto de prácticas relacionadas con un área específica, que en el momento de estar
implantadas colectivamente, satisfacen un conjunto de metas consideradas importantes para hacer un
mejoramiento significativo en el área.
Cada área de proceso se asocia con uno de los 5 niveles de madurez, y cada uno de estos niveles sirve como
punto de referencia para conocer el grado de madurez en el cual se encuentra la compañía. Un nivel se alcanza
cuando la organización ha implantado todas las áreas de procesos y sus prácticas requeridas, tanto de
dicho nivel como de los niveles predecesores.
Nivel 2: Gestionado
Procesos caracterizados en proyectos y acciones reactivas con frecuencia. Son establecidas las actividades
básicas para la administración de proyectos de software para el seguimiento de costos, programación y
funcionalidad. El éxito está en repetir prácticas que hicieron posible el éxito de proyectos anteriores, por lo
tanto hay fortalezas cuando se desarrollan procesos similares, y gran riesgo cuando se enfrentan nuevos
desafíos.
Nivel 3: Definido
Los procesos son medidos y controlados. Se registran medidas detalladas de las actividades del Proceso y
calidad del Producto. El proceso de desarrollo de software y el producto son entendidos cuantitativamente y
controlados.
Nivel 5: Optimizado
Los procesos son medidos y controlados. Se registran medidas detalladas de las actividades del Proceso y
calidad del Producto. El proceso de desarrollo de software y el producto son entendidos cuantitativamente y
controlados.
Ingeniería: Agrupa áreas de procesos relacionadas con el ciclo de vida de desarrollo de un producto
software, desde la captura y desarrollo inicial de los requerimientos del cliente hasta el uso operacional.
Gestión de proyecto: Enfocado a la planificación, seguimiento, y control del proyecto. Cubre temas de
gestión de acuerdos con proveedores y administración de riesgos mediante un monitoreo constante a lo largo
del proyecto.
Gestión de procesos: Contiene prácticas cuyo objetivo es optimizar y mejorar los procesos de la
organización. Proporciona la capacidad de documentar las mejores prácticas y medir cuantitativamente la
calidad del proceso.
Soporte: Proporciona prácticas que apoyan a las demás áreas de procesos en el desarrollo del
producto software.
Ejemplo Práctico:
Representación Escalonada
Nivel de madurez 1: Significa que existe una etapa en el desarrollo destinada a capturar los requisitos
(se hace), pero se hace de manera Ad-Hoc, sin utilizar ningún plan, y los cambios se resuelvan como
"bomberos" con el esfuerzo del equipo de desarrollo.
Luego se le solicita al programador o equipo de programadores, que "digan" cuánto tiempo van a
demorar.
Transcurrido ese tiempo se pregunta si terminaron o no, etc.
Si se necesita algún proveedor o freelancer, se le pregunta cuánto tiempo va a demorar en realizar lo
solicitado.
Nivel de madurez 2: Se requiere tener un área de proceso destinada a la captura de requisitos, que
tenga una planificación del proyecto, que utilice herramientas, y que pueda gestionar los
requerimientos.