Upload
rocimary
View
5.197
Download
6
Embed Size (px)
DESCRIPTION
Citation preview
MODELO COCOMO
Escuela Politécnica NacionalDesarrollo de Sistemas de la Información
Rocío Maribel Verdezoto B.
1
EL MODELO COCOMOCOCOMO son las siglas para COnstructive COst MOdel (Modelo constructivo de costos)
Es un modelo empírico de estimación de costes.
Creado por Barry W. Boehm. (Boehm, 1981)
Incluye 3 submodelos con un nivel de detalle cada vez mayor.
2
CARACTERÍSTICAS PRINCIPALES
Está basado en modelos de estimaciones matemáticas.
Está orientado al producto final, no a fases intermedias.
Se basa en la cantidad de líneas de código del proyecto.
Permite determinar básicamente los valores de las variables:
*meses/hombre a aplicar al proyecto
*meses totales del proyecto 3
DESVENTAJAS DEL MODELOComentarios en líneas de código.
Estimaciones sobre un número de líneas de código variable.
No se le da importancia a la productividad, referente a los hábitos de trabajo
Dificultad para contemplar costes de revisiones, reuniones, etc.
4
MODELOS DE ESTIMACIÓN
Se puede considerar como una colección de tres modelos:
Básico: cálculo del esfuerzo en función del tamaño (LDC).
Intermedio: cálculo del esfuerzo en función del tamaño y de “guías de coste”.
Avanzado: Modificación del modelo intermedio para considerar el impacto de las guías de coste en cada fase.
5
MODOS
Están definidos para tres tipos de proyectos:
Modo orgánico: proyectos pequeños, mucha experiencia, pocas restricciones.
Modo semiacoplado: proyectos intermedios, varios niveles de experiencia, requisitos poco y medio rígidos.
Modo empotrado: proyectos complejos y muy restrictivos.
6
MODO BÁSICOEl modelo básico se usa para
obtener una aproximación rápida del esfuerzo.
Usa las variables a, b, c y d, que varían en función de los modos.
Conforme se aumenta la complejidad del modo, aumentan los valores de las variables (esfuerzo).
7
Modelo básico:E = a (KDSI)b
DSI: Delivered Source Instructions
Personas necesarias para llevar a cabo el proyecto:(MM) = a*(Klb)
Tiempo de desarrollo del proyecto:
(TDEV) = c*(MMd)Personas necesarias para el
proyecto:(CosteH) = MM/TDEV
Coste total del proyecto:(CosteM) = CosteH * Salario
medio
8
MODELO INTERMEDIOModelo Intermedio:E = a (KDSI)b FF: factor de ajusteEl factor de ajuste se calcula
considerando 15 factores o “guías de coste” que se agrupan en cuatro categorías:
» Atributos del producto (3)» Atributos computacionales (5)» Atributos de personal (4)» Atributos del proceso (3)
9
MODELO INTERMEDIO
Atributos del modelo:SOFTWARE:
• RELY: Indica las consecuencias para el usuario si falla el producto.
• DATA: Relación Tamaño de la BD / Líneas de código.
• CPLX: Complejidad del producto. 1
0
Atributos del modelo:HARDWARE:
• TIME: Limitaciones en el porcentaje del uso de la CPU.
• STOR: Limitaciones en el porcentaje del uso de la memoria.
• VIRT: Volatilidad de la máquina virtual.
• TURN: Tiempo de respuesta.
MODELO INTERMEDIO
11
Atributos del modelo:PERSONAL:
• ACAP: calificación de los analistas.
• AEXP: experiencia del personal.
• PCAP: calificación de los programadores.
• VEXP: experiencia del personal en la máquina virtual.
• LEXP: experiencia en el lenguaje.
MODELO INTERMEDIO
12
MODELO INTERMEDIO
Atributos del modelo:PROYECTO:
• MODP: uso de prácticas modernas de programación.
• TOOL: uso de herramientas de desarrollo de software.
• SCED: limitaciones en el cumplimiento de la planificación. 1
3
E = Esfuerzo = a KLDC e * FAE (persona x mes)
T = Tiempo de duración del desarrollo = c Esfuerzo d (meses)
P= Personal = E/T (personas)
KLDC: Kilo-líneas de código14
EJEMPLO ESTIMACIÓN CON EL MÉTODO DE COCOMO
• PLANTEAMIENTO:Desarrollar un software de no muy elevada dificultad, con las siguientes restricciones:
Debe estar implementado en el lenguaje SQL.
3 meses para el desarrollo del proyecto software. 1
5
CALCULO DEL ESFUERZO:Para calcular el Esfuerzo, necesitaremos hallar la variable KDLC (Kilo-líneas de código), donde los PF son 261,36 (dato conocido) y las líneas por cada PF equivalen a 12 según vemos en la tabla que se ilustra a continuación:
LENGUAJE LDC/PFEnsamblador 320
C 150
COBOL 105
Pascal 91
Prolog/LISP 64
C++ 64
Visual Basic 32
SQL 12 16
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 * Líneas de código por cada PF)/1000
= (261,36*12)/1000 = 3,13632
Usaremos el tipo Organico ya que núestro proyecto no supera las 50 KLDC, y es el mas apropiado en este caso.
17
• Coeficientes a usar:
PROYECTO SOFTWARE
a b c d
Orgánico3,2 1,05 2,5 0,38
Semi-acoplado3,0 1,12 2,5 0,35
Empotrado2,8 1,20 2,5 0,32
18
• Calculo de la variable FAE:CONDUCTORES DE COSTE VALORACIÓN
Muy bajo
Bajo Normal Alto Muyalto
Extr. alto
Fiabilidad requerida del software 0,75 0,88 1.00 1,15 1,40 -
Tamaño de la base de datos - 0,94 1.00 1,08 1,16 -
Complejidad del producto 0,70 0,85 1.00 1,15 1,30 1,65
Restricciones del tiempo de ejecución - - 1.00 1,11 1,30 1,66
Restricciones del almacenamiento principal - - 1.00 1,06 1,21 1,56
Volatilidad de la máquina virtual - 0,87 1.00 1,15 1,30 -
Tiempo de respuesta del ordenador - 0,87 1.00 1,07 1,15 -
Capacidad del analista 1,46 1,19 1.00 0,86 0,71 -
Experiencia en la aplicación 1,29 1,13 1.00 0,91 0,82 -
Capacidad de los programadores 1,42 1,17 1.00 0,86 0,70 -
Experiencia en S.O. utilizado 1,21 1,10 1.00 0,90 - -
Experiencia en el lenguaje de programación 1,14 1,07 1.00 0,95 - -
Prácticas de programación modernas 1,24 1,10 1.00 0,91 0,82 -
Utilización de herramientas software 1,24 1,10 1.00 0,91 0,83 -
Limitaciones de planificación del proyecto 1,23 1,08 1.00 1,04 1,10 - 19
FAE se obtiene mediante la multiplicación de los valores evaluados en los diferentes 15 conductores de coste:
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
Cálculo del esfuerzo del desarrollo:E = a KLDC^(b) * FAE = 3,2 * (3,13632 )^1,05 * 0,53508480 = 5,68 personas /mes
20
Cálculo tiempo de desarrollo:
T = c Esfuerzo d = 2,5 * (5,68)^0,38 = 4,837 meses
Productividad:
PR = LDC/Esfuerzo = 3136/5,68 = 552 ,11 LDC/personas mes
21
Personal promedio: P = E/T = 5,68 / 4,837 = 1.174 personas
Segun los resultados necesitaremos un equipo de 2 personas trabajando alrededor de 5 meses, pero como una restricción era 3 meses incrementamos a 4 el numero de personas.
1 Jefe de proyecto, 1 Analistas, 1 programador y 1 Responsable de calidad.
22
BIBLIOGRAFÍAhttp://www.itba.edu.ar/nuevo/archivos/
secciones/art_revistas_6.pdfhttp://www.uhu.es/eyda.marin/apuntes/
valora/tema2y3VRI_I.pdfhttp://www.uhu.es/eyda.marin/apuntes/
valora/tema2VRI_II.ppthttp://www.enciclopedia.galeon.com/
cocomo.doc
FINGracias por su atención