Escuela Superior De Ingeniería

Escuela Superior De Ingeniería

ESCUELA SUPERIOR DE INGENIERÍA INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN IMPLEMENTACIÓN DE EXTREMO A EXTREMO EN WS-BPEL 2.0 DE PROCESOS DE NEGOCIO INTERACTIVOS PARA GESTIÓN INMOBILIARIA María de los Ángeles Villalba Fernández 1 de julio de 2015 ESCUELA SUPERIOR DE INGENIERÍA INGENIERO TÉCNICO EN INFORMÁTICA DE GESTIÓN IMPLEMENTACIÓN DE EXTREMO A EXTREMO EN WS-BPEL 2.0 DE PROCESOS DE NEGOCIO INTERACTIVOS PARA GESTIÓN INMOBILIARIA Departamento: Ingeniería Informática Directores del proyecto: Antonia Estero Botaro y Antonio García Domínguez Autora del proyecto: María de los Ángeles Villalba Fernández Cádiz, 1 de julio de 2015 Fdo.: María de los Ángeles Villalba Fernández Agradecimientos Quisiera agradecer al grupo de investigación UCASE que haya confiado en mi para llevar a cabo este proyecto, y en especial, a mis tutores Antonia Estero Botaro y Antonio García Domínguez por tutorizar este proyecto, por todos los conocimientos y el tiempo que me han dedicado. A mi familia, sobre todo a mis padres y mis hermanos por apoyarme, por poder siempre contar con ellos y por darme fuerzas día tras día para continuar y no caer en la tentación de abandonar. Ellos han visto las horas de trabajo y el esfuerzo que le he dedicado a este proyecto. Por todo lo que me habéis ayudado y soportado, gracias. A mis amigos, sobre todo a los más íntimos, que han compartido conmigo este camino y han vivido todo ese esfuerzo dedicado, los que han estado en las malos y buenos momentos. Gracias por animarme a seguir adelante con el proyecto y confiar en mí. Por último, aunque no menos importante, a los familiares que ya no están entre nosotros, que confiaban en mí y me hubiera gustado que vieran como lo he conseguido. Índice general 1. Motivación y contexto 15 1.1. Introducción........................................... 15 1.2. Objetivos............................................ 16 1.3. Restricciones generales..................................... 17 1.4. Conceptos básicos........................................ 18 1.4.1. El lenguaje Java.................................... 18 1.4.2. El lenguaje WS-BPEL 2.0............................... 19 1.4.3. WSDL......................................... 23 1.4.4. SOAP.......................................... 24 1.4.5. XML Schema...................................... 26 1.4.6. XPath 2.0........................................ 27 1.4.7. BPMN 2.0....................................... 27 1.4.8. Maven.......................................... 35 1.4.9. BPELUnit........................................ 37 2. Planificación 41 2.1. Metodología........................................... 41 2.2. Fases del proyecto........................................ 41 2.2.1. Fase 0: Recopilación de la información........................ 41 2.2.2. Fase 1: Análisis y diseño del proyecto......................... 42 2.2.3. Fase 2: Aprendizaje de las tecnologías a utilizar.................... 42 2.2.4. Fase 3: Elección de herramienta gráfica para el desarrollo de composiciones..... 42 2.2.5. Fase 4: Desarrollo de la capa de persistencia, de dominio y los servicios web.... 43 2.2.6. Fase 5: Desarrollo de las composiciones WS-BPEL.................. 43 2.2.7. Fase 7: Pruebas..................................... 43 2.2.8. Fase 8: Documentación................................. 43 2.3. Distribución temporal...................................... 44 3. Análisis del proyecto 47 3.1. Introducción........................................... 47 3.2. Requisitos del sistema...................................... 47 3.2.1. Requisitos funcionales................................. 48 3.2.2. Requisitos no funcionales............................... 48 3.3. Modelo de análisis en UML.................................. 48 3.4. Modelado de casos de uso................................... 49 3.4.1. Diagrama de casos de uso............................... 49 3.4.2. Especificación de casos de uso............................. 49 3.5. Modelo conceptual de datos.................................. 58 3.6. Modelo de comportamiento del sistema............................ 59 3.6.1. Caso de uso: «Registrar cédula hipotecaria»...................... 61 3.6.2. Caso de uso: «Cambio de acreedor».......................... 64 3.6.3. Caso de uso: «Constitución de cédulas hipotecarias de registro»........... 67 7 4. Diseño del proyecto 71 4.1. Arquitectura del sistema.................................... 71 4.1.1. Arquitectura en capas.................................. 71 4.1.2. Arquitectura orientada a servicios........................... 76 4.2. Diseño de la base de datos................................... 79 4.2.1. Diseño conceptual................................... 79 4.2.2. Diseño lógico...................................... 99 5. Implementación de la capa de persistencia, de dominio y API 105 5.1. Implementación de la capa de persistencia y de dominio.................... 105 5.1.1. Hibernate........................................ 105 5.1.2. Java Persistence API.................................. 105 5.1.3. El principio DRY y el patrón GenericDAO...................... 106 5.1.4. El principio IOC y el framework Spring........................ 106 5.1.5. Inyección de Dependencia y Spring framework.................... 107 5.1.6. Programación orientada a aspectos........................... 108 5.1.7. Uso de anotaciones y principio de convención sobre configuración.......... 109 5.2. Implementación de los servicios web.............................. 113 5.2.1. Introducción a los servicios web............................ 113 5.2.2. Desarrollo de los servicios web............................ 114 5.2.3. Apache CXF...................................... 115 5.3. Seguridad en el sistema..................................... 116 6. Implementación de la capa de composiciones 117 6.1. Aprendizaje de nuevos conceptos................................ 117 6.1.1. XForms......................................... 117 6.1.2. XQuery 1.0....................................... 118 6.2. Detalles de implementación................................... 118 6.3. Composición «Registrar cédula hipotecaria».......................... 119 6.3.1. Función que realiza................................... 119 6.3.2. Participantes...................................... 119 6.3.3. Variantes........................................ 119 6.3.4. Formularios....................................... 119 6.3.5. Comportamiento de la composición.......................... 119 6.4. Composición «Cambio de acreedor».............................. 120 6.4.1. Función que realiza................................... 120 6.4.2. Participantes...................................... 124 6.4.3. Variantes........................................ 124 6.4.4. Formularios....................................... 125 6.4.5. Comportamiento de la composición.......................... 125 6.5. Composición «Constitución de cédulas hipotecarias de registro»............... 126 6.5.1. Función que realiza................................... 126 6.5.2. Participantes...................................... 126 6.5.3. Variantes........................................ 130 6.5.4. Formularios....................................... 130 6.5.5. Comportamiento de la composición.......................... 130 7. Pruebas 133 7.1. Introducción........................................... 133 7.2. El proceso de prueba...................................... 133 7.3. Técnicas de diseño de casos de prueba............................. 134 7.3.1. Enfoque estructural o de caja blanca.......................... 134 7.3.2. Enfoque funcional o de caja negra........................... 135 7.3.3. Enfoque aleatorio.................................... 135 7.4. Estrategia de aplicación de las pruebas............................. 135 7.4.1. Pruebas de unidad................................... 135 7.4.2. Pruebas de integración................................. 136 7.4.3. Pruebas del sistema................................... 136 7.4.4. Pruebas de aceptación................................. 137 7.5. Plan de pruebas......................................... 137 7.5.1. Qué se va a probar................................... 137 7.5.2. Cómo se va a probar.................................. 153 7.6. Ejecución de las pruebas.................................... 156 7.7. Detalles de las pruebas..................................... 160 8. Conclusiones 161 8.1. Objetivos alcanzados...................................... 161 8.2. Conclusiones personales.................................... 161 8.3. Trabajo futuro.......................................... 162 A. Manual de usuario 163 A.1. Uso para un Usuario...................................... 163 A.1.1. Entidad de crédito................................... 163 A.1.2. Entidad de crédito compradora............................. 168 A.1.3. Registro de la propiedad................................ 171 A.1.4. Notario......................................... 172 A.2. Uso para el Administrador del sistema............................. 173 A.3. Organización y asignación de tareas a recursos......................... 174 B. Manual del desarrollador 177 B.1. Instalación de herramientas................................... 177 B.1.1. Maven.......................................... 177 B.1.2. JDK de Java...................................... 177 B.1.3. Subversion....................................... 177 B.1.4. Eclipse JEE....................................... 178 B.1.5. TomEE +........................................ 178 B.1.6. Intalio|Designer..................................... 178 B.1.7. Servidor

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    209 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us