Herramientas de gestión de proyectos Open Source
Raúl Sanz de Acedo Blanca Esther Cubas Cruz Centro de Excelencia Software Java y Open Source CEIN, S.A. 2008
Índice DE ESCRITORIO:
4
GANTTPROJECT PLANNER OPEN WORKBENCH TASKJUGGLER OPENPROJ
4 4 4 4 4
ENTORNO WEB:
5
TEAMSCOPE NETOFFICE DWINS PHPCOLLAB ACHIEVO XPLANNER PPTS XPWEB TRAC OPENPROJECT TUTOS PROJECT DUNE COLLABTIVE MINDQUARRY CLOCKINGIT LIBRESOURCE
5 5 5 5 5 5 5 6 6 6 6 6 6 6 7
NUESTRA ELECCIÓN:
8
TEAMWORK REDMINE
8 9
BIBLIOGRAFÍA
11
Herramientas de gestión de proyectos Open Source por Raúl Sanz de Acedo y Blanca Esther Cubas Cruz se encuentra bajo una Licencia Creative Commons Reconocimiento 3.0 Unported. Unported . This work is licensed under the Creative Commons Attribution 3.0 Unported License. To view a copy of this thi s license, visit http://creativecommons.org/licenses/by/3.0/ http://creativecommons.org/licenses/by/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
2|Página
Julio 2008 Hará unos meses, nos vimos en la tesitura de buscar una herramienta de gestión de proyectos para el Centro Java y Open Source. Hasta el momento, habíamos estado trabajando con dotproject, un sistema con bastante capacidad y funcionalidades. No obstante, resultó ser una herramienta algo pesada en la creación de planificaciones y tediosa en el mantenimiento día a día. Buscábamos principalmente una herramienta que no solo gestionase la parte de planificación, sino también la parte de seguimiento posterior para mantener el control sobre el proyecto. Además, deseábamos un entorno colaborativo, multi-usuario y participativo entre nosotros y cualquier colaborador externo. Lo cual, más que un requerimiento funcional supone un cambio cultural, la parte más compleja. Todo esto, en principio, decantaba la decisión por una opción on-line en detrimento de una de escritorio. No obstante, decidimos valorar también las de escritorio, no fuera que por empecinarnos en unas funcionalidades descartásemos otras importantes. A continuación describiré brevemente algunas de las herramientas valoradas:
3|Página
De escritorio: GanttProject http://www.ganttproject.biz/ Aplicación de escritorio muy extendida y útil que permite planificar tareas y recursos sobre un diagrama Gantt. Se trata de una herramienta similar a MS Project pero más sencilla lo cual puede ser en algunos casos una ventaja. Otra característica interesante es que funciona tanto en Linux como en Windows y tiene diversos formatos de exportación e importación.
Planner http://live.gnome.org/Planner Aplicación de escritorio bastante extendida y algo más completa a la anterior (a pesat de tener menos opciones de importación y exportación), pero muy similar. En este caso está desarrollada para Linux, aunque existe versión beta para Windows.
Open Workbench http://www.itdesign.de/en/ppm/open-workbench/overview.html Aplicación de escritorio muy completa. Al igual que las anteriores permite gestionar tareas y recursos sobre un diagrama Gantt, aunque también permite otros diagramas como Pert, camino crítico y funcionalidades más avanzadas. Se vanagloria de ser incluso mejor que MS Project.
TaskJuggler http://www.taskjuggler.org/download.php Se trata de una herramienta de escritorio disponible tanto para Windows como para Linux un tanto peculiar. Genera una serie de informes bastante completos a partir de un fichero d e texto. El interfaz es bastante amigable, pero el hecho de andar editando un fichero de texto que contiene la planificación no resulta muy cómodo.
OpenProj http://sourceforge.net/projects/openproj/ Otro programa de escritorio sustitutivo de MS Project y de apariencia muy similar. Tiene versiones para Linux, Unix, Mac y Windows y es compatible con ficheros MS Project y con todas sus funcionalidades. No obstante, parece no estar indicado para proyectos de grupo. En estos casos te ofrecen una versión on-line (Project-ON-Demand) bajo demanda y de pago bastante interesante.
4|Página
Entorno web: TeamSCOPE http://cscw.msu.edu/scope/teamscope.html Team Software for Collaborative Project Environments es una herramienta web de colaboración. Desarrollado para funcionar sobre Debian, fue creado por una universidad pero parece haberse quedado bastante anticuado.
netOffice Dwins http://netofficedwins.sourceforge.net/ Herramienta web basada en PHP sobre MySQL para gestionar proyectos, tareas, registros de tiempos, incidencias/errores, diagramas de Gantt (aunque un poco escondidos), etc, similar pero algo más agradable que dotProject ( http://www.dotproject.net/)). Tiene ciertos tintes de herramienta de colaboración en grupo http://www.dotproject.net/ (groupware).
phpCollab http://www.phpcollab.com/blog/ Herramienta web basada en PHP que ha sufrido un desarrollo intermitente por lo que parece. Sirve tanto para la gestión de tareas como para el seguimiento de incidencias/errores. Tiene un aspecto similar a netOffice lo cual hace pensar que uno de los dos proyectos deriva del otro. Quizás por esa razón, de elegir una de las dos, sea más recomendable netOffice. n etOffice.
Achievo http://www.achievo.org/ Herramienta web PHP sobre MySQL para la gestión de proyectos, tareas, recursos, registro de tiempos, agenda, generación de informes, etc. Bastante completo, además parece incluir sección presupuestaria.
XPlanner http://xplanner.codehaus.org/ http://sourceforge.net/projects/xplanner/ Herramienta web Java sobre MySQL para la gestión de proyectos mediante XP y Scrum. No obstante parece estancada en una versión beta desde el 2006.
PPTS http://ses-ppts.sourceforge.net/ Project Planning and Tracking System (PPTS) es una herramienta Web para la gestión de proyectos con metodologías XP y Scrum al igual que la anterior. Esta desarrollada en PHP contra
XPWeb http://xpweb.sourceforge.net/ Al igual que las anteriores es una herramienta web para la gestión de proyectos ágiles, incluyendo gestión de tareas, calendarios, informes, etc. También parece estancada.
5|Página
Trac http://trac.edgewall.org/ Herramienta web ampliamente extendida en la comunidad open source para, fundamentalmente, el seguimiento proyectos. Se centra en la gestión de incidencias y errores, aunque tiene funcionalidades añadidas interesantes como Wiki e integración con Subversión. Hay que reseñar que se trata de una herramienta mono-proyecto y que no cuenta con Gantt.
OpenProject http://www.project-open.com/ Herramienta web de gestión de proyectos muy completa. Posee todo lo necesario, tanto que uno llega a perderse. No obstante, pueden configurarse los módulos que desean usarse y descartar aquellos que no son necesarios: calendario, gestión de tareas, seguimiento de incidencias, control presupuestario, Wiki, foros, integración con ERPs, diagramas Gantt y una larga lista de funcionalidades.
Tutos http://www.tutos.org/homepage/index.html The Ultimate Team Organization Software, o eso pretende. Se trata de una herramienta web LAMP con muchas funcionalidades: calendario y agenda, seguimiento de incidencias y errores, gestión de tareas, diagramas Gantt, gestión documental, gestión de correos, facturas e informes. Interesante pero austera de aspecto y un poco anticuada.
Project Dune http://sourceforge.net/projects/pdune/ Herramienta web desarrollada en Java contra MySQL que parecía prometer bastante. Tiene lo necesario: gestión de tareas, recursos, incidencias, gestión documental, registro de tiempos, informes, calendario y agenda, RSS, inspección de código, importación de MS Project, etc. No obstante, en su evaluación, dejó bastante que desear r esultando poco práctica y manejable.
Collabtive http://collabtive.o-dyn.de/ Se trata de una herramienta web LAMP para la gestión de proyectos. Según se indica en la web cubre la gestión de tareas e incidencias, gestión documental y mensajería. Es muy limpia, sencilla y ágil. No obstante, no parece contar con diagramas Gantt, ni con registro de tiempos o informes de estado. En la práctica parece quedarse un poco justa, pero prometedora.
Mindquarry http://code.google.com/p/mindquarry/ http://mindquarry.sourceforge.net/ Herramienta web desarrollada en Java que pretende ser la alternativa open source de soluciones propietarias como Basecamp o Sharepoint para la gestión de proyectos y grupos de trabajo de forma colaborativa. Tiene una versión open source para descarga y otra como servicio bajo demanda. La pega es que la empresa parece haber dejado de desarrollar su actividad.
ClockingIT http://www.clockingit.com/
6|Página
Se trata de una herramienta Web desarrollada en Ruby como servicio bajo demanda. Permite una gestión de tareas, agenda siguiendo el estándar iCal, seguimiento de tiempos, generación de informes, notificaciones, RSS, foros, Chat y Wiki, repositorio de ficheros, etc.
LibreSource http://dev.libresource.org/ Se trata de una plataforma web colaborativa para el desarrollo de software, lo que se suele denominar forja y funcionalidades de groupware, archivado y publicación web. Es open source y altamente ajustable. Permite alojar múltiples proyectos, varios grupos de usuarios, etc. Está desarrollada en J2EE e incorpora entre otras cosas: Wiki, integración con Subversion, zonas de descarga, gestión documental, mensajería instantánea con Jabber, gestión de incidencias, etc. No fue evaluada al ser descubierta posteriormente p osteriormente a la implantación
7|Página
Nuestra elección: Aunque existen infinidad más, de entre todas nos decantamos por dos que valoramos más en profundidad:
TeamWork http://www.twproject.com/ Se trata de una herramienta web desarrollada en Java por unos Italianos. Entre sus funcionalidades cabe destacar la gestión de proyectos y ta reas con diversos diagramas de Gantt muy logrados, gestión de incidencias, gestión documental, entorno colaborativo tipo groupware, control de costes, registros de tiempos, etc. Es muy completo, rápido de respuesta y posee características muy interesantes como una interesante y útil navegación contextual entre tareas del proyecto, perfiles de usuario según proyecto, importación de planificaciones desde MS Project o asociación entre incidencias y tareas. Cuenta con wizards para la configuración de la herramienta de forma rápida y sencilla, incluyendo la posibilidad de generar plantillas pl antillas para aplicar metodologías ágiles (Scrum). El registro de horas por tarea para un desarrollador se realiza de forma muy cómoda y rápida, desde una simple vista, facilitando la participación del mismo. Se trataba de una aplicación muy completa, quizás demasiado, un poco compleja de entender en un comienzo pero con muchas posibilidades. No obstante, tenía alguna que otra pega, aunque es open source, posee una licencia de pago para su uso que en cualquier caso era muy pequeña. Tiene una versión de evaluación de 30 días para quien desee probarla antes de decidir. Por otro lado no distingue proyectos, existe una tarea padre que agrupa toda la planificación asociada, tampoco cuenta con Wiki y no gestiona las vacaciones del personal.
8|Página
La otra herramienta valorada más en profundidad fue:
Redmine http://www.redmine.org/ Se trata de otra herramienta web, en este caso desarrollada en Ruby on Rails con una gran cantidad de funcionalidades que la acerca bastante a una forja pero sin tener la complejidad de la misma. Entre sus características cabe destacar la gestión de tareas, incidencias, diagramas de Gantt, calendario de actividades, noticias, foros, wikis, gestión de ficheros y documentos, integración con Subversión, control de tiempos, generación de informes, etc, todo esto por proyecto. Por similitudes del interfaz y funcionalidades parece estar basado en Trac pero con un lavado de cara y de código importante, además de ser multi-proyecto. Al igual que la anterior también poseía una serie de características que la hacía diferente, como la posible navegación anónima de lectura, si así se desea, sobre los proyectos alojados. Interesante desde el punto de vista de filosofía open source. Posibilidad de definir un perfil distinto por usuario según el proyecto en el que participa. También cuenta con sindicación de RSS para las secciones de noticias, tareas, incidencias, etc y exportación a ficheros de texto y HTML desde la Wiki, los informes generados, e incluso el diagrama de Gantt. A parte, se trata de un interfaz muy limpio, intuitivo, sencillo de usar y rapidísimo. La configuración de la herramienta resulta, así mismo, muy sencilla, con un par de clics puedes empezar a funcionar. Cada proyecto puede configurarse con los módulos que desees que tenga, además de poder definir campos personalizados por proyecto y tarea para p ermitir una mayor adaptación. Cabe destacar que para esta herramienta existe un único concepto denominado petición que puede ser de tres tipos: tareas, soporte o incidencia. De esta forma todo se gestiona de igual forma, lo cual lo simplifica pero a su vez puede convertirse en un volumen ingestionable de tareas. Para evitar esto, se pueden definir categorías a las que pertenece una petición y realizar posteriormente filtrados de peticiones en las vistas según este y otros parámetros. No obstante, no todo iba a ser color de rosa, tiene una serie de limitaciones como el sistema un tanto engorroso de enlazar peticiones, o el hecho de que una vez creada una petición, su nombre y descripción no se pueden pu eden modificar, tan solo ir añadiendo nuevas descripciones. En este punto nos encontrábamos en una difícil decisión puesto que ambas herramientas nos gustaban, cubrían lo necesario pero se trataban de herramientas muy distintas en concepción. Para facilitar la decisión realizamos un cuadro comparando las características y priorizándolas según nuestro interés. El resultado fue el siguiente:
Prioridad Característica
Redmine
Teamwork
9 8 8 7 7 7
Integración Integración con LDAP Integración con Subversion Traducido al español Importación desde Project Exportación a Project Centros de coste
Si Si No Si Si Si
7
Wikis de proyectos
Si Si Si No No Posible mediante los campos personalizados. Si
9|Página
7 6
Personalización / extensión Gestión de vacaciones
6
Vida de la herramienta
5 5 4 3 2 1 1
Facilidad de configuración Usuarios multi-perfil Acceso restringido a usuarios Sencillez de manejo Seguimiento de incidencias Asignación de tareas Imputación a tareas asignadas
Si No
Si Vacaciones a nivel de empresa Indeterminado al ser Algo más seguro una herramienta open porque hay una source. empresa detrás. Si Si Si Si Si Si Si Si Si Si Si Si
Tras una difícil reflexión, puesto que ambas se encontraban muy parejas, decidimos decantarnos por Redmine, primando la sencillez y rapidez. Existía la posibilidad de que terceros la empleasen y veíamos que Redmine permitía una mayor facilidad en su manejo y resultaba más intuitiva de cara a aprender a utilizarla. Posteriormente tras su uso hemos detectado algunos inconvenientes importantes como la imposibilidad de asignar una petición a más de un usuario, pero es que, no hay herramienta perfecta.
10 | P á g i n a
Bibliografía http://www.navegapolis.net/content/view/56/49/ http://www.simpleprojectmanagement.com/home.html http://www.web-based-software.com/project/ http://en.wikipedia.org/wiki/Comparison_of_issue_tracking_systems http://en.wikipedia.org/wiki/List_of_project_management_software http://www.pmdigest.com/software/
11 | P á g i n a