isiii cap3 estimacion_4_co_comoii

26
Ingenieria de Software III Facultad Politecnica CAPITULO 3 Modelo de Estimación Modelo de Estimación De De Costos Costos Ingenieria de Software III Facultad Politecnica Estimación del esfuerzo COCOMO II COCOMO II es un modelo de estimación de costo utilizable en la evaluación del esfuerzo estimado para un proyecto. Los principales objetivos del COCOMO II son: Desarrollar un modelo de estimación de costo y tiempo acorde al estilo de vida de los 1990’s y 2000’s. Desarrollar una base de datos de costo y capacidades de soporte de herramientas de modo a mejorar el modelo continuamente. Proveer un marco de trabajo analítico y cuantitativo, y un conjunto de herramientas y técnicas para evaluar los efectos de las mejoras en la tecnología de software sobre el costo y el tiempo en el ciclo de vida del software.

Upload: jibarra88

Post on 26-May-2015

106 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

CAPITULO 3

Modelo de EstimaciónModelo de EstimaciónDe De CostosCostos

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

COCOMO II es un modelo de estimación de costo utilizable enla evaluación del esfuerzo estimado para un proyecto. Losprincipales objetivos del COCOMO II son:

� Desarrollar un modelo de estimación de costo y tiempo acordeal estilo de vida de los 1990’s y 2000’s.

� Desarrollar una base de datos de costo y capacidades desoporte de herramientas de modo a mejorar el modelocontinuamente.

� Proveer un marco de trabajo analítico y cuantitativo, y unconjunto de herramientas y técnicas para evaluar los efectos delas mejoras en la tecnología de software sobre el costo y eltiempo en el ciclo de vida del software.

Page 2: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzo COCOMO II

El modelo COCOMO.II completo incluye tres etapas.

La etapa 1 soporta la estimación de los esfuerzos deprototipado o desarrollo de aplicaciones.

La etapa 2 soporta la estimación a comienzos de la etapa dediseño de un proyecto, cuando se conoce poco acerca del costodel proyecto.

La etapa 3 soporta la estimación en la etapa post arquitecturaldel proyecto. La versión actual de COCOMO II implementafórmulas de la etapa 3 para estimar el esfuerzo, tiempo, y costorequerido para desarrollar un producto software

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Entradas de COCOMO IILa entrada principal de COCOMO.II es el tamaño del programa, en KDSI (Kilo Instrucciones fuentes entregadas), puntos de función o puntos de objeto. Se deben evaluar 16 atributos adicionales, estos atributos están incluidos en 4 categorías como sigue:

� Atributos del Producto : Estos atributos describen el ambiente enel cual opera el programa. Los atributos en esta categoría son:requerimientos de confiabilidad, tamaño de base de datos,concordancia entre la documentación y las necesidades del ciclode vida, reutilización requerida y complejidad del programa.

� Atributos de la Plataforma : Estos atributos se refieren a laslimitaciones que afectan el esfuerzo del desarrollo debido alhardware y al sistema operativo que se están utilizando en laejecución del proyecto. Los atributos en esta categoría sonrestricciones de tiempo de ejecución, almacenamiento principal, yvolatilidad de la plataforma.

Page 3: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

� Atributos del Personal : Estos atributos describen la habilidad del personal asignado al proyecto. Los atributos en esta categoría incluyen: capacidad del analista, experiencia en aplicaciones, capacidad del programador, experiencia en el lenguaje de programación, experiencia en la plataforma, continuidad del personal.

� Atributos del Proyecto : Estos atributos se refieren a lasrestricciones y condiciones bajo las cuales opera el desarrollo delproyecto. Los atributos en esta categoría son el uso deherramientas de desarrollo de software y desarrollo multi-sitio.

Estos factores (o multiplicadores de esfuerzo ) se multiplican y deesta forma están incorporados en las fórmulas de estimación deltiempo y esfuerzo. El valor numérico del i-ésimo factor de ajuste esllamado EMi y su producto es llamado factor de ajuste o EAF. Elesfuerzo total PMtotal es el producto del esfuerzo nominal y elEAF.

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Procesamiento COCOMO II

Utilizando COCOMO II, una evaluación nominal delos meses-hombre basada sólo en el tamaño serealiza al programa considerado. A continuación, semultiplica la evaluación de todos los atributos paraobtener el esfuerzo en meses-hombre requerido porel proyecto. Los desafíos principales al utilizarCOCOMO II son determinar el tamaño del proyecto yasignar los valores apropiados a los atributos.

Page 4: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Salidas de COCOMO II

