Вы находитесь на странице: 1из 24

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

TEMA 3 Mtodos de estimacin y gestin del riesgo

Francisco J. Garca Pealvo (fgarcia@usal.es) Mara N. Moreno Garca (mmg@usal.es) Departamento de Informtica y Automtica Universidad de Salamanca

Gestin de Proyectos

Contenidos 1.! 2.! 3.! 4.! 5.! 6.! Introduccin Precisin y exactitud de las estimaciones Estimacin de costes Modelos de coste y esfuerzo Estimaciones con modelos de minera de datos Gestin de riesgos

Mtodos de estimacin y gestin del riesgo 2

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Introduccin
!!

Estimacin
Una estimacin es la prediccin ms optimista con una probabilidad distinta de cero de ser cierta Una estimacin es una prediccin que tiene la misma probabilidad de estar por encima o por debajo del valor actual (De Marco, 1982)

!! !!

Los objetivos de la estimacin de proyectos son reducir los costes e incrementar los niveles de servicio y de calidad Si se miden determinados aspectos del proceso de software se puede tener una visin de alto nivel de lo que suceder durante el desarrollo
"! "!

Las mediciones de procesos anteriores permiten realizar predicciones sobre los actuales Las mediciones de atributos de proceso en fases iniciales del desarrollo permiten realizar predicciones sobre fases posteriores

!!

Las predicciones de proceso conducen la toma de decisiones antes del comienzo del desarrollo, durante el proceso de desarrollo, durante la transicin del producto al cliente y a lo largo de la fase de mantenimiento
Mtodos de estimacin y gestin del riesgo 3

Gestin de Proyectos

Introduccin
!!

La estimacin en los proyectos software tiene dificultades particulares si se compara con otras industrias
"!

En otros sectores es habitual producir el mismo tipo de producto una y otra vez, con los mismos mtodos

!! !! !!

En el caso del software es habitual desarrollar un nuevo producto cada vez, con distintas tcnicas y herramientas La estimacin en el software es ms inexacta aunque no imposible (Fenton y Pfleeger, 1997) Aparte de las peculiaridades del software, existen otras razones que dificultan la estimacin de los proyectos
"! "!

Presiones externas Carencia de datos sobre proyectos terminados


Mtodos de estimacin y gestin del riesgo 4

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Introduccin
!!

La figura siguiente muestra algunas de las predicciones que pueden ser tiles a lo largo del ciclo de vida
Anlisis del coste/beneficio Viabilidad Esfuerzo/planificacin/ prediccin de la calidad Requisitos Potencial de reutilizacin Estimacin del tamao tamao /planificacin/ prediccin de la calidad Codificacin Prediccin del esfuerzo de prueba Prueba/entrega Predicciones de finalizacin de las pruebas Predicciones de calidad/fiabilidad
Mtodos de estimacin y gestin del riesgo 5

Diseo

Mantenimiento

Gestin de Proyectos

Precisin y exactitud de las estimaciones


!! !! !! !! !!

La precisin hace referencia al nmero de cifras significativas que tiene una medida La exactitud se refiere a la cercana de una medida a su objetivo Una prediccin es til si tiene una exactitud razonable En la estimacin del software una precisin errnea es el peor enemigo de la exactitud Es preferible expresar las estimaciones como un rango que como un nmero simple

!!

Ejemplo
Se desea estimar el tiempo necesario para finalizar un proyecto con un conjunto dado de requisitos y se dispone de datos de tiempo de finalizacin de un gran nmero de proyectos con los mismos requisitos
"! "! "!

Se puede representar la funcin de densidad de probabilidad para el tiempo de finalizacin t La probabilidad de que un proyecto de las mismas caractersticas se complete en un intervalo de tiempo [t1,t2] es el rea bajo la curva entre t1 y t2 La probabilidad solo puede determinarse para un intervalo determinado. Para un valor de tiempo concreto el rea bajo la curva sera cero
Mtodos de estimacin y gestin del riesgo 6

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Precisin y exactitud de las estimaciones


!! !!

Una estimacin se define como la mediana de la distribucin La estimacin debe entenderse como el centro de un intervalo que se expresa mediante tres valores
"! "!

El valor ms probable: mediana de la distribucin Los lmites superior e inferior del valor: intervalos de confianza
Mediana 0,15 0,1 0,05 0 0 4 8 12 16 20 24 Tiempo (meses)
Representacin de la funcin de densidad de probabilidad Mtodos de estimacin y gestin del riesgo 7

Gestin de Proyectos

Precisin y exactitud de las estimaciones


!!

Evaluacin de la exactitud de la estimacin: comparacin de los valores actuales con los valores estimados
"!

Error relativo de la estimacin:


donde RE = (A - E) /A A: valor actual E: valor estimado
n

"!

Error relativo medio:


RE = (1/n) ! REi
i=1

"! "!

Magnitud del error: MRE = valor absoluto de RE Magnitud media del error relativo:
MRE = (1/n) ! MREi
i=1 n

"!

Calidad de la prediccin para un conjunto de n proyectos, de los cuales k es el nmero de proyectos cuya magnitud media del error relativo es menor o igual a q
PRED (q) = k / n

