procesos gestion proyectos software

11
TÉCNICAS DE ESTIMACIÓN DE PROYECTOS SOFTWARE INGENIERÍA SOFTWARE II Jose Guaman, Marco Palacios

Upload: guaman-jose

Post on 15-Dec-2015

8 views

Category:

Documents


3 download

DESCRIPTION

tarea 10

TRANSCRIPT

TCNICAS DE ESTIMACIN DE PROYECTOS SOFTWARE

Contenido1Tema22Objetivos22.1General22.2Especficos23Introduccin24Desarrollo24.1Tcnicas de estimacin34.2Requisitos de un buen mtodo de estimacin44.3Mtodos de estimacin44.3.1Mtodos estadsticos44.3.2Modelos basados en teoras: Modelo de Putnam54.3.3Modelos Compuestos55Conclusiones66Bibliografa6

TemaVisin general de las tcnicas de estimacin de proyectos software.

ObjetivosGeneralInvestigar y realizar la preparacin de una presentacin sobre las tcnicas de estimacin de proyectos software.

Especficos Investigar sobre las tcnicas de estimacin de proyectos software. Reportar la investigacin realizada a travs de un informe.

IntroduccinEl presente trabajo va relacionado con las tcnicas para la estimacin de software lo que nos permite predecir variables que van involucradas en el proyecto con cierto grado de certeza [1]. Lo importante para desarrollar software es conocer la cantidad a invertir, tareas que deben realizar y el tiempo que se necesitar para la entrega del software.Al estimar el estimador debe obtener estimaciones de calidad las cuales no tienen siempre que por qu coincidir con las expectativas de la empresa en trmino de costo y tiempo. Ya que este tiene una formacin y experiencia profesional adecuada.

DesarrolloLa planificacin es una actividad de gran importancia, en la que se establecen objetivos y metas de un proyecto, adems de las estrategias, polticas y procedimientos para alcanzarlos.Una de las variables a calcular durante la planificacin del proyecto es el esfuerzo, es decir la fuerza del trabajo requerida para el desarrollo, medida en meses hombre, das-hombre, y en general, unidad de tiempo hombre [3].

La tcnicas de estimacin son una forma de resolucin de problemas en donde, en la mayora de los casos el problema a resolver es demasiado complejo para considerarlo como una sola parte. Por esta razn descomponemos el problema, re caracterizndolo como un conjunto de pequeos problemas.

Tcnicas de estimacinPara la estimacin existen cuatro tcnicas bsicas y comunes.1. La opinin de los expertos; Esta tcnica se basa en la experiencia profesional de los participantes en el proyecto de estimacin. 2. La analoga; Es una aproximacin ms formal que la experiencia de los expertos y se basa en la comparacin directa de uno o ms proyectos pasados. La estimacin inicial se ajusta dependiendo de las diferencias entre el proyecto pasado y el nuevo. 3. La descomposicin; Consiste en la descomposicin de un producto en componentes ms pequeos, o descomponer un proyecto en tareas de nivel inferior. La estimacin se hace a partir del esfuerzo requerido para producir los componentes ms pequeos o para realizar las tareas de nivel inferior. La estimacin global del proyecto resultar de sumar las estimaciones de los componentes. 4. Las ecuaciones de estimacin; Son frmulas matemticas que establecen la relacin de algunas medidas de entrada (que normalmente es la medida del tamao del producto) y determinan el esfuerzo que se requerir. La primera tcnica es un tanto informal y es la que se ha llevado a cabo hasta el momento, con no muy buenos resultados como ya hemos visto, dada la complejidad del propio proceso de estimacin. Para poder utilizar la segunda tcnica es necesario disponer de una base de datos histrica de proyectos finalizados con la que poder realizar la comparacin. Adems todos esos proyectos tendrn que haber seguido un proceso estndar. Es decir, el ciclo de vida utilizado y las actividades han de ser similares. Si no es as, es difcil hacer comparaciones proyecto-proyecto. Un proyecto puede haber comenzado siguiendo unos pasos totalmente definidos y formalizados, y otro puede que slo tenga definida formalmente la fase de codificacin y pruebas, el resto de las fases nadie sabe cmo se hicieron ni si se hicieron. Por lo tanto, a menos que los proyectos tengan un esquema de proceso similar, compararlos unos con otros es como comparar peras con manzanas. Es necesaria una estandarizacin para usar esta tcnica. Otro aspecto a tener en cuenta es que los datos sobre esos proyectos han de ser fiables. Esto quiere decir que las empresas correspondientes han de tener un programa formalizado para la toma de medidas sobre sus proyectos. Actualmente es difcil que las empresas cumplan estos dos requisitos: estandarizacin de procesos y formalizacin de la recogida de medidas. Hay que tener en cuenta que las empresas deberan haberlos implantado desde hace algunos aos atrs, y que en estos momentos todava existen muchas empresas que no siguen una metodologa de desarrollo y que tampoco intentan abordar la cuestin de la confeccin de un histrico de proyectos.Para aplicar la tercera tcnica hay que disponer tambin de una base de datos histrica para poder identificar el esfuerzo de las distintas actividades de bajo nivel, y sta no est normalmente definida por las razones que anteriormente hemos indicado. Por todo ello, cuando se comienza a realizar el proceso de estimacin en una organizacin se utiliza algn mtodo o modelo establecido, es decir, se emplea la cuarta tcnica.

Requisitos de un buen mtodo de estimacin Un mtodo de estimacin tendr xito si: La estimacin inicial est dentro del 30% de desviacin del coste final real. El mtodo permite el refinamiento de la estimacin durante el ciclo de vida del producto software. El mtodo es fcil de usar por el estimador. Esto permite una rpida re-estimacin cuando sea necesario; por ejemplo, para evaluar distintas alternativas. Las reglas de la estimacin son entendidas por todas las personas a las que afectan los resultados de la misma. Los directivos se sienten ms seguros cuando el proceso de estimacin es fcilmente comprensible. El mtodo es soportado por herramientas y est documentado. La disponibilidad de herramientas aumenta la eficacia de cualquier mtodo. Esto es debido, principalmente, a que los resultados pueden ser obtenidos ms rpidamente y de una forma estndar.

Mtodos de estimacinUn mtodo de estimacin eficaz permitir ignorar aspectos sin inters y concentrare en los aspectos esenciales. Un buen modelo debera poseer capacidades predictivas, mejor que ser meramente descriptivo o explicativo.La validez de las mtricas de software y de los modelos de estimacin debe ser establecida demostrando la coincidencia entre los datos empricos y los experimentales. Esto requiere una cuidadosa atencin en la toma de medidas y en el anlisis de los datos. En general, el anlisis y la validacin de las mtricas y los modelos de estimacin requieren una slida base estadstica y diseo de experimentos. Para obtener resultados significativos es necesaria una definicin precisa de las mtricas involucradas y de los procedimientos para la captura de datos. Los experimentos a pequea escala deberan ser diseados cuidadosamente, y no aleatoriamente, utilizando principios de diseo experimental. Los experimentos muy largos son muy difciles de dirigir. Es esencial poseer una base slida de estadstica para llevar a cabo experimentos significativos y analizar los datos resultantes. En general, si no se posee la base estadstica suficiente debera de solicitarse la ayuda de estadsticos para evaluar seriamente el trabajo realizado.

Mtodos estadsticosC.E. Walston y P.C. Felix, de IBM utilizaron datos de 60 proyectos terminados completamente para desarrollar un modelo simple de clculo del esfuerzo de desarrollo de software. El principal determinante del esfuerzo de desarrollo fue la mtrica LDC. Se asumi una relacin de la forma: E = aLb, donde L es el nmero de lneas de cdigo, en miles y E es el esfuerzo total requerido en meses/personas. Mediante un anlisis de regresin se encontraron los valores apropiados para a y b. La ecuacin resultante fue:

