CMMi por medio de MoProSoft

En Septiembre del 2007 Kernel Technologies Group S.A. de C.V. fue la primera empresa mexicana en alcanzar el nivel 2 de CMMi bajo la nueva versión del modelo para desarrollo de software versión 1.2. Pero más importante que esto es el hecho de que basaron su estrategia de implementación en el Modelo MoProSoft. En este artículo, compartimos algunas de nuestras experiencias y opiniones relacionadas con este proceso de mejora, esperando que le sean de utilidad a los lectores de SG.

Para nosotros fue una gran ayuda contar con MoProSoft como referencia, ya que a diferencia de CMMi, MoProSoft sí cuenta con una secuencia y lista de actividades a realizar bajo un enfoque y lógica de negocio. La documentación que proporciona MoProSoft fue de gran ayuda en la implementación de CMMi ya que es muy clara en las actividades que deben realizarse, las entradas y salidas de cada proceso, así como la asignación específica de responsabilidades.

Factores críticos de éxito
A continuación explicamos los que consideramos fueron factores críticos de éxito para lograr el nivel 2 de CMMi.

Capacitación
El proceso de mejora inició con una estrategia fuerte de capacitación en CMMi para los responsables de definición de procesos. El propósito fue que estas personas tuvieran en claro la razón de ser del modelo y las exigencias que involucra. Igual de importante fue la capacitación impartida al “sponsor” del proyecto, ya que ayudó a que comprendiera la envergadura del proyecto que estaríamos realizando y que esto requería de su fuerte compromiso y participación. Para esta capacitación nos apoyamos en la empresa Innevo.

Apego a las actividades de MoProSoft
Decidimos utilizar directamente las actividades de MoProSoft para hacer checklists de aseguramiento de calidad, revisando por ejemplo que se llevaran a cabo todas y cada una de las actividades de planeación para generar el plan de proyecto y plan de desarrollo. Adicionalmente se siguieron las verificaciones y validaciones tal como las propone MoProSoft. Esto nos permitió asegurar tanto calidad en los procesos como en los productos de trabajo. La capacitación en los temas de aseguramiento de calidad se complementó internamente explicando y revisando los checklists de cumplimiento de actividades, así como los artefactos para verificación y validación.

Complementar actividades utilizando el análisis de brecha
Una presentación realizada por la AMCIS en marzo del 2005 para mostrar los resultados de las Pruebas Controladas de MoProSoft contenía un análisis de brecha entre el modelo MoProSoft vs. CMMI N2 en su versión escalonada, indicando que el 67% de las prácticas se cubrían en forma total, el 10% se cubrían en forma amplia, 17% en forma parcial y el 6% no estaban cubiertas. Nosotros pusimos especial atención en esta información, ya que ese 67% significaba que solo tendríamos que completar el 33% restante en cuanto a definición de procesos, ahorrando así tiempo y esfuerzo en ésta fase del proyecto. Fue así que conseguimos de parte de AMCIS el detalle de este análisis de brecha realizado por Cecilia Montero (Lead Assesor) y Gisela Rivera, donde se detalla la relación entre las prácticas de las Areas de Proceso de CMMI y los procesos/actividades que las cubrían. Tomando como base éste mapeo, iniciamos a analizar qué procedimientos, actividades y productos tendríamos que agregarle al MoProSoft para que cumpliera totalmente con cada práctica. Así que para cada brecha definida, definimos un plan de acción para cubrirla.

Métricas y revisión a nivel gerencial
A fin de asegurar el buen desempeño de los proyectos y el apego a los procesos, se establecieron reuniones periódicas a nivel gerencial para revisar los indicadores de los proyectos. Los indicadores que usamos son índice de cronograma, índice de esfuerzo, índice de costo, así como el uso de semáforos para mostrar cuando un indicador estaba fuera del rango establecido por la dirección. La definición de indicadores se basó en las recomendaciones del PMBOK 3ª Edición. Se agregó una actividad de revisión de los defectos encontrados en procesos y productos, a fin de tomar acciones correctivas. Se utilizó una plantilla para llevar a cabo la reunión, donde ya se establecían los puntos a revisar en la reunión y fue de gran utilidad para no dejar pasar aspectos de monitoreo como son el manejo de datos, riesgos asociados a un defecto, y obtener compromiso de los involucrados. Para todos los procesos se monitorearon las actividades planeadas y el esfuerzo estimado contra el real.

Asignación de esfuerzo para actividades del modelo
Quizá uno de los puntos más complejos, pero a la vez más importantes es estimar el esfuerzo en todas las actividades relacionadas con el modelo, tanto CMMI como MoProSoft, de manera que debe quedar asentado y asignado el tiempo para: la persona que define y establece los procesos, el encargado de las actividades de administración de configuración, aseguramiento de calidad de procesos y productos, capacitación, administración de proyectos y mantenimiento a la matriz de rastreo. Algunos roles pueden ser compartidos; por ejemplo la persona de calidad puede también dar capacitación o participar de la definición de procedimientos, el configurador puede participar en actividades de desarrollo o mantener la matriz de rastreo. En nuestra experiencia, el tiempo de todas las actividades de soporte al proyecto incluyendo tiempo para medición y análisis, planeación, monitoreo de proyecto, aseguramiento de calidad y administración de requerimientos; en un proyecto que anteriormente tomaba 1,000 horas llevando sólo MoProSoft, se incrementa en cerca del 20% del esfuerzo después de haber agregado las actividades del análisis de brecha hacia CMMi nivel 2. Lo anterior debe considerarse una inversión que paga en beneficios de calidad y confianza hacia los compromisos del proyecto con el cliente.

Herramientas
Es de gran ayuda apoyarse en herramientas que faciliten la adopción y aplicación del proceso. Recomendamos considerar herramientas de trabajo para administración del proceso de cambios en configuración, manejo de la matriz de rastreo, levantamiento y seguimiento a incidencias, bases de datos con datos del proyecto (WBS, costos, riesgos, cambios) o herramientas para registro y seguimiento a las actividades, son importantes para reducir el tiempo de uso de hojas electrónicas más susceptibles a errores.

Lecciones aprendidas
1. Tal vez la lección aprendida más distintiva de nuestro proyecto, fue el entender que para cubrir el 33% de actividades pendientes no significaba invertir un 33% más de esfuerzo ya que las prácticas no cubiertas en MoProSoft se trataban de cuestiones un tánto complejas de definir e implementar como lo son Administración de Configuración (CM) y Medición y Análisis (MA).

2. Aunque iniciamos las actividades de verificación y validación utilizando como guía los criterios presentados en MoProSoft, nos dimos cuenta que para asegurar la calidad de producto y proceso como requiere CMMI tuvimos que detallar checklists que apoyaran ésta práctica.

3. MoProSoft define sus procesos por área de responsabilidad, sin embargo la secuencia de actividades se da naturalmente entre las áreas. Por ejemplo, durante el proceso de venta, se requiere que se realice un entendimiento de requerimientos y una planeación para poder definir el alcance del proyecto que se está vendiendo. Para aclarar esta secuencia de actividades nos apoyamos en diagramas de flujo inter-procesos, lo que ayudó a que se entendiera mejor la relación entre ellos.

4. MoProSoft define algunas actividades de manera muy general por lo que en algunas de ellas tuvimos que definir procedimientos más detallados y/o realizar minutas para asegurar que se cumpliera completamente la práctica CMMI. Algunos de ellos son: la implementación de un procedimiento de control de cambios para revisar y autorizar cambios a requerimientos, actividades específicas de administración de configuración como lo es, establecer un plan de administración de configuración que indica nombrado de ítems, permisos, líneas base y niveles de autoridad para su promoción, auditorías físicas y funcionales a realizar. La mayoría de los requisitos de CMMi estaban cubiertos en las prácticas de MoProSoft reforzándolas con el uso de minutas para cada reunión y dando instrucciones muy específicas, sobre los acuerdos y compromisos que deben reflejarse en cada reunión, sin dejar margen a ambigüedades. En la versión de este artículo que se publicará en el sitio web de SG se incluirá un anexo con un ejemplo de una actividad que fue detallada de esta forma.

5. Implementar otros procesos MoProSoft como son la Planeación Estratégica y la Gestión de Procesos ayudaron a la implementación del proceso y a que la organización lo apoyara, así como a la operación misma del negocio.

Conclusión
CMMI está enfocado principalmente a organizaciones grandes. Sin embargo el enfoque que seguimos de utilizar como marco de referencia MoProSoft fue un gran acierto que nos acercó muy rápidamente a nuestro objetivo de lograr el nivel 2 de madurez en CMMI, apenas 8 meses después de tener implantado MoProSoft. Ahora vamos por el siguiente nivel y además de seguir utilizando MoProSoft como un marco de referencia relevante nos apoyaremos en PSP/TSP para acelerar nuestro siguiente objetivo en madurez de procesos mediante CMMI

Acerca de los autores
Claudia N. Gonzalez es Licenciada en Sistemas Computacionales por el ITESM y cuenta con reconocimiento por la AMCIS como Practicante MoProSoft, Consultor Profesional MoProSoft, y Evaluador Profesional MoProSoft. Desde 1985 ha trabajado en empresas de desarrollo de software asumiendo diferentes roles principalmente en tareas de gerencia de proyectos de desarrollo de software y de capacitación y consultoría de procesos.

Eduardo Olivares es Ingeniero Administrador de Sistemas por la UANL y Maestro en Ciencias Computacionales por el ITESM. Cuenta con el certificado de PMP y con el certificado como PSP Developer y PSP Instructor por el SEI. Desde 1989 ha trabajado como desarrollador, líder de proyectos y jefe de oficina de proyectos en áreas de TI de diferentes grupos empresariales, así como docente del área de Tecnologías de Información del ITESM y de la UDEM.

Anexo
Desde aquí puedes descargar el archivo del anexo, en el cuál se presenta el detalle del caso de estudio que aquí se presenta.