Está en la página 1de 6

www.monografias.

com

Proyectos Software. Estimacin del Coste


1. 2. 3. . $. *. +. ,. Resumen. Introduccin Descripcin del Problema !pro"imacin #istrica al problema %&cnicas y 'etodolo()a '&todo de 'odelado Conclusiones Referencias Resumen. La estimacin de plazos en proyectos es una tarea crtica, que puede conducir al fracaso del proyecto, debido al alargamiento de la duracin o a una mala estimacin del esfuerzo necesario para ejecutarlo. Es necesario disponer de una herramienta que nos ayude a tener ms conocimiento sobre el proyecto para seleccionar las ariables influyentes sobre las des iaciones del proyecto y que proporcione unas estimaciones ms ajustadas. En este artculo se analizan la iabilidad y las entajas del desarrollo de un sistema basado en t!cnicas de inteligencia artificial capaz de seleccionar las ariables que afectan a la duracin del proyecto y al esfuerzo necesario para realizarlo a partir de un conjunto de datos histricos, frente a las t!cnicas actuales. "ara ello, se propone un m!todo para el anlisis de los datos e#istentes, y su preprocesamiento para conseguir un modelo que se ajuste a las necesidades del gerente de proyectos. Palabras cla-e$ Estimacin de "lazos y Esfuerzo, %estin de "royectos, &inera de 'atos, (alidad, "lanificacin. 1 Introduccin )na de las fases en la gestin del proyecto es la estimacin del esfuerzo y plazo de cada una de las acti idades de las que constar, por lo tanto, es necesario disponer de buena informacin sobre la duracin y el esfuerzo en personas*mes necesarias para realizar cada tarea. 'isponer de esa informacin facilitar la gestin del proyecto tanto a ni el de costes como de plazos, facilitando la distribucin de recursos y disminuyendo los riesgos o zonas criticas. La informacin histrica, procedente del cierre +,- de proyectos anteriores, proporcionar la base de conocimiento sobre la que se podrn aplicar las t!cnicas para e#trapolar este conocimiento a futuros proyectos. El control del coste y su precisin a lo largo de la ida del proyecto, y la recopilacin de los datos caractersticos de cada proyecto al finalizar !ste, producen un efecto de correccin continua que permite fijar modelos especficos que facilitarn la planificacin de los nue os proyectos en todos los aspectos$ costes, plazos y recursos. Es necesario disponer de una herramienta que nos ayude a tener ms conocimiento del problema y permita seleccionar las ariables influyentes sobre las des iaciones del proyecto y que proporcione unas estimaciones ms ajustadas. En este artculo se analiza el desarrollo de un sistema basado en t!cnicas de inteligencia artificial capaz de seleccionar las ariables que afectan a la duracin del proyecto y al esfuerzo necesario para realizarlo a partir de un conjunto de datos histricos. "ara el desarrollo del sistema se utiliz un conjunto de datos pertenecientes al .nternational /oftware 0enchmar1ing /tandards %roup,+2- recopilados a partir de la informacin e#trada de la ejecucin de ms de 3444 proyectos. Estos datos contienen alores num!ricos y categricos, e#istiendo un gran porcentaje de alores perdidos. "or este moti o, los datos fueron sometidos a un e#hausti o preprocesamiento y se seleccionaron las t!cnicas de inteligencia artificial que mejor se ajustaran a la condicin de los datos. "ara desarrollar este articulo se comenzar describiendo cual es el alcance del problema que se pretende buscar solucin. 5 continuacin se enumerar un resumen de las t!cnicas utilizadas actualmente. 'ado que se parte de un conjunto de datos histricos de proyectos anteriores, se aplicar una metodologa de minera de datos. /e describe la metodologa (6./" '& +7- que es la que se ha utilizado para este problema.

"or ultimo se describe del m!todo de modelado y las conclusiones a las que se han llegado para solucionar el problema planteado. 2 Descripcin del Problema La estimacin del coste de un proyecto en sistemas de informacin, consiste en la aplicacin de una serie de t!cnicas y procedimientos que una organizacin utiliza para conocer con adelanto el coste que conlle a el anlisis, desarrollo, implantacin y pruebas del sistema. La estimacin precisa de los recursos y tiempo necesarios para el desarrollo de un proyecto, lo cual es esencial para el perfecto desarrollo de cualquier proyecto, pero ms si cabe, en el sector informtico, en el que los presupuestos y plazos se superan con creces de forma habitual, pro ocando en muchos casos el fracaso del proyecto. La prediccin lo ms e#acta posible de los costes de un proyecto de sistema de informacin es una acti idad crtica a la hora de tomar decisiones de gestin y determinar con detalle el esfuerzo y la dedicacin que el jefe de proyecto, los analistas y programadores que se debern aplicar. /in una capacidad razonable de estimacin de costes, los jefes de proyecto no podrn determinar cuanto tiempo y recursos requiere el proyecto, lo cual significa que !ste est fuera de control desde el principio. Los analistas no podrn hacer anlisis acertados durante las etapas de dise8o, el personal del proyecto no podr decir a sus jefes y clientes que sus plazos y presupuestos son irreales. Esto puede conducir a falsos optimismos y los ine itables retrasos y des iaciones. 5 pesar de que estamos hablando del t!rmino 9estimacin de coste:, en proyectos de sistemas de informacin los alores obtenidos no se suelen medir directamente en unidades monetarias. Las estimaciones suelen ser aloraciones, con un cierto error, del esfuerzo esperado para el desarrollo del proyecto y de los plazos de tiempo requeridos para completarlo. Este es un producto sin e#istencia fsica propia y cuyo coste principal reside en su desarrollo o dise8o ;no en su fabricacin o replicacin a partir de la primera copia<, es lgico que se asuma que el coste de su produccin est dominado por los gastos de personal, midi!ndose en personas*mes o personas*a8o. La estimacin en los proyectos de sistemas de informacin presenta dificultades particulares ya que los productos que generan no se producen una y otra ez, al contrario, es habitual desarrollar un nue o producto cada ez, empleando distintas t!cnicas y herramientas. La estimacin en el software es, por ello, ms ine#acta, aunque no imposible. 'e hecho, otros sectores sufren problemas gra es de estimacin de costes cuando se enfrentan a nue os productos o hay que emplear nue as t!cnicas. E#isten adems, otras razones que dificultan la estimacin de proyectos, entre ellas las presiones en la empresa ;para disminuir el coste o los plazos necesarios< y el hecho de que e#iste una carencia generalizada de datos sobre proyectos terminados ;tama8o del software, costes, producti idad, etc.< que podran guiar a los profesionales a la hora de realizar estimaciones. =odos los m!todos actuales dependen de la cantidad de informacin disponible. 5 medida que se a anza en el proyecto, se obtiene una mayor cantidad de detalles y de informacin ms fiable, por lo que la precisin de la estimacin mejora progresi amente. "or ello, la estimacin siempre debe ser un proceso continuo, con constantes refinamientos y mejoras, ms que una acti idad puntual. 3 !pro"imacin #istrica al problema "ara realizar la recoleccin de los datos necesarios para solucionar el problema planteado, se procede al estudio de otros m!todos utilizados en la actualidad para conocer cuales son los atributos que influyen y ayudan a definir el problema. El coste del desarrollo software es funcin bsicamente del personal necesario y este se deri a de di ersos factores relati os al proyecto, al equipo humano, las condiciones de desarrollo y el producto. La identificacin del producto se realiza mediante m!tricas que caractericen su tama8o que es el factor primario en todos los modelos de coste. E#isten dos formas habituales de medir el tama8o de un proyecto de sistemas de informacin que son, lneas de cdigo y puntos de funcin. El 5nlisis de "untos de >uncin +?- es una m!trica que cuantifica la funcionalidad que hay que entregar al usuario al construir una aplicacin. La propuesta inicial de los puntos de funcin fue realizada por 5. @. 5llbrecht y, desde entonces, ha sufrido di ersos refinamientos y han aparecido diferentes ersiones de la misma. =odas las ariedades de puntos de funcin se apoyan en datos que implican la e#istencia de una especificacin ms o menos formalizada. La originalidad de este m!todo est en que permite medir el tama8o de los proyectos de sistema de informacin, a partir de la isin que tienen los usuarios finales de las funciones que requiere la aplicacin, sin preocuparse de la tecnologa, herramientas o lenguajes de programacin que sern utilizados.

Los puntos de funcin clasifican estas istas en cinco tipos de funcionalidades$ Entradas, en esta categora se encuentra todo el aporte de comunicacin de los usuarios al programa. /alidas, todos los aportes de comunicacin del programa con el usuario. >icheros lgicos internos, principales ficheros lgicos desde el punto de ista del usuario. >icheros de interfaz, ficheros para interactuar con otros programas. (onsultas, todas las entradas que han de pro ocar una salida inmediata. )na ez ponderados estos factores en funcin de la complejidad se consiguen los puntos de funcin no ajustados. "ero para conocer el efecto real de las funciones es necesario incorporar otros datos que introduzcan el efecto de aquellos factores que afecten globalmente a la aplicacin. Estos factores de ajuste tienen en cuenta circunstancias como factores humanos o tecnolgicos. Atro m!todo es &56B .., este m!todo es una e olucin del modelo de 5llan @. 5lbrecht, siendo su principal caracterstica que contempla el sistema como una coleccin de transacciones lgicas compuestas por componentes de entrada, de proceso y de salida. )na ez ajustados los "untos de >uncin, para realizar el clculo de la duracin del proyecto bastar con multiplicar el alor calculado por los das en que se alore cada "unto de >uncin. En cada organizacin se asigna un alor en das, diferente para el "unto de >uncin. =ambi!n e#isten m!todos que cuantifican las funcionalidades con m!tricas orientados a objetos. Atros m!todos que se pueden utilizar para estimar el coste de un proyecto de sistemas de informacin es la 9Opinin de expertos:, que consiste en la consulta a personas e#perimentadas en la materia de que se trate. Atra t!cnica utilizada es la estimacin por analoga, el cual consiste en una ariante ms formal de la opinin de e#pertos en la que se compara el proyecto que se a a desarrollar con uno o ms proyectos terminados de los que se dispone de datos. En funcin de las similitudes y diferencias con dichos proyectos se deduce el coste del nue o desarrollo. Atro conjunto de m!todos son los que se denominan 9 ecuaciones, modelos de estimacin :. En general, son frmulas matemticas que relacionan los di ersos parmetros del proyecto ;tama8o del software que se debe construir, condiciones de entorno del proyecto, etc.< con el coste o esfuerzo requerido. Entre estos se encuentra /L.& y (A(A&A. (A(A&A +C- es un m!todo de estimacin emprica y est basado en datos obtenidos de la e#periencia. (onsiste en estimar el esfuerzo en personas*mes tomando como base el tama8o medido en lneas de cdigo y la duracin del proyecto basndose en el esfuerzo. =ambi!n utiliza unos parmetros de ajuste segDn el tipo o modo de desarrollo del proyecto, que puede ser 9organic:, 9semidetached: y 9embedded:. 5 partir de estas ecuaciones bsicas, (A(A&A distingue tres modelos distintos que se corresponden con las diferentes cantidades de informacin disponible en las distintas etapas del ciclo de ida, que ser bsico, intermedio o a anzado. "ara el clculo final del esfuerzo necesario, adems de las frmulas, se ha de aplicar un factor de ajuste del esfuerzo que incluyen atributos del producto, hardware, del personal y del proyecto. "osteriormente surge una nue a e olucin, (A(A&A .. +C- que se dirige a las siguientes tres fases del ciclo de ida en espiral que son$ desarrollo de aplicaciones, dise8o anticipado y "ost*5rquitectura. =ambi!n se han cambiado los tres modos del e#ponente, se han reemplazado por cinco factores de escala. %&cnicas y 'etodolo()a 'ado que se parte de un conjunto de datos histricos, se plantea utilizar una metodologa orientada a la minera de datos, ya que se pretende conseguir mediante t!cnicas y herramientas e#traer un conocimiento implcito, que actualmente no conocemos y se encuentra almacenado en el conjunto de datos. )tilizar esta metodologa tiene como objeti o predecir de forma automatizada tendencias y comportamientos o construir un modelo desconocido. La metodologa (6./"*'& +7- estructura el ciclo de ida de un proyecto de minera de datos en seis fases, que interactDan entre ellas de forma iterati a durante el desarrollo del proyecto.

>ases del proceso de modelado metodologa (6./"*'&. La primera fase, anlisis del problema, incluye la comprensin de los objeti os y requerimientos del proyecto desde una perspecti a empresarial, con el fin de con ertirlos en objeti os t!cnicos y en una planificacin. La segunda fase de anlisis de datos comprende la recoleccin inicial de datos, en orden a que sea posible establecer un primer contacto con el problema, identificando la calidad de los datos y estableciendo las relaciones ms e identes que permitan establecer las primeras hiptesis. )na ez, realizado el anlisis de datos, la metodologa establece que se proceda a la preparacin de los datos, de tal forma que puedan ser tratados por las t!cnicas de modelado. La preparacin de datos incluye las tareas generales de seleccin de datos a los que se a a aplicar la t!cnica de modelado ; ariables y muestras<, limpieza de los datos, generacin de ariables adicionales, integracin de diferentes orgenes de datos y cambios de formato. La fase de preparacin de los datos, se encuentra muy relacionada con la fase de modelado, puesto que en funcin de la t!cnica de modelado que aya a ser utilizada los datos necesitan ser procesados en diferentes formas. "or lo tanto las fases de preparacin y modelado interactDan de forma sistemtica. En la fase de modelado se seleccionan las t!cnicas de modelado ms apropiadas para el proyecto de minera de datos especfico. 5ntes de proceder al modelado de los datos se debe de establecer un dise8o del m!todo de e aluacin de los modelos, que permita establecer el grado de bondad de los modelos. )na ez realizadas estas tareas gen!ricas se procede a la generacin y e aluacin del modelo. Los parmetros utilizados en la generacin del modelo dependen de las caractersticas de los datos. En la fase de e aluacin, se e alDa el modelo, no desde el punto de ista de los datos, sino del cumplimiento de los criterios de !#ito del problema. /e debe re isar el proceso seguido, teniendo en cuenta los resultados obtenidos, para poder repetir algDn paso en el que, a la ista del desarrollo posterior del proceso, se hayan podido cometer errores. /i el modelo generado es lido en funcin de los criterios de !#ito establecidos en la primera fase, se procede a la e#plotacin del modelo. Eormalmente los proyectos de minera de datos no terminan en la implantacin del modelo sino que se debe documentar y presentar los resultados de manera comprensible en orden a lograr un incremento del conocimiento. 5dems, en la fase de e#plotacin se debe asegurar el mantenimiento de la aplicacin y la posible difusin de los resultados +F-. $ '&todo de 'odelado /iguiendo los pasos marcados por la metodologa, se realiza la adquisicin de los datos para su posterior preparacin y generar el modelo. "ara comenzar el anlisis del conjunto de datos, se ha partido de la base de datos histrica que ha proporcionado ./0/% ;.ntenational /oftware 0enchmar1ing /tandards %roup<, +2- el cual dispone de un repositorio de ms de 3444 proyectos. Los datos con los que se trabaja nos aportan informacin sobre el tipo de proyecto, tipo de producto, desarrollo, tama8o, tipo de equipo, puntos de funcin y esfuerzos. 5 continuacin se procede a realizar una e#ploracin de los datos y una erificacin de la calidad. "ara lo cual se realizan t!cnicas estadsticas bsicas, para encontrar las propiedades de los datos. 'ada la gran cantidad de ariables categricas se procede a realizar histogramas con las frecuencias de ocurrencia.

En este punto se procede a realizar la fase de preparacin de los datos. Esta fase ha sido muy costosa debido a la gran cantidad de alores ausentes, sobre los que se han analizado la utilizacin de di ersas t!cnicas para predecir o eliminar ese hueco en la informacin.
74J I4J C4J ?4J H4J F4J 34J 24J 4J G24 G34 GF4 GH4 G?4 GC4 GI4 G74 G,4

Porcenta.e de -ariables con -alores ausentes

"orcentaje de ariables que con alores ausentes. /e han realizado estudios para comprobar si esa ausencia de informacin tiene algDn tipo de influencia en el esfuerzo necesario para realizar el proyecto, que es la ariable que se ha identificado como salida del modelo. Atro de los problemas encontrados es la gran presencia de ariables categricas de difcil procesamiento por ciertos m!todos de modelado. /e han considerado diferentes t!cnicas para el tratamiento y preprocesado de estas ariables. (uando el nDmero de clases e#istente era reducido ;inferior a seis<, el tratamiento dado a los datos ha consistido en crear tantas ariables como clases. 5s por ejemplo, si la ariable categrica 9plataforma de desarrollo:, contena los alores &6 , &> y "(, se han creado F ariables codificadas como ;2,4,4< si el alor de la ariable es &6, ;4,2,4< si es &> y ;4,4,2< si es "(. (uando el nDmero de clases de una ariable era muy alto ;superior a seis< se ha optado por transformar el alor de la categora directamente a un alor num!rico. "ara el tratamiento de los datos perdidos se ha optado por seleccionar una t!cnica robusta que permita el manejo de este tipo de datos, tal como redes /A&, &56/ +3- y &56= +H-. "ara el proceso de e aluacin de los resultados los datos han sido di ididos en tres conjuntos separados de forma aleatoria$ uno de ellos que contiene el I?J de los datos ha sido destinado a la construccin del modelo, un 24J para la prueba del modelo y seleccin del mejor modelo. Los resultados se han alidado con el 2?J de datos restantes. )na ez generado el modelo se puede obser ar que la ariable que ms informacin aporta a la estimacin del esfuerzo, para este modelo, es el tama8o m#imo del equipo. =ambi!n se puede considerar importante la estimacin de los puntos de funcin y el alor del factor de ajuste. Atro factor importante es la plataforma de desarrollo utilizada y el tipo de lenguaje que se utiliza en la programacin, se ha de destacar que la ausencia de informacin en estas dos ariables tiene una gran importancia relati a para la estimacin del esfuerzo. =ambi!n se ha introducido en el modelo un parmetro informati o respecto a la calidad de la informacin, en este caso se han di idido en cuatro categoras que son$ con incente, correcto, no probado y poca credibilidad. El modelo tambi!n tiene en cuenta si se ha realizado una adaptacin del cdigo, si se ha utilizado planificacin, as como otras ariables relacionadas con la m!trica utilizada y la implicacin de los recursos. * Conclusiones =odas las normas o metodologas de gestin de proyectos que e#isten actualmente hacen hincapi! en la importancia de la gestin de plazos y costes dentro de cualquier tipo de proyecto y mucho ms en los proyectos de sistemas de informacin debido a las peculiaridades propias. El sistema elegido para realizar las estimaciones ha de tener la confianza del director de proyectos y permitir adaptarse a las necesidades cambiantes de la produccin de los nue os sistemas de informacin.

La recopilacin de datos histricos en el cierre del proyecto es imprescindible para actualizar la base de datos de proyectos y para que el sistema pueda ajustar sus parmetros a las condiciones cambiantes de los sistemas de informacin. Referencias 2. ./0/%. .nternational /oftware 0enchmar1ing /tandards %roup. http$KKwww.isbsg.orgK 3. >riedman, @erome L. &ulti ariate 5dapti e 6egression /plines. The annals of statistics. Molumen$2,, EN 2, pag. 2*2H2, 2,,2. F. 6odrguez &. =., Artega >., 6endueles @. L., &enendez (. (on ination of &ulti ariate 5dapti e =echniques and neural networ1s prediction and control of internal cleanliness in /teel /trips. Procedeeings of EUNITE 200 . Aulu 344F H. >riedman, @erome L. %reedy function appro#imation$ a gradient boosting machine. Technical report, department of !tatistics, !tanford uni"ersit# $%%%. ?. .>")%, .nternational >unction "oint )sersO %roup. http$KKwww.ifpug.orgK C. (A(A&A, (onstructi e (ost &odel. http$KKsunset.usc.eduKresearchK(A(A&A..K I. (hapman, ", (linton, @. Bhabaza, =. 6einartz, =. 6Pdiger, Q. =he (6./"*'& "rocess &odelo, (6./"*'& 'iscusin "aper, 2,,, 7. (6./" '&, (6oss*.ndustry /tandard "rocess for 'ata &ining. http$KKwww.crisp*dm.orgK ,. ./A 2444C. %ua de gestin de calidad. (alidad en %estin de "royectos. Carlos !lba /on01le023an.ul14 carlosalbaRapi.unio i.es /emma 'arta 'art)ne0 5uerta4 6oa7u)n 8illanue-a 9alsera4 8aleriano :l-are0 Cabal 2 5rea de "royectos de .ngeniera, )ni ersidad de A iedo. Escuela de &inas, (K.ndependencia H, F44H, A iedo Scarlosalba,gemma,balsera,
alerTRapi.unio i.es

También podría gustarte