Vous êtes sur la page 1sur 2

Ingeniera del Software de Gestin

Titulacin: ITIG / ITIG - LADE


2 Cuatrimestre - octubre de 2012

Ejercicio de Anlisis 3.
Planificacin de Proyectos.

Estimaciones de Software.

COCOMO
El modelo COCOMO es seguramente el ms conocido, ya que como subraya Conte
et al., es el mas completo y detalladamente documentado de todos los modelos de
esfuerzo. Este modelo se basa en una estimacin previa del tamao del software
en lneas de cdigo (LDC). Este dato sirve como parmetro de las ecuaciones de
clculo de esfuerzo derivadas por B.W. Boehm.

La forma general de la ecuacin de esfuerzo es:

Esfuerzo = a * (KLDC)b

Con base en esta ecuacin y al modelo de desarrollo del proyecto, las ecuaciones
de esfuerzo y tiempo de COCOMO son:

Personas-mes Tiempo de desarrollo


Modelo de desarrollo
(nominal) (nominal)
1.05
Orgnico PM = 3.2 * KLDC TD = 2.5 * PM0.38
1.12
Semi-libre PM = 3.0 * KLDC TD = 2.5 * PM0.35
1.20
Empotrado PM = 2.8 * KLDC TD = 2.5 * PM0.32

En el modelo intermedio de COCOMO, el valor de esfuerzo nominal calculado con


las ecuaciones anteriores debe ser ajustado de acuerdo a los factores de coste del
modelo, que se pueden observar en la tabla 2. Cuando un factor se valora como
nominal o medio, el valor asignado es siempre 1, es decir, no influye en el coste.

Factores Valor de los factores


(cost-drivers)
Muy bajo Bajo Medio Alto Muy alto Extra

Fiabilidad requerida 0.75 0.88 1 1.15 1.40


Tamao de la base de 0.94 1 1.08 1.16
datos
Complejidad del software 0.70 0.85 1 1.15 1.30 1.65
Restricciones de tiempo 1 1.11 1.30 1.66
de ejecucin
Restricciones de memoria 1 1.06 1.21 1.56
Volatilidad del hardware 0.87 1 1.15 1.30
Restricciones de tiempo 0.87 1 1.07 1.15
de respuesta
Calidad de los analistas 1.46 1.19 1 0.86 0.71
Experiencia con el tipo de 1.29 1.13 1 0.91 0.82
aplicacin
Experiencia con el 1.21 1.10 1 0.90
hardware
Ingeniera del Software de Gestin
Titulacin: ITIG / ITIG - LADE
2 Cuatrimestre - octubre de 2012

Experiencia con el 1.14 1.07 1 0.95


lenguaje de programacin
Calidad de los 1.42 1.17 1 0.86 0.70
programadores
Tcnicas modernas de 1.24 1.10 1 0.91 0.82
programacin
Empleo de herramientas 1.24 1.10 1 0.91 0.83
Restricciones a la 1.23 1.08 1 1.04 1.10
duracin del proyecto

Ejemplo:

Es usted el jefe de un proyecto de desarrollo de un sistema de comunicaciones en


el cual ha estimado tener 30 KLDC. El software a desarrollar es de alta complejidad
pero afortunadamente podremos contar con personal de muy alta cualificacin y
experiencia especfica en el tipo de software a desarrollar. Teniendo en cuenta que
el costo del salario mensual de cada persona es de 1350 mensuales, calcule el
esfuerzo de desarrollo de este sistema.

Esfuerzo nominal = 3.2 * 301.05 = 113.79 personas-mes

Ajustando el esfuerzo segn las variables descritas:

Esfuerzo = 113.79 * 1.15 (complejidad) * 0.7 (calidad prog) * 0.91 (experiencia)


Esfuerzo = 83.35 personas mes

Con este dato, hallamos el resto de variables:

Costo = 83.35 *1350 = 112.522,5

Tiempo = 2.5 * 83.350.38 = 13.42 meses

No medio de personas = 83.35/13.42 = 6.2 personas

Ejercicios:

1. Para el caso del ejemplo presentado, sera mas rentable en tiempo y


dinero, emplear personas de nivel medio cuyo salario es de 1.275
mensuales?
2. Se desea desarrollar para el avin AIR-96 el software para un controlador de
presin del aire en cabina que residente en ROM interacte sobre los
mecanismos de ajuste en funcin de las seales que le llegan de los
sensores, con bastantes cambios de requisitos debidos a distintas
variaciones en el soporte hardware. El tamao estimado es de 65 KLDC.
Consideramos los factores de costes a nivel nominal excepto la fiabilidad
(muy alta), base de datos (reducida), restricciones de memoria, de tiempo
de ejecucin y de respuesta (muy altas), complejidad (alta), experiencia en
el hardware (alta) y gran calidad en los programadores. Teniendo en cuenta
que el salario medio bruto anual (14 pagas) es de 24.000 por persona,
estmese el esfuerzo requerido para este proyecto.
3. Para el ejercicio 2, sera ms rentable en tiempo y dinero, si se decidiera
utilizar tcnicas modernas de programacin (alta) a cambio de tener una
restriccin de la duracin del proyecto alta?