P. 1
Calculo Horas Hombre

Calculo Horas Hombre

|Views: 5.769|Likes:
Publicado porMargarita Lopez

More info:

Published by: Margarita Lopez on Aug 08, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

08/19/2013

pdf

text

original

COMBINACION DE ALTERNATIVAS PARA LA ESTIMACION DE PROYECTOS SOFTWARE

Gramajo, E., García-Martínez, R., Rossi, B., Claverie, E. y Britos, P.
CAPIS - CENTRO DE ACTUALIZACION PERMANENTE EN INGENIERIA DE SOFTWARE

RESUMEN La utilización de metodologías tradicionales para la estimación de proyectos software ha resuelto correctamente la necesidad de conocer la duración de un proyecto como una variable dependiente de los recursos a emplear. Se propone en este trabajo la combinación de las técnicas de Puntos de Función y COCOMO para establecer una estimación dependiente de un conjunto de variables consideradas en un proyecto para establecer una estimación mas precisa del mismo. Se plantean en el trabajo aspectos críticos que necesitan ser profundizados a fin de obtener un aprovechamiento mayor de los métodos descriptos. Palabras Clave Puntos de Función – Estimación de proyectos – COCOMO – Duración proyecto – Orientado a Objetos 1. INTRODUCCIÓN Actualmente se dispone de técnicas para estimación de proyectos que permiten la realización de evaluaciones más precisas que las obtenidas a través de métodos tradicionales (orientadas a calcular individualmente el esfuerzo correspondiente a cada una de las actividades del mismo). Se analizarán dos de ellas, Puntos de Función (International Function Point users Group. Function Point Counting Practices Manual) y COCOMO (Londeix B, Cost Estimation for Software Development) a fin de examinar no solo sus ventajas sino también sus aspectos críticos con el propósito de mostrar que mediante la interacción de ambas pueden subsanarse algunos de ellos. Por último se presentará como caso de estudio un análisis comparativo de la estimación de un proyecto en función de diferentes lenguajes de programación a utilizar, para la implementación del diseño, con la finalidad de comparar su variación respecto de las variables mencionadas. 2. MÉTODO TRADICIONAL Las distintas metodologías tradicionales de estimación de (Böem B.W.,Software Engineering Economics) proporcionan un dato básico (horas hombre) a aplicar al proyecto, entendiéndose por ésta a cantidad de horas a utilizar, a partir de lo cual y mediante la utilización de diversos ratios tales como pesos/hora u horas/persona pueden deducirse otros valores de estimación como el costo, personal involucrado, etc.

.Basándonos en la experiencia recogida en la actividad profesional (ITBA-CAPIS. Esto lleva invariablemente a la utilización de explicaciones que tienen mas que ver con el sentido común y la experiencia que con justificaciones elaboradas con fundamento. éstos no disponen de argumentos con base científica que puedan explicar esta situación cuando se trata de proyectos de desarrollo de software.. en la cual se muestra el proceso de estimación de acuerdo al enfoque tradicional que determina las horas hombre necesarias a partir de las que se calculan los costos y en función de los plazos de entrega acordados. se llega finalmente a establecer la cantidad de personal a utilizar). Dicha situación acarrea un inconveniente adicional producido por el establecimiento de fechas de entrega que pueden resultar imposibles de cumplir cuando se acuerdan bajo la presión del usuario o bien por la necesidad del desarrollador de cumplir anticipadamente un proyecto. Si bien para los desarrolladores es claro que ello no es así (normalmente se recurre a analogías del estilo de “. Primera Situación: Tiene que ver con el costo estimado del proyecto (a partir de estimar horas hombre) el cual está directamente relacionado al ratio utilizado y considerando los plazos de entrega se converge a un valor que satisfaga a las partes involucradas. Dado que los métodos tradicionales proporcionan una medida de las horas hombre necesarias para aplicar al proyecto.”).. ESTIMAR HORAS HOMBRE ESTIMAR EL COSTO DETERMINAR PLAZOS DE ENTREGA DETERMINAR EL PERSONAL INVOLUCRADO Figura 1: Enfoque tradicional para estimación de proyectos Segunda Situación: Está íntimamente relacionado con la estimación del tiempo total del proyecto ya que es determinado por dos criterios que normalmente se oponen según nos refiramos al punto de vista del usuario o del desarrollador. por el contrario pretenderá reducirlo. si una persona puede pintar una habitación en diez días no puede pensarse que diez personas pudieran hacerlo en un día . Carpetas de la Carrera de Posgrado en Ingeniería del Software) se plantean basicamente dos situaciones (que son ejemplificadas en la figura 1. la discusión se centra en la asignación de personal de manera de acortar proporcionalmente el tiempo total en función de aumentar aquella variable.. Como síntesis de lo expresado sería deseable utilizar técnicas que no solamente posibilitaran calcular las horas hombre a aplicar al desarrollo de un proyecto sino . Para explicar mejor la idea y simplificándola podemos sintetizar que el desarrollador tratará de extender el proyecto lo máximo posible a fin de asegurar su cumplimiento y el usuario.

El método COCOMO permite determinar los valores de las siguientes dos variables: • • meses/hombre a aplicar al proyecto meses totales del proyecto (dependiendo de factores tales como los atributos de fiabilidad requerida del software. capacitación de los programadores. MÉTODOS ALTERNATIVOS La utilización de dos métodos. Mostrándose. prácticas modernas de programación. frecuencia de cambio en el modelo de explotación del ordenador. experiencia en aplicaciones. tamaño de la base de datos. Modern Project Management) en forma conjunta permitiría mejorar la situación descripta en la sección precedente.también estimar un valor de la duración del mismo dado por sus características intrínsecas independientemente de los recursos a emplear. experiencia en la máquina virtual. A partir de allí se puede elaborar el costo mediante la aplicación de ratios. uso de herramientas para el desarrollo del software y limitaciones en la planificación).E. complejidad del producto. limitaciones de memoria principal. 3. Determinar líneas de código ESTIMAR TIEMPO TOTAL ESTABLECER PLAZO DE ENTREGA DETERMINAR EL PERSONAL INVOLUCRADO ESTIMAR EL COSTO ESTIMAR HORAS HOMBRE Figura 2: Estimación de proyectos por método COCOMO Debe tenerse en cuenta que la duración total del proyecto es un valor teórico y que puede disminuirse incrementando los recursos (personas) a emplear aunque el . capacitación de los analistas. limitaciones en el tiempo de ejecución. experiencia en el lenguaje de programación. como a partir de estos dos valores (horas hombre y tiempo total) y simplemente por el cociente de ambos se obtiene la cantidad de recursos (personas) para llevarlo a cabo. Checklist and Criteria for Evaluating the Cost and Schedule Estimating Capabilities of Software organizations) y COCOMO (Burril C. Puntos de Función (Park R.W. volatilidad de la máquina virtual. En la figura 2 se presenta un esquema de estimación que proporciona además de las horas hombre a emplear el tiempo total del proyecto (basándose para ello en el conocimiento previo de la cantidad de sentencias de código del proyecto) lo que permite determinar el plazo de entrega. de igual forma que en las metodologías tradicionales. además.

asignándoles valores de acuerdo a su complejidad y en función de la cantidad de cada uno de ellos se llega a determinar. salidas. de acuerdo a ratios específicos. configuraciones fuertemente utilizadas.. facilidad de instalación. actualización on-line. consultas. en razón de lo expresado anteriormente.Software Engineering Economics). posibilitando a partir de allí el establecimiento. rendimiento. Carpetas de la Carrera de Posgrado en Ingeniería del Software. la de Puntos de Función (Böem B. procesos complejos.Software Engineering Economics) tales como atributos de comunicación de datos. frecuencia de transacciones. etc.W. Esta información se convierte en el aspecto crítico del método ya que ese valor es un parámetro difícil de determinar con exactitud y puede variar considerablemente según las metodologías de desarrollo utilizadas (Burril C. facilidad de operación. de la cantidad de sentencias de código del sistema software. Estos ratios permiten establecer la cantidad de instrucciones del software posibilitando de esta forma obtener el dato que es punto de partida para el método COCOMO previamente descripto. Este método calcula los puntos de función de un sistema descomponiendo al mismo en cinco funciones principales (entradas. mediante su sumatoria. Imprenta del ITBA) para entallarlo finalmente de acuerdo a factores de ajuste seleccionados a partir de las características específicas del proyecto. El camino para resolver este aspecto crítico es mediante la aplicación de otra técnica. los puntos de función. 4GL. Esta técnica requiere de un dato elemental determinado por la cantidad de sentencias de código del proyecto a la que posteriormente se aplican diferentes algoritmos que varían de acuerdo al modelo de desarrollo elegido (Orgánico.impacto. que son posteriormente ajustados de acuerdo a las características específicas del proyecto (International Function Point users Group).. PUNTOS DE PUNTOS DE FUNCIÓN SIN AJUSTAR FUNCIÓN AJUSTADOS LÍNEAS DE CÓDIGO DEL SOFTWARE RATIO LÍNEAS DE CÓDIGO POR PUNTO DE FUNCIÓN Figura 3: Estimación de Proyectos por el método de Puntos de Función Sobre la base de este valor calculado se obtiene mediante la aplicación de ratios asociados a las características del lenguaje a utilizar (Cobol. Semilibre o Libre) (ITBACAPIS. instalación de múltiples sitios y facilidad de cambio. utilización en otros sistemas.W. frecuencias distribuidas.) medidos en cantidad de sentencias de código por punto de función los valores totales. ficheros internos y externos).W. entrada on-line de datos. se obtienen los Puntos de Función del sistema que son ajustados de acuerdo a factores predefinidos (Böem B. será menor (puede alcanzar a un 20% menos) que el esfuerzo aplicado a tal efecto. . Según se puede observar en la Figura 3 correspondiente a la metodología de estimación por el método de Puntos de Función. diseño para la eficiencia del usuario final. Modern Project Management).

35 386 1.00 1.65 FP * AF 810 40 1.35 72 1.05 851 70 59.127 Tabla 1: Estudio Comparativo de la estimación para diferentes lenguajes de codificación Para este ejemplo se seleccionó un proyecto de software referido a un sistema cuyo objetivo es mejorar el servicio de reclamaciones de clientes de una empresa de salud que dio como resultado un valor de 810 Puntos de Función. IDENT.500 772.06 309 19 17 2.024.06 461 21 22 2.001 3.05 851 90 76.010 17 810 40 1.12 2.12 2.150 255 2 3 4 5 6 810 40 1.50 0.665 MMF Esfuerzo final TDEV Tiempo de desarrollo NPER Cantidad de personas CPRO Costo mensual por persona CTOT Costo final 3.05 851 15 12.500 3. analizando la variación de líneas de código de acuerdo al lenguaje utilizado (Pressman R.06 410 21 20 2. En este caso el método las considera a todas diferentes y se miden de la forma descripta anteriormente con lo que se considera que la cantidad de puntos de función daría una cifra superior a la real deformando el número final con la consabida incidencia (número de sentencias de código del software) en la aplicación del método COCOMO.12 2. .06 76 11 7 2.500 CPRO * NPER 3.535 60 810 40 1.545 77 810 40 1.05 851 100 85. tiempo total y costo).050 85 810 40 1.758 13 FPA Puntos de Función ajustados LCO Líneas de código por FP LCOT Líneas de código totales KDSI Miles de líneas de código COCOMO CO1 PO1 CO2 PO2 MM FA Modelo MM coeficiente Modelo MM exponente Modelo TDEV coeficiente Modelo TDEV exponenete Esfuerzo Coeficiente esfuerzo MM * FA C02 * (MMF ** P02) MMF / TDEV C01 * (KDSI ** P01) 3.S.12 2.50 0.880 3.01) + 0. A título ilustrativo se muestra en la Tabla 1 la estimación de un proyecto por los métodos de Puntos de Función y COCOMO analizando la incidencia de los diferentes lenguajes de programación.50 0.00 1.50 0.35 435 1.500 3.578 33 48 2.00 1.50 0. I N D I C A DORES FORMULA ASEMBLER FORTRAN COBOL CODE PASCAL ADA 4GL GENERATOR 1 PUNTOS DE FUNCION FP TDI AF Puntos de Función sin ajustar Grado de influencia Factor de ajuste ( TDI * 0.00 1.500 137.00 1.06 1.398 1. Ingeniería del Software) y su incidencia en los diferentes valores de la estimación (meses hombre.05 851 20 17.12 2.En opinión de los autores el método de Puntos de Función presenta un aspecto crítico en lo referido a la reutilización de módulos preexistentes (por ejemplo varias salidas similares que poseen una misma estructura con variaciones propias de cada una de ellas).500 190.50 0.35 1488 1.35 52 1.12 2.35 292 1.375 1.05 851 300 LCO * FPA LCOT / 1000 255.944.00 1.152.06 55 10 5 2.

El esfuerzo final (MMF) correspondiente a la cantidad de meses hombre a emplear en el proyecto mantiene una relación aproximada a la descripta anteriormente. Del análisis de la referida tabla y tomando como referencia los valores extremos. entonces. su duración y costo. Como síntesis de lo expresado anteriormente puede decirse que el aspecto crítico de los métodos tradicionales de estimación de proyectos software radica en la imposibilidad de establecer una unidad de medida para la estimación de la duración total del proyecto como un valor dependiente de las características del mismo y no solo en función de los recursos humanos a emplear.Por otra parte se utilizó para la estimación por COCOMO un modo Semilibre modelo intermedio (ITBA-CAPIS. • • Este análisis podría extenderse a cualquier combinación de los diferentes lenguajes de implementación del diseño con resultados similares. A fin de complementar el análisis se han determinado valores estimativos del costo por persona para obtener una estimación económica del proyecto en cuestión. El costo final (CTOT) también se reduce en la misma proporción. 4. Carpetas de la Carrera de Posgrado en Ingeniería del Software) y cabe hacer notar que en los valores obtenidos no se consideró la incidencia producida por la reutilización de módulos preexistentes lo que hubiera significado una disminución considerable de los valores resultantes. Como alternativa se propuso en este trabajo la utilización combinada de dos métodos (Puntos de Función y COCOMO) tendientes a proporcionar una estimación mas precisa tratándolos de la siguiente forma: . es decir considerando la implementación sobre un lenguaje ensamblador (columna 1) y un generador de código (columna 6) surgen algunas consideraciones importantes de destacar: • • Las sentencias de código por punto de función (LCO) se reducen a la treinta ava parte. que el tiempo total de duración de un proyecto está relacionado con las características propias del mismo y no depende directamente de el lenguaje de implementación del diseño como así tampoco de la cantidad de personal a utilizar. El Tiempo (TDEV) correspondiente al tiempo total del Proyecto solamente se reduce a la tercera parte. sino que esta última es una consecuencia directa de los dos valores estimados por el metodo (Meses Hombre Totales MMF y Tiempo Total del Proyecto TDEV). la importancia cada vez mayor que toma la información como factor estratégico ha determinado que sea la duración de un proyecto uno de los aspectos mas prioritarios en su realización. CONCLUSIONES Si bien existen dos factores fundamentales a examinar en la estimación de un proyecto software. Puede concluirse.

queda planteado a partir del presente trabajo. CMU/SEI-95-SR-005. Checklist and Criteria for Evaluating the Cost and Schedule Estimating Capabilities of Software organizations. Park R..W. Finalmente y basándonos en que el paradigma de objetos considera la reusabilidad como un factor básico y entendiendo que el método descripto (PUNTOS DE FUNCIÓN) pareciera no tomar en cuenta estas características. Carpetas de la Carrera de Posgrado en Ingeniería del Software. 1980. una línea de investigación tendiente a analizar la incidencia de las metodologías orientadas a objetos en esta técnica de estimación a fin de elaborar los factores de ajuste necesarios para reducir la distorsión provocada. Pressman R. Imprenta del ITBA. Function Point Counting Practices Manual.Primero la aplicación del método de Puntos de Función para determinar las sentencias de código del proyecto software. Cost Estimation for Software Development. International Function Point users Group.E. Edición 1996.0. En segundo lugar la aplicación del método COCOMO partiendo de la información producida por el anterior (sentencias de código) para llegar a una estimación precisa de las horas hombre a aplicar y fundamentalmente a la estimación de la duración total del proyecto. REFERENCIAS Böem B. Modern Project Management. 1981 Burril C. Mc Grow Hill. 1997. 5. Enero 1995. 1994.W. Londeix B.S. 1994 .Software Engineering Economics. Addison-Wesley Publishers Company. Ingeniería del Software. Burril-Ellsworth Associates. producida por no considerar esta técnica la reutilización de módulos preexistentes. Release 4. la cual mantiene una distorsión. ITBA-CAPIS. Prentice Hal. Un enfoque práctico.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->