Propuesta para Trabajo de Grado



Yüklə 435,76 Kb.
səhifə2/10
tarix01.11.2017
ölçüsü435,76 Kb.
#25557
1   2   3   4   5   6   7   8   9   10

INTRODUCCIÓN


Un estudio realizado por Standish Group [Standish Group International Inc., 2010] revela que el 71% de los proyectos de desarrollo de software no tienen éxito, y 7 de las 10 causas de este fracaso se atribuyen a errores de carácter humano; en este mismo sentido, la V Encuesta Nacional de Gerencia de Proyectos de Tecnologías de Información, elaborada por ACIS en 2007 [Cueto Vigil, 2007], señaló también, que dicho problemas se debe a factores como la defectuosa comunicación, la falta de apoyo y seguimiento gerencial, y un control deficiente a los cambios.

Como se desprende de los estudios mencionados, actualmente se evidencia una grave falla en la gestión de proyectos de software que radica principalmente en el componente humano.

Derivado de esto, surgen las metodologías ágiles [Beedle, y otros, 2001], que a través de la estrategia “dividir es vencer”, proponen entregas iterativas e incrementales siguiendo principios de comunicación permanente entre desarrolladores y clientes; además proponen dividir el proyecto en un contrato para la fase de ingeniería (levantamiento de requerimientos y casos de usos) y otro para la de producción. Lo anterior, permite un eficiente seguimiento al progreso del proyecto, y como consecuencia, éste se termina a tiempo, no se excede el presupuesto estimado, se genera una mayor productividad, aumenta la calidad del software y por ende, se satisfacen los requerimientos del cliente.

Es por esto, que como respuesta a las necesidades planteadas previamente, el actual proyecto de grado ConstruColectiva propone utilizar los principios de las metodologías ágiles en la gestión de proyectos de software, haciendo uso de un ambiente de desarrollo colaborativo, que permita automatizar los procesos en la gestión de proyectos de software. Si bien estos ambientes existen desde hace varios años, muchos gerentes de proyectos no los conocen o los usan superficialmente sin aprovechar sus facilidades de automatización de procesos.

Como ambiente de desarrollo colaborativo se resolvió adoptar en este trabajo la herramienta GForge [GForge Group, 2007], debido a que se puede descargar e instalar en un servidor de la organización, ofrece confidencialidad, permite, la automatización de los procesos de seguimiento del proyecto y cuenta con licencia GPL (GNU General Public License) [Free Software Foundation, Inc, 2009], que permite el aprovechamiento de los servicios ofrecidos por la herramienta sin generar costos (para un máximo de 15 usuarios).

El objetivo de este trabajo de grado es el de elaborar una guía metodológica que oriente la gestión de proyectos de software siguiendo metodologías ágiles y utilizando todas las facilidades del ambiente colaborativo GForge. El producto final se ha denominado “ConstruColectiva: Guía metodológica para la gestión de proyectos de software basados en metodologías ágiles, utilizando a GForge como ambiente de desarrollo colaborativo”.

Adicionalmente, como metas secundarias se plantearon diversas actividades, tales como la realización de una comparación de las herramientas de los ambientes de desarrollo colaborativo, la elaboración de un manual de instalación de GForge, que sirvieron de soporte a la principal finalidad del presente trabajo.

Para la validación de la guía se ha contado con la interacción de la asesora de tesis, quien cuenta con 10 años de experiencia de gestión de proyectos empresariales, y con la interacción de expertos de una casa de software reconocida en Colombia.

En el presente documento se resume el levantamiento de información realizado para el trabajo, y la definición de los procesos de un proyecto de software siguiendo metodologías ágiles y en términos de las facilidades ofrecidas por el ambiente GForge (trackers y workflows). El producto principal del trabajo lo constituye la guía metodológica ConstruColectiva redactada en un documento aparte e incluido en un CD junto con manuales y formatos elaborados también en el trabajo.

Por último, se resalta como conclusiones del trabajo que al soportar la gestión de proyectos de software basados en metodologías ágiles por medio de un ambiente de desarrollo colaborativo como GForge, y documentar cada uno de los pasos que se tienen que llevar a cabo en la herramienta, se ha logrado ilustrar la automatización de los planes de este tipo, obteniendo la centralización de la información relacionada al estado de un proyecto y apoyando la toma de decisiones que se requiere durante su gestión.


I - DESCRIPCIÓN GENERAL DEL TRABAJO DE GRADO

I.1. Oportunidad ó Problemática

I.1.1. Descripción del contexto


En la actualidad existen ambientes de desarrollo colaborativos vía web que se utilizan para apoyar la gestión de proyectos de software. Estos ambientes son principalmente portales en línea  que permiten la gestión de un proyecto de software por medio del control de tareas, la puesta a disposición de los diferentes documentos y recursos del proyecto a sus stakeholders, y brinda diferentes mecanismos de comunicación, entre los que se destacan la notificación de los sucesos importantes vía correo electrónico, el uso de foros y Wikis en donde se publican las noticias más relevantes y las discusiones que van surgiendo durante el desarrollo del proyecto [Booch & Brown, 2002].

En la gestión de proyectos de software se utilizan diferentes herramientas de software, tales como, Microsoft Project, CVS, Subversion, IDEs, algunos ambientes de desarrollo colaborativo, entre otras, las cuales se utilizan generalmente de manera independiente o parcial para los proyectos que se estén llevando a cabo.

El uso de diversas herramientas en la gestión de proyectos de software de forma descentralizada e independiente, tiene como principal problema la falta de comunicación que se requiere entre sus diferentes funcionalidades, para llevar a cabo la ejecución de un workflow íntegro durante las diferentes etapas del proyecto que se esté desarrollando, dificultando el control sobre las actividades que se han planeado y llevar a cabo la recolección de las métricas de calidad necesarias impuestas en el ambiente de desarrollo.  Además, otro problema que tiene el uso de herramientas diversas en la gestión de proyectos de software, es la ubicación de la información, ya que ésta se encuentra también dispersa, ocasionando mayores costos en su búsqueda y organización para las necesidades que se tienen durante el desarrollo de un proyecto específico.

Por otra parte, al desconocer las funcionalidades que brindan los ambientes de desarrollo colaborativo en la gestión de proyectos de software, y específicamente en aquellos que utilizan las metodologías ágiles como enfoque de desarrollo, se desaprovechan las herramientas que estos ambientes ofrecen en lo referente a la automatización de los procesos que requiera cada proyecto específico.

Por lo tanto, el seguimiento a cada una de las actividades planeadas se dificulta, al no contar con la información necesaria de forma centralizada en tiempo real en el momento que se requiera de forma automática y sin restricciones de localización ni tiempo [Booch & Brown, 2002].

I.1.2. Formulación


Las metodologías ágiles de desarrollo de software resaltan el trabajo en equipo con una buena comunicación entre los integrantes, una rápida retroalimentación y se busca responder de manera oportuna al cambio [Beedle, y otros, 2001].

En la gestión de proyectos de software basados en metodologías ágiles, es necesario manejar las actividades, comunicarse con los stakeholders, compartir documentos e información relevante para el proyecto, ejerciendo el control sobre el progreso del proyecto para el apoyo a la toma de decisiones [Beedle, y otros, 2001].

Para estos casos, conviene utilizar los ambientes de desarrollo colaborativos, los cuales facilitan el progreso de un proyecto de software por medio de la integración de diferentes herramientas como CVS, foros, estadísticas de trabajo, seguimiento a las actividades planeadas, organización de los documentos y demás información relevante al proyecto, además de ofrecer servicios de autenticación a los roles definidos con sus correspondientes permisos para brindar mayor seguridad, todo esto desde una plataforma web [Booch & Brown, 2002].

Sin embargo, se tiene que con estos ambientes de desarrollo colaborativos, las empresas hoy en día, desconocen todas sus funcionalidades y no disponen del conocimiento que les permita aprovecharlos en la gestión de sus proyectos de software. Por eso es necesario que cada uno de los stakeholders conozca por medio de una guía metodológica cómo funcionan estos ambientes de desarrollo colaborativos.

De lo anterior surge la siguiente inquietud, la cual pretendemos solucionar con el desarrollo del presente proyecto de grado:

¿Cómo elaborar una guía metodológica que permita el uso ordenado de las funcionalidades que ofrecen los ambientes de desarrollo colaborativo dentro de la gestión de proyectos de software basados en metodologías ágiles?



Yüklə 435,76 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   10




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin