Está en la página 1de 42

ADMINISTRACIN DE PROYECTOS INFORMTICOS

COCOMO (COnstructive COst MOdel)

El modelo COCOMO
- Los costos se pueden calcular como una
funcin matemtica basada en atributos de productos, proyectos y procesos, cuyos

valores son calculados por administradores


de proyectos. - La funcin se basa en un estudio histrico de datos de costos. - LOC (tamao de cdigo) utiliza estimacin de costos

El modelo COCOMO
- Fue desarrollado y presentado en 1981 por Barry W. Bohem. - Se enmarca en el grupo de los modelos algortmicos que tratan de establecer una relacin matemtica que permita estimar el esfuerzo (hombre-mes) y tiempo requerido para desarrollar un proyecto. - Basado en una base de datos de costos (con ms de 60 proyectos diferentes).

El modelo COCOMO
- Existen tres niveles:

Nivel Bsico

Nivel Intermedio

- Existen tres modelos: Orgnico Semilibre

Nivel Detallado

Fuertemente restringido

El modelo COCOMO

Nivel Bsico * Es adecuado para realizar estimaciones de forma rpida aunque sin gran precisin. * No tiene en cuenta los diferentes atributos que afectan al proyecto como: calidad, experiencia del personal, restricciones de hardware, utilizacin de tcnicas modernas y herramientas de desarrollo.

El modelo COCOMO
Nivel Intermedio

* Los factores antes mencionados se consideran como adicionales al costo total del proyecto. Nivel Detallado * Se considera cmo estos factores afectan dentro de las diferentes fases individuales que componen el proyecto.

El modelo COCOMO
- El factor principal sobre el que se basan las

estimaciones es el tamao del producto, es


decir, el nmero de instrucciones fuente

desarrolladas.
- La cantidad de instrucciones fuente se deben estimar por experiencia, por analoga con otros proyectos semejantes, o por otros datos que se posean.

El modelo COCOMO
- En el modelo de desarrollo de software se

planifican solo las fases comprendidas desde


el anlisis hasta la implantacin, (La fase de estudio preliminar no se considera). - Los parmetros estimados no incluyen los correspondientes a las actividades de formacin de los usuarios, planificacin de las instalaciones y trabajos de conversin.

El modelo COCOMO
- Los indicadores de planificacin que se

pueden obtener con este mtodo son:


Esfuerzo (hombre-mes)

Tiempo de desarrollo (meses)


Personal necesario (hombres)

Productividad (inst/hombre-mes)
Costo (pesos)

El modelo COCOMO
La unidad de esfuerzo Hombre-Mes supone un total de 152 horas de trabajo por persona, en base a la experiencia prctica y a consideraciones sobre vacaciones, permisos, enfermedad, etc. Hombres-Mes x 152 = Hombres-Hora

Hombres-Mes x 19 = Hombres-Da
Hombres-Mes / 12 = Hombres-Ao

El modelo COCOMO
Modelos de desarrollo de software: Modelo Orgnico o Familiar

Modelo Semilibre

Modelo Fuertemente restringido

Modelo Orgnico o Familiar (1)


El equipo de desarrollo es relativamente pequeo y
se desenvuelven en un entorno altamente familiar. La gran mayora de la gente relacionada con el proyecto tiene una amplia experiencia en otros proyectos relacionados con la misma organizacin Tienen un buen conocimiento de cmo el sistema bajo desarrollo, contribuir a los objetivos de su

organizacin.

Modelo Orgnico o Familiar (2)


La mayora de las personas pueden contribuir de forma efectiva a la terminacin puntual de cada una de las etapas sin generar grandes necesidades de comunicacin para determinar con precisin las tareas que cada uno debe desarrollar en el proyecto
El equipo de trabajo puede negociar con facilidad

la modificacin de algunas de las especificaciones


para hacer ms fcil este desarrollo.

Modelo Orgnico o Familiar (3)


Entorno de desarrollo estable, con poco desarrollo concurrente de nuevo Hardware asociado. Mnimas necesidades de introducir algoritmos innovadores o nuevas arquitecturas de proceso. Un trabajo de proyecto relativamente pequeo. Muy pocos proyectos desarrollados de modo orgnico sobrepasan los 50 MF (50 000 instrucciones fuente). Proyectos en Modo Orgnico de mayor tamao pueden desarrollarse utilizando software ya existente.

Modelo Semilibre (1)

Representa un estado intermedio entre el modo


orgnico y el modo fuertemente restringido Todos los miembros del equipo de diseo tienen un nivel medio de experiencia en sistemas relacionados con el proyecto

El equipo de desarrollo esta formado por una


