Este documento presenta información sobre la gestión de riesgos de software. El objetivo es que los estudiantes aprendan conceptos básicos sobre la gestión de riesgos y sean capaces de identificar, gestionar y monitorear riesgos utilizando herramientas existentes. La gestión de riesgos incluye la identificación, análisis, priorización y control de riesgos, así como el desarrollo de planes de mitigación y contingencia.
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
Gestión de riesgos de software
1. Proyecto Integrador II:
Tema: Gestión de Riesgos de Software
DOCENTE: OMAR S. GÓMEZ, PH.D.
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
Riobamba, EC, 13 noviembre, 2019
Escuela de Ingeniería en Sistemas: Carrera Software
2. Contextualización del problema
En el ámbito del desarrollo y mantenimiento del
software
¿Cómo surge la necesidad de gestionar los
riesgos en el desarrollo de software?
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
3. Contextualización del problema
En su opinión,
¿Qué ventajas y desventajas encuentra en emplear
la gestión de riesgos?
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
4. Objetivo
Conocer conceptos generales sobre la gestión de riesgos,
de tal manera que el estudiante identifique algunos de
ellos, los gestione y conozca como monitorearlos a través
del uso de herramientas existentes.
Logro de aprendizaje. El estudiante será capaz de
distinguir adecuadamente los principales elementos que
conforman la gestión de riesgos en un proyecto de
gestión de software.
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
5. Contenido
- Generalidades
- Identificación, análisis y gestión de riesgos
- Seguimientos de Riesgos
- Plan de contingencia
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
6. Reflexión
¿En qué circunstancia de la vida cotidiana ha pensado en la
presencia de algún riesgo?
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
Imagen de: https://i.nextmedia.com.au/Utils/
ImageResizer.ashx?n=http%3A%2F%2Fi.nextmedia.com.au%2FNews%2FiStock-182413504.jpg&w=820&c=0&s=1
7. Reflexión
¿Cuál fue su criterio, modo de actuar para abordar
ese posible riesgo?
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
8. Generalidades
Recordemos que el objetivo de la ingeniería de software
consiste en aplicar un enfoque sistemático, disciplinado y
cuantificable a través del uso de procesos, métodos y
herramientas para desarrollar y mantener productos
software en tiempo, bajo presupuesto y con un nivel de
calidad aceptable.
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
Imagen de: https://res.cloudinary.com/hnpb47ejt/image/
upload/v1548806934/mfzu1k1eargovjpniher.jpg
9. Generalidades (cont.)
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
Calidad
Ingeniería
del producto
(Software)
Gestión del
desarrollo
del producto
(Software)
10. Generalidades (cont.)
FACULTAD DE INFORMÁTICA Y ELECTRÓNICA, ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
Gestión del
desarrollo
del producto
(Software)
Gestión
de
riesgos
11. Generalidades (cont.)
• Riesgo. Contingencia o proximidad de un daño. (RAE)
• Risk. Possibility of loss or injury (Merriam-Webster)
12. Generalidades (cont.)
• De acuerdo a lo anterior, un riesgo podemos entenderlo
como la exposición a una circunstancia adversa (futuro)
que aún no sucede, y en caso de presentarse puede
convertirse en un problema (presente).
13. Generalidades (cont.)
Circunstancia adversa que puede o no presentarse
Circunstancia
adversa
riesgo
manifestación del riesgo problema
Imágenes de: https://www.deviantart.com/shadowyingzhi/art/Destroyed-City-205566557
https://peru.com/actualidad/sabias-que/si-logras-sobrevivir-explosion-nuclear-esto-no-debes-hacer-noticia-515246
14. Identificación, análisis y gestión
• Podemos entonces entender un riesgo como un problema
potencial: puede ocurrir, o puede no ocurrir.
• Pero, sin importar el resultado, realmente es una buena
idea identificarlo, valorar su probabilidad de ocurrencia,
estimar su impacto y establecer un plan de contingencia
para el caso de que el riesgo se convierta en problema.
15. Gestión de riesgos
• Su función principal es identificar, estudiar y eliminar las
fuentes de riesgo antes de que empiecen a amenazar la
finalización satisfactoria del proyecto de software.
• Generalmente esta práctica se divide en su identificación,
valoración y control.
imagen de: http://poemadicta.blogspot.com/2009/10/
equilibrista-jesus-munarriz.html
16. Gestión de Riesgos
Enfoque REACTIVO
Control de Crisis. “Apaga fuegos”, controlar los riesgos sólo cuando
estos se han convertido en un problema.
Reparar cada defecto. Detectar y reaccionar oportunamente ante
cualquier riesgo, sólo después de que éste se haya producido.
Enfoque PROACTIVO
Mitigar los riesgos. Planificar con antelación el tiempo necesario para
cubrir un riesgo en caso de presentarse.
Prevención. Crear y realizar un plan como parte del proyecto para
identificar riesgos y evitar se conviertan en problemas.
Eliminación de causas principales. Identificar y eliminar los factores
que puedan hacer posible la presencia de algún tipo de riesgo.
17. Estimación y control de riesgos
• De acuerdo a Boehm (1989), la gestión de riesgos se
compone de estimación y control de riesgos.
• Estimación de riesgos:
– Identificación de riesgos
– Análisis de riesgos
– Priorización de riesgos
• Control de riesgos:
– Planificación de la gestión de riesgos
– Resolución de riesgos
– Monitorización de riesgos
Boehm. (1989). Software Risk Management. IEEE Press, Piscataway, NJ, USA.
18. Ejemplos de riesgos comunes en un
proyecto software (identificación)
• Cambio de requisitos
• Meticulosidad en requerimientos o desarrolladores
• Escatimar (minimizar) en la calidad (deuda técnica)
• Planificaciones demasiado optimistas
• Diseño inadecuado
• Síndrome de la panacea
• Trabajo de baja calidad (mediocre)
• Error en la contratación
• Diferencias entre el personal de desarrollo y los clientes
19. Exposición de los riesgos (análisis)
• Una forma para analizar los riesgos es determinar su
exposición o impacto de cada riesgo identificado.
• La exposición a cierto riesgo puede estimarse a partir de
la probabilidad de pérdida no esperada multiplicada por la
magnitud de la perdida.
20. Ejemplo
Riesgo Probabilidad
de pérdida
Magnitud de la
pérdida
(semanas)
Exposición a
riesgo
(semanas)
Planificación demasiado optimista 0.3 (30%) 4 1.2
Añadir un requisito (cambios no
esperados)
0.6 (60%) 6 3.6
Añadir una característica 0.3 (30%) 3 0.9
Diseño inadecuado 0.2 (20%) 12 2.4
Retraso total sin gestión de riesgos igual a 8.1 semanas
21. Priorización de riesgos
• Una vez creada la lista de riesgos el siguiente paso
consiste en priorizarlos para incluirlos en la gestión de
riesgos.
• Organiza de mayor a menor la exposición de los riesgos
– Siguiendo con el ejemplo anterior, al priorizar los
riesgos: “añadir un requisito (3.6)” y “diseño
inadecuado (2.4)” acumulan un total de 6 semanas.
– Si se consigue controlar estos dos riesgos, cabría
esperar una reducción de 6 semanas en el retraso
total estimado del proyecto.
22. Control de riesgos
• El siguiente paso consiste en desarrollar un plan de
control donde se especifique cómo controlar cada riesgo
de prioridad alta previamente identificado.
• Básicamente en cada riesgo se especifica quién, qué,
cuándo y cómo se gestiona cada uno de los riesgos.
• Este plan también contiene previsiones para el monitoreo
de riesgos, descartando aquellos que se han resuelto e
identificando nuevos.
23. Control de riesgos
• En cuanto al control de riesgos se puede confeccionar un
plan de mitigación y un plan de contingencia
24. Control de riesgos: Plan de mitigación
Imágenes de:https://www.elsevier.com/connect/smoking-and-smoking-related-health-outcomes-high-in-public-housing
https://www.currentaffairs.org/2019/05/the-city-of-tomorrow-is-the-city-of-yesterday
Circunstancia
adversa
riesgo
manifestación del riesgo
problema
Estrategias de mitigación
25. Control de riesgos: Plan de contingencia
Imágenes de:https://www.musixmatch.com/es/album/Eddie-Murxx/City-Under-Fire
https://peru.com/actualidad/sabias-que/si-logras-sobrevivir-explosion-nuclear-esto-no-debes-hacer-noticia-515246
Circunstancia
adversa
riesgo
manifestación del riesgo
problema
Estrategias de contingencia
26. Monitoreo de riesgos (seguimiento)
• Los riesgos pueden aparecer y desaparecer a lo largo del
proyecto, por lo que es necesario mantenerlos bajo
monitoreo.
• Este monitoreo permite comprobar cómo progresa el
control de un riesgo así como permite identificar la
aparición de nuevos riesgos.
• Como parte del monitoreo o seguimiento se puede
ejecutar el plan de mitigación.
27. Lista de los 10 riesgos principales
(seguimiento)
• Una forma efectiva de monitoreo de riesgos consiste en
generar una lista de los diez riesgos. Esta lista contiene la
posición del riesgo en la lista, su posición anterior y el
número de veces que ha aparecido en la lista, así como
un resumen con las acciones que se han llevado a cabo
desde la última revisión.
28. Ejemplo de lista de los 10 riesgos
principales
Esta
semana
Semana
pasada
Semanas
en la lista
Riesgo Progreso de la resolución
del riesgo
1 1 5 Cambio de
requisitos
Usar técnica de entrega
por incrementos;
explicación de la técnica a
marketing y usuario final.
2 5 5 Diseño
inadecuado
Diseño en marcha.
Identificación y selección
de revisores expertos.
3 2 4 Responsable de
pruebas no
encontrado
Oferta de trabajo a un
candidato adecuado, se
está a la espera.
29. Plan de contingencia
• Elementos:
•Plan de respaldo
•Plan de emergencia
•Plan de recuperación
Ejemplo de plantilla de plan de contingencia
https://qrgo.page.link/wZx7q
30. Ejemplo de plantilla de un plan de gestión
de riesgos
https://qrgo.page.link/Fg57V
32. Conclusiones (resumen)
• La gestión de riesgos es un elemento relevante dentro de
la gestión de proyectos software.
• Se recomienda adoptar un enfoque proactivo.
• Los riesgos son circunstancias adversas que pueden o no
presentarse.
• Actividades relevantes en la gestión de riesgos son:
identificación, análisis, control y seguimiento
(monitorización).
• Los planes de contingencia ayudan a minimizar la
exposición de los riesgos, se ejecutan cuando el riesgo se
ha presentado.
33. Evaluación
¿El plan de contingencia se lleva a cabo una vez que el
riesgo se ha presentado ya como un problema?
- Verdadero
- Falso
https://linkto.run/p/BW08JM9A
34. Trabajo autónomo (estudio de caso)
• Actividad en equipos de dos personas. Un ejemplo real de
aplicación de gestión de riesgos en proyectos de software se
describe en el artículo titulado: Case study on risk
management practice in large offshore-outsourced Agile
software projects (Sundararajan et al., 2014).
• En un documento de texto (formato libre) discuta dos riesgos
identificados y dos técnicas empleadas para la resolución de
éstos.
Horarios de tutoría: Lunes 15:00-18:00
Sala de profesores (2do nivel) edificio EIS
Email: ogomez@espoch.edu.ec
S. Sundararajan, M. Bhasi and P. K. Vijayaraghavan, "Case study on risk management practice in
large offshore-outsourced Agile software projects," in IET Software, vol. 8, no. 6, pp. 245-257, 12 2014
36. Bibliografía
• McConnell. (1997). Desarrollo y gestión de proyectos
informáticos. MCGraw-Hill. Madrid. España. Disponible en
la biblioteca central.
• Pressman. (2010). Ingeniería del Software: un enfoque
práctico. 7 ed. Mc-Graw-Hill. México. Disponible en la
biblioteca central.
37. Trabajo en clase
• Actividad individual. Empleando planhammer.io añada
dos riesgos que pueden afectar el desarrollo de un
producto software.
38. Resultados de evaluación
¿El plan de contingencia se lleva a cabo una vez que el
riesgo se ha presentado ya como un problema?
- Verdadero
- Falso
https://linkto.run/r/BW08JM9A