Gestión de los Riesgos en Proyectos de Software
Nuevos tiempos se acercan a la gestión de proyectos de tecnología, abandonando la visión del ingeniero ("el riesgo es la combinación de la probabilidad del evento y sus consecuencias") para vincular los riesgos a los objetivos de la organización: "el riesgo es el efecto de la incertidumbre sobre los objetivos".
La gestión de riesgos en la ingeniería del software se relaciona con eventualidades que ocurren en un proyecto de desarrollo, causados por defectos en el proceso adoptado o errores en la ejecución propiamente dicha (causas epistémicas del riesgo).
Debemos decir que los proyectos de software (por su naturaleza) tienen una alta probabilidad de ocurrencia de estas eventualidades, por lo que es necesario manejar los riesgos adecuadamente.
La realidad planteada en el párrafo anterior implica que la gestión de riesgos se ha transformado en asunto clave dentro de la gestión de proyectos de software. De ahí su presencia en la mayoría de las normativas de calidad asociadas a nuestra especialidad.
En las estructuras de IT, usualmente el gerente de proyectos se encarga de la gestión de riesgos, siempre con la ayuda de un software desarrollado a tales fines. Este software debería permitir registrar los riesgos que podrían ocurrir durante el ciclo de vida de los proyectos y gestionar las estrategias de mitigación de los mismos.
Gestión de Riesgo en la Ingeniería de Software
En [Pressman, 2002] se presenta la definición de riesgo dada por Robert Charette en [Charette, 1989] donde plantea que:
· En primer lugar, el riesgo afecta a los futuros acontecimientos.
· En segundo lugar, el riesgo implica cambios.
· En tercer lugar, el riesgo implica elección, y la incertidumbre que entraña esta.
Los tres pilares de Charette se hacen continuamente evidentes y están presentes permanentemente las características de incertidumbre (acontecimiento que caracteriza al riesgo y que puede o no ocurrir) y de efecto (si el riesgo se convierte en una realidad ocurrirán consecuencias que deberían ser cuantificadas).
Puesto que puede haber varios riesgos asociados a los proyectos de desarrollo de software, la clave para gestionarlos es aplicar los siguientes conceptos básicos:
- crear y mantener el catálogo de riesgos (registro),
- describir (calificar y cuantificar) los riesgos en términos de rendimiento, costo, características de soporte y/o calendario,
- y, finalmente, establecer estrategias de mitigación ante su ocurrencia que nos asistan a morigerar sus efectos.
Modelo de Gestión de Riesgos: El Registro de Riesgos
La gestión de los riesgos incluye los procesos relacionados con llevar a cabo la planificación de la gestión, la identificación, el análisis, la planificación de respuesta a los riesgos, así como su monitoreo y control en un proyecto.
Los objetivos de la Gestión de los Riesgos del Proyecto son aumentar la probabilidad y el impacto de eventos positivos, y disminuir la probabilidad y el impacto de eventos negativos para el proyecto.
Estos procesos interactúan entre sí y con los procesos de las otras áreas de conocimiento. Cada uno puede implicar el esfuerzo de una o más personas, dependiendo de las necesidades del proyecto. Cada proceso se ejecuta por lo menos una vez en cada proyecto y en una o más fases del proyecto, en caso de que el mismo esté dividido en fases. Aunque los procesos se presentan aquí como elementos diferenciados con interfaces bien definidas, en la práctica se superponen e interactúan de formas diversas.
La propuesta es la utilización de un registro de riesgos adaptado a proyectos de software. Un registro de riesgos es una herramienta de gestión que actúa como un repositorio para todos los riesgos identificados e incluye información como: la naturaleza del riesgo, el área de impacto, el propietario o responsable y las medidas de mitigación, por ejemplo. Integrando esta herramienta al ciclo de vida del proyecto de software podremos incluir naturalmente la gestión de riesgos.
Finalmente se propone al agregado del componente cuantitativo como una característica diferencial (alejándonos de la subjetiva calificación de los riesgos) a través de técnicas probabilísticas, buscando una definición realista de los mismos.
Largamente utilizado en otras industrias, el análisis cuantitativo define el uso de técnicas probabilísticas para cuantificar la ocurrencia y el impacto del riesgo, todo esto mediante el uso de herramientas matemáticas y de simulación.