La salida del modelo COCOMO II es simplemente elnivel de esfuerzo en meses-hombre para el proyectosiendo estimado y el tiempo en meses. El esfuerzopuede fácilmente ser convertido a valor monetario si elcosto por mes-hombre es conocido. La Distribución deFases es una de las salidas. Su función es la demostrar un desglose del esfuerzo del software y eltiempo requerido a las fases del ciclo de desarrollo.Estas fases son análisis de requerimientos, diseño,implementación e integración y prueba. Las salidas delmodelo son muy básicas y no muy flexibles, por lo tantolas métricas de rendimiento deberán ser creadas fuerade este modelo.

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Calibración COCOMO II

La calibración es esencial para el uso correcto demodelos de costo de software. El usuario deCOCOMO II puede calibrar los EAF y las ecuacionesde esfuerzo/tiempo del proyecto actual.

Page 5: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Aplicabilidad de la métrica

El método de estimación COCOMO II está basado dosmodelos: uno aplicable al comienzo de los proyectos (Diseñopreliminar, en inglés Early Design) y otro aplicable luego delestablecimiento de la arquitectura del sistema (Postarquitectura, en inglés Post Architecture).

� El modelo de Diseño preliminar (Early Design) contempla laexploración de las arquitecturas alternativas del sistema y losconceptos de operación. En esta etapa no se sabe lo suficientedel proyecto como para hacer una estimación fina. Ante éstasituación, el modelo propone la utilización de Puntos de Funcióncomo medida de tamaño y un conjunto de 7 factores (costdrivers) que afectan al esfuerzo del proyecto. Estos 7 factoresson agrupaciones de los factores que se utilizan en la otravariante del modelo (Post Arquitectura).

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

El modelo Post arquitectura (Post Architecture)contempla el desarrollo y el mantenimiento de unproducto software. Esta estrategia es más precisa si seha desarrollado una arquitectura del sistema, la cualhaya sido validada y establecida como base para laevolución del producto. Ante ésta situación, el modelopropone la utilización de Líneas de código fuente y/oPuntos de Función como medidores del tamaño,modificadores para indicar el grado de reutilización ydescarte del software, un conjunto de 17 estimadoresde costo, y un conjunto de 5 factores que afectan demanera exponencial en el esfuerzo del proyecto.

Page 6: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Detalles de la métricaTanto en el modelo de diseño preliminar como en el postarquitectural, la estimación del esfuerzo se realiza tomandocomo base la siguiente ecuación:

PM nominal = A x (Size) B

donde:PM nominal : es el esfuerzo nominal requerido en meses-hombreSize: es el tamaño estimado del software, en miles de líneasde código (KSLOC) o en Puntos de Función sin ajustar(convertibles a KSLOC mediante un factor de conversiónque depende del lenguaje y la tecnología).

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

� A: es una constante que se utiliza para capturarlos efectos multiplicativos en el esfuerzorequerido de acuerdo al crecimiento del tamañodel software. El modelo la calibra inicialmentecon un valor de 2.94

� B: es una constante denominada Factorescalar , la cual tiene un impacto exponencial enel esfuerzo y su valor está dado por la resultantede los aspectos positivos sobre los negativosque presenta el proyecto.

Page 7: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Valoración del Factor escalar B

El factor escalar B se calcula a partir de la sumatoria de losaportes de distintas Variables escalares, las cuales sonvariables que indican las características que el proyectopresenta en lo que a su complejidad y entorno de desarrollo serefiere. Las Variables escalares de COCOMO II son lassiguientes:

� PREC, variable de precedencia u orden secuencial deldesarrollo

� FLEX, variable de flexibilidad del desarrollo� RSEL, indica la fortaleza de la arquitectura y métodos de

estimación y reducción de riesgos� TEAM, esta variable refleja la cohesión y madurez del equipo

de trabajo� PMAT, relaciona el proceso de madurez del software

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Cada una deestas variablesse cuantifica conun valor desdeMuy Bajo hastaExtra Alto. Lasiguiente tablamuestra loscriterios y nivelesde cuantificaciónpara cada unade éstasvariables:

Page 8: Isiii cap3 estimacion_4_co_comoii

Estimación del esfuerzoCOCOMO II

Valores a utilizar para los factores de escala

Ingenieria de Software III Facultad Politecnica

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Luego de la ponderación de éstas variables, el Factor escalar se calcula mediante la siguiente ecuación:

B = 0.91 + 0.01 x Σ(Wi)

Page 9: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Ajuste del esfuerzo nominal

