Ir al contenido principal

COCOMO

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 "Software Engineering Economics"  (Prentice-Hall, 1981). COCOMO es una jerarquía de modelos de estimación de costes software que incluye submodelos básico, intermedio y desarrollado.
Las ecuaciones de estimación del esfuerzo de desarrollo tienen la forma: 
Con:
• S el número de miles de líneas de código fuente
• m(X) es un multiplicador que depende de 15 atributos
• en la siguiente tabla se muestran los coeficientes para los diferentes modos

Básico

Intermedio

              Modo
ai
bi
ai
bi
Orgánico
2.4
1.05
3.2
1.05
Semiencajado
3.0
1.12
3.0
1.12
Empotrado
3.6
1.2
2.8
1.2
Modelo Básico
Este modelo trata de estimar, de una manera rápida y más o menos burda, la mayoría de proyectos pequeños y medianos. Se consideran tres modos de desarrollo en este modelo: orgánico, semiencajado y empotrado.
Modo orgánico.
En este modo, un pequeño grupo de programadores experimentados desarrollan software en un entorno familiar. El tamaño del software varía de unos pocos miles de líneas (tamaño pequeño) a unas decenas de miles de líneas (medio), mientras que en los otros dos modos el tamaño varía de pequeño a muy grandes. En este modo, al igual que en los otros, el coste se incrementa a medida que el tamaño lo hace, y el tiempo de desarrollo se alarga.
Se utilizan dos ecuaciones para determinar el esfuerzo de personal y el tiempo de desarrollo. El coste es: Km = 2.4 Sk1.05  ; donde Km se expresa en personas-mes y Sk es el tamaño expresado en miles de líneas de código fuente. El tiempo de desarrollo se da por: td = 2.5 Km0.38  ; donde Km se obtiene de la ecuación anterior y td es el tiempo de desarrollo en meses. Estas ecuaciones se han obtenido por medio de ajustes de curvas realizado por Boehm en TRW sobre 63 proyectos.
  Modo Empotrado.
En este modo, 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. Las estimaciones de tiempo y coste se basan en las mismas ecuaciones que en el modo orgánico, pero con diferentes constantes. Así el coste se da por: Km = 3.6 Sk1.20 y el tiempo de desarrollo por td = 2.5 Km0.32 .
Modo Semiencajado.
Es un modo intermedio entre los dos anteriores. Dependiendo del problema, el grupo puede incluir una mezcla de personas experimentadas y no experimentadas. Las ecuaciones son: Km = 3.0 Sk1.12 y el tiempo de desarrollo por td = 2.5 Km0.35.
Modelo Intermedio
En este modelo se introducen 15 atributos de coste para tener en cuenta el entorno de trabajo. Estos atributos se utilizan para ajustar el coste nominal del proyecto al entorno real, incrementando la precisión de la estimación.
Ecuaciones nominales de coste.
 Para cada modo de desarrollo, los 15 atributos del coste intervienen como multiplicadores en el coste nominal, Kn, para producir el coste ajustado. Las ecuaciones nominales de coste para el modelo intermedio son: modo orgánico Kn = 3.2 Sk1.05  , modo semiencajado Kn = 3.0 Sk1.12 modo empotrado Kn = 2.8 Sk1.20 Notemos que:  •Los exponentes son los mismos que los del modelo básico, confirmando el papel que representa el tamaño. • Los coeficientes de los modos orgánico y empotrado han cambiado, para mantener el equilibrio alrededor del semiencajado con respecto al efecto multiplicador de los atributos de coste.
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.
Modelo Detallado
Este modelo puede procesar todas las características del proyecto para construir una estimación. Introduce dos características principales:
(1)   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.
(2)   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.
Conclusiones sobre COCOMO.

Es uno de los modelos más documentados en la actualidad y es muy fácil de utilizar. Es correcto con referencia a los 63 proyectos utilizados, aunque de ello no se debe desprender que deba ser válido siempre. Una preocupación es la adaptación de las ecuaciones exponenciales a organizaciones específicas, cosa que no parece inmediatamente fácil.

Comentarios

Entradas populares de este blog

Tarea Sitios Web

1.        YouTube Interfaz:                La interfaz de este sitio web me parece bastante minimalista, simple y al mismo Tiempo también es adecuada y funcional para el usuario. Me parece que tiene Todo en el lugar adecuado y de forma que facilite el lugar donde encontrarlo.                 Mapa de Navegación:                                Creo que aquí no hay error alguno en cuanto a la navegación, ya que puedes ir                                Visitando diversas partes del sitio sin necesidad de salir...

Ingenieria de Software

Las propiedades emergentes de los sistemas complejos En muchos sistemas complejos se generan propiedades emergentes, que son el producto del conjunto de las relaciones entre las partes. Estas propiedades están basadas en conductas simples de éstas y que, como decía Aristóteles, las propiedades del todo generado es mayor que la suma de las propiedades individuales de dichos elementos que conforman el sistema. - La confiabilidad de un sistema informático es una propiedad del sistema que refleja el grado de confianza que el usuario tiene en el sistema. - La disponibilidad de un sistema es la probabilidad de que le sea posible entregar los servicios a sus usuarios cuando se lo soliciten y la fiabilidad es la probabilidad de que los servicios del sistema se entreguen de acuerdo con lo especificado. - La fiabilidad y la disponibilidad se consideran normalmente como las dimensiones más importantes de la confiabilidad. Los modelos del proceso del software son representaciones abstractas de e...

Artefactos de XP

Historia de Usuario 1 Compra Tarjeta Usuarios del servicio de tren Iteración Asignada: 1 Alta 5 Horas Riesgo en Desarrollo: Medio Puntos Reales: 5 Horas Descripción: El usuario compra una tarjeta que utilizara para ingresar y utilizar el servicio del tren. Observaciones: La tarjeta será de uso personal e intransferible. Historia de Usuario 2 Modo de Uso de Tarjeta Usuarios del servicio de Tren Iteración Asignada: 2 Alta 5 Horas Riesgo en Desarrollo: Medio Puntos Reales: 5 Horas Descripción: Para el viaje en tren se utilizará un modo de cobro que contendrá 3 tarifas de acuerdo a la distancia de viaje del usuario. El servicio evaluara en que estación ingreso el usuario y en cual salió para de esta forma, hacer que el ...