mezcla de gente experta e inexperta.

Modelo Fuertemente restringido (1)


Debe desarrollarse sometido a fuertes restricciones.

El producto debe operar en entornos de software y


hardware fuertemente acoplados. En estos proyectos no existe la posibilidad de negociar fcilmente cambios en el software y en tal caso precisar un mayor tiempo para acomodar o

asegurar que los cambios cumplan las especificaciones


(mayor costo de verificacin, validacin y de gestin de la configuracin).

Comparacin del Ciclo de Vida


Bohem
Planificacin y Requisitos Diseo

Nuestro
Estudio Preliminar Anlisis

Diseo detallado
Codificacin y Prueba

Diseo
Desarrollo

Integracin y Prueba

Prueba e implantacin

COCOMO Bsico

E= a (KLOC)bb b

E= esfuerzo (hombre/mes) KLOC= nmero (miles) estimado de lneas de cdigo del proyecto.

COCOMO Bsico

Proyecto de software
Orgnico Semi-acoplado Fuertemente restringido

ab
2.4 3.0 3.6

bb

c b 2.5
2.5 2.5

db 0.38
0.35 0.32

1.05
1.12 1.20

COCOMO Bsico
Supongamos que una empresa cualquiera desea disear un proyecto que gestione sus inventarios y decide desarrollarlo mediante su propio equipo de analista y programadores que anteriormente y durante muchos aos, vienen desarrollando aplicaciones similares en la misma empresa. Si un estudio inicial determina que el tamao del producto en alrededor de 32 000 lneas de programa fuente (32 KLOC). Cuales sern las caractersticas del proyecto?.

COCOMO Bsico
Esfuerzo: E= a (KLOC)bb b E = 2.4 (32)1.05

E = 91 hombres-mes

Tiempo de desarrollo:
D= c (E)d b b D = 2.5 (91)0.38 = 14 meses

COCOMO Bsico
Nmero de personas trabajando en el proyecto: N = 91/14 = 6.5 hombres La cantidad de hombres nos da una medida del nmero equivalente de personas trabajando a tiempo completo en el proyecto.

Puntos de Funcin (1)


Establecer el esfuerzo que conlleva el desarrollo de un producto de software, ha sido sin duda una necesidad creciente de la industria informtica. Muchas mtricas se han visto en el transcurso de los aos, pero la que ha logrado resultados ms relevantes ha sido el conteo de los Puntos de Funcin. Las bases de la mtrica Punto de Funcin, fueron desarrollados en un perodo superior a los 5 aos comenzando en 1974 por el Departamento de Servicios Computacionales de IBM.

Puntos de Funcin (2)


Allan J. Albrecht (IBM, White Plains) fue el primero en publicar la tcnica de Punto de Funcin en 1979. Desde fines del ao 1982 el Punto de Funcin, ha sido usado en los Estados Unidos, Inglaterra, Nueva Zelandia, Australia y Canad. Algunas Empresa que utilizan la tcnica son: IBM, UNISYS, Bank of America, Bell, ITT, Xerox, General Motors, otros.

Puntos de Funcin (3)


Los objetivos de los puntos de funcin son: Medir lo que el usuario pide y lo que el usuario recibe. Medir independientemente de la tecnologa utilizada en la implantacin del sistema. Proporcionar una mtrica de tamao que d soporte al anlisis de la calidad y la productividad.

Proporcionar un medio para la estimacin del software.

Puntos de Funcin (4)


El anlisis de los puntos de funcin se desarrolla considerando cinco parmetros: Nmero de Entradas de usuario Nmero de Salidas de usuario Nmero de Consultas (peticiones del usuario) Nmero de archivos

Nmero de interfaces externas

Puntos de Funcin (5)


Clculo:
Determinar nmero de: entradas, salidas, consultas, archivos e interfaces externas Calcular la complejidad
Generar el nmero de puntos de funcin Calcular el factor de ajuste Generar el FPA

Puntos de Funcin (6)


Entradas de usuario: Se cuenta cada entrada de usuario que proporciona diferentes datos orientados a la aplicacin.

Transacciones : datos introducidos para mantener archivos lgicos internos. Pantallas de entrada: Hay que aadir una unidad por cada funcin (aadir, cambiar, borrar) que mantiene un archivo lgico interno

Puntos de Funcin (7)


Salidas de usuario: Se cuenta cada salida que proporcione al usuario informacin orientada a la aplicacin. Informes

Pantallas
Mensajes de error/configuracin La transferencia de datos a otras aplicaciones Cada grfico distinto (tabla, diagrama de barras: se cuenta como 2 salidas)

