Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Estimacion Del Esfuerzo Basada en Casos de Usos PDF
Estimacion Del Esfuerzo Basada en Casos de Usos PDF
Mario Peralta
Centro de Ingeniera del Software e Ingeniera del Conocimiento (CAPIS)
Escuela de Postgrado. Instituto Tecnolgico de Buenos Aires
Av. Madero 399 (C1106ACD), Buenos Aires Argentina.
http://www.itba.edu.ar/capis/webcapis/planma.html
marioitba@yahoo.com.ar
Resumen: El presente artculo plantea algunas alternativas posibles para la estimacin del es-
fuerzo en proyectos basados en Casos de Uso, utilizndose el Anlisis de Puntos de Funcin y
COCOMO II, o una variante ms reciente denominada Anlisis de Puntos de Casos de Uso, la
cual es en cierta medida similar al Anlisis de Puntos de Funcin.
Palabras Clave: Estimacin del Esfuerzo. Casos de Uso. Puntos de Funcin. COCOMO II.
Anlisis de Puntos de Casos de Uso.
Escenario Principal
1. El usuario indica un tipo de documento y un rango
de fechas desde y hasta
2. El sistema busca los documentos dados de alta en En la misma se muestra una Entrada Externa simple
el rango de fechas indicado y que sean del tipo in- que modifica dos Archivos Lgicos Internos.
dicado por el usuario, y los presenta en una lista.
3. El usuario selecciona un documento de la lista Salidas Externas (EO, del ingls External Outputs):
4. El sistema muestra los datos internos del se definen como un proceso elemental con componen-
documento tes de entrada y de salida mediante el cual datos sim-
ples y datos derivados (esto es, datos que se calculan a
Escenario Alternativo partir de otros datos) cruzan la frontera del sistema
desde adentro hacia afuera. Adicionalmente, las Salidas
2. No existe ningn documento que cumpla con los Externas pueden actualizar un Archivo Lgico Interno.
valores indicados por el usuario Los datos crean reportes o archivos que se envan hacia
2.1 El sistema le informa al usuario que no encontr el Actor del Caso de Uso (que puede ser un humano u
ningn documento y le da la posibilidad de reingresar otro sistema). Estos reportes y archivos se crean desde
los parmetros de bsqueda. uno o ms Archivos Lgicos Internos o Archivos de
Interfaz Externos.
Una Transaccin est representada por uno o ms pa-
sos del flujo de eventos principal del Caso de Uso, Ejemplo: los casos de uso que documentan reportes o
pudiendo existir ms de una transaccin dentro del estadsticas que genera el sistema para uso de los acto-
mismo Caso de Uso. Los flujos de eventos alternativos res. La informacin que sale del sistema consiste fun-
dentro del Caso de Uso, ayudan a clarificar las transac- damentalmente de datos calculados a partir de Archi-
ciones. En el ejemplo del prrafo anterior se puede vos Lgicos Internos. Un ejemplo ms concreto podra
apreciar que existen dos transacciones diferenciadas, ser un caso de uso llamado Generar reporte de altas,
una vinculada a la bsqueda de documentos, y la otra donde se documenta la generacin de un reporte de la
vinculada a la visualizacin de un documento en cantidad de documentos que se dieron de alta en un pe-
particular. rodo de tiempo. El actor indica el rango de fechas y el
sistema genera el reporte. Este caso de uso se corres-
En relacin a los Puntos de Funcin, las transacciones pondera con una Salida Externa desde el punto de
se clasifican de la siguiente manera: vista de los Puntos de Funcin.
Entradas Externas (EI, del ingls External Inputs): Un ejemplo grfico de Salida Externa se puede ver en
se definen como un proceso elemental mediante el cual la siguiente figura:
ciertos datos cruzan la frontera del sistema desde afue-
ra hacia adentro. El Actor del Caso de Uso provee
datos al sistema, los cuales pueden tratarse de informa-
cin para agregar, modificar o eliminar de un Archivo
2
clasifican de la siguiente manera:
3
En todos los casos de uso est implcita la presencia de
un Archivo Lgico Interno, donde se almacena la in-
formacin de las rdenes de compra.
4
mejor panorama para la determinacin de la compleji- las caractersticas deseadas del sistema (comunicacin
dad de los Archivos Lgicos Internos o de Interfaz de datos, rendimiento, facilidades de instalacin, de
Externos. operacin, frecuencia de transacciones, etc.). Los deta-
lles para el clculo del Factor de ajuste se muestran en
Para esclarecer stos conceptos, se contina con el el Apndice B.
ejemplo anterior, tomando el caso de uso 'Encontrar
orden'. Continuando con el ejemplo del punto 2.2, calculamos
el Factor de Ajuste y los Puntos de Funcin Ajustados.
La especificacin detallada del mismo podra ser la
siguiente: Clculo del Factor de Ajuste:
5
Funcin sin ajustar. ste mtodo es el preferido en la Finalmente, el esfuerzo nominal resulta:
actualidad para la estimacin del esfuerzo cuando no se
tiene informacin histrica a la cual recurrir.
PMnominal = A x (Size)B = 2.94 x (1.378)1.05 = 4.11
COCOMO II consiste bsicamente en la aplicacin de Meses-hombre
ecuaciones matemticas sobre los Puntos de Funcin
sin ajustar o la cantidad de lneas de cdigo (SLOC, Para completar la estimacin, hay que ajustar el esfuer-
Source Lines Of Code) estimados para un proyecto. zo nominal de acuerdo a las caractersticas del proyecto
Estas ecuaciones se encuentran ponderadas por ciertos segn se indica en el punto c) del Apndice C. El ajuste
factores de costo (cost drivers) que influyen en el es- se efectua aplicando la ecuacin
fuerzo requerido para el desarrollo del software. El
Apndice C presenta una breve introduccin al mtodo PMajustado = PMnominal x (MEi)
y sus conceptos principales.
A manera de ejemplo, se aplica el mtodo COCOMO donde los MEi (multiplicadores de esfuerzo) varan en
II a la estimacin inicial obtenida en el apartado 2.2.
Como resultado de la estimacin se tena: funcin del modelo de estimacin seleccionado (Dise-
o Preliminar o Post arquitectura).
UFP (Puntos de Funcin sin ajustar) = 26 En nuestro caso vamos a aplicar el modelo de Diseo
preliminar. Entonces, cuantificamos los multiplicado-
Para aplicar la ecuacin de clculo del esfuerzo nomi- res de esfuerzo para ste modelo:
nal (ecuacin 1 del Apndice C), necesitamos por un
lado convertir los puntos de funcin sin ajustar a Multiplicador Descripcin Ponderacin Valor
PERS Se tienen analistas y progra- Alto 0.83
KSLOC (Source Lines Of Code, en miles), y por otro madores con alta eficiencia y
calcular el Factor escalar B de acuerdo a las caracters- capacidad de trabajo en equi-
ticas del proyecto. Luego: po. Dedicacin full-time.
RCPX Las exigencias de confiabili- Nominal 1
dad, documentacin y volu-
PMnominal = A x (Size)B men de datos son moderadas,
y la complejidad del producto
es baja.
A: tomamos el valor por defecto del modelo, ajustado RUSE No se pretende reutilizar nada Bajo 0.95
en 2.94 PDIF No existen restricciones en Bajo 0.87
cuando al tiempo de CPU o al
consumo de memoria, la
Size: se calcula como el producto de los puntos de plataforma es muy estable.
funcin sin ajustar por un factor de conversin que PREX Tanto los analistas como los Muy Bajo 1.33
depende del lenguaje a utilizar en el desarrollo del programadores tienen aproxi-
madamente 6 meses de expe-
sistema. Supongamos que utilizamos C++ (factor de riencia en la aplicacin, la
conversin = 53 SLOC/UFP). Entonces tendremos: plataforma, el lenguaje y las
herramientas utilizadas.
Size = 53 x 26 = 1378 SLOC SCED Se requiere terminar el proyec- Nominal 1
to en el tiempo estimado.
FCIL Se tienen herramientas CASE Bajo 1.10
B: se calcula ponderando las variables escalares de simples e infraestructura de
acuerdo al punto b) del Apndice C, mediante la ecua- comunicaciones bsica.
cin Total 1.004
6
todo de estimacin del tiempo de desarrollo de un Tipo de Caso de Descripcin Factor de
proyecto mediante la asignacin de "pesos" a un cierto Uso Peso
Simple El Caso de Uso contiene de 1 a 3
nmero de factores que lo afectan, para finalmente, transacciones 5
contabilizar el tiempo total estimado para el proyecto a Medio El Caso de Uso contiene de 4 a 7
partir de esos factores. transacciones 10
Complejo El Caso de Uso contiene ms de 8
transacciones 15
A continuacin, se detallan los pasos a seguir para la
aplicacin de ste mtodo.
Ejemplo
donde,
UUCP: Puntos de Casos de Uso sin ajustar
UAW: Factor de Peso de los Actores sin ajustar
UUCW: Factor de Peso de los Casos de Uso sin
ajustar
7
ajustar, se debe ajustar ste valor mediante la siguiente Factor Descripcin Peso
ecuacin: E4 Capacidad del analista lder 0.5
E5 Motivacin 1
UCP = UUCP x TCF x EF E6 Estabilidad de los requerimientos 2
E7 Personal part-time -1
donde, E8 Dificultad del lenguaje de progra-
UCP: Puntos de Casos de Uso ajustados macin -1
UUCP: Puntos de Casos de Uso sin ajustar
TCF: Factor de complejidad tcnica - Para los factores E1 al E4, un valor asignado de 0
EF: Factor de ambiente significa sin experiencia, 3 experiencia media y 5 am-
plia experiencia (experto).
- Para el factor E5, 0 significa sin motivacin para el
3.2.1 Factor de complejidad tcnica (TCF) proyecto, 3 motivacin media y 5 alta motivacin.
- Para el factor E6, 0 significa requerimientos extrema-
Este coeficiente se calcula mediante la cuantificacin damente inestables, 3 estabilidad media y 5 requeri-
de un conjunto de factores que determinan la compleji- mientos estables sin posibilidad de cambios.
dad tcnica del sistema. Cada uno de los factores se - Para el factor E7, 0 significa que no hay personal
cuantifica con un valor de 0 a 5, donde 0 significa un part-time (es decir todos son full-time), 3 significa
aporte irrelevante y 5 un aporte muy importante. En la mitad y mitad, y 5 significa que todo el personal es
siguiente tabla se muestra el significado y el peso de part-time (nadie es full-time).
cada uno de stos factores: - Para el factor E8, 0 significa que el lenguaje de pro-
gramacin es fcil de usar, 3 medio y 5 que el lenguaje
Factor Descripcin Peso es extremadamente difcil.
T1 Sistema distribudo 2
T2 Objetivos de performance o tiempo de respuesta 1
T3 Eficiencia del usuario final 1 El Factor de ambiente se calcula mediante la siguiente
T4 Procesamiento interno complejo 1 ecuacin:
T5 El cdigo debe ser reutilizable 1
T6 Facilidad de instalacin 0.5
T7 Facilidad de uso 0.5
EF =1.4 - 0.03 x (Pesoi x Valor asignadoi)
T8 Portabilidad 2 Ejemplo
T9 Facilidad de cambio 1
T10 Concurrencia 1
T11 Incluye objetivos especiales de seguridad 1 Continuando con el ejemplo del apartado 3.1, se calcu-
T12 Provee acceso directo a terceras partes 1 lan los Puntos de Casos de Uso ajustados.
T13 Se requieren facilidades especiales de entrenamiento
a usuarios 1 Factor de complejidad tcnica (TCF)
8
El Factor de complejidad tcnica resulta:
donde,
TCF = 0.6 + 0.01 x 17 = 0.77 E: esfuerzo estimado en horas-hombre
UCP: Puntos de Casos de Uso ajustados
Factor de ambiente (EF) CF: factor de conversin
Factor Descripcin Peso Valor Comentario Se debe tener en cuenta que ste mtodo proporciona
asignado una estimacin del esfuerzo en horas-hombre contem-
E1 Familiaridad con el modelo El grupo est
de proyecto utilizado bastante familiari- plando slo el desarrollo de la funcionalidad especifi-
1.5 4 zado con el modelo cada en los casos de uso.
E2 Experiencia en la aplica- La mayora del
cin grupo ha trabajado Finalmente, para una estimacin ms completa de la
mucho tiempo en
0.5 4 sta aplicacin duracin total del proyecto, hay que agregar a la esti-
E3 Experiencia en orientacin La mayora del macin del esfuerzo obtenida por los Puntos de Casos
a objetos grupo programa en de Uso, las estimaciones de esfuerzo de las dems
1 4 objetos actividades relacionadas con el desarrollo de software.
E4 Capacidad del analista lder Se contrat a un
0.5 5 especialista
Para ello se puede tener en cuenta el siguiente criterio,
E5 Motivacin El grupo est que estadsticamente se considera aceptable. El criterio
1 5 altamente motivado plantea la distribucin del esfuerzo entre las diferentes
E6 Estabilidad de los requeri- Se esperan cambios actividades de un proyecto, segn la siguiente aproxi-
mientos 2 2
E7 Personal part-time Todo el grupo es
macin:
-1 0 full-time
E8 Dificultad del lenguaje de Se usar lenguaje Actividad Porcentaje
programacin -1 3 C++ Anlisis 10.00%
Diseo 20.00%
Programacin 40.00%
El Factor de ambiente resulta: Pruebas 15.00%
Sobrecarga (otras actividades) 15.00%
EF = 1.4 - 0.03 x 19.5 = 0.82
Obviamente, stos valores no son absolutos sino que
Finalmente, los Puntos de Casos de Uso ajustados pueden variar de acuerdo a las caractersticas de la
resultan: organizacin y del proyecto.
UCP = 23 * 0.77 * 0.82 = 14.52 Con ste criterio, y tomando como entrada la estima-
cin de tiempo calculada a partir de los Puntos de Ca-
sos de Uso, se pueden calcular las dems estimaciones
3.3. De los Puntos de Casos de Uso a la estimacin para obtener la duracin total del proyecto.
del esfuerzo
Ejemplo
Karner originalmente sugiri que cada Punto de Casos
de Uso requiere 20 horas-hombre. Posteriormente, Aplicando stos criterios al ejemplo que se vena des-
surgieron otros refinamientos que proponen una granu- arrollando en ste apartado, se obtiene el esfuerzo
laridad algo ms fina, segn el siguiente criterio: necesario para el desarrollo de los casos de uso como:
9
4. Conclusiones Transacciones
a) Clasificacin de las Entradas Externas
Se ha aplicado los mtodos presentados a lo largo del Para las Entradas Externas, la clasificacin est dada
artculo para estimar el esfuerzo en algunos proyectos por la siguiente tabla:
de su mbito laboral, obteniendo resultados satisfacto-
rios en su mayora, en cuanto a la precisin de las esti- Archivos Elementos de datos
referenciados 1-4 5-15 >15
maciones con respecto a la cantidad de informacin 0-1 Baja Baja Media
disponible. 2 Baja Media Alta
3 o ms Media Alta Alta
En la experiencia del mismo, se pueden destacar las
siguientes apreciaciones:
En la misma, "Archivos referenciados" representa el
- La estimacin a partir de Puntos de Funcin ajustados nmero de Archivos Lgicos Internos mantenidos por
y Coeficientes de Conversin es difcil de realizar si no la Entrada Externa, y "Elementos de datos" representa
se cuenta con una base histrica de proyectos que pro- la cantidad de elementos que componen la Entrada
vea los coeficientes de conversin. Los valores estads- Externa.
ticos son difciles de encontrar.
b) Clasificacin de las Salidas Externas y Consultas
- La estimacin por COCOMO II (con Puntos de Fun- Externas
cin sin ajustar como entrada), resulta muy til para Para las Salidas Externas y las Consultas Externas, la
estimar un proyecto en forma global, cuando se tiene clasificacin est dada por la siguiente tabla:
un conjunto de Casos de Uso bastante amplio (del
orden de 50) y con escaso nivel de detalle. Utilizando Archivos Elementos de datos
la herramienta del SEI (Software Engineering Institu- referenciados 1-5 6-19 >19
0-1 Baja Baja Media
te), se puede refinar la estimacin a medida que se va
2-3 Baja Media Alta
adquiriendo ms informacin sobre el proyecto. Cabe >3 Media Alta Alta
aclarar la herramienta mencionada no est calibrada
para proyectos menores a 2000 lneas de cdigo, con lo
cual no es aplicable a proyectos muy pequeos. En la misma, "Archivos referenciados" representa el
nmero de Archivos Lgicos Internos o Archivos de
- La estimacin por Puntos de Caso de Uso resulta muy Interfaz Externos vinculados con la Salida Externa o la
efectiva para estimar el esfuerzo requerido en el desa- Consulta Externa, y "Elementos de datos" representa la
rrollo de los primeros Casos de Uso de un sistema, si se cantidad combinada de elementos de datos de entrada y
sigue una aproximacin iterativa como el Proceso de salida que componen la Salida Externa o Consulta
Unificado de Rational. En ste tipo de aproximacin, Externa.
los primeros Casos de Uso a desarrollar son los que
ejercitan la mayor parte de la arquitectura del software c) Asignacin de valores numricos
y los que a su vez ayudan a mitigar los riesgos ms Los valores numricos que se asignan a cada compleji-
significativos (iteraciones de Elaboracin en el Proceso dad (Baja, Media o Alta), se muestran en la siguiente
Unificado). Fuera de ste contexto, el mtodo tiende a tabla, para cada uno de los tipos de transaccin (Entra-
sobredimensionar el esfuerzo requerido por lo cual el da Externa, Salida Externa, Consulta Externa):
autor no lo recomienda para estimar el esfuerzo global
de un proyecto. Clasificacin Valores
Salidas Exter- Consultas Entradas
Si bien ninguno de stos mtodos es la panacea, todos nas Externas Externas
ellos aportan a la formacin del Ingeniero de Software, Baja 4 3 3
Media 5 4 4
y la aplicacin sistemtica de los mismos permite obte- Alta 7 6 6
ner mediciones y puntos de comparacin que ayudan a
ampliar la experiencia profesional en la estimacin de Archivos
proyectos de software. a) Clasificacin de los Archivos Lgicos Internos y
Archivos de Interfaz Externos
Para los Archivos Lgicos Externos y los Archivos de
Apndice A: Clasificacin de Transaccio- Interfaz Externos, la clasificacin est dada por la
nes y Archivos en Anlisis de Puntos de siguiente tabla:
Funcin. Tipos de registro Elementos de datos
1-19 20-50 >50
La complejidad de las Transacciones y los Archivos en 1 Baja Baja Media
el Anlisis de Puntos de Funcin, se puede clasificar y 2-5 Baja Media Alta
>5 Media Alta Alta
cuantificar de acuerdo con los criterios que se muestran
a continuacin:
donde "Tipos de registro" representa un subgrupo de
elementos de datos reconocibles por el usuario, y
10
"Elementos de datos" representa la cantidad de elemen-
tos de datos bsicos (campos nicos) que componen el La siguiente tabla muestra las caractersticas a tener en
Archivo. cuenta:
FP = UFP x AF
Apndice B: Clculo del Factor de Ajuste
en Anlisis de Puntos de Funcin. Sntesis del Apndice:
El Anlisis de Puntos de Funcin plantea el ajuste de El Anlisis de Puntos de Funcin plantea que luego de
los Puntos de Funcin calculados a partir de las Tran- la contabilizacin de los Puntos de Funcin sin ajustar,
sacciones y Archivos, mediante la evaluacin de 14 se puede realizar un ajuste sobre el valor obtenido.
caractersticas generales del sistema. A cada una de Este ajuste tiene en cuenta un conjunto de caractersti-
estas caractersticas se le asigna un factor de peso (un cas del sistema no contempladas en el conteo de las
valor entre 0 y 5) que indica la importancia de la carac- Transacciones y los Archivos.
terstica para el sistema bajo anlisis. El significado del Las caractersticas (que forman un total de 14) se pon-
valor asignado a cada caracterstica es el siguiente: deran con un valor entre 0 y 5, y permiten obtener un
0 No presente o sin influencia factor de ajuste que se aplica a los Puntos de Funcin
1 Influencia incidental sin ajustar para obtener los Puntos de Funcin ajusta-
2 Influencia moderada dos.
3 Influencia media
4 Influencia significativa
5 Fuerte influencia
11
proyecto presenta en lo que a su complejidad y entorno
Apndice C: Introduccin al modelo de de desarrollo se refiere. Las Variables escalares de
COCOMO II son las siguientes:
estimacin COCOMO II.
- PREC, variable de precedencia u orden secuencial del
a) Descripcin general desarrollo
El mtodo de estimacin COCOMO II est basado dos - FLEX, variable de flexibilidad del desarrollo
modelos: uno aplicable al comienzo de los proyectos - RSEL, indica la fortaleza de la arquitectura y mtodos
(Diseo preliminar, en ingls Early Design) y otro de estimacin y reduccin de riesgos
aplicable luego del establecimiento de la arquitectura - TEAM, esta variable refleja la cohesin y madurez
del sistema (Post arquitectura, en ingls Post Architec- del equipo de trabajo
ture). - PMAT, relaciona el proceso de madurez del software
El modelo de Diseo preliminar (Early Design) con- Cada una de estas variables se cuantifica con un valor
templa la exploracin de las arquitecturas alternativas desde Muy Bajo hasta Extra Alto.
del sistema y los conceptos de operacin. En esta etapa
no se sabe lo suficiente del proyecto como para hacer La siguiente tabla muestra los criterios y niveles de
una estimacin fina. Ante sta situacin, el modelo cuantificacin para cada una de stas variables:
propone la utilizacin de Puntos de Funcin como
medida de tamao y un conjunto de 7 factores (cost Factor Muy Bajo Nominal Alto Muy Extra
drivers) que afectan al esfuerzo del proyecto. Estos 7 Escalar Bajo Alto Alto
factores son agrupaciones de los factores que se utili- (W )
i
zan en la otra variante del modelo (Post Arquitectura). PREC Completa Completa Algo Familiar Muy Absolu-
Familiar tamente
El modelo Post arquitectura (Post Architecture) Familiar
contempla el desarrollo y el mantenimiento de un pro- FLEX Riguroso Ocasio- Algo de Gene- Algo de Objetivos
nal relaja- ralmente confor- generales
ducto software. Esta estrategia es ms precisa si se ha cin conforme midad
desarrollado una arquitectura del sistema, la cual haya RESL Poco Algo A menu- Gene- Mayor- Total-
sido validada y establecida como base para la evolu- (20%) (40%) do (60%) ralmente mente mente
cin del producto. Ante sta situacin, el modelo pro- (75%) (90%) (100%)
pone la utilizacin de Lneas de cdigo fuente y/o TEAM Interac- Algo de Bsicame Coopera- Altamen- Interac-
cin muy dificultad nte hay tiva te coope- cin total
Puntos de Funcin como medidores del tamao, modi- difcil de inter- interac- rativa
ficadores para indicar el grado de reutilizacin y des- accin cin
carte del software, un conjunto de 17 estimadores de coopera-
costo, y un conjunto de 5 factores que afectan de mane- tiva
ra exponencial en el esfuerzo del proyecto. PMAT Promedio Promedio Promedio Promedio Promedio Promedio
de res- de res- de res- de res- de res- de res-
En ambos modelos, la estimacin del esfuerzo se reali- puestas puestas puestas puestas puestas puestas
za tomando como base la siguiente ecuacin: afirmati- afirmati- afirmati- afirmati- afirmati- afirmati-
vas en el vas en el vas en el vas en el vas en el vas en el
cuestio- cuestio- cuestio- cuestio- cuestio- cuestio-
PMnominal = A x (Size)B (1) nario de nario de nario de nario de nario de nario de
CMM CMM CMM CMM CMM CMM
12
c) Ajuste del esfuerzo nominal personal y proyecto. A continuacin se muestran los
El esfuerzo calculado en la ecuacin (1) es un valor multiplicadores, con una breve descripcin de su signi-
nominal y debe ser ajustado en base a las caractersti- ficado.
cas del proyecto. COCOMO II obtiene los datos nece-
sarios para el ajuste del esfuerzo nominal considerando Multiplicadores que afectan al producto:
un conjunto de Multiplicadores de Esfuerzo (ME),
los cuales representan las caractersticas del proyecto y RELY: Confiabilidad requerida del software. Mide el
expresan su impacto en el desarrollo total del producto impacto que tiene una falla en el software.
de software.
Muy Bajo Bajo Nominal Alto
Muy
Los Multiplicadores de esfuerzo se cuantifican con una Alto
RELY Inconvenientes Bajo, y con Moderado, Altas Riesgo
escala que va desde Extra Bajo a Extra Alto, y cada imperceptibles perdidas con perdidas prdidas para la
multiplicador tiene un valor asociado a cada nivel de la fcilmente de fcil financieras vida
escala. recuperables recuperacin humana
Cada uno de los modelos de estimacin (Diseo preli-
minar y Post arquitectura) tiene un conjunto de Multi- DATA: Tamao de la base de datos. Se mide como el
plicadores de esfuerzo, los cuales son acordes con la tamao de la base en bytes sobre el tamao del pro-
informacin que se maneja en cada uno de estos mode- grama en LOC. Se utiliza para dimensionar el esfuerzo
los. requerido para el control y la generacin de datos de
prueba.
En ambos modelos, el esfuerzo ajustado se calcula
mediante la siguiente ecuacin: Muy Bajo Nominal Alto Muy Alto
Bajo
DATA D/P < 10 <= D/P < 100 <= D/P < D/P >=
PMajustado = PMnominal x (MEi) (3) 10 100 1000 1000
Operaciones de Control Operaciones de Clculo Dependencia de Dispo- Manejo de Datos Interfaces de Usuarios
sitivos
Muy Bajo Programacin lineal, con muy Evaluaciones de expresiones Escrituras y grabaciones Manejo de vectores simples en Formularios de ingreso sencillos.
pocas estructuras no anidadas: simples. con formatos simples. memoria. Manejo de consultas Generacin de reportes simples.
DO, IF, CASE. Composicin y accesos a la base de datos en
de mdulos simples a travs de forma sencilla.
procedimientos y funciones
Bajo Estructuras bien anidadas Evaluaciones moderadas de Sin particularidades o Manejo de datos sin archivos Uso de GUI (grafic user interface,
clculos. Ej. Raz cuadrada, dependencias del intermedios, sin edicin. interfaces graficas de usuario)
exponentes procesador de E/S. Se COTS-DB, consultas y actua- simples
manejan a travs de lizaciones moderadas
GET y PUT de conjun-
tos de datos
Nominal La mayora de las estructuras Uso de rutinas bsicas y Operaciones de E/S que Ingreso con formatos mltiples Uso simple de un conjunto de
son anidadas. Con controles de estndar. Manejo bsico de permiten seleccionar el de datos, pero conservando un parmetros de definicin de interfaz
intercambio simple de datos vectores y matrices dispositivo, haciendo un nico formato de salida. del usuario.
entre mdulos a travs de control del estado de los Cambios estructurales simples
parmetros, tablas de decisio- mismos y procesando con ediciones. Uso de consul-
nes, soporte para procesamien- errores tas y COTS-DB complejos
to distribuido de baja comple-
jidad
Alto Total uso de estructuras Anlisis numrico sencillo: Operaciones de E/S a Activacin de disparadores a Uso de parmetros de definicin de
anidadas. Manejo de pilas y interpolacin, ecuaciones niveles fsicos usando travs de datos de la DB. interfaces. Uso simple de caracters-
colas. Desarrollos para un diferenciales. Uso de redondeo
direccionamiento para la Reestructuraciones complejas ticas multimediales (entrada a travs
nico procesador y trunc. lectura y bsqueda. de datos. de la voz)
Overlap optimizado para
stas operaciones
Muy Alto Cdigo recursivo. Manejo de Clculos numricos difciles Rutinas para el diagns- Uso complejo de disparadores. Uso moderado de 2 y 3 dimensiones.
interrupciones, y sincroniza- pero estructurados: ecuaciones tico de interrupciones. Optimizacin de consultas. Habilidades grficas complejas y
cin de tareas complejas. matriciales, diferenciales Manejo de la lnea de Coordinacin de bases de multimediales.
Procesamiento distribuido comunicacin entre datos distribuidas
heterogneo. Un nico proce- dispositivos. Uso
sador controlado en tiempo intensivo del manejo de
real performance
Extra alto Operaciones de control mlti- Anlisis numrico complejo y Codificacin de disposi- Uso de lenguajes de manejo de Uso complejo de multimedia y
ples con cambios dinmicos de no estructurado. Clculos tivos asincrnica, con datos, y tcnicas de objetos as realidad virtual
prioridades. Control a nivel complejos en paralelo control crtico de como relacionales
microcdigo. Control en performance y procesos.
tiempo real del hardware
distribuido.
13
RUSE: Reusabilidad del cdigo. Mide el costo adicio- Muy Bajo Nominal Alto Muy Alto
nal requerido para disear componentes ms genricos, Bajo
PVOL Cambios Mayores : 6 Mayores : 2 Mayores : 2
mejor documentados y ms confiables, de manera de mayores cada meses, meses, semanas,
reutilizarlos en otros proyectos. 12 meses, y Menores : 2 Menores : 1 Menores : 2
cambios meno- semanas semana das
Muy Bajo Nominal Alto Muy Alto Extra Alto res cada mes
Bajo
RUSE Nada Por Por Por lnea de Por mltiples Los valores que asume cada uno de stos multiplicado-
Proyecto Progra- Producto lneas de produc-
ma tos res en cada nivel se pueden ver en la siguiente figura:
Muy Bajo Nominal Alto Muy Extra PEXP: Experiencia en la plataforma. Refleja la expe-
Bajo Alto Alto
riencia del grupo de desarrollo (principalmente pro-
TIME <= 50% de uso de los 70% 85% 95%
recursos disponibles gramadores) en el uso de herramientas de software y
hardware utilizado como plataforma.
STOR: Restricciones de almacenamiento principal.
Muy Bajo Bajo Nominal Alto Muy Alto Extra Alto
Similar al multiplicador anterior, pero relacionadas con
PEXP 2 meses 6 meses 1 ao 3 aos 6 aos
el espacio principal de almacenamiento.
LTEX: Experiencia en el lenguaje y herramientas de
Muy Bajo Nominal Alto Muy Extra
desarrollo. Refleja la experiencia del grupo de desarro-
Bajo Alto Alto llo en el lenguaje de programacin y las herramientas
STOR <= 50% de uso del espacio 70% 85% 95% de desarrollo utilizadas.
disponible
Muy Bajo Bajo Nominal Alto Muy Alto Extra Alto
PVOL: Volatilidad de la plataforma. Expresa la veloci- LTEX 2 meses 6 meses 1 ao 3 aos 6 aos
dad de cambio del hardware y el software usados como
plataforma.
14
de video
conferencias
PCON: Continuidad del personal. Expresa el porcenta- ocasionales.
Muy Bajo Nominal Alto Muy Extra SCED: Requerimientos de calendario de desarrollo.
Bajo Alto Alto Refleja las restricciones impuestas al grupo de desarro-
PCON 48% al 24% al 12% al 6% al 3% al llo sobre la agenda nominal estimada del proyecto.
ao ao ao ao ao
Muy Bajo Bajo Nominal Alto Muy Alto PERS: Capacidad del personal. Est dado por la suma
TOOL Edicin y CASE simple y Herramientas Potentes Herramientas
codificacin de poca bsicas para herramientas a potentes y o la combinacin porcentual de los multiplicadores
con debug integracin todo el ciclo de ser usadas en proactivas, muy ACAP, PCAP y PCON.
vida con todo el ciclo de bien integradas
moderada vida con con el proceso,
integracin integracin los mtodos y la
moderada reusabilidad
Extra Muy Bajo Nominal Alto Muy Extra
Bajo Bajo Alto Alto
Suma de 3,4 5,6 7,8 9 10,11 12,13 14,15
SITE: Desarrollo en mltiples ubicaciones. Involucra ACAP, PCAP,
la ubicacin fsica y el soporte de comunicaciones. PCON
Combinacin 20% 39% 45% 55% 65% 75% 85%
Muy Bajo Nominal Alto Muy Alto Extra de ACAP y
Bajo Alto PCAP
SITE Algo de Fax y Red de Comunica- Comunica- Multimedia Rotacin anual 45% 30% 20% 12% 9% 5% 4%
telfono y telfonos correo ciones ciones del personal
mail individuales electrnico electrnicas electrnicas
interno que cubren que cubren
todas las todas las
ubicaciones ubicaciones
RCPX: Complejidad del producto. Est dado por la
con la combinacin de los multiplicadores RELY, DATA,
posibilidad
CPLX y DOCU.
Extra Bajo Muy Bajo Bajo Nominal Alto Muy Alto Extra Alto
Suma de RELY, 5,6 7,8 9-11 12 13-15 16-18 19-21
DATA, CPLX y
DOCU
nfasis en la Muy poca Poca Algo Bsica Fuerte Muy fuerte Extrema
documentacin
Complejidad del Muy simple Simple Algo Moderada Compleja Muy comple- Extremadamente compleja
Producto ja
Tamao de la base Pequea Pequea Pequea Moderada Grande Muy grande Muy grande
de datos
15
RUSE: Reusabilidad. Est dado por el mismo multiplicador RUSE del modelo Post arquite
ctura.
PDIF: Dificultad de la plataforma. Est dado por la combinacin de los multiplicadores TIME, STOR y PVOL.
PREX: Experiencia del personal. Est dado por la combinacin de los multiplicadores AEXP, PEXP y LTEX
Extra Bajo Muy Bajo Bajo Nominal Alto Muy Alto Extra Alto
Suma AEXP, PEXP y 3,4 5,6 7,8 9 10,11 12,13 14
LTEX
Experiencia en la <= 3 meses 5 meses 9 meses 1 ao 2 aos 4 aos 6 aos
aplicacin, plataforma,
lenguaje y herramientas
utilizadas
SCED: Calendario. Est dado por el mismo multiplicador SCED del modelo Post arquitectura.
FCIL: Facilidades. Est dado por la combinacin de los multiplicadores TOOL y SITE.
Extra Bajo Muy Bajo Bajo Nominal Alto Muy Alto Extra Alto
Suma de TOOL y 2 3 4,5 6 7,8 9,10 11
SITE
Soporte de herra- Mnimo Algo CASE Simples Herramientas Buenas, mode- Muy buenas, Muy buenas totalmente
mientas de software bsicas segn el rada-mente moderadamente integradas
ciclo de vida integradas integradas
Mltiples lugares de Soporte dbil Algo de soporte Algo de soporte Soporte bsico Fuerte soporte Fuerte soporte Muy fuerte soporte para el
desarrollo para el para desarrollos para desarrollos para desarrollos para el desarro- de desarrollos desarrollo de procesos
desarrollo complejos moderados complejos llo de procesos de procesos complejos
complejo moderados simples
Los valores que asume cada uno de stos multiplicado- Longstreet Consulting, http://www.softwaremetrics.com/Articles/
usecases.htm
res en cada nivel se pueden ver en la siguiente figura: - Estimacin de esfuerzo, Unidad 3 del Mster en Ingeniera del
Software, ITBA.
- COCOMO II Model Manual, disponible en el CSE Center for
Software Engineering, http://sunset.usc.edu/research/COCOMOII/
cocomo_main.html#downloads
- USC COCOMO II User's Manual, disponible en el CSE Center for
Software Engineering, http://sunset.usc.edu/research/COCOMOII/
cocomo_main.html#downloads
- Artculo Modelo COCOMO II, Magistrando Carlos G. Rivero
Bianchi, publicado en julio del 2001 en la revista del Instituto Tecno-
lgico de Buenos Aires (ITBA).
- Function Point Traninig Manual, disponible en el site de Longstreet
Consulting, http://www.softwaremetrics.com/freemanual.htm
- Rational Unified Process, documentacin online disponible con los
productos de Rational.
- Time estimation in software development projects, Thomas
Fihlman, disponible en http://www.callista.se/ITPartner/timeart.htm
- Test Effort Estimation Using Use Case Points, Suresh Nageswaran,
Quality Week 2001, San Francisco, California, USA, June 2001,
disponible en http://www.cts-corp.com/cogcommunity/
presentations/Test%20Effort%20Estimation%20Using%20Use%20C
ase%20Points.pdf
Referencias bibliogrficas - Understanding RET's, artculo disponible en el site de Lognstreet
Consulting, http://www.softwaremetrics.com/ Articles/ret.htm
- Mtrica Versin 3, Ministerio de Administraciones Pbilcas Espa-
ol, http://www.map.es/csi/metrica3/index.html
- Use Cases and Function Points, artculo disponible en el site de
16