¿Cómo se conforma el MCS?
Como se presentó en la introducción, el Modelo de Calidad de Software (MCS) se estructura en 4 "paquetes" de
contenido: (1) Dimensión del modelo, (2) Dimensión del tiempo, (3) Marco de competencias y el (4) Modelo
de madurez, que se presentan en la siguiente figura.
Los primeros dos paquetes representan las diferentes dimensiones con las que se puede observar un proceso de software,
una dimensión estática y una dinámica. La dimensión estática presenta los elementos que son independientes de la
dinámica del proceso a lo largo del tiempo (por ejemplo, si la dinámica es iterativa o secuencial). Básicamente
describe los siguientes elementos: actividades, productos de trabajo, roles y categorías (como las disciplinas por
ejemplo). Estos elementos estáticos luego serán "usados" por las estructuras dinámicas, que los ordenarán y les darán
sentido en un determinado ciclo de vida. Estas estructuras dinámicas son los procesos, iteraciones, fases y ciclos de
vida.
Los roles están directamente relacionados con el marco de competencias, en donde las competencias describen las
habilidades y conocimientos mínimos que debería tener una persona para ejercer un determinado rol definido.
Los niveles de madurez a su vez se relacionan con las actividades, clasificándolas según el foco por nivel al cual esté
alineado el objetivo de la actividad.
Por último, los niveles de madurez se relacionan a su vez con los niveles de competencias, los cuales indican
cuáles son las habilidades y conocimientos mínimos que debería tener la organización para cumplir con las
actividades correspondientes a cada nivel.
Nota: por un tema de traducción de los elementos de SPEM a español, se visualizará la palabra "Tarea"
en vez de "Actividad" al momento de visualizar una actividad como se aprecia a continuación:
Recomendaciones para navegar y utilizar el MCS
1. Elegir el ciclo de vida
Para utilizar el MCS, lo primero y más importante es elegir qué ciclo de vida se adapta mejor a las
características del proyecto que está por comenzar o está en curso. El MCS presenta dos ciclos de vida,
MCS-OpenUp y MCS-Scrum.
MCS-OpenUp es un proceso orientado a planes, esto quiere decir que se
recomienda para la construcción de soluciones en las cuales priman las siguientes características:
-
Generalmente existe un alcance definido para el proyecto a realizar
-
Si el desarrollo de la solución está tercerizada, entonces existe un contrato con el proveedor en
donde figura el alcance acordado
-
El tiempo y recursos de desarrollo está restringido a una cantidad fija determinada
-
Es necesario generar un cronograma y plan de todo el desarrollo para llevar a cabo el proyecto
La existencia de un alcance definido y un contrato para el desarrollo de la solución tecnológica (donde prime el
alcance) son los factores claves para la elección de este tipo de proceso.
MCS-Scrum es un proceso ágil, en donde se fija el tiempo y los recursos y en base a
éstos se va definiendo el alcance (y no al revés). Esto quiere decir que se recomienda para la construcción de
soluciones en las cuales priman las siguientes características:
-
Generalmente no es posible definir un alcance fijo para el producto a construir
desde el inicio del proyecto.
-
Si el desarrollo de la solución está tercerizada, entonces existe un contrato con el proveedor en
donde figura el tiempo y recursos asignados, pero no el alcance no está definido con precisión.
-
El tiempo y recursos de desarrollo está restringido a una cantidad fija determinada.
-
Contextos con requerimientos altamente cambiantes y emergentes, por lo cual NO es necesario generar un cronograma y
plan de todo el desarrollo desde el inicio para llevar a cabo el proyecto.
La existencia requerimientos cambiantes y emergentes, en combinación de un contrato por tiempo y
recursos para el desarrollo de la solución tecnológica son los factores claves para la elección de este tipo de
proceso.
2. Entender la dinámica de cada ciclo de vida
Comprender cómo cada ciclo de vida se estructura en la dimensión del tiempo es importante para tener una visión general
de cómo será el ciclo de vida de la construcción de la solución tecnológica. Tanto MCS-OpenUp como MCS-Scrum se
estructuran en fases, las cuales tienen un objetivo definido a cumplir, repasar los objetivos de las fases en cada
ciclo de vida es importante.
Fases en OpenUp
Fases en Scrum
Cada fase a su vez está conformada por procesos y cada proceso por actividades. De las fases y procesos se presenta una
vista por defecto del diagrama de actividad, que muestra el flujo de trabajo entre las actividades que conforman cada
proceso. Las actividades son los elementos de menor granularidad.
Para ejemplificar, mostramos el proceso Diseñar la arquitectura de la solución, indicando actividades y procesos embebidos:
3. Visualización de actividades por categoría
Cada actividad presentada en el modelo pertenece a diferentes categorías:
-
Disciplinas
-
Niveles de madurez
Es posible navegar el modelo viendo las actividades que pertenecen a cada disciplina (requisitos o diseño, por
ejemplo), o a cada nivel de madurez (nivel inicial o nivel gestionado, por ejemplo). Para esto se recomienda
utilizar el árbol que se presenta en la barra a la izquierda del sitio web. Capturas de pantalla de ejemplo se muestran
a continuación:
4. Vistas de acuerdo a otros elementos del modelo: roles o productos de trabajo
Otra forma complementaria de navegar y entender el modelo, es situarse en uno de los elementos estáticos del
modelo: un rol, producto de trabajo o actividad y ver el uso de cada elemento en el modelo.
Por ejemplo, desde la perspectiva de un rol, podemos ver: en qué actividades participa y de qué productos de trabajo es
responsable:
De la misma forma, desde la perspectiva de un producto de trabajo, podemos ver quién es el responsable y otros roles
que lo modifican, de qué actividades es entrada y de qué actividades es salida y el uso dentro de los procesos del
ciclo de vida:
5. Vistas de acuerdo a los niveles de madurez
Los niveles de
madurez del MCS miden el logro de la organización en el adecuado abordaje de ciertas áreas de proceso
definidas dentro de cada nivel como focos por nivel. De esta forma MCS clasifica los diferentes procesos de cada ciclo
de vida de a cuerdo al nivel de madurez, y a su vez, a las actividades dentro de dichos procesos de acuerdo a los focos
por nivel que atiende.
Para nivel 1 se deben poner en práctica los procesos de:
Para MCS-OpenUp :
Para nivel 2 se deben poner en práctica todos los procesos que figuran en MCS. Puede ser con un enfoque
guiado por planes (MCS-OpenUp) o
adaptativo (MCS-Scrum).
|