Modelos basados en teoras: Modelo de PutnamEste modelo asume una distribucin especfica del esfuerzo a lo largo de la vida de un proyecto de desarrollo de software. El modelo se ha obtenido a partir de distribuciones de mano de obra en grandes proyectos. Sin embargo, se puede extrapolar a proyectos ms pequeos.Putnam desarroll la siguiente relacin entre el tamao del producto software y el tiempo de desarrollo:

Donde:L = el nmero de instrucciones fuente producidas. E = el esfuerzo durante todo el ciclo de vida en aos/persona C = una constante dependiente de la tecnologa. T = el tiempo de desarrollo en aos.

Modelos Compuestosa) Modelo COCOMO de BoehmEs probablemente el ms conocido y slidamente documentado de todos los modelos de estimacin de costes.

b) SOFTCOST TausWortheTausworthe, de Jet Propulsion Laboratory, intent desarrollar una estimacin de coste del software utilizando elementos de los modelos de ms xito disponibles. Este modelo requiere 68 parmetros de entrada, cuyos valores se deducen a partir de las respuestas del usuario a 47 preguntas acerca del proyecto.

c) SPQR Capers JonesCapers Jones ha desarrollado un modelo de estimacin de costes llamado Software Productivity, Quality and Reliability (SPQR).El enfoque del problema es similar al de Boehm en su modelo COCOMO. Est basado en 20 factores que influyen razonablemente en el coste y productividad del desarrollo de software y que estn bien definidos y otros 25 factores que no estn tan bien definidos.SPQR es un producto comercial, pero no est tan bien documentado como otros modelos. Requiere responder a ms de 100 preguntas relacionadas con el proyecto para formular los parmetros de entrada necesarios en el clculo de los costes y los planes. Jones seala que con este modelo es posible proporcionar estimaciones de coste que estarn el 90% de las veces dentro del valor real con una desviacin del 15%.

d) COPMO ThebautThebaut propone un modelo de desarrollo de software que intenta contabilizar el esfuerzo requerido cuando los equipos de programacin estn involucrados en grandes proyectos. La ecuacin general de clculo de esfuerzo es

Donde:a, b, c y d son constantes para ser determinadas a partir de datos empricos mediante anlisis de regresin.S: es el tamao del programa en miles de LOCP: es el nivel medio de personal durante el ciclo de vida del proyecto.Desafortunadamente, este modelo requiere no uno sino dos parmetros cuyos valores no son conocidos hasta la terminacin del proyecto. Adems, las constantes b y c dependientes de la complejidad del software no son fcilmente determinables. Este modelo presenta una formula interesante, pero necesita un mayor desarrollo y ajuste para que sea de inters general.

Conclusiones La estimacin es un proceso continuo, a medida que el proyecto avanza ms se conoce de l. La experiencia de los expertos es de gran ayuda. La estimacin de proyecto software debe considerar cuatro aspectos antes que comience el proyecto: cunto durar, cunto esfuerzo, costo requerido, cunta gente estar implicada. Mala estimacin provoca un desastre para el desarrollador. Los modelos compuestos son de gran ayuda pero hay que saber cul utilizar dependiendo del proyecto de software que se vaya a realizar.

Bibliografa

[1] (2015). Retrieved 27 July 2015, from http://www.grise.upm.es/docencia/estimacion/docs/estimacion.pdf [2] Es.slideshare.net,. (2015). Estimacin de Proyectos de Software. Retrieved 27 July 2015, from http://es.slideshare.net/montoya118/estimacin-de-proyectos-de-software-10785507[3] Tonacca, L., Bucarey, G., & Leporatti, M. (2010). Diseo de un modelo de estimacin de costos eficientes para explotaciones ganaderas de pequeos productores crianceros ubicados entre las regiones del Maule y de los Lagos. Avances En Ciencias Veterinarias, 22(1-2). doi:10.5354/0716-260x.2007.906