"!

Factor de la calidad de la estimacin: las estimaciones se realizan repetidamente a lo largo del proyecto a medida que se va obteniendo ms informacin
Mtodos de estimacin y gestin del riesgo 8

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Precisin y exactitud de las estimaciones

(Fenton y Pfleeger, 1997)


Mtodos de estimacin y gestin del riesgo 9

Gestin de Proyectos

Estimacin de costes
!!

!!

La estimacin de costes implica la realizacin de predicciones sobre la cantidad ms probable de esfuerzo, tiempo y niveles de personal que se requieren para construir un sistema de software Las estimaciones de coste se realizan a lo largo de todo el ciclo de vida
"!

Las estimaciones preliminares


!! !! !!

Se requieren para hacer una oferta o determinar la viabilidad de un proyecto Son las ms difciles de hacer y las menos exactas Se realizan estimaciones gruesas del esfuerzo y se divide el esfuerzo total por actividades Se requieren cuando ha comenzado el proyecto para realizar la planificacin El esfuerzo y duracin de tareas individuales se compara con los valores estimados Peridicamente se realizan restimaciones y se reasignan recursos si fuese necesario

"!

Las estimaciones ms detalladas


!! !!

!!

Mtodos de estimacin y gestin del riesgo 10

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Estimacin de costes
Tcnicas de estimacin
!!

Opinin de expertos
"!

Un desarrollador o gestor describe los parmetros del proyecto y los expertos hacen estimaciones basadas en su experiencia Enfoque ms formal que la opinin de expertos Los expertos comparan el proyecto propuesto con uno o ms proyectos anteriores intentando encontrar similitudes y diferencias particulares Anlisis minucioso de las caractersticas que afectan al coste del proyecto El anlisis se centra en los productos o en las tareas que se requieren para construirlos Las estimaciones se hacen sobre cada componente en que se descompone el software o sobre tareas de bajo nivel en que se descomponen las tareas Las estimaciones de bajo nivel se combinan para producir una estimacin del proyecto completo Tcnicas que identifican los factores clave que contribuyen al esfuerzo y generan una frmula o modelo matemtico que relaciona esos factores con el esfuerzo Los modelos se basan normalmente en experiencias pasadas
Mtodos de estimacin y gestin del riesgo 11

!!

Analoga
"! "!

!!

Descomposicin
"! "! "! "!

!!

Modelos
"! "!

Gestin de Proyectos

Juicio de expertos Tcnica Delphi


!!

!!

!!

!!

Un coordinador proporciona a cada experto una especificacin del proyecto propuesto y un impreso para expresar su opinin Los expertos rellenan el impreso de forma annima. Pueden hacer preguntas sobre el proyecto al coordinador, pero no pueden intercambiar opiniones entre ellos El coordinador ofrece a cada experto el valor medio de las opiniones para que lo compare con la suya. Se pide realizar una nueva estimacin annima, para indicar las posibles razones de la misma Se repite el proceso de recogida de opiniones hasta que se llega a un consenso en la estimacin. No se realizan reuniones en grupo durante todo el proceso
Mtodos de estimacin y gestin del riesgo 12

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Juicio de expertos Tcnica Delphi de Banda Ancha


1.! 2.! 3.! 4.!

5.!

6.!

Un coordinador proporciona a cada experto una especificacin del proyecto propuesto y un impreso El coordinador rene a los expertos para que intercambien puntos de vista sobre el proyecto Los expertos rellenan el impreso de forma annima El coordinador ofrece a cada experto el valor medio de las opiniones para que lo compare con la suya. Se pide realizar una nueva estimacin annima, sin indicar las posibles razones de la misma El coordinador convoca una reunin de grupo para que los expertos discutan las razones de las diferencias de sus estimaciones Se rellenan annimamente los impresos y se repiten los puntos 4, 5 y 6 hasta que se llegue al consenso
(Boehm, 1981)
Mtodos de estimacin y gestin del riesgo 13

Gestin de Proyectos

Modelos de coste y esfuerzo


!!

Hay dos tipos de modelos que se utilizan para estimar el esfuerzo


"!

Modelos de coste
!!

!!

!!

!!

Proporcionan estimaciones directas del esfuerzo o la duracin del proyecto Estn basados en datos empricos reflejados en factores que contribuyen al coste total Tienen una entrada primaria (generalmente una medida del tamao del producto) y varios factores de ajuste secundarios denominados generalmente guas de coste El modelo COCOMO es un modelo emprico de coste

"!

Modelos restrictivos
!!

!!

Demuestran la relacin en el tiempo entre dos o ms parmetros de esfuerzo, duracin o nivel de personal La curva de Rayleigh se usa en modelos de este tipo como base de la relacin entre esfuerzo y tiempo
Mtodos de estimacin y gestin del riesgo 14

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelos de regresin
!!

Los primeros intentos de construccin de modelos de coste usaban tcnicas de regresin


"! "!

Examinan las relaciones entre atributos medidos en muchos proyectos anteriores para construir una ecuacin que relacione algunos factores Una vez que se ha definido la ecuacin base, la estimacin puede ajustarse mediante otros factores secundarios

