La industria cubana del software es un sector donde el concepto de calidad ha
tenido un gran impacto. Es por esto que día a día las organizaciones productoras
de software se preocupan por implementar modelos o estándares que les permitan
uniformar la filosofía de trabajo, garantizar la obtención de un producto con
calidad y eliminar así problemas como la entrega retrasada del producto, el
exceso en gastos por encima de lo inicialmente presupuestado y el poco apego del
producto final a los criterios generales de calidad.
Cómo solución a esta situación han surgido los modelos de calidad, que se
definen como buenas prácticas para el ciclo de vida del software, enfocados en
los procesos de gestión y desarrollo de proyectos. Dentro de estos modelos se
encuentra CMMI (Modelo Integrado de Capacidad y Madurez), el cual está definido
por un conjunto de áreas claves de procesos que permiten el planeamiento,
aseguramiento y mantenimiento de la calidad del software. Una de estas áreas
claves de proceso es la medición y análisis, la cual es la encargada de
proporcionar las mediciones para evaluar los procesos que se realizan dentro de
un proyecto.
En este trabajo se desarrolla un procedimiento para realizar dicha área de
proceso utilizando como guía los procesos que se definen en el nivel 2 del
modelo, y adaptándolos a los proyectos de la Universidad de las Ciencias
Informáticas (UCI).
Introducción
Dentro del marco de la informática, se precisa que empresas e individuos se
adapten a los nuevos retos, capacitándose y poniéndose al día con los cambios
tecnológicos y adoptando una nueva visión del comercio y del mundo. Para el
cumplimiento de dichos objetivos se necesita el desarrollo de una serie de pasos
dentro de los que se encuentra la introducción de un modelo de calidad del
software, que permita asegurar el nivel de calidad adecuado en las empresas
productoras de software.
A finales de los 90 algunas organizaciones llevaban a cabo planes de calidad que
integraban de forma simultánea varios modelos. Para facilitar la integración de
estos modelos, el SEI (Software Engineering Institute) desarrolla y publica en
diciembre del 2001 el modelo CMMI que recoge las bondades, cambios y mejoras
identificadas a lo largo de más de una década de experiencias con mejora de
procesos en miles de organizaciones (Bañeres, 2006).
El inconveniente de los modelos de calidad es que te dicen QUE hacer. No COMO
hacerlo, ya que dependen de las metodologías que se usen y de los objetivos del
negocio (Quiñones, 2005); de ahí la importancia del procedimiento que se elabora
en este trabajo, pues se desglosa cómo realizar el proceso de medición y
análisis basado en CMMI, que es un modelo para la evaluación y mejora de los
procesos de desarrollo y mantenimiento de sistemas y productos de software.
Con la utilización de este procedimiento se puede obtener un control preciso,
predecible y repetido sobre los procesos de producción y los productos de
software. Con lo que se garantiza que la organización y sus procesos alcancen
los niveles de capacidad y madurez requeridos para lograr el éxito en la
producción. Además se tuvo en cuenta que CMMI es un modelo de mejora de procesos
para ingeniería de sistemas, ingeniería del software, desarrollo de productos
integrados y adquisición del software (Méndez, 2006), o sea, que abarca todas
las categorías a analizar en el desarrollo del software.
MATERIALES Y MÉTODOS O METODOLOGÍA COMPUTACIONAL
El modelo CMMI identifica para el trabajo diferentes áreas de procesos, cada
una de las cuales se divide en objetivos y prácticas que hay que cumplir para
llegar al nivel de madurez indicado (Institute, 2002).
En este trabajo se desglosa el procedimiento para desarrollar el área específica
de medición y análisis, área que está definida en el nivel 2 del modelo CMMI, lo
cual constituye una ventaja de este modelo, ya que si no se define el proceso de
medir y analizar lo medido no se puede conocer el grado de calidad con que se ha
construido el software.
El objetivo primario de la medición en el mundo real es ayudar al ingeniero a
establecer una manera sistemática y objetiva de conseguir una visión interna de
su trabajo y mejorar la calidad del producto como resultado. Para comprender
mejor lo que se desarrollará en este trabajo se debe conocer que:
Un proceso: es un conjunto repetitivo de actividades interrelacionadas que se
realizan sistemáticamente mediante las cuales una entrada se convierte en una
salida o resultado, después de añadirle valor (Latorre, 2006).
Las áreas de procesos: son un conjunto de prácticas relacionadas que son
ejecutadas de forma conjunta para conseguir un conjunto de objetivos (Bañeres,
2006).
La medición se puede aplicar:
Al Proceso de Software: Con el intento de mejorarlo sobre una base continua.
Al Proyecto de Software: Para ayudar en la estimación, el control de la calidad,
la productividad y el control de proyectos (Alonso, 2005).
La medición persigue tres objetivos fundamentales:
· Entender qué ocurre durante el desarrollo y el mantenimiento.
· Controlar qué ocurre en nuestros proyectos.
· Mejorar nuestros procesos y nuestros productos (Alonso, 2005).
Según CMMI el objetivo de la medición y análisis es desarrollar y sostener una
capacidad de medición que sea usada para ayudar a las necesidades de información
de la gerencia, basándose en el concepto de que “solo lo que se mide se puede
controlar” (Méndez, 2006). Además los datos tomados para la medición son
alineados con los objetivos de la empresa para proporcionar información útil a
la misma.
Resultados
El área de proceso medición y análisis está compuesta por dos objetivos
específicos (OE) y cada uno se desglosa a su vez en cuatro prácticas específicas
(PE). Los objetivos específicos son:
OE 1: Alinear las actividades de medición y análisis.
PE 1.1: Establecer los objetivos de la medición.
PE 1.2: Especificar las métricas.
PE 1.3: Especificar los procedimientos de recolección y almacenamiento de los
datos.
PE 1.4: Especificar los procedimientos del análisis.
OE 2: Proporcionar los resultados de la medición.
PE 2.1: Recolectar los datos de la medición.
PE 2.2: Analizar los datos de la medición.
PE 2.3: Almacenar los datos y los resultados de la medición.
PE 2.4: Comunicar los resultados (Institute, 2002).
CMMI, dentro de estas prácticas específicas, no establece ningún proceso que
realice la rectificación de las acciones, o sea, el proceso de revisar si lo que
hizo está correcto o no. Es por ello que para todas las prácticas específicas en
este trabajo se definieron procesos de verificación que permiten corregir a
tiempo las acciones desarrolladas.
1. Establecer los objetivos de la medición
El propósito de este proceso es establecer y mantener los objetivos de la
medición que se derivan de los objetivos y las necesidades de información
identificados. Estos pueden regirse por los procesos existentes, recursos
disponibles, u otras medidas consideradas. Además es necesario conocer que la
fuente para los objetivos de la medición puede ser de dirección, técnica, de
proyecto, producto, o necesidad de implementar un proceso.
Ø Consideraciones generales
El rol de Administrador de procesos no está establecido dentro de los proyectos
de la UCI, pero según el Rational Unified Process (RUP) es el responsable de los
procesos relacionados con: identificar la necesidad del proyecto en cuanto al
desarrollo de la medición, educar y guiar a los miembros del equipo en problemas
relacionados con el proceso y asistir al jefe de proyecto en la planificación;
de ahí que en este trabajo se especificó ese rol para que, en general, fuera el
responsable del correcto desempeño del proceso.
Ø Descripción del proceso
Nombre: Establecer los objetivos de la medición.
Identificador: MA 1.1
Categoría: Medición y análisis.
Responsable: Administrador de procesos.
Misión: Establecer y mantener los objetivos de la medición que se derivan de los
objetivos y las necesidades de información identificados.
Alcance:
Empieza: Con la fase de inicio del software.
Incluye: Recogida de información, análisis de los objetivos y aspectos a medir.
Termina: Con la elaboración del documento de los objetivos de la medición.
Entradas: Solicitud de establecer los objetivos.
Proveedores: Líder del proyecto.
Actividades:
El proceso inicia cuando el Administrador de procesos le solicita al Líder del
proyecto que establezca los objetivos de la medición.
Líder del proyecto:
Analizar y recoger los elementos relevantes para la medición en el proyecto.
Priorizar los objetivos y las necesidades de información dentro del límite de
los recursos disponibles.
Elaborar el documento con los objetivos de la medición establecidos.
Mantener un seguimiento de los objetivos de la medición según los objetivos y
las necesidades de información identificados.
Enviar el documento con los objetivos de la medición definidos al Administrador
de procesos.
Administrador de procesos:
Revisar el documento y analizar si los objetivos cumplen su propósito.
Si están correctos crear un documento con los objetivos de la medición
establecidos formalmente.
Si no están correctos enviar el documento al Líder del proyecto para que
redefina los objetivos de la medición.
Salidas: Definición de los objetivos de la medición.
Clientes: Administrador de procesos.
Inspecciones: Inspecciones trimestrales.
Registros: Documento con los objetivos definidos.
Variables de control: Recursos disponibles.
Catálogo de objetivos definidos.
Frecuencia de actualización.
2. Especificar las métricas
En este proceso se especifican las métricas a usar en el proyecto basándose en
los objetivos de la medición, se refinan estos objetivos en métricas precisas y
cuantificables, se definen cuales son métricas básicas (sus datos se obtienen
por mediciones directas) y cuales derivadas (sus datos se obtienen de otras
mediciones, típicamente por la combinación de una o más métricas básicas) y se
especifican las definiciones operacionales para cada una de estas métricas.
Ø Descripción del proceso
Nombre: Especificar las métricas.
Identificador: MA 1.2
Categoría: Medición y análisis.
Responsable: Director de producción.
Misión: Especificar las métricas basándose en los objetivos de la medición.
Alcance:
Empieza: Cuando se solicita la especificación de las métricas.
Incluye: Analizar los objetivos de la medición, especificar las métricas
básicas, las derivadas y las definiciones operacionales para cada una de ellas.
Termina: Con la elaboración del documento de las métricas definidas.
Entradas: Solicitud de especificar las métricas. Documento con los objetivos de
la medición.
Proveedores: Director de producción.
Actividades:
El proceso inicia cuando el Director de producción le solicita al Especialista
de la dirección de producción que especifique las métricas a usar en el
proyecto.
Especialista de la dirección de producción:
Identificar las métricas más precisas y cuantificables para usar en el proyecto
basándose en el documento de los objetivos de la medición.
Especificar las métricas básicas y derivadas.
Especificar las definiciones operacionales para las métricas.
Elaborar el documento con las métricas especificadas.
Enviar el documento con las métricas especificadas al Director de producción.
Director de producción:
Revisar el documento y analizar si son las métricas necesarias para usar en el
proyecto.
Si están correctas establece el documento formal con las métricas definidas para
usar en el proyecto.
Si no están correctas enviar el documento con las métricas especificadas al
Especialista de la dirección de producción para que redefina las métricas.
Salidas: Definición de las métricas.
Clientes: Director de producción.
Inspecciones: Inspecciones trimestrales.
Registros: Documento con las métricas definidas.
Variables de control: Catálogo de métricas definidas.
Tiempo utilizado para definir las métricas.
3. Especificar los procedimientos de recolección y almacenamiento de los
datos
En este proceso el principal objetivo es definir los procedimientos que serán
utilizados para la recolección y el almacenamiento de los datos, así como la
herramienta a utilizar.
Ø Descripción del proceso
Nombre: Especificar los procedimientos de recolección y almacenamiento de los
datos.
Identificador: MA 1.3
Categoría: Medición y análisis.
Responsable: Director de producción.
Misión: Especificar cómo serán obtenidos y almacenados los datos de la medición.
Alcance:
Empieza: Cuando se solicita la especificación de los procedimientos de
recolección y almacenamiento de los datos.
Incluye: Identificar fuentes de datos existentes, especificar la herramienta y
los procedimientos para la recolección y el almacenamiento de los datos.
Termina: Con la elaboración de un documento con los procedimientos definidos
para la recolección y el almacenamiento de los datos.
Entradas: Solicitud de especificar los procedimientos de recolección y
almacenamiento de los datos.
Proveedores: Director de producción.
Actividades:
El proceso inicia cuando el Director de producción solicita al Especialista de
la dirección de producción que defina los procedimientos para la recolección y
el almacenamiento de los datos.
Especialista de la dirección de producción:
Identificar las fuentes de datos ya existentes que pueden proceder de productos,
procesos u otros.
Especificar cómo recoger y almacenar los datos para cada métrica específica.
Crear el mecanismo para la recolección de los datos.
Elaborar la guía para realizar el proceso.
Actualizar las métricas y los objetivos de la medición si es necesario.
Elaborar un documento con los procedimientos de recolección y almacenamiento de
los datos definidos y enviarlo al Director de producción.
Director de producción:
Revisar el documento con los procedimientos de recolección y almacenamiento de
los datos definidos.
Si están correctos establecer formalmente el documento con los procedimientos de
recolección y almacenamiento de los datos definidos.
Si no está correcto enviar el documento al Especialista de la dirección de
producción para que redefina los procedimientos.
Salidas: Definición de los procedimientos de recolección y almacenamiento de los
datos. Definición de la herramienta para la recolección de los datos.
Clientes: Director de producción.
Inspecciones: Inspecciones trimestrales.
Registros: Documento con los procedimientos definidos para la recolección y el
almacenamiento de los datos.
Variables de control: Catálogo de fuentes de datos identificadas.
Fuentes de datos correctas.
4. Especificar los procedimientos del análisis
En este proceso se especifican los procedimientos para llevar a cabo el análisis
de los datos de la medición y se describe como serán analizados y reportados
estos datos. Se seleccionan además los métodos y las herramientas apropiadas
para el análisis de los datos y se especifican y priorizan los análisis que
serán realizados y los reportes que serán preparados.
Ø Descripción del proceso
Nombre: Especificar los procedimientos para el análisis de los datos.
Identificador: MA 1.4
Categoría: Medición y análisis.
Responsable: Director de producción.
Misión: Especificar cómo serán analizados e informados los datos de la medición.
Alcance:
Empieza: Cuando se solicita la especificación de los procedimientos para el
análisis.
Incluye: Selección de los métodos y la herramienta para el análisis de los datos
e identificar el procedimiento para comunicar los resultados.
Termina: Con la creación de un documento con los procedimientos definidos para
el análisis.
Entradas: Solicitud de especificar los procedimientos para el análisis de los
datos.
Proveedores: Director de producción.
Actividades:
El proceso inicia cuando el Director de producción le solicita al Especialista
de producción que especifique los procedimientos para el análisis.
Especialista de producción:
Especificar y priorizar los análisis que serán realizados y los reportes que
serán preparados.
Seleccionar los métodos y las herramientas apropiadas para el análisis de los
datos.
Especificar los procedimientos administrativos para actualizar los datos y
comunicar los resultados.
Revisar y actualizar el contenido y el formato propuestos para el análisis y los
informes especificados.
Actualizar las métricas y los objetivos de la medición si es necesario.
Especificar el criterio para la evaluación de la utilidad de los resultados del
análisis.
Especificar el criterio para la evaluación de la conducción de las actividades
de medición y análisis.
Crear el documento con los procedimientos definidos para el análisis y enviarlo
al Director de producción.
Director de producción:
Revisar el documento con los procedimientos definidos para el análisis.
Si están correctos establecer formalmente el documento con los procedimientos
definidos para el análisis.
Si no están correctos enviar el documento nuevamente al Especialista de la
dirección de producción para que lo reelabore.
Salidas: Definición de los procedimientos para el análisis de los datos.
Clientes: Director de producción.
Inspecciones: Inspecciones trimestrales.
Registros: Documento con los procedimientos definidos para el análisis.
Variables de control: Catálogo de procedimientos para el análisis.
5. Recolectar los datos de la medición
En este proceso se va a utilizar el procedimiento especificado para la
recolección de los datos obteniendo así los datos de las métricas básicas y
derivadas. Estos datos se verifican para valorar su integridad, ya que son los
datos necesarios para el análisis.
Ø Consideraciones generales
El Grupo de medición no es un rol establecido dentro de los proyectos de la UCI.
En este trabajo se especificó ese rol para que fuera el responsable de obtener y
almacenar los datos de las mediciones y los resultados del análisis. Además es
el encargado de definir los permisos de acceso a esos datos.
Ø Descripción del proceso
Nombre: Recolectar los datos de la medición.
Identificador: MA 2.1
Categoría: Medición y análisis.
Responsable: Especialista de la dirección de producción.
Misión: Obtener los datos de la medición especificados.
Alcance:
Empieza: Cuando se solicita que se obtengan los datos de la medición
especificados.
Incluye: Recoger los datos de las métricas básicas y derivadas.
Termina: Con la verificación de la integridad de los datos recolectados.
Entradas: Solicitud de recolectar los datos de la medición.
Proveedores: Especialista de la dirección de producción.
Actividades:
El proceso inicia cuando el Especialista de la dirección de producción le
solicita al Grupo de medición que obtenga los datos de la medición
especificados.
Grupo de medición:
Obtener los datos para las métricas básicas.
Generar los datos para las métricas derivadas.
Enviar los datos recolectados al Especialista de la dirección de producción.
Especialista de la dirección de producción:
Realizar la verificación de la integridad de los datos tan cerca de la fuente de
los datos como sea posible.
Si son correctos establece que los datos están correctos.
Si no son correctos envía los datos al Grupo de medición para que realice la
corrección de los datos.
Salidas: Datos de la medición obtenidos.
Clientes: Especialista de la dirección de producción
Inspecciones: Inspecciones trimestrales.
Registros: Informe sobre los datos recolectados.
Variables de control: Catálogo de datos recolectados.
Tiempo utilizado para recolectar los datos.
Capacidad para corregir los datos.
6. Analizar los datos de la medición
En este proceso se van a analizar e interpretar los datos de la medición, y si
es necesario se dirigen análisis adicionales. Los resultados se revisan con los
stakeholders relevantes y se registran las revisiones necesarias para futuros
análisis.
Ø Descripción del proceso
Nombre: Analizar los datos de la medición.
Identificador: MA 2.2
Categoría: Medición y análisis.
Responsable: Especialista de la dirección de producción.
Misión: Analizar e interpretar los datos de la medición.
Alcance:
Empieza: Cuando se solicita que sean analizados los datos de la medición.
Incluye: Interpretar los datos de la medición, preparar los resultados para
presentarlos.
Termina: Cuando se refinan los criterios para procesos futuros.
Entradas: Solicitud de analizar los datos de la medición.
Proveedores: Especialista de la dirección de producción.
Actividades:
Especialista de la dirección de producción:
El proceso inicia cuando el Especialista de la dirección de producción debe
dirigir los análisis iniciales, interpretar los resultados y derivar las
conclusiones preliminares.
Dirigir la medición y el análisis adicional si es necesario y preparar los
resultados para su presentación.
Revisar los resultados iniciales con los stakeholders relevantes.
El proceso termina con Refinar los criterios para análisis futuros.
Salidas: Datos de la medición analizados.
Clientes: Especialista de la dirección de producción.
Inspecciones: Inspecciones trimestrales.
Registros: Informe del análisis de los datos de la medición.
Variables de control: Catálogo de datos analizados.
Tiempo utilizado para analizar los datos.
7. Almacenar los datos y los resultados de la medición
El objetivo de este proceso es administrar y almacenar los datos de la medición
y los resultados del análisis, además permite establecer permisos a determinados
usuarios sobre los datos almacenados. Estos datos van a ser almacenados según
los procedimientos de almacenamiento de datos establecidos.
Ø Descripción del proceso
Nombre: Almacenar los datos y los resultados de la medición.
Identificador: MA 2.3
Categoría: Medición y análisis.
Responsable: Especialista de la dirección de producción.
Misión: Administrar y almacenar los datos de la medición y los resultados del
análisis.
Alcance:
Empieza: Cuando se analizan los datos de la medición para que sean almacenados.
Incluye: La verificación de la integridad de los datos y la definición de
permisos para restringir el acceso a estos datos.
Termina: Con la verificación de que el proceso se realizó correctamente.
Entradas: Los datos y los resultados de la medición.
Proveedores: Especialista de la dirección de producción.
Actividades:
El proceso inicia cuando el Especialista de la dirección de producción revisa
los datos para asegurar su integridad y precisión, e inmediatamente los envía al
Grupo de medición.
Grupo de medición:
Almacenar los datos de la medición según los procedimientos de almacenamiento de
los datos definidos.
Almacenar los resultados del análisis.
Definir permisos para que el contenido almacenado permanezca disponible para el
uso solamente del personal y de los grupos apropiados.
Enviar al Especialista de la dirección de producción los datos y los resultados
almacenados.
Especialista de la dirección de producción:
Revisa los datos y los resultados almacenados.
Si están correctos informa al Grupo de medición que los datos y los resultados
almacenados están correctos.
Si no están correctos envía los datos y los resultados almacenados al Grupo de
medición para que repita el proceso.
Salidas: Los datos de la medición y los resultados del análisis almacenados.
Clientes: Especialista de la dirección de producción.
Inspecciones: Inspecciones trimestrales.
Registros: Informe sobre el almacenamiento de los datos y los resultados.
Variables de control: Capacidad para almacenar los datos de la medición.
Tiempo utilizado para almacenar los datos de la medición.
8. Comunicar los resultados
Este proceso permite comunicar los resultados de las actividades de medición y
análisis a todos los stakeholders relevantes de forma oportuna y clara, para
poder ayudar a que se tomen decisiones y acciones correctivas. Entre los
stakeholders relevantes se encuentran usuarios deseados, patrocinadores,
analistas de los datos y abastecedores de datos.
Ø Descripción del proceso
Nombre: Comunicar los resultados.
Identificador: MA 2.4
Categoría: Medición y análisis.
Responsable: Especialista de la dirección de producción.
Misión: Comunicar los resultados de las actividades de medición y análisis a
todos los stakeholders relevantes.
Alcance:
Empieza: Cuando se establece la necesidad de comunicar los resultados.
Incluye: Informar a los stakeholders sobre los resultados.
Termina: Con el proceso de ayudar a los stakeholders a entender los resultados.
Entradas: Solicitud de mantener informados a los stakeholders sobre los
resultados obtenidos en el proceso.
Proveedores: Especialista de la dirección de producción.
Actividades:
Especialista de la dirección de producción:
Mantener informados a los stakeholders relevantes de los resultados de la
medición.
Ayudar a los stakeholders relevantes a entender los resultados.
Salidas: Stakeholders capacitados sobre los procesos que han sido desarrollados
en el proyecto.
Clientes: Especialista de la dirección de producción.
Inspecciones: Inspecciones trimestrales.
Registros: Informe sobre Stakeholders capacitados.
Variables de control: Efectividad del proceso de información.
Política de comunicación.
Conclusiones
Un software de calidad debe ser eficiente, y es por ello que se plantea como
un desafío inminente para la empresa cubana de producción de software el adaptar
sus procesos según los estándares internacionales de certificación para así
poder entrar a la competencia que existe actualmente en el mercado mundial de
software y lograr además satisfacer las demandas que se establecen en el mercado
nacional.
De ahí la importancia del trabajo que concluye, pues el procedimiento definido
para desarrollar el proceso de medición y análisis en un proyecto garantiza un
mayor nivel de calidad en todo el ciclo de producción del software, y por ende,
la satisfacción de sus clientes y la mejora de su ventaja competitiva.
Por lo que, el reto es trabajar para lograr organizaciones de software maduras,
caracterizadas por tener una gran capacidad para administrar sus procesos, con
personal comprometido, diestro y motivado y con procesos planificados, ordenados
y consistentes. Si estas condiciones se alcanzan permitiría satisfacer el
mercado interno, las empresas pudieran certificarse formalmente para aumentar la
capacidad de adquisición de clientes provenientes del mercado internacional y se
incrementarían las exportaciones por concepto de venta de software.
Referencias
Alonso, E. B. (2005). Medición y métricas del software.
Bañeres, J. P. (2006). Sinopsis de los modelos SW-CMM y CMMI. Compendio de
Ingeniería del Software II.
Institute, S. E. (2002). Capability Maturity Model Integration.
Latorre, J. (2006). Planificación Estratégica de la Calidad.
Méndez, C. (2006). Introducción al modelo CMMI.
Quiñones, E. (2005). Modelos de Calidad de Software.