Estudios realizados sobre integración de ágil y modelos de calidad
En (2012) se trata de establecer algunas ideas que demuestran que “CMMI no tiene ningún requisito que impida a una organización conseguir una clasificación de CMMI mientras usa un proceso ágil”, además se ejemplifican casos reales en los que ha sido posible recibir una clasificación de CMMI aplicando métodos ágiles para el desarrollo.
En la actualidad se encuentran además varios estudios de casos exitosos en la mejora de procesos usando CMMI dentro de un contexto ágil tales como Pikkarainen y Mäntyniemi (2006), Boehm y Turner (2003) y Anderson (2005); Glazer et al. (2008). Además se puede decir que Bernal Cam y Calderón Valverde (2011), Fernández Díaz (2009), Navarro y Garzás (2010) y Sutherland y Ruseng (2008) estudian probables y palpables beneficios de esta integración. En el caso de Paulk (2001) se estudia específicamente la metodología de Programación Extrema (XP, eXtreme Programming) desde la perspectiva de CMMI. De la misma forma existen otros que dan argumentos en contra del uso de ambos de manera conjunta de acuerdo con la investigación de Matalonga (2012).
Ejemplos de investigaciones que explican cómo adaptar los procesos de PMBOK en proyectos que desarrollan ágil son Cottmeyer (2010), Sliger (2006a, 2006b). También existen estudios comparativos entre ambas tendencias como Fitsilis (2008) y Udo y Koppensteiner (2003); y otros como D. G. O'Sheedy, Xu, y Sankaran, (2010), Grey (2012) y D. O'Sheedy y Sankaran (2013) que muestra resultados concretos de la integración entre ágil y PMBOK.
Necesidades actuales de mejora de procesos en el desarrollo ágil
En la actualidad por lo general las empresas parten de aplicar una metodología junto a un modelo específico. De forma independiente metodologías y modelos tienen ventajas y desventajas a raíz de las características propias de cada proyecto y terminan por aplicarse junto a un conjunto de prácticas empíricas y no documentadas de cada equipo de proyecto. Esto les permite a los equipos solventar los problemas y deficiencias que puedan tener al aplicar una metodología de las ya existentes junto a un modelo de calidad. Esta práctica tan común trae consigo el hecho de que el conocimiento y la descripción del proceso real recaen en las personas y la transmisión de este conocimiento depende de estas.De ahí la necesidad de establecer una metodología que recopile esas buenas prácticas tanto empíricas como definidas y las concentre en un modelo.
La metodología DAC, PMBOK, CMMI e ISO
La metodología que se propone, Desarrollo Ágil con Calidad (DAC), trata de parecerse a la forma en que empíricamente trabajan los proyectos ágiles estableciendo al mismo tiempo pautas de calidad, procesos definidos y prácticas ágiles.
En las primeras versiones de CMMI y PMBOK no se tuvo en cuenta su aplicación junto a métodos ágiles de desarrollo de software. Sin embargo en las últimas versiones de ambos se introducen elementos, notas, procesos específicos para su aplicación en estos entornos.
En el PMBOK se definen 47 procesos de dirección de proyectos, 5 grupos de procesos de dirección de proyectos y 10 Áreas de Conocimiento de la Dirección de Proyectos (Meléndez De La Cruz, 2013).
CMMI-DEV contiene 22 áreas de proceso. De esas áreas de proceso, 16 son áreas de proceso base, 1 es un área de proceso compartida y 5 son áreas de proceso específicas de desarrollo.
Las áreas de procesos se organizan en cuatro categorías: Gestión de Procesos, Gestión de Proyectos, Ingeniería y Soporte (CMMIProductTeam, 2010).
En la Norma ISO/IEC 12207 (IEEE, ISO, & IEC, 2008) los procesos del ciclo de vida del software se agrupan en procesos de acuerdos, procesos de proyecto-activación organizacional, procesos de proyecto, procesos técnicos, procesos de implementación de software, procesos de soporte al software y procesos de reutilización del software.
La metodología DAC tiene ocho etapas del ciclo de vida llamadas fases o procesos: inicio del proyecto, análisis y diseño de alto nivel, desarrollo de requisitos, construcción del producto, cierre de iteración, liberación del producto, transición del producto y cierre del proyecto.
También cuenta con dos áreas de procesos de protección: gestión de proyectos y soporte; y las disciplinas de ingeniería: modelado del negocio, arquitectura y diseño, especificación de requisitos, implementación, pruebas, despliegue y mantenimiento.
En la Tabla 1 se muestra cómo integrar DAC con el PMBOK en cuanto a los grupos de procesos.
Tabla 1 Correlación entre DAC y PMBOK.
DAC
|
PMBOK
|
Inicio del proyecto
|
Grupo de procesos de iniciación
|
Análisis y diseño de alto nivel
|
Grupo de procesos de planificación
|
Desarrollo de requisitos
|
Grupo de procesos de ejecución
Grupo de procesos de seguimiento y control
|
Construcción del producto
| |
Cierre de iteración
| |
Liberación del producto
| |
Transición del producto
| |
Cierre del proyecto
|
Grupo de procesos de cierre
|
Para incorporar a DAC las áreas de proceso de CMMI se definieron como complemento a los ocho procesos básicos de DAC un proceso para área de proceso CMMI de las siguientes:
Gestión de Proyectos: REQM, PP, PMC, SAM, IPM, OPD, OPF, RSKM, QPM.
Soporte: CM, MA, PPQA, DAR, OT, OPP, CAR, OPM.1
Estos procesos de gestión de proyectos y soporte son de apoyo y solo son de obligatorio cumplimiento los procesos de gestión de la configuración, gestión de requisitos, aseguramiento de la calidad de procesos y productos, medición y análisis, monitoreo y control, planificación del proyecto y gestión de acuerdos con proveedores. El resto son opcionales a decisión de cada entidad desarrolladora.
Las áreas de proceso de la categoría ingeniería de CMMI se definen dentro de los ocho procesos básicos vinculadas a las disciplinas de ingeniería. Las áreas del conocimiento de PMBOK están incorporadas en la definición de los procesos de gestión de proyecto.
De igual forma los procesos de la ISO/IEC 12207 se definieron dentro de los procesos de gestión de proyecto, soporte y las disciplinas de ingeniería como se muestra en la tabla 2.
Tabla 2 Integración de ISO/IEC 12207 y CMMI
CMMI1
|
ISO/IEC 12207
|
TS
|
Instalación del software
Implementación del software
Diseño arquitectónico del software
Diseño detallado del software
Construcción del software
Ingeniería de dominio
Gestión de reutilización de software
Gestión de reutilización de activos
|
RD
|
Análisis de requisitos del software
|
PI
|
Instalación del software
Integración del software
|
VER
|
Pruebas de calificación del software
Verificación del software
|
VAL
|
Pruebas de calificación del software
Soporte de aceptación del software
Mantenimiento del software
Validación del software
|
REQM
|
Definición de requisitos de los involucrados
|
PP
|
Planificación del proyecto
|
PMC
|
Evaluación y control del proyecto
|
SAM
|
Adquisición
Proceso de oferta
|
IPM
|
Gestión de la Información
Gestión del Modelo del Ciclo de Vida
Gestión de la Infraestructura
Gestión de los Recursos Humanos
Gestión de la Calidad
|
CM
|
Gestión de la Configuración
Gestión de la Configuración del Software
|
MA
|
Medición
|
RSKM
|
Gestión de Riesgos
|
PPQA
|
Aseguramiento de la Calidad del Software
Revisión del Software
Auditoría del Software
|
DAR
|
Resolución de Problemas del Software
Gestión de Decisiones
|
CAR
|
Resolución de Problemas del Software
Gestión de Decisiones
|
1
Por cuestión de espacio se referencian las áreas de procesos por sus siglas según CMMIProductTeam, (2010).
Nota importante: Estos fragmentos han sido tomados de: http://revistas.proeditio.com/iush/quid/article/download/82/82. En dicho artículo podrán encontrar las referencias bibliográficas.
No hay comentarios:
Publicar un comentario
Por fa déjame un comentario