Herramientas de desarrollo y soporte usadas en iMade
A continuación se detallan las herramientas que proponemos para el desarrollo y mantenimiento del proyecto.
Entorno de desarrollo Eclipse
Para el desarrollo utilizaremos Eclipse con distintos plug-ins entre los que destaca MyEclipse.
Eclipse es un Software de Desarrollo Open-Source y multiplataforma que proporciona robustez, amplias características, calidad comercial y una plataforma industrial para el desarrollo de aplicaciones de alta calidad. Según la descripción de su página oficial. Eclipse es, en el fondo, un armazón (workbench) de desarrollo sobre el que se pueden montar herramientas de desarrollo para cualquier lenguaje, mediante la implementación de los plugins adecuados.
La arquitectura de plugins de Eclipse permite, además de integrar diversos lenguajes sobre un mismo IDE, introducir otras aplicaciones que pueden resultar útiles durante el proceso de desarrollo como: herramientas UML, editores visuales de interfaces, ayuda en línea para librerías, etc..
Las herramientas que proporciona Eclipse permiten al desarrollador la libertad de elegir el entorno de su proyecto y además proporciona un framework que hace más fácil crear, integrar y usar las herramientas de software de modo que se ahorra dinero y tiempo.
Sistema de Control de Versiones Subversion
Subversion es un nuevo sistema open-source escalable de control de versiones que ha sido diseñado para sustituir a CVS. Subversion gestiona los cambios de ficheros de cualquier tipo y de directorios en un árbol de ficheros que se almacena en un repositorio. El repositorio recuerda cada cambio que se produce en los ficheros y/o en los directorios.
Subversion no tiene un concepto interno de ramas ni de etiquetas. Las ramas y las etiquetas en Subversion se almacenan en un directorio del repositorio.
En base a esto, proponemos la organización del código del proyecto en tres directorios:
-
Directorio Trunk: donde se encuentra la línea principal y actual del desarrollo.
-
Directorio Branches: donde se almacenan otras líneas de desarrollo si son necesarias. También pueden guardarse las modificaciones correspondientes a mantenimientos correctivos o evolutivos de alguna release.
-
Directorio Tags: donde se guardarán las releases finales del producto que se han ido entregando.
Herramientas de gestión de proyecto y documentación
Para la gestión del proyecto, la gestión de incidencias y documentación que proponemos seguir las líneas generales establecidas por proyectos como SourceForge. La idea es centralizar todos los aspectos relacionados con el conocimiento del proyecto en un solo sitio, de forma que los desarrolladores lo puedan utilizar como punto de acceso principal a la información y componentes que conforman el proyecto.
Para ello se propone utilizar la solución TRAC que ofrece la siguiente funcionalidad:
-
Acceso a la documentación del proyecto, utilizando para ello un producto (TRAC) de publicación web ágil, siguiendo el modelo WIKI. Esto permite un acceso dinámico y mantenimiento vivo a la documentación. También incluye acceso a manuales de productos y documentación asociada a los mismos.
-
Reportar incidencias y defectos a los distintos elementos del proyecto, utilizando un "gestor de incidencias" (TRAC). De esta forma los usuarios pueden informar de defectos y seguir el estado de la resolución de los mismos.
-
Acceso al repositorio de versiones Subversion donde se almacenan distintos elementos del proyecto.