!!

!!

La funcin exponencial puede transformarse en una funcin lineal: log E = log a + b logS

log E

Ecuacin base que relaciona el esfuerzo con el tamao del producto E = a Sb

6 5 4 3 2 1 0 0 2 log S 4 6

Mtodos de estimacin y gestin del riesgo 15

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelos de regresin
!! !! !! !!

El siguiente paso es identificar los factores que causan variacin entre el esfuerzo actual y el estimado El anlisis de esos factores puede ayudar a identificar parmetros adicionales que se aaden al modelo como guas de coste A cada uno de los factores se les asigna un peso tomando como base el juicio de expertos y datos empricos Los factores ponderados se aplican a la ecuacin del esfuerzo de la forma: E = (a Sb) F donde F es el factor de ajuste del esfuerzo calculado como el producto del valor de las guas de coste

!! !!

El clculo de F solo es vlido cuando los factores individuales son independientes Dos modelos que utilizan este enfoque son
"! "!

El modelo COCOMO original en sus versiones intermedia y avanzada El modelo de Bailey-Basili


Mtodos de estimacin y gestin del riesgo 16

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo de Bailey-Basili
!! !! !!

Bailey y Basili sugirieron una tcnica para obtener un modelo de coste a partir de sus propios datos (Bailey y Basili, 1981) Ecuacin del esfuerzo obtenida a partir de 18 grandes proyectos E = 5.5 + 0.63 S1.16 La ecuacin se ajusta mediante un factor de ajuste del esfuerzo calculado a partir de los atributos de la tabla siguiente
"! "!

A cada entrada en la tabla se le da una puntuacin de 0 a 5 Los valores obtenidos se usan para ajustar la ecuacin Ajuste del esfuerzo = a METH + b CPLX + c EXP + d
Complejidad acumulada (CPLX)
Complejidad de la interfaz de usuario Complejidad de la aplicacin Complejidad del flujo de programa Complejidad de comunicacin interna Complejidad de la base de datos Complejidad de la comunicacin externa Cambios en el diseo solicitados por el usuario

Metodologa (METH)
Diagramas de rboles Diseo top-down Documentacin formal Equipos con programador jefe Entrenamiento formal Formalismos de diseo Lectura de cdigo Carpetas de desarrollo de unidad Planes de prueba formales

Experiencia acumulada (EXP)


Cualificacin del programador Experiencia del programador con la mquina. Experiencia del programador en el lenguaje Experiencia del programador en la aplicacin Experiencia del equipo

Mtodos de estimacin y gestin del riesgo 17

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO
!!

El modelo COCOMO (COnstructive COst MOdel) fue propuesto por Boehm (Boehm, 1981) y revisado posteriormente dando lugar a la versin COCOMO 2.0 (Boehm et al., 1995)

Modelo COCOMO original


!!

Se puede considerar como una coleccin de tres modelos


"! "! "!

Bsico: Clculo del esfuerzo en funcin del tamao (LDC) Intermedio: Clculo del esfuerzo en funcin del tamao y de guas de coste Avanzado: Modificacin del modelo intermedio para considerar el impacto de las guas de coste en cada fase

!!

Estn definidos para tres tipos de proyectos


"! "! "!

Modo orgnico: Proyectos pequeos, mucha experiencia, pocas restricciones Modo semiacoplado: Proyectos intermedios, varios niveles de experiencia, requisitos poco y medio rgidos Modo empotrado: Proyectos complejos y muy restrictivos
Mtodos de estimacin y gestin del riesgo 18

Tema 3: Mtodos de estimacin y gestin del riesgo

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO
Modelo COCOMO original
!!

Modelo bsico E = a (KDSI)b


DSI: Delivered Source Instructions

Proyecto de software
Orgnico Semiacoplado Empotrado

a
3.2 3,0 2,8

b
1,05 1,12 1,20

!!

Modelo Intermedio E = a (KDSI)b F


F: factor de ajuste
"!

El factor de ajuste se calcula considerando 15 factores o guas de coste que se agrupan en cuatro categoras
!! !! !! !!

Atributos del producto (3) Atributos computacionales (5) Atributos de personal (4) Atributos del proceso (3)

"!

Cada factor se sita en una escala de seis valores que va de muy bajo a extra alto. A los valores bajos se le asocia un multiplicador menor que 1, a los medios 1 y a los valores altos mayor que 1
Mtodos de estimacin y gestin del riesgo 19

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO
Modelo COCOMO original
!!

Duracin del proyecto


"!

Para estimar la duracin se usa un modelo de restriccin que predice el tiempo a partir del esfuerzo

D = a (E)b
D: duracin en meses E: esfuerzo en meses-persona El coeficiente a y el exponente b dependen del modelo de desarrollo, como puede observarse en la tabla siguiente

Proyecto de software
Orgnico Semiacoplado Empotrado

a
2,5 2,5 2,5

b
0,38 0.35 0.32

"! "!

La ecuacin proporciona la estimacin ptima de la duracin del proyecto para un esfuerzo determinado Una gua de coste valora el efecto de reducir o incrementar artificialmente el proyecto respecto al valor ptimo
Mtodos de estimacin y gestin del riesgo 20

Tema 3: Mtodos de estimacin y gestin del riesgo

10

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO
!!

Modelo COCOMO original Fiabilidad


"!

Atributos

Factores de coste del modelo

Tamao de Base de datos Complejidad

Valor Muy Bajo Nominal Alto bajo Atributos de software 0,75 0,88 1,00 1,15 0,94 1,00 1,08 0,70 0,85 1,00 1,15 Atributos de hardware

Muy alto 1,40 1,16 1,30

Extra alto

1,65 1,66 1,56

Restricciones de tiempo de 1,00 ejecucin Restricciones de memoria virtual 1,00 Volatilidad de la mquina virtual 0,87 1,00 Tiempo de respuesta 0,87 1,00 Atributos de personal Capacidad de anlisis 1,46 1,19 1,00 Experiencia en la aplicacin 1,29 1,13 1,00 Calidad de los programadores 1,42 1,17 1,00 Experiencia en la mquina virtual 1,21 1,10 1,00 Experiencia en el lenguaje 1,14 1,07 1,00 Atributos del proyecto Tcnicas actualizadas de 1,24 1,10 1,00 programacin Utilizacin de herramientas de 1,24 1,10 1,00 software Restricciones de tiempo de desarrollo
!

1,11 1,30 1,06 1,21 1,15 1,30 1,07 1,15 0,86 0,71 0,91 0,82 0,86 0,70 0,90 0,95 0,91 0,82 0,91 0,83 1,04 1,10

1,23

1,08

1,00

Mtodos de estimacin y gestin del riesgo 21

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO
!!

Modelo COCOMO original


"!

Explicacin de los atributos (I)


!!

De software
"!

"!

"!

RELY: Garanta de funcionamiento requerida al software. Indica las posibles consecuencias para el usuario en el caso que existan defectos en el producto. Va desde la sola inconveniencia de corregir un fallo (muy bajo) hasta la posible prdida de vidas humanas (extremadamente alto, software de alta criticidad) DATA: Tamao de la base de datos en relacin con el tamao del programa. El valor del modificador se define por la relacin D/K , donde D corresponde al tamao de la base de datos en bytes y K es el tamao del programa en cantidad de lneas de cdigo CPLX: Representa la complejidad del producto

Mtodos de estimacin y gestin del riesgo 22

Tema 3: Mtodos de estimacin y gestin del riesgo

11

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO
!!

Modelo COCOMO original


"!

Explicacin de los atributos (II)


!!

De hardware
"! "! "! "!

TIME: Limitaciones en el porcentaje del uso de la CPU STOR: Limitaciones en el porcentaje del uso de la memoria VIRT: Volatilidad de la mquina virtual TURN: Tiempo de respuesta requerido ACAP: Calificacin de los analistas AEXP: Experiencia del personal en aplicaciones similares PCAP: Calificacin de los programadores VEXP: Experiencia del personal en la mquina virtual LEXP: Experiencia en el lenguaje de programacin a usar MODP: Uso de prcticas modernas de programacin TOOL: Uso de herramientas de desarrollo de software SCED: Limitaciones en el cumplimiento de la planificacin
Mtodos de estimacin y gestin del riesgo 23

!!

De personal
"! "! "! "! "!

!!

De proyecto
"! "! "!

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO 2.0
!!

En la nueva versin se propone un modelo para cada una de las principales etapas del proyecto
"!

Aplicacin
!! !!

!!

Se usa para prototipos construidos para reducir riesgos. Deben incluir interfaces de usuario, bases de datos, generadores de informes, herramientas de productividad, etc. Utiliza como entrada la estimacin del tamao en puntos objeto Se usa en etapas de exploracin de arquitecturas alternativas Se aceptan lneas de cdigo como estimacin del tamao aunque el modelo est enfocado al uso de puntos de funcin Se puede aplicar cuando ha comenzado el desarrollo Se pueden usar con ms seguridad lneas de cdigo para estimar el tamao Se usan ms parmetros para ajustar el esfuerzo
Mtodos de estimacin y gestin del riesgo 24

"!

Diseo inicial
!! !!

"!

Pos-arquitectura
!! !! !!

Tema 3: Mtodos de estimacin y gestin del riesgo

12

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO 2.0
!!

Estimacin del esfuerzo de desarrollo (I)


"!

Las estimaciones del esfuerzo en meses-persona (PM) se obtienen a partir del tamao del software dado en lneas de cdigo fuente (SLOC) o puntos de funcin (PFU). La ecuacin bsica es la siguiente

PMNOMINAL = A (tamao)B
A: constante usada para capturar los efectos multiplicadores del esfuerzo con el incremento del tamao del proyecto B: Factor de escala B = 1.01 + 0.001 ! wi Factores de escala wi
!! !! !! !! !!

Falta de precedentes (PREC) Flexibilidad del desarrollo (FLEX) Arquitectura/resolucin de riesgo (RESL) Cohesin del equipo (TEAM) Madurez del proceso (PMAT)
Mtodos de estimacin y gestin del riesgo 25

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO 2.0
!!

Estimacin del esfuerzo de desarrollo (II)


"!

"!

Se usa un porcentaje de rotura (BRAK) para ajustar el tamao efectivo del producto. Representa el porcentaje de cdigo inservible debido a la volatilidad de los requisitos Tambin se ajusta el tamao debido a la reutilizacin. La cantidad de software que debe adaptarse (ASLOC) se estima mediante una ecuacin no lineal y los parmetros
!! !! !! !!

!!

!! !!

Porcentaje de diseo modificado (DM) Porcentaje de cdigo modificado (CM) Porcentaje de modificacin del esfuerzo de integracin (IM) Incremento de comprensin de software (SU). Depende de la estructura y claridad de la aplicacin Grado de valoracin y asimilacin (AA) necesario para determinar si un mdulo reutilizado es apropiado Falta de familiaridad del programador (UNFM) Parmetros de conversin y reingeniera

"!

Las guas de coste se utilizan para ajustar el esfuerzo en funcin de algunas caractersticas del desarrollo. El peso de cada gua de coste se denomina multiplicador del esfuerzo (EM) PMAJUSTADO = PMNOMINAL ( " EMi)
Mtodos de estimacin y gestin del riesgo 26

Tema 3: Mtodos de estimacin y gestin del riesgo

13

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO 2.0
!!

Estimacin del esfuerzo de desarrollo (III)


"!

El modelo de diseo inicial tiene 7 multiplicadores del esfuerzo


!! !! !! !! !! !! !!

Capacidad del personal (PERS) Fiabilidad y complejidad del producto (RCPX) Reutilizacin requerida (RUSE) Dificultad de la plataforma (PDIF) Experiencia del personal (PREX) Facilidades (FCIL) Calendario (SCED)

"!

En el modelo posarquitectura cada uno de los anteriores se divide en varios obtenindose 17 multiplicadores

Mtodos de estimacin y gestin del riesgo 27

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO
!!

Estimacin del esfuerzo de desarrollo (IV)


ECUACIONES DEL MODELO DE DISEO INICIAL

Mtodos de estimacin y gestin del riesgo 28

Tema 3: Mtodos de estimacin y gestin del riesgo

14

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO
!!

Estimacin del esfuerzo de desarrollo (V)


ECUACIONES DEL MODELO POS-ARQUITECTURA

Mtodos de estimacin y gestin del riesgo 29

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO 2.0
!!

Estimacin del esfuerzo de desarrollo (VI)

Tabla de smbolos
Mtodos de estimacin y gestin del riesgo 30

Tema 3: Mtodos de estimacin y gestin del riesgo

15

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo COCOMO Modelo COCOMO 2.0
!!

Estimacin del calendario


"!

El modelo proporciona una estimacin del tiempo en meses (TDEV) desde la determinacin de los requisitos de un producto hasta la aceptacin y certificacin de que el sistema desarrollado cumple con los requisitos
ECUACIONES

Tabla de smbolos
Mtodos de estimacin y gestin del riesgo 31

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo SLIM
!!

Putnam desarroll un modelo de estimacin del esfuerzo total y del tiempo de finalizacin para proyectos muy grandes (Putnam, 1978). Las ecuaciones bsicas se pueden ajustar para pequeos proyectos El modelo asume que el esfuerzo para proyectos de desarrollo de software se distribuye de forma similar a una coleccin de curvas de Rayleigh, una para cada actividad del desarrollo La especificacin de requisitos no se incluye en el modelo
Curvas de Rayleigh
Mtodos de estimacin y gestin del riesgo 32

!!

!!

Tema 3: Mtodos de estimacin y gestin del riesgo

16

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Modelos de coste y esfuerzo


Modelo SLIM
!!

A partir de la frmula bsica de la curva de Rayleigh, Putnam us observaciones empricas sobre la productividad para obtener su ecuacin de software Tamao = C K 1/3 td4/3

!!

C: factor de tecnologa K: esfuerzo total medido en aos-persona td: tiempo de finalizacin del proyecto medido en aos. La ecuacin permite valorar el efecto de modificar el tiempo de entrega y el esfuerzo total necesario para completar el proyecto. Putnam propone otra ecuacin para estimar el tiempo o la duracin

D0 = K / td3
!!

D0: Constante denominada aceleracin de mano de obra Combinando las ecuaciones anteriores se obtiene S: tamao El modelo SLIM usa curvas diferentes para distintas fases del ciclo de vida
Mtodos de estimacin y gestin del riesgo 33

K = (S/C)9/7 D04/7

!!

Gestin de Proyectos

Modelos de coste y esfuerzo


Estimaciones basadas en Casos de Uso
!!

A partir de UCP (Use Case Points) Esfuerzo = UCP * F


F: Factor de conversin

!!

Estimacin de LOC (Lines of Code) a partir de los casos de uso (Smith, 1999)

LOC = N * LOCprom+[(Sa/Sh-1) + (Pa/Ph-1)]*LOCajuste


N: Nmero real de casos de uso LOCprom : LOC promedio por caso de uso para ese tipo de subsistemas LOCajuste : porcentaje de diferencia entre el proyecto actual y los proyectos promedio Sa: escenarios reales por caso de uso Sh: escenarios promedio por caso de uso para ese tipo de subsistemas Pa: pginas reales por caso de uso Ph: pginas promedio por caso de uso para ese tipo de subsistemas
"!

El esfuerzo se calcula a partir del nmero de lneas de cdigo utilizando los modelos COCOMO o SLIM
Mtodos de estimacin y gestin del riesgo 34

Tema 3: Mtodos de estimacin y gestin del riesgo

17

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Estimaciones con modelos de minera de datos


!!

Clasificacin de los mtodos de minera de datos


"! "!

Supervisados: tcnicas de aprendizaje automtico No supervisados: tcnicas de descubrimiento del conocimiento

!!

Algoritmos de aprendizaje automtico


Utilizan los datos de proyectos pasados para inducir automticamente un modelo (clasificador) que servir para realizar estimaciones sobre nuevos proyectos (Moreno y Garca, 2007)
"!

Etapas:
!!

Conjunto de entrenamiento

!!

!!

Entrenamiento: construccin del modelo con datos histricos Prueba: validacin del modelo con datos histricos Aplicacin del modelo: Realizacin de predicciones sobre nuevos proyectos

Inductor
Clasificador

Evaluacin

Induccin y prueba de un clasificador

Mtodos de estimacin y gestin del riesgo 35

Gestin de Proyectos

Estimaciones con modelos de minera de datos


!!

rboles de decisin
"!

"!

Muestran los valores de los atributos que proporcionan la separacin de los datos en clases diferentes Los nodos simbolizan puntos de decisin y las hojas puntos finales con las observaciones de los datos
rbol de decisin para estimar el tamao del software

SI SI (RELATION (RELATION > > 88.5 88.5 y y NTRNSMKII NTRNSMKII <= <= 36) 36) ENTONCES ENTONCES LOC: LOC: 3577.8 3577.8 4987.2 4987.2 SI SI (RELATION (RELATION > > 88.5 88.5 y y NTRNSMKII NTRNSMKII > > 36 36 y y NOC NOC > > 75.5 75.5 )) ENTONCES ENTONCES LOC: LOC: 4987.2 4987.2 -- 6386.6 6386.6 SI SI (RELATION (RELATION > > 88.5 88.5 y y NTRNSMKII NTRNSMKII > > 36 36 y y NOC NOC <= <= 75.5 75.5 )) ENTONCES ENTONCES LOC LOC > > 6386.6 6386.6 SI SI (RELATION (RELATION <= <= 88.5 88.5 y y (NTRNSMKII (NTRNSMKII > > 24 24 (NTRNSMKII (NTRNSMKII <= <= 24 24 y y DATAELEMENT DATAELEMENT > > 225.5) 225.5) )) )) ENTONCES ENTONCES LOC: LOC: 2168.4 2168.4 -- 3577.8 3577.8 SI SI (RELATION (RELATION <= <= 85.5 85.5 y y NTRNSMKII NTRNSMKII <= <= 24 24 y y DATAELEMENT DATAELEMENT <= <= 225.5) 225.5) ENTONCES ENTONCES LOC LOC = = 2168.4 2168.4 -- 3577.8 3577.8 (probabilidad (probabilidad = = 4.76%) 4.76%) LOC LOC < < 2168.4 2168.4 (probabilidad (probabilidad = = 95.24%) 95.24%)

Reglas obtenidas del rbol de decisin

Mtodos de estimacin y gestin del riesgo 36

Tema 3: Mtodos de estimacin y gestin del riesgo

18

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Gestin de riesgos
Definicin y clasificacin
Los objetivos de la gestin de riesgos son identificar, dirigir y eliminar las fuentes de riesgo antes de que empiecen a afectar a la finalizacin satisfactoria de un proyecto software
!!

El riesgo siempre implica dos caractersticas


"! "!

Incertidumbre: el acontecimiento que caracteriza al riesgo puede o no puede ocurrir Prdida: si el riesgo se convierte en una realidad, ocurrirn consecuencias no deseadas o prdidas

!!

Para cuantificar el nivel de incertidumbre y el grado de prdidas asociado con cada riesgo se consideran diferentes categoras de riesgos
"! "! "!

Riesgos del proyecto Riesgos tcnicos Riesgos del negocio


Mtodos de estimacin y gestin del riesgo 37

Gestin de Proyectos

Gestin de riesgos
Definicin y clasificacin
"!

Riesgos del proyecto


!! !!

Afectan a la planificacin temporal y al coste del proyecto Identifican problemas potenciales de presupuesto, calendario, personal, recursos... Amenazan la calidad y la planificacin temporal del software que hay que producir Identifican posibles problemas de diseo, implementacin, interfaz, verificacin y mantenimiento Amenazan la viabilidad del software Los principales riesgos de negocio son
"! "! "! "! "!

"!

Riesgos tcnicos
!!

!!

"!

Riesgos del negocio


!! !!

Riesgo de mercado Riesgo estratgico Riesgo de ventas Riesgo de direccin Riesgo de presupuesto
Mtodos de estimacin y gestin del riesgo 38

Tema 3: Mtodos de estimacin y gestin del riesgo

19

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Gestin de riesgos
Definicin y clasificacin
!!

Se puede hacer otra categorizacin de los riesgos en funcin de su facilidad de deteccin (Charette, 1989)
"!

Riesgos conocidos: son aquellos que se pueden predecir despus de una evaluacin del plan del proyecto, del entorno tcnico y otras fuentes de informacin fiables Riesgos predecibles: se extrapolan de la experiencia de proyectos anteriores Riesgos impredecibles: pueden ocurrir, pero es extremadamente difcil identificarlos por adelantado

"!

"!

Mtodos de estimacin y gestin del riesgo 39

Gestin de Proyectos

Gestin de riesgos
Actividades
!!

La gestin continuada de los riesgos permite aumentar su eficiencia (Rosenberg et al., 2000)
"! "! "! "!

Evaluar continuamente lo que pueda ir mal Determinar qu riesgos son importantes Implementar estrategias para resolverlos Asegurar la eficacia de las estrategias Estimacin de riesgos
!!

!!

Elementos de la gestin de riesgos


"!

!!

!!

Identificacin de riesgos: lista de riesgos capaces de romper la planificacin del proyecto Anlisis de riesgo: medicin de la probabilidad y el impacto de cada riesgo, y los niveles de riesgo de los mtodos alternativos Priorizacin de riesgos: lista de riesgos ordenados por su impacto Planificacin de la gestin de riesgos: plan para tratar cada riesgo significativo Resolucin de riesgos: ejecucin del plan Monitorizacin de riesgos: comprobacin del progreso del control de un riesgo e identificacin de la aparicin de nuevos riesgos
Mtodos de estimacin y gestin del riesgo 40

"!

Control de riesgos
!!

!! !!

Tema 3: Mtodos de estimacin y gestin del riesgo

20

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Gestin de riesgos
Estimacin de riesgos

Identificacin de riesgos
!! !! !!

Constituye un intento sistemtico para especificar las amenazas al plan del proyecto. Las incertidumbres sobre diferentes caractersticas del proyecto se transforman en riesgos que pueden ser descritos y medidos Un mtodo para identificar los riesgos es crear una lista de comprobacin de elementos de riesgo que debe contener dos categoras de riesgos
"! "!

Riesgos especficos del producto: para identificarlos se examina el plan del proyecto y la declaracin del mbito del software Riesgos genricos: Son comunes a todos los proyectos de software. Para identificarlos se crean las siguientes subcategoras
!! !! !! !!

Tamao del producto Impacto en el negocio Caractersticas del cliente Definicin del proceso

!! !! !!

Entorno de desarrollo Tecnologa a construir Tamao y experiencia de la plantilla


Mtodos de estimacin y gestin del riesgo 41

Gestin de Proyectos

Gestin de riesgos
Estimacin de riesgos

Anlisis de riesgos
!! !!

Es el proceso de examinar los riesgos en detalle para determinar su extensin, sus interrelaciones y su importancia Las actividades bsicas son
"!

Evaluacin: mejor comprensin del riesgo. Se cuantifican los siguientes conceptos


!! !! !!

Impacto: prdida que ocasiona el riesgo Probabilidad: probabilidad de que ocurra el riesgo Marco de tiempo: periodo de tiempo en el que es posible mitigar el riesgo

"!

Clasificacin: se clasifican los riesgos para entender su naturaleza y elaborar planes de mitigacin
ATRIBUTO
Impacto

VALOR
Catastrfico Crtico Marginal Muy probable Probable Improbable Corto plazo Medio plazo Largo plazo

DESCRIPCIN
Prdida del sistema. Coste >50% Recuperacin de la capacidad operativa. Coste > 10% (<50%) Coste < 10% > 70% Entre 30% y 70% <30% 30 das 1 a 4 meses Ms de 4 meses

Probabilidad Marco de tiempo

Mtodos de estimacin y gestin del riesgo 42

Tema 3: Mtodos de estimacin y gestin del riesgo

21

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Gestin de riesgos
Estimacin de riesgos

Priorizacin de riesgos
!!

!!

Es el proceso de ordenar los riesgos en funcin de su importancia para determinar cuales se deben solucionar antes y a cuales hay que asignarle ms recursos Los riesgos pueden ordenarse segn la magnitud de la exposicin al riesgo (Knsl, 1997)
Exposicin al riesgo = f (magnitud del impacto, probabilidad)

!! !! !!

!!

La asignacin de prioridades se realizar en el orden resultante del paso anterior Hay que considerar la posibilidad de priorizar grupos de riesgos encadenados La asignacin de prioridades depende de la precisin y exactitud de las estimaciones, de la magnitud del impacto y de la probabilidad del riesgo Las condiciones y prioridades pueden cambiar a lo largo del proyecto por lo que el anlisis y asignacin de prioridades debe realizarse de manera continuada aprovechando la informacin disponible en cada momento Mtodos de estimacin y gestin del riesgo 43

Gestin de Proyectos

Gestin de riesgos
Control de riesgos

Planificacin de la gestin de riesgos


!! !!

Consiste en la elaboracin de un plan que controle cada uno de los riesgos de prioridad alta identificados en etapas anteriores Hay que considerar cuatro opciones
"! "! "! "!

Investigar: establecer un plan para investigar el riesgo Aceptar: decidir aceptar el riesgo y documentar las razones Observar: controlar las condiciones del riesgo para obtener indicaciones de cambio en la probabilidad o el impacto Mitigar: reasignar recursos e indicar acciones a realizar para reducir la probabilidad o el impacto potencial de los riesgos

Resolucin de riesgos
!! !!

Mediante el proceso de resolucin de riesgos se pone en prctica el plan elaborado en la etapa anterior Algunos de los mtodos usados para tratar el riesgo son
"! "! "! "! "!

Evitar el riesgo Trasladarlo a otra parte del sistema Eliminar el origen del riesgo Informar sobre el riesgo Controlar el riesgo...
Mtodos de estimacin y gestin del riesgo 44

Tema 3: Mtodos de estimacin y gestin del riesgo

22

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

Gestin de riesgos
Control de riesgos

Monitorizacin de riesgos
!!

!! !!

El objetivo de la monitorizacin es la toma de decisiones efectivas, documentadas y a tiempo mediante la observacin de los riesgos y de los planes de mitigacin Se necesita conocer cundo o dnde se produce un cambio significativo en los atributos y la efectividad de los planes de mitigacin Las formas de proceder son las siguientes
"! "! "! "!

Replanificar: se requiere un plan nuevo o modificado cuando se excede un valor umbral Cerrar el riesgo: la probabilidad del riesgo es inferior al valor umbral o el riesgo se convierte en un problema que se resuelve Invocar un plan de contingencia: se ha activado un disparador o se necesita realizar una accin Continuar con el plan actual: no se requiere ninguna accin adicional porque todo est sucediendo como estaba previsto

!!

El control es un punto crucial en la toma de decisiones sobre el proyecto


Mtodos de estimacin y gestin del riesgo 45

Gestin de Proyectos

Bibliografa
Bailey, J.W. And Basili, V.R., A meta-model for software development resource expenditure, Proc. 5th International Conference on Software Engineering, IEEE Computer Society Press, 189-97, 1981 Boehm, B.W., Software Risk Management, IEEE-CS Press, 1989 Boehm, B.W., Software Engineering Economics, Prentice Hall, Englewood Cliffs, NJ, 1981 Boehm, B.W., Software Risk Management:Principles and practices, IEEE Software, 32-41, enero 1991 Boehm, B.W., Clark, B., Horowitz, E. Et al., Cost models for future life cycle processes: COCOMO 2.0, Annals of Software Engineering 1(1), 1-24, 1995 Burnett, K., The project management paradigm, Springer-Verlag, 1998 Charette, R., Softwae Engineering Risk analysis and management, McGraw-Hill, 1989 DeMarco, T., Controlling Software Projects, Yourdon Press, 1982 Fenton, N.E. y Pfleeger, S.L., Software metrics. A rigorous & practical approach , 1997 Knsl, K., Integrating Risk Assessment with Cost Estimation, IEEE Software, 14 (3) 61-67, enero 1997 McConnell, S., Desarrollo y gestin de proyectos informticos, Mc Graw Hill 1997 Moreno M.N. y Garca, F.J., Modelos de Estimacin del Software Basados en Tcnicas de Aprendizaje Automtico, En Tuya, J., Ramos, I. y Dolado, J. (eds.) Tcnicas Cuantitativas para la Gestin en Ingeniera del Software, pp. 109-126, Netbiblo S.N., 2007 Paulk, M. et al., Capability Maturity Model for Software, Software Engineering Institute, Carnie Mellon University, Pittsburgh, P.A., 1993 Pressman, R.S., Ingeniera del Software, un enfoque prctico, 7 ed., Mc Graw Hill, 2010 Putnam, L.H., A general empirical solution to the macrosoftware sizing and estimating problem, IEEE Transactions on Software Engineering,4(4), 345-61 1978 Rosenberg, L.H., Gallo, A., Hammer, T. And Parolek, F., Continuing risk management at NASA, CrossTalk, 13 (2),7-11, 2000 Smith, J., The stimation of Effort Based on Use Cases, Rational Software Corp oration, 1999. ftp://ftp.software.ibm.com/software/rational/web/whitepapers/2003/finalTP171.pdf

Mtodos de estimacin y gestin del riesgo 46

Tema 3: Mtodos de estimacin y gestin del riesgo

23

Gestin de Proyectos Curso de Adaptacin al Grado en Ingeniera Informtica

Gestin de Proyectos

TEMA 3 Mtodos de estimacin y gestin del riesgo

Francisco J. Garca Pealvo (fgarcia@usal.es) Mara N. Moreno Garca (mmg@usal.es) Departamento de Informtica y Automtica Universidad de Salamanca

Tema 3: Mtodos de estimacin y gestin del riesgo

24

Вам также может понравиться