7 jours d'essai offerts
Cet ouvrage et des milliers d'autres sont disponibles en abonnement pour 8,99€/mois

Compartir esta publicación

UNIVERSIDADCARLOS III DE MADRID
ESCUELA POLITÉCNICA SUPERIOR
INGENIERÍA INDUSTRIAL
ESPECIALIDAD EN ORGANIZACIÓN INDUSTRIAL
PROYECTO FINAL DE CARRERA
IMPLANTACIÓN DE ARQUITECURA
DE DESARROLLO ÁGIL DEL SOFTWARE
AUTOR: DAVID CAÑADILLAS MEDINA
TUTOR: MARIA TERESA VICENTE DIEZ
Noviembre de 2010Agradecimientos
A mis padres, por la confianza que siempre han depositado en mí.
A mi hermano, que sin su apoyo nunca habría sido posible la realización de muchos
de mis objetivos.
A Mayte, Jose María, Diego, Gonzalo, Sergio y todos aquellos que en la Universidad
siempre me han apoyado y han puesto su granito de arena.
A todos, muchas gracias
3The best way to predict the future is to invent it.
Alan Kay
5Índice general
1. INTRODUCCIÓN AL PROYECTO 1
1.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1. Desarrollo de ingeniería del software. . . . . . . . . . . . . . . . . . 6
1.1.2. Optimizar el desarrollo software . . . . . . . . . . . . . . . . . . . . 8
1.1.3. Plataformas y arquitecturas de desarrollo . . . . . . . . . . . . . . . 10
1.2. Objetivos del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3. Fases y metodología del proyecto . . . . . . . . . . . . . . . . . . . . . . . 14
2. ESTADO DEL ARTE 17
2.1. Metodologías Ágiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2. Calidad del desarrollo software . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.3. Integración Continua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4. Integración del desarrollo en un entorno ágil . . . . . . . . . . . . . . . . . 39
3. ANÁLISIS DE HERRAMIENTAS DE LA ARQUITECTURA 41
3.1. Herramientas de Integración Continua . . . . . . . . . . . . . . . . . . . . 41
3.2. Plataformas de desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2.1. Entorno de Desarrollo Integrado . . . . . . . . . . . . . . . . . . . . 59
3.2.2. Sistemas Operativos . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.3. Herramientas de desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.3.1. Maven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
i3.3.2. Nexus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.3.3. Mercurial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4. DISEÑO Y DESPLIEGUE DE LA ARQUITECTURA 93
4.1. Fases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.1.1. Estudio o diseño . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.1.2. Planificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.1.3. Implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
4.1.4. Despliegue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.2. Seguimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.2.1. Fases de no ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.2.2. Fases de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5. CASO DE ESTUDIO 117
5.1. Desarrollo de un ERP para sector específico . . . . . . . . . . . . . . . . . 117
5.1.1. Negocio objetivo del producto software . . . . . . . . . . . . . . . . 120
5.1.2. Participantes en el desarrollo . . . . . . . . . . . . . . . . . . . . . . 122
5.1.3. Gestión del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . 125
5.1.4. Arquitectura del software a programar . . . . . . . . . . . . . . . . 129
5.2. Implantación de la arquitectura y pruebas . . . . . . . . . . . . . . . . . . 133
5.2.1. Implantación inicial y fases . . . . . . . . . . . . . . . . . . . . . . . 134
5.2.2. Pruebas realizadas sobre la arquitectura . . . . . . . . . . . . . . . 143
5.3. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
5.3.1. Datos iniciales en la implantación . . . . . . . . . . . . . . . . . . . 149
5.3.2. Datos de Mejora Continua . . . . . . . . . . . . . . . . . . . . . . . 151
5.3.3. Datos de Integración . . . . . . . . . . . . . . . . . . . . . . . . . . 153
5.3.4. Otros resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
5.3.5. Análisis global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
6. CONCLUSIONES 163
6.1. Conclusiones sobre los objetivos . . . . . . . . . . . . . . . . . . . . . . . . 163
ii6.2. Conclusiones generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
7. FUTURAS LÍNEAS DE TRABAJO 169
A. PRESUPUESTOS 175
APÉNDICES 175
B. INSTALACIONES Y CONFIGURACIONES 181
B.1. Repositorio Mercurial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
B.1.1. Instalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
B.1.2. Configuración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
B.2. Hudson CI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
B.2.1. Instalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
B.2.2. Configuración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
B.3. Maven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
B.3.1. Instalación Maven . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
B.3.2. Nexus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
B.3.3. Configuracion de integración Maven y Nexus . . . . . . . . . . . . . 194
B.3.4. Configuración de Nexus . . . . . . . . . . . . . . . . . . . . . . . . 200
B.4. Entornos de Desarrollo Integrado . . . . . . . . . . . . . . . . . . . . . . . 202
B.4.1. Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
B.4.2. NetBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
B.5. Otras Instalaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
B.5.1. Sonar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
GLOSARIO 211
iiiiv