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