COCOMO

Modelo Constructivo de Costes

Introducción

El Modelo Constructivo de Costes (Constructive Cost Model) fue desarrollado por B. W. Boehm a finales de los 70 y comienzos de los 80, exponiéndolo detalladamente en su libro "Economía de Ingeniería de Software" (Prentice-Hall, 1981). COCOMO es una jerarquía de modelos de estimación de costes software que incluye submodelos básico, intermedio y detallado.

Ecuación

Las ecuaciones de estimación del esfuerzo de desarrollo tienen la forma

 S el número de miles de líneas de código fuente

 m(X) es un multiplicador que depende de 15 atributos

Objetivo

Estimar los costos del software en la  mayoría de los proyectos ya sean pequeños, medianos o grandes mediante  un conjunto de atributos.

Submodelos

Submodelo Básico (Modo Orgánico)

Se utilizan dos ecuaciones para determinar el esfuerzo de personal y el tiempo de desarrollo. El coste es

         se expresa en personas-mes

         es el tamaño expresado en miles de líneas de código fuente.

El tiempo de desarrollo se da por  

          se obtiene de la ecuación anterior

          es el tiempo de desarrollo en meses.

Submodelo Básico (Modo Semiencajado)

Dependiendo del problema, el grupo puede incluir una mezcla de personas experimentadas y no experimentadas. Las ecuaciones son:

 

El tiempo de desarrollo por

 

Submodelo Básico (Modo Empotrado)

El proyecto tiene unas fuertes restricciones, que pueden estar relacionadas con el procesador y el interface hardware. El problema a resolver es único y es difícil basarse en la experiencia, puesto que puede no haberla.

 

El tiempo de desarrollo por

 

 

 

Nota Submodelo Básico 

Se puede observar que a medida que aumenta la complejidad del proyecto, las constantes aumentan de 2.4 a 3.6, que corresponde a un incremento del esfuerzo del personal. Hay que utilizar con mucho cuidado el modelo básico puesto que se obvian muchas características del entorno.

submodelo Intermedio 

Ecuaciones nominales de coste.

Las ecuaciones nominales de coste para el modelo intermedio son

 Modo orgánico             

 Modo semiencajado     

 Modo empotrado         

 

 

submodelo Intermedio 

Atributos de coste.

Estos atributos tratan de capturar el impacto del entorno del proyecto en el coste de desarrollo. De un análisis estadístico de más de 100 factores que influencian el coste, Boehm retuvo 15 de ellos para COCOMO.

Estos atributos se agrupan en cuatro categorías: atributos del producto, atributos del ordenador, atributos del personal y atributos del proyecto.

 

 

 

Submodelo Intermedio 

Atributos de coste.

Atributos del producto: RELY: garantía de funcionamiento requerida al software,  DATA: tamaño de la base de datos,  CPLX: complejidad del producto

Atributos del ordenador: TIME: restricción de tiempo de ejecución, STOR: restricción del almacenamiento principal, VIRT: volatilidad de la máquina virtual y TURN: tiempo de respuesta del ordenador

 

 

 

Submodelo Intermedio 

Atributos de coste.

Atributos del personal: ACAP: capacidad del analista, AEXP: experiencia en la aplicación, PCAP: capacidad del programador, VEXP: experiencia en máquina virtual, LEXP: experiencia en lenguaje de programación.

 

Atributos del proyecto: MODP: prácticas de programación modernas, TOOL: utilización de herramientas software, SCED: plan de desarrollo requerido.

 

 

 

Submodelo Intermedio 

Nota Submodelo Intermedio 

 Este modelo proporciona una manera potente de capturar la influencia del entorno en el proyecto.

 

Submodelo Detallado 

Introduce dos características principales:

Multiplicadores de esfuerzo sensitivos a la fase: Algunas fases se ven más afectadas que otras por los atributos. El modelo detallado proporciona un conjunto de multiplicadores de esfuerzo para cada atributo. Esto ayuda a determinar la asignación del personal para cada fase del proyecto.

Jerarquía del producto a tres niveles:  Se definen tres niveles de producto. Estos son módulo, subsistema y sistema. La cuantificación se realiza al nivel apropiado, esto es, al nivel al que es más susceptible la variación.

 

 

 

Submodelo Detallado 

Estimación del esfuerzo.

Fases de desarrollo: El desarrollo del software se lleva a cabo a través de Cuatro fases consecutivas:

Requerimientos/planes: 6% a 8% del esfuerzo nominal y dura 10% al 40%

Diseño del producto:16% a 18% del esfuerzo nominal y dura 19% al 38%

Programación: 48% a 68% del esfuerzo nominal y dura 24% al 64%

Prueba/integración: 16% a 34% del esfuerzo nominal y dura 18% al 34%

Nota Submodelo detallado

 Este modelo puede procesar todas las características del proyecto para construir una estimación.

 

Ventajas

  • COCOMO es transparente, se puede ver como trabaja con otros modelos tal como SLIM (Software Life Cycle Management).

  • Manejadores de costo ayudan particularmente a el estimador a comprender el impacto de diferentes factores que afectan en el costo del proyecto.

Desventajas

  • Triunfo depende ampliamente de la adaptación de el modelo a las necesidades de la organización, usando datos históricos; los cuales no siempre están disponibles.

  • Extremadamente vulnerable para la mis-clasificación de el modo de desarrollo.

  • Es difícil estimar KDSI con precisión sobre el antiguo proyecto, cuando la mayoría de las estimaciones de esfuerzo son requeridas.

  • KDSI, realmente, no es una medida del tamaño, sino una medida de longitud.

Conclusión

Referencias

http://www.sc.ehu.es/jiwdocoj/mmis/cocomo.htm

http://ingenieriadesoftwareijeanneth.blogspot.com.co/2010/10/metricas-del-software.html

COCOMO

By Häzël PG

COCOMO

  • 265