El esfuerzo calculado en la ecuación (1) es unvalor nominal y debe ser ajustado en base a lascaracterísticas del proyecto. COCOMO II obtienelos datos necesarios para el ajuste del esfuerzonominal considerando los Multiplicadores deEsfuerzo (EM) , los cuales representan lascaracterísticas del proyecto y expresan suimpacto en el desarrollo total del producto desoftware.

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Ajuste del esfuerzo nominal

Los Multiplicadores de esfuerzo se cuantifican con unaescala que va desde Extra Bajo a Extra Alto, y cadamultiplicador tiene un valor asociado a cada nivel de laescala. Cada uno de los modelos de estimación (Diseñopreliminar y Post arquitectura) tiene un conjunto deMultiplicadores de esfuerzo, los cuales son acordes con lainformación que se maneja en cada uno de estos modelos.

En ambos modelos, el esfuerzo ajustado se calculamediante la siguiente ecuación:

PM ajustado = PM nominal x Π(EMi)

Page 10: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores de esfuerzo en el modelo Post arqui tectura� Para este modelo, los multiplicadores son 17, agrupados en las

siguientes categorías: producto, plataforma, personal y proyecto. A continuación se muestran los multiplicadores, con una breve descripción de su significado.

� Multiplicadores que afectan al producto:RELY: Confiabilidad requerida del software. Mide el impacto que tiene una falla en el software.

Muy bajo Bajo Nominal Alto Muy Alto

RELY Inconvenientes imperceptibles

Bajo, y con pérdidas fácilmente recuperables

Moderado, con pérdidas de fácil recuperación.

AltaspérdidasFinancieras

Riesgo para la Vida humana.

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al producto:

DATA: Tamaño de la base de datos. Se mide como el tamaño de la base en bytes sobre el tamaño del programa en LOC. Se utiliza para dimensionar el esfuerzo requerido para el control y la generación de datos de prueba.

Muy bajo

Bajo Nominal Alto Muy Alto

DATA D/P < 10 10 <= D/P < 100 100 <= D/P <1000

D/P >= 1000

Page 11: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al producto:CPLX: Complejidad del producto. La complejidad sedivide en cinco áreas: Operaciones de Control,operaciones de Cálculo, Dependencia deDispositivos, Manejo de Datos e Interfaces deUsuario.

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzo – COCOMO II

Page 12: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al producto:

RUSE: Reusabilidad del código. Mide el costo adicionalrequerido para diseñar componentes más genéricos, mejordocumentados y más confiables, de manera de reutilizarlos enotros proyectos.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

RUSE

Nada.Por

proyecto.Por

programaPor línea de

producto.

Por múltiples líneas de producto.

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al producto:DOCU: Documentación. Evalúa los requerimientos de documentación a lo largo del ciclo de vida del proyecto.

Muy bajo Bajo Nominal Alto Muy Alto

DOCU Muchas etapas del ciclo de vida están sin documentación.

Algunas. De acuerdo a las necesidades exactas de las etapas del ciclo de vida.

Excesiva. Muy excesiva.

Page 13: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan a la plataforma:

TIME: Restricciones de tiempo de ejecución. Se expresa entérminos de porcentaje de disponibilidad de tiempo de ejecuciónque será usado por el sistema, versus los recursos disponibles.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

TIME <= 50% de uso de los recursos disponibles

70 %. 85 %. 95 %.

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan a la plataforma:

STOR: Restricciones de almacenamiento principal. Similar almultiplicador anterior, pero relacionadas con el espacio principalde almacenamiento.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

STOR <= 50% de uso de los recursos disponibles

70 % 85 % 95 %

Page 14: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan a la plataforma:

PVOL: Volatilidad de la plataforma. Expresa la velocidad decambio del hardware y el software usados como plataforma.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

PVOL Grandes Cambios c/12 meses

Cambios menores c/ 1 mes

Grandes Cambios c/6 meses

Cambios menores c/ 2 semanas

Grandes Cambios c/2 meses

Cambios menores c/ 1 semana

Grandes Cambios c/ 2 semanas

Cambios menores c/ 2 días

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al personal:

ACAP: Capacidad de los analistas. Se considera la capacidad deanálisis y diseño, eficiencia, habilidad para comunicarse ytrabajar en equipo. No se considera el nivel de experiencia.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

ACAP 15 % 35 % 55 % 75 % 90 %

Page 15: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al personal:

PCAP: Capacidad de los programadores. Se considera lacapacidad de trabajo en equipo, eficiencia y habilidad paracomunicarse. No se considera el nivel de experiencia.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

PCAP 15 % 35 % 55 % 75 % 90 %

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al personal:

AEXP: Experiencia en aplicaciones. Contempla el nivel deexperiencia del grupo de desarrollo (principalmente analistas) enaplicaciones equivalentes.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

AEXP 2 meses 6 meses 1 año 3 años 6 años

Page 16: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al personal:

PEXP: Experiencia en la plataforma. Refleja la experiencia delgrupo de desarrollo (principalmente programadores) en el uso deherramientas de software y hardware utilizado como plataforma.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

PEXP 2 meses. 6 meses 1 año. 3 años 6 años

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al personal:

LTEX: Experiencia en el lenguaje y herramientas de desarrollo.Refleja la experiencia del grupo de desarrollo en el lenguaje deprogramación y las herramientas de desarrollo utilizadas.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

LTEX 2 meses 6 meses 1 año 3 años 6 años.

Page 17: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al personal:

PCON: Continuidad del personal. Expresa el porcentaje derotación anual del personal afectado al proyecto.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

PCON 48% al año 24% al año 12% al año 6% al año 3% al año

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al proyecto:

TOOL: Uso de herramientas de software. Contempla el uso deherramientas, desde la edición hasta el manejo de todo el ciclode vida.

Muy bajo Bajo Nominal Alto Muy Alto

TOOL Edición y codificación con debug

CASE simple y de poca integración

Herramientas básicas para todo el ciclo de vida con moderada integración

Potentes herramientas a ser usadas en todo el ciclo de vida con integración moderada

Herramientaspotentes y preactivas, muybien integradascon el proceso, los métodos y la reusabilidad

Page 18: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al proyecto:

SITE: Desarrollo en múltiples ubicaciones. Involucra la ubicaciónfísica y el soporte de comunicaciones.

Muy bajo Bajo Nominal Alto Muy Alto Extra Alto

Algo de teléfono y mail

Fax y teléfonos individuales

Red de correo electrónico interno

Comunicaciones electrónicas que cubren todas las ubicaciones

Comunicaciones electrónicas que cubren todas las ubicaciones con la posibilidad de videoconferencias ocasionales.

Multimedia

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores que afectan al proyecto:

SCED: Requerimientos de calendario de desarrollo. Refleja lasrestricciones impuestas al grupo de desarrollo sobre la agendanominal estimada del proyecto.

Muy bajo

Bajo Nominal Alto Muy Alto

Extra Alto

SCED 75% del nominal.

85 % 100 % 130 % 160 %

Page 19: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO IIMultiplicadores de esfuerzo en el modelo de Diseño preliminar :Para este modelo, los multiplicadores son 7, y se obtienen comocombinaciones de los multiplicadores del modelo Post arquitectura. Estosmultiplicadores son:PERS: Capacidad del personal. Está dado por la suma o la combinaciónporcentual de los multiplicadores ACAP, PCAP y PCON.

Extra Bajo

Muy Bajo Bajo Nominal Alto Muy Alto Extra Alto

Suma de ACAP, PCAP, PCON

3,4 5,6 7,8 9 10,11 12,13 14,15

Combinación de ACAP y PCAP

20% 39% 45% 55% 65% 75% 85%

Rotación anual del personal

45% 30% 20% 12% 9% 5% 4%

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO IIMultiplicadores de esfuerzo en el modelo de Diseño preliminar :

RCPX: Complejidad del producto. Está dado por la combinación delos multiplicadores RELY, DATA, CPLX y DOCU.

Extra Bajo Muy Bajo Bajo Nominal Alto Muy Alto Extra Alto

Suma de RELY, DATA, CPLX y DOCU

5,6 7,8 9-11 12 13-15 16-18 19-21

Énfasis en la documentación

Muy poca Poca Algo Básica Fuerte Muy fuerte Extrema

Complejidad del producto

Muy simple Simple Algo Moderada Compleja Muy compleja

Extremadamente

complejaTamaño de la base de datos

Pequeña Pequeña Pequeña Moderada Grande Muy Grande

Muy Grande

Page 20: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Multiplicadores de esfuerzo en el modelo de Diseño preliminar :RUSE: Reusabilidad. Está dado por el mismo multiplicadorRUSE del modelo Post arquitectura.PDIF: Dificultad de la plataforma. Está dado por la combinaciónde los multiplicadores TIME, STOR y PVOL.PREX: Experiencia del personal. Está dado por la combinaciónde los multiplicadores AEXP, PEXP y LTEX.SCED: Calendario. Está dado por el mismo multiplicador SCEDdel modelo Post arquitectura.FCIL: Facilidades. Está dado por la combinación de losmultiplicadores TOOL y SITE.

Estimación del esfuerzoCOCOMO II

Multiplicadores de esfuerzo del Diseño preliminar y post-arquitectura

Ingenieria de Software III Facultad Politecnica

