El Modelo de Costo Constructivo ( COCOMO ) es un modelo paramétrico de estimación de costos de software desarrollado por Barry W. Boehm . Los parámetros del modelo se derivan del ajuste de una fórmula de regresión utilizando datos de proyectos históricos (63 proyectos para COCOMO 81 y 161 proyectos para COCOMO II).
Historia
El modelo de costo constructivo fue desarrollado por Barry W. Boehm a finales de la década de 1970 [ 1 ] y publicado en su libro de 1981, Software Engineering Economics [ 2 ], como un modelo para estimar el esfuerzo, el costo y el cronograma de los proyectos de software. Se basó en un estudio de 63 proyectos en TRW Aerospace, donde Boehm era Director de Investigación y Tecnología de Software. El estudio examinó proyectos con un tamaño que oscilaba entre 2000 y 100 000 líneas de código , y lenguajes de programación que iban desde el lenguaje ensamblador hasta PL/I . Estos proyectos se basaban en el modelo de cascada de desarrollo de software, que era el proceso de desarrollo de software predominante en 1981.
Las referencias a este modelo suelen llamarlo COCOMO 81. En 1995 se desarrolló COCOMO II y finalmente se publicó en 2000 en el libro Software Cost Estimation with COCOMO II . [ 3 ] COCOMO II es el sucesor de COCOMO 81 y se afirma que es más adecuado para estimar proyectos modernos de desarrollo de software; proporciona soporte para procesos de desarrollo de software más recientes y se ajustó utilizando una base de datos más grande de 161 proyectos. La necesidad del nuevo modelo surgió a medida que la tecnología de desarrollo de software pasó de mainframe y procesamiento por lotes nocturno al desarrollo de escritorio, reutilización de código y el uso de componentes de software comerciales.
COCOMO consta de una jerarquía de tres versiones con niveles de detalle y precisión crecientes. El primer nivel, COCOMO Básico, es útil para estimaciones rápidas y aproximadas del orden de magnitud de los costos del software, pero su precisión es limitada debido a la falta de factores que consideren las diferencias en los atributos del proyecto ( factores de costo ). COCOMO Intermedio tiene en cuenta estos factores de costo, y COCOMO Detallado considera además la influencia de las fases individuales del proyecto. Por último, el modelo COCOMO Completo aborda las deficiencias de las versiones básica e intermedia.
Herramientas
Existe una implementación en línea de la herramienta COCOMO II para la estimación de costos de software. [ 4 ] Fue desarrollada por Ray Madachy , coautor de COCOMO II, y se ajusta a la definición del modelo posterior a la arquitectura que aparece en el libro. A continuación se muestra un ejemplo de estimación obtenida con la herramienta.

COCOMO Intermedio
COCOMO intermedio calcula el esfuerzo de desarrollo de software en función del tamaño del programa y un conjunto de "factores de costo" que incluyen una evaluación subjetiva de los atributos del producto, el hardware, el personal y el proyecto. Esta extensión considera un conjunto de cuatro "factores de costo", cada uno con una serie de atributos subsidiarios:
- Atributos del producto
- Alcance de confiabilidad del software requerido
- Tamaño de la base de datos de la aplicación
- Complejidad del producto
- Atributos del hardware
- Restricciones de rendimiento en tiempo de ejecución
- restricciones de memoria
- Volatilidad del entorno de la máquina virtual
- Tiempo de respuesta requerido
- Atributos del personal
- Capacidad de analista
- capacidad de ingeniería de software
- Experiencia en aplicaciones
- Experiencia de máquina virtual
- Experiencia en lenguajes de programación
- Atributos del proyecto
- Uso de herramientas de software
- Aplicación de métodos de ingeniería de software
- Calendario de desarrollo requerido
Cada uno de los 15 atributos recibe una calificación en una escala de seis puntos que va desde "muy bajo" hasta "muy alto" (en importancia o valor). A la calificación se le aplica un multiplicador de esfuerzo de la tabla que se muestra a continuación. El producto de todos los multiplicadores de esfuerzo da como resultado un factor de ajuste de esfuerzo (FAE) . Los valores típicos del FAE oscilan entre 0,9 y 1,4.
La fórmula intermedia de Cocomo ahora toma la forma:
- E = a (KSLOC) b (EAF)
donde E representa el esfuerzo aplicado en persona-meses, KSLOC es el número estimado de miles de líneas de código fuente entregadas para el proyecto, y EAF es el factor calculado anteriormente. El coeficiente a y el exponente b se muestran en la siguiente tabla para diferentes tipos de proyectos.
El tiempo de desarrollo D y también el cálculo del número más efectivo de personas P utilizan E de la misma manera que en el COCOMO básico:
- D = 2,5 E c
-
Tenga en cuenta que, además del EAF, el parámetro a es diferente en COCOMO Intermedio con respecto al modelo Básico:
Los parámetros b y c son los mismos en ambos modelos.
Véase también
Referencias
- ↑ Stutzke, Richard. "Software Estimating Technology: A Survey" . Archivado del original el 28 de marzo de 2020. Recuperado el 9 de octubre de 2016 .
DOC - ↑ Boehm, Barry (1981). Economía de la ingeniería de software . Prentice-Hall. ISBN 0-13-822122-7.
- ↑ Barry Boehm , Chris Abts, A. Winsor Brown, Sunita Chulani, Bradford K. Clark, Ellis Horowitz, Ray Madachy , Donald J. Reifer y Bert Steece. Estimación de costos de software con COCOMO II (con CD-ROM). Englewood Cliffs, NJ: Prentice-Hall, 2000. ISBN 0-13-026692-2
- ↑ Ray Madachy. Herramienta COCOMO II . softwarecost.org. Consultado en octubre de 2025.
Lecturas adicionales
- Kemerer, Chris F. (mayo de 1987). "Una validación empírica de los modelos de estimación de costos de software" (PDF) . Communications of the ACM . 30 (5): 416– 42. doi : 10.1145/22899.22906 .
Enlaces externos
- Datos de COCOMO 81 sobre tera-PROMISE
- El análisis de los datos de COCOMO 81 obtiene un valor diferente para el exponente orgánico.
- Costos de ingeniería de software