Estructura estándar de los fuentes
- Área: Área Gestión de la Entrega
- Tipo de pauta: Directriz
- Carácter de la pauta: Obligatoria
El código fuente de las aplicaciones basadas en java que se desarrollen para la Junta de Andalucía debe seguir una estructura estándar con objeto de facilitar su comprensión, configuración, despliegue, verificación y mantenimiento. La estructura del código fuente que se entregue al menos debe estar basada en Maven
Cualquier aplicación basada en Java debe desarrollarse usando Maven como herramienta de construcción. De esta forma cualquier versión de un desarrollo que se entregue en la Junta de Andalucía tendrá una estructura estándar con una organización de los recursos similar y podrá usarse para generar el empaquetamiento (war, ear etc..) para despliegue a partir de los fuentes.
Como ayuda para estructurar las aplicaciones se propone una serie de esqueletos que extienden la estructura que aporta Maven por defecto. Se definen dos tipos de estructuras para aplicar según la complejidad del proyecto:
- Estructura de un proyecto web simple.
- Estructura de un proyecto con múltiples módulos.
El primero se puede considerar un caso particular del segundo. Un proyecto de sólo un módulo que es de tipo web.
Para aplicar el uso de una de estas estructuras al desarrollo del proyecto consultar la Guía de la Estructura del Software.
Los esqueletos expuestos antes son una recomendación y su uso está sujeto a lo que decida la dirección específica del proyecto y a lo especificado en las condiciones particulares de cada proyecto.
Se debe estudiar al comienzo del proyecto la versión de Maven a utilizar, recomendándose para proyectos nuevos la utilización de Maven3, siempre teniendo en cuenta la compatibilidad con el resto de herramientas que vayan a utilizarse en el proyecto: Artifactory, Sonar, Hudson, Jenkins, etc.. En el caso de proyectos ya comenzados en Maven 2, se debe estudiar el impacto y viabilidad de migración a la versión 3.
Contenidos relacionados
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
PAUT-0082 | Definición del entorno de entrega o recepción del software | Pauta | Directriz | Recomendada |
Código | Título | Tipo | Carácter |
---|---|---|---|
RECU-0323 | Guía de la Estructura del Software | Manual | Recomendado |
RECU-0681 | Características de Maven3 respecto a Maven2 | Referencia | Recomendado |
RECU-0322 | Maven2 | Manual | Recomendado |