Вы находитесь на странице: 1из 10

Estimacin de Costes con COCOMO 81

(II)
COCOMO (Cost Constructive Model) es el Modelo Constructivo de Costes.
En nuestro artculo anterior Estimacin de Costes con COCOMO 81 (I) veamos la
introduccin general al modelo y los distintos modos que se pueden aplicar.
A continuacin vamos a ver los tres desarrollos del modelo que podemos seleccionar en
funcin de la precisin que necesitemos en los datos de nuestra estimacin.
Modelo Bsico
Se basa en el tamao expresado en miles de lneas de cdigo (KLOC). Las frmulas del
modelo son las siguientes:

Donde:

E. Es el esfuerzo medido en personas/mes

Tdev. Es el tiempo estimado en meses

P. Es el nmero de personas requerido para el proyecto

a, b, c, d. Son constantes con valores definidos segn cada modo y cada modelo

KLOC. Son el nmero de miles de lneas de cdigo fuente que tiene el software
que estamos intentado estimar

Los valores de las constantes son los siguientes:

Modo
Orgnico
Semilibre
Rgido

a
2.40
3.00
3.60

b
1.05
1.12
1.20

c
2.50
2.50
2.50

d
0.38
0.35
0.32

Cuando queramos realizar una estimacin, debemos calcular el nmero de miles de


lineas de cdigo fuente de nuestro proyecto (KLOC) y utilizarlo como entrada en las
frmulas de ms arriba, previa seleccin de los parmetros adecuados en funcin del
tipo de proyecto en el que nos encontremos.
Modelo Intermedio
Toma como entradas las miles de lineas de cdigo (KLOC) y un multiplicador (m(X))
calculado a partir de 15 parmetros denominados Atributos de Coste.
Los atributos de coste lo que permiten es valorar el entorno de desarrollo del proyecto
para tenerlo en cuenta en la estimacin.
FAE

Donde:

E. Es el esfuerzo medido en personas/mes

Tdev. Es el tiempo estimado en meses

P. Es el nmero de personas requerido para el proyecto

a, b, c, d. Son constantes con valores definidos segn cada modo y cada modelo

FAE. Es un multiplicador que se calcula con los 15 atributos de coste que se


indican ms abajo

KLOC. Son el nmero de miles de lneas de cdigo fuente que tiene el software
que estamos intentado estimar

Modo
Orgnico
3.20
Semilibre
3.00
Rgido
2.80
Atributos relativos al Software

b
1.05
1.12
1.20

c
2.50
2.50
2.50

d
0.38
0.35
0.32

En total se definen 3 atributos dependientes del software que deben evaluarse en el


modelo de COCOMO para poder realizar una estimacin y son los siguientes:

Fiabilidad
Da una medida de las consecuencias que sufrir el usuario si se produce un
defecto en el funcionamiento del software. Es la garanta de funcionamiento que
le exigimos al software.

Tamao de Base de datos


Es el valor relativo del tamao de la Base de Datos con respecto al de la
aplicacin. Se obtiene diviendo el tamao en Bytes de la BD entre el tamao en
lineas de cdigo del programa:

Complejidad
Es la Complejidad del Producto.

Los rangos de los valores de los atributos son los siguientes:

CONDUCTORES DE COSTE(C)

VALORACIN(i)

Mu
y
baj
o

Baj
o

Fiabilidad requerida del software

0,7
5

0,8
8

1.00

1,1
5

1,4
0

Tamao de la base de datos

0,9
4

1.00

1,0
8

1,1
6

Complejidad del producto

0,7
0

0,8
5

1.00

1,1
5

1,3
0

1,6
5

Restricciones del tiempo de ejecucin -

1.00

1,1
1

1,3
0

1,6
6

Restricciones del almacenamiento


principal

1.00

1,0
6

1,2
1

1,5
6

0,8
7

1.00

1,1
5

1,3
0

Tiempo de respuesta del ordenador

0,87

1.00

1,0
7

1,1
5

Capacidad del analista

1,4
6

1,1
9

1.00

0,8
6

0,7
1

Experiencia en la aplicacin

1,2

1,1

1.00

0,9

0,8

Volatilidad de la mquina virtual

Nominal

Alt
o

Mu
y
alt
o

Extr
.
alto

Capacidad de los programadores

