COCOMO y Modelo Espiral: Enfoques para la Estimación y Desarrollo de Software

Enviado por Programa Chuletas y clasificado en Diseño e Ingeniería

Escrito el en español con un tamaño de 4,2 KB

El Modelo COCOMO

Barry Boehm introduce una jerarquía de modelos de estimación de Software con el nombre de COCOMO, por su nombre en Inglés (Constructive Cost Model) modelo constructivo de costos. La jerarquía de modelos de Boehm está constituida por los siguientes:

Modelos COCOMO

  • Modelo I: El Modelo COCOMO básico calcula el esfuerzo y el costo del desarrollo de Software en función del tamaño del programa, expresado en las líneas estimadas (50.000 Líneas).
  • Modelo II: El Modelo COCOMO intermedio calcula el esfuerzo del desarrollo de software en función del tamaño del programa y de un conjunto de conductores de costos que incluyen la evaluación subjetiva del producto, del hardware, del personal y de los atributos del proyecto.
  • Modelo III: El modelo COCOMO avanzado incorpora todas las características de la versión intermedia y lleva a cabo una evaluación del impacto de los conductores de costos en cada caso (análisis, diseño, etc.) del proceso de ingeniería de Software.

Una vez obtenido un estimado de las líneas de código (que se miden en KLOCS o "miles de líneas de código") lo que se calcula es lo siguiente:

  • Meses/hombre a aplicar al proyecto
  • Meses totales del proyecto (dependiendo de factores tales como los atributos de fiabilidad requerida del software, tamaño de la base de datos, complejidad del producto, limitaciones en el tiempo de ejecución, limitaciones de memoria principal, volatilidad de la máquina virtual, frecuencia de cambio en el modelo de explotación del ordenador, capacitación de los analistas, experiencia en aplicaciones, capacitación de los programadores, experiencia en la máquina virtual, experiencia en el lenguaje de programación, prácticas modernas de programación, uso de herramientas para el desarrollo del software y limitaciones en la planificación)

Una vez obtenido esto, es fácil realizar un estudio de costo. De todas formas, si pensamos licitar contra otras empresas, conviene ajustar un poco los resultados finales obtenidos mediante este método, porque no incluye entre sus parámetros el tiempo ganado por la reutilización de programas anteriores.

E = Esfuerzo = a KLDC b (persona x mes)

T = Tiempo de duración del desarrollo = c Esfuerzo d (meses)

Proyecto de software

OrgánicoSemiacopladoEmpotrado
a2,43,03,6
b1,051,121,20
c2,52,52,5
d0,380,350,32

Modelo Espiral

El Desarrollo en Espiral es un modelo de ciclo de vida desarrollado por Barry Boehm en 1985, utilizado generalmente en la Ingeniería de software. Las actividades de este modelo son una espiral, cada bucle es una actividad. Para cada actividad habrá cuatro tareas:

Tareas del Modelo Espiral

1. Planificación

Determinación de objetivos, alternativas y restricciones. Revisamos todo lo hecho, evaluándolo, y con ello decidimos si continuamos con las fases siguientes y planificamos la próxima actividad.

2. Análisis de Riesgo

Análisis de alternativas e identificación/resolución de riesgos.

3. Ingeniería

Desarrollo del producto del siguiente nivel. Tareas de la actividad propia y se prueba. Análisis de alternativas e identificación resolución de riesgos.

4. Evaluación del Cliente

Valorización de los resultados de la ingeniería.

Ventajas del Modelo Espiral

  • El análisis del riesgo se hace de forma explícita y clara. Une los mejores elementos de los restantes modelos.
  • Reduce riesgos del proyecto
  • Incorpora objetivos de calidad
  • Integra el desarrollo con el mantenimiento, etc.
  • Además es posible tener en cuenta mejoras y nuevos requerimientos sin romper con la metodología, ya que este ciclo de vida no es rígido ni estático.

Entradas relacionadas: