Proceso de mejora de Software

Proceso de mejora de Software
Información sobre la plantilla

Proceso de mejora de Software. Constituyen una alternativa para elevar la Calidad del Software, sobre sus principales conceptos y antecedentes se realiza un estudio en este artículo.

Conceptos de proceso

“Un proceso implica el uso de los recursos de una organización, para obtener algo de valor. Así, ningún producto puede fabricarse y ningún servicio puede suministrarse sin un proceso, y ningún proceso puede existir sin un producto o servicio”.

Se puede definir como un “conjunto coordinado de actividades que proporcionan un valor añadido al cliente (ciudadano o usuario interno), entregándole un resultado (el producto o servicio que se trate) que le satisfaga, partiendo de una serie de entradas al proceso y con la utilización de una serie de recursos” .

Según Pozo un proceso es “un conjunto de actividades interrelacionadas, que persiguen la creación de valor y que su salida final es la conformación de un bien o servicio para un cliente que puede ser interno o externo a la organización”.

Una vez analizados los diferentes conceptos se define a un proceso como, un conjunto de actividades o tareas que se relacionan entre sí, y que se ejecutan siguiendo un orden lógico con el propósito de alcanzar un resultado específico a partir de las entradas de recursos e información.Los procesos constituyen uno de los principales problemas dentro de las organizaciones productoras de software, que impiden el incremento de la productividad y la calidad, de ahí la necesidad de trazar estrategias para mejorarlos.

Conceptos de mejora

La palabra mejora está vigente en diferentes esferas de la vida, sobre todo en ambientes empresariales donde ha dejado de ser una opción para convertirse en una imperiosa necesidad. Mejora proviene del verbo mejorar que implica cambiar, El Diccionario Enciclopédico define mejora como:“Acción o efecto de mejorar” . “Cambio hecho en una cosa, por lo que resulta mejorada”. Según el diccionario de la Real Academia Española (RAE), mejora es: “Medra, adelantamiento o mejora de algo”. Haciendo un análisis de los significados enunciados y adaptándolos a la presente investigación, se define que mejora no es más que mejorar algo haciéndolo pasar a un estado superior.

Muchas organizaciones entre ellas las productoras de software, se han dado cuenta de que no basta con incrementar su productividad, sino que es necesario lograr productos con calidad, pues la competencia en el mercado es cada vez mayor, preocupación que contribuyó al surgimiento de la iniciativa de mejorar los procesos como una solución a esto.

Antecedentes y definición de proceso de mejora de Software

A mediados de los 80 (siglo XX) los procesos de desarrollo y mantenimiento del software eran con frecuencia imprevisibles, y la garantía de funcionamiento y calidad del software desiguales. En general, los problemas principales presentados por los productos de software parecen ser en gran parte, debido a problemas de proceso.

Muchas organizaciones productoras de software se han dado cuenta de esto y han encaminado sus esfuerzos a mejorar sus procesos y así lograr productos de mayor calidad y mejores servicios para poder satisfacer las necesidades de clientes cada vez más exigentes. “La mejora del Proceso Software es un mecanismo de mejora continua de la calidad. Se puede utilizar para elevar capacidad de los contratistas, para auditar desarrollos de software interno y para planificar la estrategia de ingeniería del software de la empresa”.

Al iniciar un proceso de Mejora del Proceso Software, es necesario tener en cuenta los siguientes objetivos principales de la mejora de procesos: Comprender el estado actual de las prácticas de gestión y de ingeniería de software en la empresa. Seleccionar las áreas de mejora donde los cambios puedan producir los máximos a medio y largo plazo. Sentarse en añadir el valor al negocio, no en alcanzar la “utopía del mejor proceso posible”. Combinar procesos eficaces con personas con habilidades, motivadas y creativas.

En esencia, la Mejora del Proceso es simple, consiste en aplicar las prácticas que proporcionan buenos resultados y cambiar o eliminar las prácticas que causan problemas. Es innegable el valor que tiene la Mejora del Proceso, pues según estudios realizados muchas empresas implicadas en la mejora del Proceso Software, han logrado reducir los costes de producción, mejorar la calidad del producto y ajustarse a las necesidades de los clientes.

Otros beneficios han sido lograr un entorno de trabajo más estable, una reducción de la tasa de rotación del personal y una mejora en las relaciones de trabajo con los clientes. En fin son múltiples los beneficios que se pueden obtener al llevar a cabo una Mejora de Procesos, por esto se necesita que los grupos encargados de llevarlo a cabo se sientan comprometidos, para lograr el CMMI.

CMMI como modelo para la Mejora de Procesos

Uno de los modelos de mejora de procesos más usados en las organizaciones es el CMMI.El CMMI, es un modelo que ayuda a: integrar las funciones de la organización, conducir la mejora de los procesos, proporciona una guía de calidad de los procesos y puntos de referencia para la evaluación de estos. El propósito del modelo es proveer una guía para mejorar los procesos de la organización y la capacidad para gestionar el desarrollo, la adquisición y el mantenimiento de productos y servicios.

Este modelo consta de cinco niveles de madurez que clasifican a la organización, estos niveles sirven para conocer la madurez de los procesos que se realizan para producir software.
Los niveles de madurez de una organización en CMMI son :
1. Inicial.
2. Gestionado.
3. Definido.
4. Gestionado cuantitativamente.
5. Optimizado.
Cada nivel comprende un conjunto de áreas de proceso estas cubren desde el desarrollo de los productos y de los servicios hasta el mantenimiento de los mismos. Independientemente de la disciplina a cual esté enfocada la organización, las áreas de proceso se subdividen en grupos distintos los cuales dependen de cada representación ya sea la continua o por etapas.
Al implantar un Proceso de Mejora usando CMMI como modelo existen riesgos que pueden afectar el desarrollo del proceso, de ahí la importancia de conocerlos y aplicar medidas para mitigarlos.

Riesgos en la implantación de Proceso de Mejora de Software

Los procesos de mejora en el desarrollo de software, trae cambios muy profundos en las organizaciones que desean implementar estos modelos, los administradores o jefes de proyectos deben asumir estas transformaciones oportunamente, para evitar catástrofes que incluso pueden llevar a la frustración en la implementación de modelos de mejora.

Para que un Proceso de Mejora de desarrollo del software tenga éxito, se requiere que los encargados de llevarlo a cabo estén dispuestos y preparados para asumir los cambios que estos modelos traen para las organizaciones.

Dos tercios de los proyectos de mejora no concluyen con éxito tras una evaluación formal, pues existen riesgos que pueden conducir al fracaso de estas iniciativas. El diccionario de la RAE, define riesgo como: “Contingencia o proximidad de un daño”. Adaptando este concepto a la investigación se define riesgo como, la probabilidad de que una amenaza de daño llegue a convertirse en un desastre.

Entre los riesgos que atentan contra la implantación exitosa de Procesos de Mejora se encuentran: Comunicación poco efectiva por parte de los gestores de proyectos o dentro de los mismos equipos de desarrollo de software. La comunicación debe fluir en todas direcciones, es decir la información debe ser transversal a toda la organización pues de lo contrario se pone en riesgo el éxito del proceso.

Poca comprensión de los equipos de desarrollo de los verdaderos objetivos y alcances de los procesos de mejora, esto los puede hacer sentir desmotivados, pues existen cambios organizacionales que para el equipo de desarrollo pueden ser bastante incómodos. Problema de “entendimiento” entre las partes involucradas que conllevan al fracaso del proceso. Las contradicciones técnicas de los modelos CMM/CMMI pueden llevar, sino son previstas con anticipación, al fracaso de los proyectos de implementación.

Falta de una cultura organizacional, lo que incide negativamente en la organización pues esta sin cultura es como un grupo de personas que no pueden comunicarse entre sí. La creencia de que el software se puede mejorar sólo con estándares, métricas y buenas prácticas, puede hacer fracasar la iniciativa de mejora.

El análisis de los riesgos mencionados evidencia como los principales esfuerzos de mejorar el proceso de desarrollo de software puedan irse a pique, dejando a los empleados de la empresa agotados, frustrados y más enraizados que nunca con las formas de trabajo del pasado. Hoy día la inadecuada manipulación y disponibilidad de la información, ha dado origen a algunos de estos riesgos, lo cual ha traído consigo que las organizaciones decidan hacer grandes esfuerzos y agoten todos sus recursos en función de gestionar correctamente la información dentro del Proceso de Mejora de Software.

Fuentes