1,4
2

1,1
7

1.00

0,8
6

0,7
0

Experiencia en S.O. utilizado

1,2
1

1,1
0

1.00

0,9
0

Experiencia en el lenguaje de
programacin

1,1
4

1,0
7

1.00

0,9
5

Prcticas de programacin modernas

1,2
4

1,1
0

1.00

0,9
1

0,8
2

Utilizacin de herramientas software

1,2
4

1,1
0

1.00

0,9
1

0,8
3

Limitaciones de planificacin del


proyecto

1,2
3

1,0
8

1.00

1,0
4

1,1
0

15
FAE= Ci
1

Ejemplo Estimacin con el mtodo de Cocomo


Entre los distintos mtodos de estimacin de costes de desarrollo de software, el
modelo COCOMO (COnstructive COst MOdel) desarrollado por Barry M. Boehm, se
engloba en el grupo de los modelos algortmicos que tratan de establecer una relacin
matemtica la cual permite estimar el esfuerzo y tiempo requerido para desarrollar un
producto.
Por un lado COCOMO define tres modos de desarrollo o tipos de proyectos:

Orgnico: proyectos relativamente sencillos, menores de 50


KDLC lneas de cdigo, en los cuales se tiene experiencia de
proyectos similares y se encuentran en entornos estables.

Semi-acoplado: proyectos intermedios en complejidad y


tamao (menores de 300 KDLC), donde la experiencia en este
tipo de proyectos es variable, y las restricciones intermedias.

Empotrado: proyectos bastante complejos, en los que apenas


se tiene experiencia y se engloban en un entorno de gran
innovacin tcnica. Adems se trabaja con unos requisitos
muy restrictivos y de gran volatilidad.

Y por otro lado existen diferentes modelos que define COCOMO:

Modelo bsico: Se basa exclusivamente en el tamao expresado en


LDC.

Modelo intermedio: Adems del tamao del programa incluye un


conjunto de medidas subjetivas llamadas conductores de costes.

Modelo avanzado: Incluye todo lo del modelo intermedio adems del


impacto de cada conductor de coste en las distintas fases de desarrollo.

Para nuestro caso el modelo intermedio ser el que usaremos, dado que realiza las
estimaciones con bastante precisin.
As pues las frmulas sern las siguientes:

E = Esfuerzo = a KLDC e * FAE (persona x mes)

T = Tiempo de duracin del desarrollo = c Esfuerzo d (meses)

P= Personal = E/T (personas)

Para calcular el Esfuerzo, necesitaremos hallar la variable KDLC (Kilo-lneas de


cdigo), donde los PF son 261,36 (dato conocido) y las lneas por cada PF equivalen a
32 segn vemos en la tabla que se ilustra a continuacin:

LENGUAJE

LDC/PF

Ensamblador

320

150

COBOL

105

Pascal

91

Prolog/LISP

64

C++

64

Visual Basic

32

SQL

12

As pues tras saber que son 32 LDC por cada PF, por el hecho de ser Visual Basic
el resultado de los KDLC ser el siguiente:
KLDC= (PF * Lneas de cdigo por cada PF)/1000 = (261,36*32)/1000= 8,363
KDLC
As pues, en nuestro caso el tipo orgnico ser el ms apropiado ya que
el nmero de lneas de cdigo no supera los 50 KLDC, y adems el proyecto
no es muy complejo, por consiguiente, los coeficientes que usaremos sern
las siguientes:

PROYECTO SOFTWARE

Orgnico

3,
2

1,0
5

2,
5

0,3
8

Semi-acoplado

3,
0

1,1
2

2,
5

0,3
5

Empotrado

2,
8

1,2
0

2,
5

0,3
2

Y por otro lado tambin hemos de hallar la variable FAE, la cual se obtiene
mediante la multiplicacin de los valores evaluados en los diferentes 15 conductores de
coste que se observan en la siguiente tabla:

CONDUCTORES DE COSTE

VALORACIN

Mu
y
baj
o

Baj
o

Fiabilidad requerida del software

0,75

0,88

1.00

1,1
5

1,40

Tamao de la base de datos

0,94

1.00

1,08

1,16

Complejidad del producto

0,70

0,8
5

1.00

1,15

1,30

1,65

Restricciones del tiempo de ejecucin -

1.00

1,1
1

1,30

1,66

Restricciones del almacenamiento


principal

1.00

1,06

1,21

1,56

0,87

1.00

1,15

1,30

Volatilidad de la mquina virtual

Nominal

Alt
o

Mu
y
alt
o

Extr
.
alto

Tiempo de respuesta del ordenador

0,87

1.00

1,0
7

1,15

Capacidad del analista

1,46

1,19

1.00

0,8
6

0,71

Experiencia en la aplicacin

1,29

1,13

1.00

0,91

0,8
2

Capacidad de los programadores

1,42

1,17

1.00

0,86

0,7
0

Experiencia en S.O. utilizado

1,21

1,10

1.00

0,90

Experiencia en el lenguaje de
programacin

1,14

1,07

1.00

0,9
5

Prcticas de programacin modernas

1,24

1,10

1.00

0,91

0,82

Utilizacin de herramientas software

1,24

1,10

1.00

0,9
1

0,83

Limitaciones de planificacin del


proyecto

1,23

1,0
8

1.00

1,04

1,10

FAE=1,15*1,00*0,85*1,11*1,00*1,00*1,07*0,86*0,82*0,70*1,00*0,95*1,00*
0,91*1,08
= 0,53508480

Justificacin de los valores:


Atributos de software

Fiabilidad requerida del software: Si se produce un fallo por el


pago de un pedido, o fallo en alguna reserva, etc... puede
ocasionar grandes prdidas a la empresa (Valoracin Alta).

Tamao de la base de datos: La base de datos de nuestro


producto ser de tipo estndar (Valoracin Nominal).

Complejidad del producto: La aplicacin no va a realizar


clculos complejos (Valoracin Baja).

Atributos de hardware

Restricciones del tiempo de ejecucin: En los requerimientos


se exige alto rendimiento (Valoracin Alta).

Restricciones del almacenamiento principal: No hay


restricciones al respecto (Valoracin Nominal).

Volatilidad de la mquina virtual: Se usarn sistemas de la


Familia Windows (Valoracin Nominal).

Tiempo de respuesta del ordenador: Deber ser interactivo


con el usuario (Valoracin Alta).

Atributos del personal

Capacidad del analista: Capacidad alta relativamente, debido a


la experiencia en anlisis en proyecto similar (Valoracin Alta)

Experiencia en la aplicacin: Se tiene cierta experiencia en


aplicaciones de esta envergadura (Valoracin muy alta).
Capacidad de los programadores: Tericamente deber
tenerse una capacidad muy alta por la experiencia en anteriores
proyectos similares (Valoracin muy alta).

Experiencia en S.O. utilizado: Con Windows 2000 Professional


la experiencia es a nivel usuario (Valoracin Nominal).

Experiencia en el lenguaje de programacin: Es


relativamente alta, dado que se controlan las nociones bsicas y
las propias del proyecto (Valoracin Alta).

Atributos del proyecto

Prcticas de programacin modernas: Se usarn prcticas de


programacin mayormente convencional (Valoracin Nominal).

Utilizacin de herramientas software: Se usarn herramientas


estndar que no exigirn apenas formacin, de las cuales se tiene
cierta experiencia (Valoracin Alta).

Limitaciones de planificacin del proyecto: Existen pocos


lmites de planificacin. (Valoracin Baja).

Clculo del esfuerzo del desarrollo:

E = a KLDC e * FAE = 3,2 * (8.363)^1,05 * 0,53508480 = 15,91 personas /mes

Clculo tiempo de desarrollo:

T = c Esfuerzo d = 2,5 * (15,91)^0,38 = 7,15 meses

Productividad:

PR = LDC/Esfuerzo = 8363/15,91 = 525 ,64 LDC/personas mes

Personal promedio:

P = E/T = 15,91/7,15 = 2,22 personas

Segn estas cifras ser necesario un equipo de 3 personas trabajando


alrededor de 7 meses, pero puesto que el desarrollo del proyecto debe
realizarse en un plazo 3 meses, incrementaremos a 6 personas el nmero de
personas del equipo de proyecto (ya que 15,91/3 nos da alrededor de este
resultado).
As pues tendremos un equipo formado por 1 Jefe de proyecto, 2 Analistas,
2 programadores y 1 Responsable de calidad.

Вам также может понравиться