Diseño preliminar Post-arquitectura

Page 21: Isiii cap3 estimacion_4_co_comoii

Estimación del esfuerzoCOCOMO II

Ingenieria de Software III Facultad Politecnica

Multiplicadores de esfuerzo para el modelo preliminar

Estimación del esfuerzoCOCOMO II

Ingenieria de Software III Facultad Politecnica

Valores a utilizar para los multiplicadores de esfuerzo en el modelo post-arquitectura

Page 22: Isiii cap3 estimacion_4_co_comoii

Estimación del esfuerzoCOCOMO II

Ingenieria de Software III Facultad Politecnica

Valores a utilizar para los multiplicadores de esfuerzo en el modelo post-arquitectura (cont.)

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Ecuación de tiempo (schedule equation)Predice el número de meses requeridos para completar el proyecto. La duración del proyecto está basada en el esfuerzo calculado por la ecuación del esfuerzo:

Duración = 3.67 * (PM ajustado) [ 0.28 + 0.2 * (B-0.91) ]

Page 23: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Ejemplo de Aplicación del modeloAplicación sobre los Puntos de Función sin ajustarÉste método es el preferido en la actualidad para la estimación del esfuerzo cuando no se tiene información histórica a la cual recurrir.

� Consiste básicamente en la aplicación de ecuaciones matemáticassobre los Puntos de Función sin ajustar o la cantidad de líneas decódigo (SLOC, Source Lines Of Code) estimados para un proyecto.

� A manera de ejemplo, consideremos un proyecto que tiene el siguiente valor para los puntos de función sin ajustar: UFP = 26

� Para aplicar la ecuación de cálculo del esfuerzo nominal, necesitamos convertir los puntos de función sin ajustar a KSLOC (Source Lines Of Code, en miles), y por otro calcular el Factor escalar B de acuerdo a las características del proyecto. Luego:

PM nominal = A x (Size) B

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

donde

A: tomamos el valor por defecto del modelo, ajustado en 2.94

Size: se calcula como el producto de los puntos de función sin ajustar por un factor de conversión que depende del lenguaje a utilizar en el desarrollo del sistema. Supongamos que utilizamos Java (factor de conversión = 53 SLOC/UFP).

Entonces tendremos:

Size = 53 x 26 = 1378 SLOC

B: se calcula ponderando las variables escalares mediante la ecuación:

B = 0.91 + 0.01 x Σ(Wi)

Page 24: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

donde se considerarán los valores de las Wi mostradas en lasiguiente tabla:

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II� Finalmente, el esfuerzo nominal resulta:

PM nominal = A x (Size) B = 2.94 x (1.378)1.05 = 4.11 Meses-hombre

� Para completar la estimación, hay que ajustar el esfuerzo nominalde acuerdo a las características del proyecto. El ajuste se efectúaaplicando la ecuación:

PM ajustado = PM nominal x Π (MEi)

donde los MEi (multiplicadores de esfuerzo) varían en función delmodelo de estimación seleccionado (Diseño Preliminar o Postarquitectura).

Page 25: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

En nuestro caso vamos a aplicar el modelo de Diseño preliminar. Entonces, cuantificamos los multiplicadores de esfuerzo para éste modelo:

PERS*RCPX*RUSE*PDIF*PREX*SCED*FCIL

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

� Con estos valores, el ajuste del esfuerzo resulta:

PM ajustado = 4.11 x 1.004 = 4.13 Meses-hombre

� Expresando el mismo valor en Horas-hombre, y teniendo en cuenta que un mes es aproximadamente 160 horas (20 días * 8 hs), el esfuerzo resulta:

PH ajustado = 4.13 x 160 = 660.8 Horas-hombre

Page 26: Isiii cap3 estimacion_4_co_comoii

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Ecuación de tiempo (schedule equation)Predice el número de meses requeridos para completar el proyecto:

Duración = 3.67 * (PM ajustado) [ 0.28 + 0.2 * (B-0.91) ]

Para el ejemplo anterior tenemos:

Duración = 3.67 * (4.13) [ 0.28 + 0.2 * (1.05-0.91) ]

Duración = 5.68 ≈ 6 meses

Ingenieria de Software III Facultad Politecnica

Estimación del esfuerzoCOCOMO II

Extensiones:� COCOTS (Constructive COTS)� CORADMO (Constructive Rapid Application

Development Model)� COQUALMO (Constructive Quality Model)� COSEMO (Constructive Staged Schedule an Effort

Model)� COPROMO (Constructive Productivity improvement

Model)� Pag. Para descargar herramienta� http://csse.usc.edu/csse/research/COCOMOII/cocomo_downloads.