Page 33 - REVISTA 2016
P. 33
Niveles de Madurez de Gestión de Calidad
A modo de poder determinar escalones por los cuales ir avanzando, definimos un total de tres niveles de madu-
rez, más que nada para mantener el modelo lo más simple posible. Algo quizá a diferencia de otros modelos de
madurez, es que consideramos los niveles independientes por área. O sea, un equipo puede estar en el nivel 1
en cuanto a gestión de código, y en el nivel 3 en usabilidad. Esto nos da la flexibilidad de que cada equipo quiera
definir su plan de acción en base a un análisis de qué áreas son de mayor impacto para su contexto. De todos
modos, hay ciertos vínculos entre las distintas áreas que marcan precedencias entre unos niveles y otros en forma
transversal. Por ejemplo, no puedo pensar en tener pruebas automatizadas si ni siquiera tengo las pruebas dise-
ñadas. Los tres niveles definidos se basan en tres aspectos: riesgo, calidad y costos.
Nivel 1: testing básico: Se conocen los riesgos, se mide la calidad y los costos.
Nivel 2: testing eficiente: Se controlan los riesgos, la calidad y los costos.
Nivel 3: testing continuo: Se reducen los riesgos, se optimiza la calidad y los costos.
En la siguiente imagen se puede observar las características de cada nivel cruzada con las distintas áreas que
planteamos.
El modelo distingue tres niveles para cada grupo de tareas: algunas son obligatorias, algunas son recomendadas
y, por último, algunas son opcionales. También se muestra la relación de dependencia entre las tareas con las
líneas que las conectan. Es así que se puede ver que para tener integración continua es necesario contar con
control de calidad de código, la cual plantea la necesidad de gestionar las versiones del mismo. Por otra parte, se
necesita también un conjunto de pruebas automatizadas, a nivel unitario, API e interfaz gráfica. Para poder tener
estas pruebas es necesario poder separar los ambientes y entornos de prueba, y gestionarlos adecuadamente.
Eso es lo que se considera mínimo para poder tener integración continua. Luego, hay muchas más tareas que son
obligatorias para poder ir avanzando en los distintos niveles de testing en cada área, y algunos que dependerán
del contexto de cada equipo si deciden incluirlos o no.
Reflexiones sobre Ingeniería 35