Puntos de Funcin (8)


Consultas: Una entrada interactiva que produce la generacin de alguna respuesta del software inmediata en forma de salida interactiva. Bsqueda inmediata de datos

Tutoriales
Las Ayudas Las pantallas de logon que proporcionaran seguridad Las pantallas de men que proporcionan una seleccin de pantallas y entradas para la bsqueda de datos para la pantalla llamada.

Puntos de Funcin (9)


Nmero de archivos: se cuenta cada archivo maestro lgico (un grupo lgico de datos que puede ser una parte de una gran base de datos o un archivo independiente). Archivos maestros Mensajes Help actualizados por la aplicacin Mensajes de error actualizados por la aplicacin

Archivos lgicos internos mantenidos por ms de una aplicacin.

Puntos de Funcin (10)


Interfaces externas: Se cuentan todas las interfaces legibles por la mquina (archivos de datos de cinta o disco) que se utilizan para transmitir informacin a otro sistema. Bases de datos compartidas Archivos lgicos internos utilizados por otra aplicacin

Lista de parmetros compartidos

Lneas de Cdigo y Puntos de Funcin


La relacin entre las lneas de cdigo y los puntos de funcin depende del lenguaje de programacin que se utilice para implementar el software y de la calidad del diseo. LOC - Errores por LOC - $ por LOC - LOC por persona-mes PF - Errores por PF - $ por PF - PF por persona-mes

Lneas de Cdigo y Puntos de Funcin


Lenguaje de programacin Ensamblador C Cobol Fortran Pascal Ada Lenguajes OO ... LDC/PF (media) 320 128 105 105 90 70 30 ...

Ejemplo de Puntos de Funcin


La Especializacin en Ingeniera de Software requiere de un Sistema de Informacin que permita llevar el control escolar de sus alumnos: - Se necesita un mdulo de Actualizaciones (alumnos, materias y calificaciones) el cual permitir realizar altas, bajas y cambios para cada uno de ellos. - Otro mdulo es el de consultas (alumnos, materias y calificaciones). - El ltimo mdulo ser el de reportes: solo se emitirn los reportes de alumnos inscritos, catlogo de materias y alumnos con sus calificaciones.

Ejemplo de Puntos de Funcin


- Los archivos que se utilizarn son: alumnos, materias y cardex. No. entradas: 3 altas (alumnos, materias y calificaciones)

3 bajas (alumnos, materias y calificaciones)


3 cambios (alumnos, materias y calificaciones No. salidas: 3 reportes: alumnos inscritos, catlogo de materias y alumnos con sus calificaciones.

Ejemplo de Puntos de Funcin


No. consultas: 3 alumnos, materias y calificaciones 4 pantalla de men de seleccin (pantalla principal, actualizaciones, consultas y reportes) No. archivos: 3 alumnos, materias y cardex

No. interfaces externas: 0


Se considera que el sistema tiene una complejidad media en cada unos de los factores antes mencionados.

Puntos de funcin Complejidad media entradas 9 x 4=36

salidas
consultas

7 x 5=35
3 x 4=12

Archivos lgicos
Archivos de interfaz Total Multiplicador Total de PF ajustados

3 x 10=30
0 x 7=0

113 1.13 128 PF

1- 5 Requiere el sistema copias de seguridad y de recuperacin fiables ? 2- 2 Se requiere comunicacin de datos ? 3- 0 Existen funciones de procesamiento distribuido ? 4- 4 Es crtico el rendimiento? 5- 4 Se ejecutar el sistema en un entorno operativo existente y fuertemente utilizado? 6- 4 Requiere el sistema entrada de datos interactiva ? 7- 4 Requiere la entrada de datos interactiva que las transacciones de entrada se lleven a cabo sobre mltiples pantallas u operaciones? 8- 5 Se actualizan los archivos maestros de forma interactiva ? 9- 5 Son completas las entradas, las salidas, los archivos o las peticiones ?

10- 1 Es complejo el procesamiento interno ? 11- 3 Se ha diseado el cdigo para ser reutilizable ? 12- 3 Estn incluidas en el diseo la conversin y la instalacin? 13- 3 Se ha diseado el sistema para soportar mltiples instalaciones en diferentes organizaciones ? 14- 5 Se ha diseado la aplicacin para facilitar los cambios y para ser fcilmente utilizada por el usuario ?
TOTAL: 48 0 No influencia 1 Incidental 2 Moderado 3 Medio 4 significativo 5 Esencial

PF = cuenta-total x (0.65 + 0.01 (f1+f2++f14))

PF = 113 x (0.65 + 0.01 (48))

PF = 128

También podría gustarte