Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Por
Marzo 2007
ii
Dedicatoria
iii
Tabla de contenido
iv
3.2 Elaboración de la encuesta .................................................................................. 22
3.2.1 Objetivo de la encuesta ............................................................................ 22
3.2.2 Selección de las preguntas de la encuesta ................................................ 22
3.2.3 Ambito de la aplicación de la encuesta.................................................... 23
3.3 Presentación y analisis de los resultados obtenidos............................................ 23
3.4 Conclusiones ....................................................................................................... 36
v
Índice de Figuras
Gráfico 1. Número de años que tienen trabajando las empresas encuestadas ....................... 24
Gráfico 2. Número de empleados de las empresas encuestadas ............................................ 25
Gráfico 3. Distribución porcentual de horas trabajadas de lunes a viernes ........................... 27
Gráfico 4. Distribución porcentual de horas trabajadas los sábados y domingos .................. 27
Gráfico 5. Formas de calcular costos de las empresas encuestadas ....................................... 28
Gráfico 6. Distribución porcentual del uso de técnicas utilizadas ......................................... 29
Gráfico 7. Distribución porcentual de los costos considerados ............................................. 30
Gráfico 8. Ajuste a la realidad de las estimaciones hechas por las empresas encuestadas.... 32
Gráfico 9. Almacenamiento de estadísticas de los proyectos realizados ............................... 33
Gráfico 10. Uso de herramientas de planificación de proyectos .......................................... 34
Gráfico 11. Persona encargada de la planificación de los proyectos ..................................... 35
Gráfico 12. Valores de esfuerzo para el proyecto 1 ............................................................... 60
Gráfico 13. Valores de esfuerzo para el proyecto 2 ............................................................... 61
Gráfico 14. Valores de esfuerzo para el proyecto 3 ............................................................... 62
vi
Índice de Tablas
vii
Agradecimientos
En este momento de victoria en mi vida, deseo celebrar este triunfo con todas
aquellas personas que de una u otra manera me brindaron su apoyo para así lograr esta meta
alcanzada y de igual manera ofrecer mi agradecimiento por la valiosa ayuda prestada.
A mi Familia, que siempre han estado presentes y me han o frecido su apoyo incondicional.
A la Universidad de los Andes, por ser la casa de estudios que me brindo sus conocimientos
durante el trayecto de mi carrera que me permitieron la realización de este trabajo.
A mi tutor Prof. Vicente Ramírez y co-tutor Prof. Judith Barrios, quienes han sido un apoyo
en el fortalecimientote los conocimientos necesarios para la realización de este proyecto.
A todos aquellos amigos, compañeros y panitas que vivieron junto a mi muchos momentos,
tanto de alegrías como de tristezas, brindándome apoyo y transmitiéndome confianza para
seguir adelante.
Y a todas aquellas personas que de una u otra manera hicieron posible la realización de este
trabajo.
viii
Capítulo 1
Introducción
1
Capítulo 1. Introducción 2
Para realizar estimaciones de esfuerzo hay varias opciones posibles. Aquí se exponen las
principales:
1.2 El Problema
Existe en la actualidad modelos propuestos por varios autores para estimar esfuerzo
en el desarrollo de software. En la creciente industria del software en nuestro país al igual
que ha pasado en otras latitudes se hace necesario la estimación de esfuerzo en el desarrollo
de software. En esta investigación se busca observar la pertinencia y relevancia de algunos
modelos de estimación de esfuerzo que han funcionado en otros países obteniéndose
Capítulo 1. Introducción 3
• Elaborar una encuesta para recolectar información acerca del uso de técnicas de
estimación de esfuerzo por parte de las empresas productoras de software.
• Comparar los resultados del esfuerzo estimado por los modelos seleccionados con el
esfuerzo real obtenido al finalizar cada uno de los proyectos seleccionados.
Capítulo 1. Introducción 4
1.4 Metodología
El capítulo 2 presenta una descripción detallada de los modelos y herramientas usadas en esta
investigación para medir el esfuerzo de los proyectos de software seleccionados.
Capítulo 1. Introducción 5
2.1 Introducción
Desde hace más de 30 años hasta nuestros días se han publicado una gran cantidad de
técnicas para realizar la estimación de esfuerzo. La mayoría de estas técnicas están basadas
en modelos propuestos obtenidos a través de datos históricos, es decir, proyectos ya
realizados. Muchos autores han planteado distintos tipos de clasificación en las que se
puedan englobar todas las técnicas existentes. Una de las más aceptadas es la propuesta por
Boehm [Boehm, 1981], en la cual se propone la existenc ia de siete métodos de estimación de
tal forma que cualquier modelo se clasificaría dentro de uno de esos métodos. Estos siete
métodos se describen a continuación.
6
Capítulo 2. Modelos usados para medir esfuerzo 7
a) Modelos algorítmicos:
En este método se agrupan aquellos modelos que proporcionan uno o más algoritmos que
permiten realizar las estimaciones de esfuerzo y costos en el desarrollo de software a partir de
un conjunto de variables conocidas como conductores de costes.
Este método implica la consulta de uno o más expertos para realizar las estimaciones.
c) Analogía:
Se realizan las estimaciones comparando el proyecto actual con los datos reales de otros de
las mismas características realizados anteriormente.
d) Parkinson:
Este método parte del principio de que el costo debe ser aquel que de más ventajas a la
comercialización del producto.
Capítulo 2. Modelos usados para medir esfuerzo 8
Las estimaciones se hacen para el proyecto total y después se fraccionan para saber las
asociadas con cada parte del mismo.
Se divide el proyecto en partes y se realizan las estimaciones para cada una de ellas. Las
estimaciones para el proyecto total es la suma de las partes.
Esta clasificación ha sido aceptada por muchos años, pero debido al cambio en la forma de
desarrollar software la mayoría de estos métodos se han hecho obsoletos. Hoy en día sólo
unos pocos se han actualizado y han surgido otras formas para estimar esfuerzo en el
desarrollo de software.
Basar la estimación en proyectos similares: esta alternativa puede funcionar muy bien
cuando el proyecto es semejante con otros que ya han sido desarrollados. La desventaja de su
implementación es la de requerir informació n de mediciones efectuadas en proyectos pasados
que no siempre están disponibles y que además no siempre representan un buen indicador.
Capítulo 2. Modelos usados para medir esfuerzo 9
2.3 COCOMO II
1. Composición de aplicaciones.
Peso de la complejidad
Tipo de Objeto Básico Intermedio Avanzado
Pantalla 1 2 3
Informe 2 5 8
Componentes L3G 10
Tabla 1. Factores de peso.
Para realizar la estimación del esfuerzo todavía falta una variable llamada productividad, la
cual se halla por medio de la siguiente tabla:
Con los valores necesarios ya encontrados se calcula el esfuerzo con la siguiente ecuación:
2. Diseño Inicial
1. Precedentes (PREC).
Este factor tiene en cuenta el nivel de madurez de procesos de la organización, para lo cual
utiliza la escala de cinco niveles del CMM (Capability Maturity Model) desarrollado po r el
SEI (Software Engineering Institute) de la universidad Carnegie Mellon.
La tabla 3 presentada a continuación muestra los valores estimados para cada uno de los
factores de escala por Boehm:
Factores
de escala Muy Bajo Nominal Alto Muy Alto Extra
(Fe) bajo Alto
PREC 6.20 4.96 3.72 2.48 1.24 0.00
FLEX 5.07 4.05 3.04 2.03 1.01 0.00
RESL 7.07 5.65 4.24 2.83 1.41 0.00
TEAM 5.48 4.38 3.29 2.19 1.10 0.00
PMAT 7.80 6.24 4.68 3.12 1.56 0.00
Tabla 3. Factores de escala estimados por Boehm.
Este submodelo utiliza también 7 multiplicadores de esfuerzo a los que se les asigna un
número real teniendo en cuenta el rango, de seis niveles (Extra Bajo, Muy Bajo, Bajo,
Capítulo 2. Modelos usados para medir esfuerzo 14
Nominal, Alto, Muy Alto y Extra Alto), en que se encuentre el multiplicador para el proyecto
estudiado. La tabla de valores de los multiplicadores de esfuerzo se calibra uniendo los
multiplicadores de esfuerzo calibrados para el modelo Post - Arquitectura [USC-CSE 1997].
Dichos conductores de costes son:
La tabla 4 presentada a continuación muestra los valores estimados para cada uno de los
factores de escala por Boehm:
3. Post – Arquitectura.
Este submodelo puede ser utilizado cuando se ha completado el diseño del sistema a
desarrollar y se cuenta con información detallada. Como su nombre sugiere, la arquitectura
del software está bien definida y establecida, esto permite realizar estimaciones para el
conjunto del ciclo de vida de desarrollo y es una extensión del modelo de Diseño Inicial.
Utiliza Puntos de Función y/o Líneas de Código Fuente como entrada para el parámetro del
tamaño del producto. Además, maneja un conjunto de cinco factores de escala, iguales en su
fundamento conceptual a los vistos anteriormente para el submodelo de diseño inicial, y
diecisiete multiplicadores de esfuerzo, cada uno con un rango de seis niveles igual al visto
para el submodelo de diseño inicial. Este submodelo ha sido calibrado sobre una base de
datos de 161 proyectos recopilados de la industria comercial, aeroespacial, gubernamental y
de organizaciones sin fines de luc ro. Los conductores de costos se agrupan en las siguientes
cuatro categorías:
- Producto.
1. Fiabilidad requerida del software (RELY)
2. Tamaño de la base de datos (DATA)
3. Complejidad del producto (CPLX)
4. Reutilización requerida (RUSE)
5. Documentación desarrollada (DOCU)
- Plataforma
6. Restricciones en el tiempo de ejecución (TIME)
7. Restricciones en el almacén principal (STOR)
8. Volatilidad de la plataforma (PVOL)
- Personal
9. Aptitud de los analistas (ACAP)
10. Aptitud de los programadores (PCAP)
11. Experiencia en el desarrollo de aplicaciones similares (AEXP)
Capítulo 2. Modelos usados para medir esfuerzo 16
- Proyecto
15. Utilización de herramientas software (TOOL)
16. Desarrollo en múltiples localizaciones (SITE)
17. Tiempo necesario para el desarrollo (SCED)
La tabla 5 muestra los valores estimados para cada uno de los factores de escala por Boehm
para el post-arquitectura.
Tanto para el diseño inicial como para el post-arquitectura se utiliza la siguiente ecuación:
Basándose en su gran cantidad de datos históricos, Boehm propone que el coeficiente A sea
de 2.94. El tamaño es expresado en miles de líneas de código (KLDC). Este se calcula
estimando el número de puntos de función en el software y convirtiendo éste a KLDC
utilizando tablas estándar, que relacionan el tamaño del software con los puntos de función
dependiendo del lenguaje de programación. El exponente B se calcula a través de los 5
factores de escala ya mencionados y aplicando la siguiente fórmula:
Donde ?: sumatoria.
M = ? conductores de costos.
Donde ? : productoria.
Es un modelo multivariable dinámico planteado por Putnam [Pressman, 2005] que asume
una distribución específica del esfuerzo a lo largo de la vida de un proyecto de desarrollo de
software. El modelo se ha obtenido a partir de los datos de productividad para unos 4.000
proyectos actuales de software. La ecuación tiene la siguiente forma:
Donde
P = parámetro de productividad.
P = 2000 para un entorno pobre de desarrollo de software (sin metodología, con una
documentación v unas revisiones pobres. un modo de ejecución no interactivo).
P = 8000 para un buen entorno de desarrollo de software (con una buena metodología,
adecuadas documentación y revisiones, modo de ejecución interactivo);
Para simplificar el proceso de estimación con la ecuación del software y utilizar una forma
más común, Putnam y Myers [Putnam, 1992] sugieren un conjunto de ecuaciones obtenidas
de la ecuación del software:
2.5 Conclusiones
3.1 Introducción
21
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 22
Una encuesta se define “como una técnica que pretende obtener información que
suministra un grupo o muestra de sujetos acerca de sí mismos, o en relación con un tema en
particular” [Arias, 2006]. Existen dos tipos de encuesta: oral y escrita. Para esta investigación
se utilizó una encuesta escrita en la modalidad de cuestionario contentivo de una serie de 10
preguntas cerradas. En cada pregunta se presentaron las distintas opciones para responder de
forma sencilla rellenando un recuadro con una “X”; en algunos casos se presentó la opción
de escribir alguna otra respuesta en caso de no figurar entre las opciones posibles.
Dando así como resultado 10 preguntas cerradas [Arias, 2006] cada una con sus
opciones de respuestas definidas y en algunos casos con una opción en blanco para colocar
otra que no se encontrara con las opciones ofrecidas 1.
En esta sección se presentan los resultados con el análisis e interpretación de cada una
de las preguntas realizadas en la encuesta, de manera que nos permitan construir un
diagnóstico de la situación actual de la industria del software acerca del uso de técnicas de
estimación de esfuerzo y costo.
PREGUNTA Nº 1
¿Cuántos años tiene usted trabajando en el desarrollo de software?
a 0 – 3.
b 3 – 6.
c 6 – 9.
d más de 9.
1
El modelo de esta encuesta se presentara al final del documento como anexo.
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 24
más de 9 0a3
22% 11%
3a6
6a9 28%
39%
2
Esta transformación se realizó con el criterio aportado por expertos en desarrollo de software.
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 25
De esta manera podemos decir que las empresas tienen un nivel medio de experiencia dado
que el mayor porcentaje fue para el intervalo de 6 a 9 años.
PREGUNTA Nº 2
a 1 – 10.
b 10 – 20.
c más de 20.
más de 20
12%
10 a 20
29% 1 a 10
59%
Se pudo observar (véase gráfico 2) que el 59% de las empresas tienen de 1 a 10 empleados,
29% de 10 a 20 y 12% más de 20 empleados. Esta pregunta nos permite conocer el tamaño
de las empresas. Para lograrlo se utilizó, la siguiente clasificación que es aplicada por el
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 26
Usando este criterio tenemos que la mayoría de las empresas son pequeñas, pero esto no
indica su capacidad de producción ya que con un personal calificado pueden lograrse altos
ingresos en empresas de este ramo.
PREGUNTA Nº 3
» De Lunes a Viernes.
a menos de 8.
b.- 8.
c más de 8.
» Sábados y Domingos.
a menos de 8.
b 8.
c más de 8.
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 27
más de 8
47%
8
53%
menos de 8
no trabaja 35%
41%
más de 8 8
6% 18%
Como se puede apreciar en el gráfico 3, el 53% de las empresas trabajan de lunes a viernes 8
horas diarias, 47% más de 8 y ninguna trabaja menos de 8 horas diariamente. En cuanto a los
fines de semana (véase gráfico 4) el 35% trabaja pero menos de 8 horas, el 18% labora 8
horas, 6% más de 8 horas y 41% no trabajan. En cuanto a las horas de trabajo lo hacen con
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 28
normalidad de lunes a viernes 8 horas y algunas empresas los fines de semana pero menos de
8 horas, con lo cual podemos decir que no se trabaja sobre tiempo.
PREGUNTA Nº 4
otra
6% Experiencia
Ambas Propia
24% 35%
Técnica de
Estimacion
35%
El cálculo de costos de proyectos, según los resultados, lo realizan las empresas de dos
formas: 35% lo hacen con una técnica de estimación y 35% utilizando la experiencia propia
véase el gráfico 5. Además, el 24% usa una combinación de las dos formas y el 6% otra. En
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 29
este caso podemos decir que para el cálculo de costos las preferencias están divididas en
experiencia propia y técnica de estimación, lo que nos permite decir que la mayoría de las
empresas de desarrollo de software no están utilizando una técnica que cuente con un grado
de certitud aceptable, en todo caso, desconocen una técnica de estimación de esfuerzo y costo
que consideren fiable.
PREGUNTA Nº 5
Juicios de
expertos
18%
Puntos de
funcionalidad
52%
Según se puede observar en el gráfico 6, el 52% de las empresas usan los puntos de función
como técnica de estimación, en segundo lugar, con 18%, usan el tamaño del software y el
juicio de los expertos; por último, el 12% usan métodos algorítmicos. La técnica más popular
de estimación que se usa resultó ser Puntos de Funcionalidad debido a la forma actual para la
captura de requisitos potenciales de un nuevo sistema llamada casos de uso.
PREGUNTA Nº 6
a Instalaciones Físicas.
b Secretaria y Personal de apoyo.
c Entrenamiento de Personal.
d Servicios.
e Adquisició n o actualización de Hardware y Software.
Adquisición
de Hw y Sw
13%
Personal y
Adq. Hw y Todos
Sw
60%
27%
En el gráfico 7 se puede ver que el 60% de las empresas toman en cuenta todos los costos
adicionales presentados como opciones (Instalaciones físicas, secretaria y personal de apoyo,
entrenamiento de personal, servicios y adquisición o actualización de hardware y software).
En cambio, un 27% sólo considera los costos de entrenamiento de personal y adquisición o
actualización de hardware y software. Por último, un 13% sólo toma en cuenta los costos de
adquisición de hardware y software. Los resultados mostraron que los costos indirectos que
propusimos son considerados también a la hora de presentar un presupuesto para desarrollar
un software, pero como una suma al resultado de la estimación de esfuerzo y costo y no
como una variable que interviene directamente cuando se aplica un modelo de estimación.
PREGUNTA Nº 7
¿Considera que sus estimaciones de costos son ajustadas a la realidad? (Nota: si su respuesta
es NO, por favor especifique)
a Si.
SI
35%
NO
(subestima)
65%
Gráfico 8. Ajuste a la realidad de las estimaciones hechas por las empresas encuestadas.
Como se puede apreciar en el gráfico 8, el 65% de las empresas respondió que no y además
subestiman mientras que el 35% respondió que si.
La gran mayoría no está conforme con las estimaciones que realizan ya que siempre el valor
real de esfuerzo del proyecto que se obtiene al final del mismo es mayor que el estimado.
PREGUNTA Nº 8
a Si.
b No.
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 33
NO
0%
SI
100%
En el gráfico 9 se observa que el 100% de las empresas encuestadas respondió que si guarda
las estadísticas de sus proyectos.
PREGUNTA Nº 9
¿Planifica el desarrollo de los proyectos que atiende usando alguna herramienta de software?
a Microsoft Project
b PLANNER
c Open Workbench
d Dotproject
e Otro (Especifique): _____________
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 34
Otra
12%
Dotproject
24%
Microsoft
Project
64%
Según los resultados obtenidos (véase gráfico 10) un 64% de las empresas realizan la
planificación usando Microsoft Project, 24% usa Dotproject y 12% otra herramienta.
En este caso todas las empresas expresaron contar con una herramienta de planificación,
algunas con preferencias distintas de otras, pero lo importante es que llevan o procuran llevar
un control en la elaboración de un proyecto desde el comienzo hasta el final.
PREGUNTA Nº 10
a Gerente de la Empresa
b Líder del Proyecto
c Personal Té cnico
d Otro (Especifique): _______________
Capítulo 3. Diagnóstico sobre el uso de técnicas de estimación en la industria del software 35
Personal
Tecnico
6%
Lider del Otro
Proyecto 6%
64%
Gerente de
la Empresa
24%
Se puede apreciar en el gráfico 11 que un 64% de las empresas dijo que el líder del proyecto
es el encargado de la planificación, mientras que un 24% dijo que el gerente de la empresa y
por último un 6% respondió que era el personal técnico u otro.
3.4 Conclusiones
- El 39 % de las empresas, tienen trabajando con desarrollo de software entre 6 y 9 años que
según la opinión de los expertos representa un nivel medio de experiencia.
- La mayoría de las empresas encuestadas (59%) son pequeñas empresas debido al número
de empleados que la integran, que se ubicó entre 1 y 10 empleados.
- Se pudo observar que las empresas muy pocas veces trabajan sobre tiempo, ya que la
mayoría (51%) trabajan 8 horas de lunes a viernes y en cuanto a los sábados y domingos el
41% no trabajan.
- El cálculo de costos de proyectos según los resultados lo realizan de dos formas: con una
técnica de estimación (35%) y utilizando la experiencia propia (35%).
- La técnica que usan para la estimación son los puntos de funcionalidad siendo ésta usada
por el 52% de las empresas encuestadas.
- Se observó también que la mayoría de las empresas (60%) al estimar los costos de
desarrollo de software toman en cuenta otros costos indirectos relacionados con las
instalaciones, el personal, los servicios, soportes, entre otros.
- La mayoría de las empresas (65%) no está conforme con sus estimaciones ya que al
comparar al final del proyecto lo estimado y lo real, observan que ha n subestimado el valor
real. Todas (100%) guardan estadísticas de sus proyectos realizados.
Usan una herramienta para planificar el desarrollo del sistema, Microsoft Project
(64%) y la planificación la realiza el líder del proyecto (64%).
Capítulo 4
resultados obtenidos
4.1 Introducción
En este capítulo se realiza el análisis de los resultados que se generan luego de haber
aplicado a algunos proyectos seleccionados los modelos descritos en el capítulo anterior. Lo
primero que se hace es describir los proyectos seleccionados. Seguidamente, se calculan los
tamaños estimados de cada uno de los proyectos y se realiza el cálculo del esfuerzo con los
modelos de estimación seleccionados. Además, también se calcula el esfuerzo real de cada
uno de los proyectos finalizados a partir de los datos suministrados por las empresas, para así
poder comparar los valores estimados por los modelos con el esfuerzo real que se obtuvo al
finalizar los mismos. Finalmente se realiza el análisis de los resultados y por último se
presentan algunas conclusiones.
Para la selección de los proyectos se visitó una de las empresas que fueron
encuestadas, de la cual, se tomaron 3 proyectos ya desarrollados y se extrajeron los datos
necesarios para hacer la estimación por medio de los modelos y también aquellos datos que
permitieran realizar la comparación entre el valor de esfuerzo estimado y el valor real de
37
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 38
Nombre: CDI.
Nombre: AVM.
En conjunto con el líder de cada uno de los proyectos se obtuvieron los datos necesarios para
el cálculo de los puntos de función. La siguiente tabla es la propuesta por Albrecth - Gaffney
[Albrecth, 1983], para el cálculo de puntos de función desajustados que tiene 5 características
funcionales del sistema a desarrollar y cada una de ellas un tipo de complejidad con un peso
asociado a ésta. Se multiplica el número estimado de cada una de las características
funcionales: entradas externas, salidas externas, ficheros lógicos externos, interfaces lógicas
externas y consultas externas por el valor de complejidad que corresponda. Luego se suman
los totales y se obtiene el número de puntos de función desajustados.
También se presenta a continuación la tabla 11 que traduce los puntos de función sin ajustar
(UPF) a líneas de código (LDC), que se utiliza más adelante:
Lenguaje LDC/UPF
Ada 71
A1 Shell 49
APL 32
Assembly 320
Assembly (macro) 213
ANSI / Quick / Turbo Basic 64
Basic - Compiled 91
Basic – Interpreted 128
C 128
C++ 29
PHP 25
Visual Basic 32
ANSI Cobol 85 91
Fortran 77 105
Fort 64
Jovial 105
Lisp 64
Modula 2 80
Pascal 91
Prolog 64
Report Generator 80
SpreadSheet 6
Java 23
Tabla 11. Conversión de los puntos de función a líneas de código.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 43
Se utilizó la tabla 3 que se encuentra descripta en el capítulo 2 para recolectar los factores de
escala:
Factores
de escala M uy Bajo Nominal Alto Muy Alto Extra
(Fe) Bajo Alto
PREC X
FLEX X
RESL X
TEAM X
PMAT X
Tabla 16. Resultados de los factores de escala para el proyecto 1.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 48
De la tabla 3 se obtienen los valores para los factores de escala presentada en el capitulo 2,
entonces se tiene que:
B = 0.91 + 0.01x ? Fe
B = 0.91 + 0.01x [3.72 + 4.05 + 4.24 + 2.19 + 4.68]
B = 0.91 + 0.01x [18.88]
B = 0.91 + 0.1888
B = 1.0988
-Para calcular M
Se utilizó la tabla 4 que se encuentra descripta en capitulo 2 para recolectar los datos
correspondientes a los conductores de costos:
Teniendo ya todos los valores necesarios tenemos que el esfuerzo estimado es:
Se utilizó la tabla 3 que se encuentra descripta en capitulo 2 para recolectar los datos
correspondientes a los factores de escala:
Factores
de escala M uy Bajo Nominal Alto Muy Alto Extra
(Fe) Bajo Alto
PREC X
FLEX X
RESL X
TEAM X
PMAT X
Tabla 18. Resultados de los factores de escala para el proyecto 2.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 50
De la tabla 3 de valores para los factores de escala presentada en el capitulo 2, se tiene que:
B = 0.91 + 0.01x ? Fe
B = 0.91 + 0.01x [6.2 0 + 3.04 + 1.41 + 2.19 + 4.68]
B = 0.91 + 0.01x [17.52]
B = 0.91 + 0.1752
B = 1.0852
-Para calcular M
Se utilizó la tabla 4 que se encuentra descripta en capitulo 2 para recolectar los datos
correspondientes a los conductores de costos:
M = 1.30 x 1 x 1 x 1 x 1 x 0.87 x 1
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 51
M = 1.131
Se utilizó la tabla 3 que se encuentra descripta en capitulo 2 para recolectar los datos
correspondientes a los factores de escala:
Factores
de escala M uy Bajo Nominal Alto Muy Alto Extra
(Fe) Bajo Alto
PREC X
FLEX X
RESL X
TEAM X
PMAT X
Tabla 20. Resultados de los factores de escala para el proyecto 3.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 52
De la tabla 3 de valores para los factores de escala presentada en el capitulo 2, se tiene que:
-Para calcular M
Se utilizó la tabla 3 que se encuentra descripta en capitulo 2 para recolectar los datos
correspondientes a los conductores de costos:
M = 1.3585
Se tiene entonces que los valores de esfuerzo calculados con COCOMO II de los 3 proyectos
son:
Para simplificar el proceso de estimación con la ecuación del software y utilizar una
forma más común, Putnam y Myers [Putnam, 1992] sugieren un conjunto de ecuaciones
obte nidas de la ecuación del software.
B es considerado como el indicador de destrezas y los valores del mismo están clasificados
según el tamaño del proyecto en miles de líneas de código (KLDC) del proyecto:
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 55
En este caso, como el tamaño del proyecto 1 es de 74.060 KLDC el valor de B es 0.39 que
corresponde a proyectos con más de 70 KLDC como se indica en la tabla 23.
P Entorno
Desarrollo sin metodologías, pobre
2000 documentación, modo de ejecución no
interactivo
Buena metodología, revisiones
8000 acordadas, interactivo
Excelente entorno de desarrollo.
11000 Herramientas y técnicas automatizadas
Tabla 24. Valores propuestos para P.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 56
El valor que corresponde para este proyecto por sus características descritas anteriormente en
la tabla 6 es una P = 11000 como se muestra en la tabla 24.
Con los valores de B y P obtenidos se procede a calcular el esfuerzo con las ecuaciones
anteriormente mencionadas:
En este caso, como el tamaño del proyecto 2 es de 109.175 KLDC el valor de B según la
tabla 23 es 0.39 que corresponde a proyectos con más de 70 KLDC.
El valor que corresponde para este proyecto por sus características descritas anteriormente en
la tabla 7 es una P = 11000 como se muestra en la tabla 24.
Con los valores de B y P obtenidos se procede a calcular el esfuerzo con las ecuaciones
anteriormente mencionadas:
En este caso, como el tamaño del proyecto 3 es de 76.061 KLDC el valor de B según la tabla
23 es 0.39 que corresponde a proyectos con más de 70 KLDC.
El valor que corresponde para este proyecto por sus características descritas anteriormente en
la tabla 8 es una P = 8000 como se muestra en la tabla 24.
Con los valores de B y P obtenidos se procede a calcular el esfuerzo con las ecuaciones
anteriormente mencionadas:
Se tiene entonces que los valores de esfuerzo calculados con la ecuación del software de
Putnam para cada uno de los proyectos son:
En esta sección se presentan los cálculos de esfuerzo con los valores reales de cada proyecto,
es decir, con el valor del tiempo que se usó para realizar el sistema y el número de personas
que participaron en su construcción. Esto permite realizar una comparación con los valores
estimados de esfuerzo obtenidos a través de los modelos.
La tabla 26 nos muestra los valores del personal que trabajo en cada uno de los proyectos con
el respectivo tiempo de desarrollo. Al multiplicar el número de personas por el tiempo se
obtiene el esfuerzo real empleado en el desarrollo de cada proyecto.
En esta sección se comparan los resultados de los valores de esfuerzo calculado con los
modelos de estimación y con los valores reales de cada uno de los proyectos. Además se
realizan unos gráficos para así poder concluir por medio de los mismos.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 60
La tabla 27 muestra, en resumen, los valores obtenidos para cada proyecto luego de haber
aplicado los 2 modelos seleccionados y el valor real del esfuerzo obtenido con los datos de
los proyectos finalizados.
400
Esfuerzo (pers-mes)
COCOMO II
Ecuación del
300 software
200
100
Valor real
0
Métodos
En el gráfico 12 se pueden observar los valores de esfuerzo estimados para el proyecto 1 con
COCOMO II de 340.85 pers-mes y la ecuación del software de 256.39 pers-mes. Además se
presenta el va lor real del esfuerzo de 24 pers-mes. Los valores estimados con los modelos
superan ampliamente al valor real de esfuerzo siendo COCOMO II el que esta ligeramente
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 61
por encima de la ecuación del software, aún así el esfuerzo estimado con la ecuación del
soft ware se encuentra muy distante del esfuerzo real obtenido del proyecto.
600 COCOMO II
Esfuerzo (pers-mes)
Ecuación del
500
software
400
300
200
Valor real
100
0
Métodos
Al igual que para el proyecto 1 los valores de esfuerzo estimados por los modelos se
encuentra lejos del valor real como lo muestra el gráfico 13. Para el proyecto 2 los valores de
esfuerzo estimados fueron con COCOMO II 541.48 pers-mes y con la ecuación del software
423.21 pers-mes mientras que el valor real del esfuerzo fue de 72.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 62
600
500 COCOMO II
Esfuerzo (pers-mes)
Ecuación del
software
400
300
200
100
Valor real
0
Métodos
En el gráfico 14 se puede observar que para el proyecto 3 de igual forma el esfuerzo estimado
esta por encima del valor real del esfuerzo de manera considerable. Los valores para este
caso fueron 476.87 pers- mes por COCOMO II, 402.62 pers- mes por la ecuación del software
y 40 pers-mes resultó el esfuerzo real.
En esta sección se prueban los valores mínimos y máximos de algunas variables de los
modelos que se consideran difíciles de estimar, para estudiar su peso sobre el valor del
esfuerzo final estimado.
Se pudo notar al realizar la estimación del esfuerzo para los proyectos seleccionados en este
estudio, que solo la variable PMAT en el modelo COCOMO II genera poca confianza debido
a que al tratar de cumplir con el proceso de obtención de este valor, la información aportada
por las empresas encuestadas fue casi nula, así que en conjunto con el líder del proyecto se
fijo un valor nominal para los 2 primeros proyectos y bajo para el tercero basándose solo en
la sugerencia del líder.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 63
• Para la variable PMAT que representa la madurez del proceso en el modelo COCOMO
II:
Proyecto 1
Proyecto 2
Proyecto 3
De la tabla 27 se tiene que para un valor mínimo de PMAT variable que indica la capacidad
de madurez del proceso en COCOMO II en el desarrollo de los 3 proyectos el esfuerzo
estimado aumento un 7% aproximadamente mientras que para un valor máximo disminuyó
un 24 % aproximadamente, de esto se concluye que esta variable puede tener una incidencia
considerable en el calculo del esfuerzo del proyecto y debería ser considerado a la hora
realizar la estimación.
Capítulo 4. Evaluación de proyectos y comparación de los resultados obtenidos 65
4.7 Conclusiones
• Los gráficos 12, 13 y 14 presentados anteriormente nos muestran que los valores de
esfuerzo estimados con los modelos superan ampliamente al valor real de esfuerzo
que fue requerido para cada proyecto.
Conclusiones y recomendaciones
5.1 Conclusiones
• Los modelos empíricos de estimación de esfuerzo más comp letos que existen en la
actualidad son COCOMO II propuesto por Boehm y la Ecuación del Software de
Putnam, aunque han sido construidos con datos históricos de proyectos grandes ( más
de 70 mil LDC), también se pueden adaptar para proyectos pequeños.
• Las empresas de desarrollo de software en Mérida son pequeñas ya que no tienen más
de 10 empleados. Cuentan con un nivel de experiencia medio alcanzado durante un
tiempo de entre 6 y 9 años que tienen trabajando. En cuanto al horario es de lunes a
viernes 8 horas diarias, es decir, no trabajan sobre tiempo y tampoco los fines de
semana, lo que nos lleva a decir que cumplen con los tiempos de culminación fijados
con anterioridad para los proyectos a desarrollar.
• En un intento por llevar el orden en el desarrollo de sus proyectos seleccionan a una
persona con experiencia como líder del proyecto el cual realiza la planificación de los
mismos, utilizando para ésto herramientas de apoyo. La estimación de esfuerzo de
los proyectos lo realiza con la técnica de estimación Puntos de Funcionalidad y la
experiencia propia. En general guardan estadísticas de los proyectos realizados.
• Al estimar los costos de desarrollo de software las empresas encuestadas incluyen
otros costos indirectos relacionados con las instalaciones, el personal, los servicios,
soportes, entre otros. No están conformes con sus estimaciones ya que al comparar al
final del proyecto lo estimado y lo real, se observa que han subestimado el valor real.
66
Capítulo 5. Conclusiones y recomendaciones 67
5.2 Recomendaciones
• Se recomienda un estudio a fondo acerca de las variables de cada uno de los modelo s
utilizados en este trabajo, de manera que usando datos históricos propios puedan
obtenerse valores estimados para las mismas, ya que como se mostró los valores
propuestos por los autores de estos modelos de estimación de esfuerzo no reflejan las
características de desarrollo de software locales.
68
Capítulo 6. Conclusiones y recomendaciones 69
Arías, Fidias G. (2006) Guía para la elaboración de proyectos de investigación, Primera Edición.
70