Identifying Data 2020/21
Subject (*) Application Integration Code 614G01080
Study programme
Grao en Enxeñaría Informática
Descriptors Cycle Period Year Type Credits
Graduate 1st four-month period
Fourth Optional 6
Language
Spanish
Teaching method Hybrid
Prerequisites
Department Ciencias da Computación e Tecnoloxías da Información
Computación
Coordinador
Álvarez Díaz, Manuel
E-mail
manuel.alvarez@udc.es
Lecturers
Álvarez Díaz, Manuel
Losada Perez, Jose
E-mail
manuel.alvarez@udc.es
jose.losada@udc.es
Web http://moodle.udc.es
General description Esta materia céntrase no estudo de técnicas de integración de aplicacións empresariais. Para elo analiza as diferentes aproximacións existentes tanto para facilitar a integración como para xestionala. Para ilustrar todos estes conceptos xerais, farase uso de tecnoloxías utilizadas habitualmente na industria para estes propósitos, como servicios web RESTFul, e sistemas de integración orientada a servizos (SOA). O enfoque da materia é fundamentalmente práctico, polo que se proporcionan múltiples exemplos de código durante as clases teóricas, e a práctica ten un forte impacto na nota final da materia.
Contingency plan 1. Modificacións nos contidos
Ningunha.

2. Metodoloxías
*Metodoloxías docentes que se manteñen
Todas.
As sesións maxistrais xa estaba previsto impartilas a través de Teams.
A docencia correspondente á parte práctica (prácticas de laboratorio e traballos tutelados) tamén estaba previsto impartilas a través de Teams, con sesións grupais cando fose preciso explicar contidos e sesións privadas para atender dúbidas individuais de cada alumno ou grupo de prácticas (de maneira semellante a como se procede nos laboratorios de prácticas).

*Metodoloxías docentes que se modifican
Ningunha.

3. Mecanismos de atención personalizada ao alumnado
Mantéñense as recollidas no apartado correspondente da guía docente.

4. Modificacións na avaliación
A proba de resposta múltiple realizaríase a través de Moodle.

*Observacións de avaliación:
Mantéñense as recollidas no apartado correspondente da guía docente.

5. Modificacións da bibliografía ou webgrafía
Ningunha.

Study programme competencies
Code Study programme competences
A56 Capacidade para seleccionar, despregar, integrar e xestionar sistemas de información que satisfagan as necesidades da organización, cos criterios de custo e calidade identificados.
B1 Capacidade de resolución de problemas
B3 Capacidade de análise e síntese
C3 Utilizar as ferramentas básicas das tecnoloxías da información e as comunicacións (TIC) necesarias para o exercicio da súa profesión e para a aprendizaxe ao longo da súa vida.
C6 Valorar criticamente o coñecemento, a tecnoloxía e a información dispoñible para resolver os problemas cos que deben enfrontarse.

Learning aims
Learning outcomes Study programme competences
Capacidade para deseñar, implementar e despregar servizos software (con énfasis en servicios web) mediante o uso de tecnoloxías modernas e técnicas de diseño estándar, e para xestionar a sua integración en arquitecturas de sistemas de información orientadas a servizos. A56
B1
B3
C3
C6

Contents
Topic Sub-topic
Parte I. Introdución Tema 1: Introdución as Tecnoloxías de Integración de Aplicacións
Parte II. Integración de Aplicacións: Procesos de Negocio Tema 2: Arquitecturas de Integración de Aplicacións
Tema 3: Orquestación de Servizos Web
Parte III. Integración de Aplicacións: Servizos Web REST Tema 4: Introdución a Servizos Web REST
Tema 5: Titorial de JAX-RS
Tema 6: Titorial de JAX-B
Tema 7: Caso de Estudo
Tema 8: Titorial Avanzado de JAX-RS

Planning
Methodologies / tests Competencies Ordinary class hours Student’s personal work hours Total hours
Guest lecture / keynote speech A56 21 21 42
ICT practicals A56 B1 B3 C3 C6 19 53 72
Supervised projects A56 B1 B3 C3 C6 2 20 22
Multiple-choice questions A56 B3 2 5 7
 
Personalized attention 7 0 7
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies Description
Guest lecture / keynote speech Clases impartidas polo profesor mediante a proxección de diapositivas. As clases teñen un enfoque totalmente práctico, explicando os conceptos teóricos mediante o uso de exemplos sinxelos e casos de estudo. As presentacións e o código fonte dos exemplos e os casos de estudo están dispoñibles na páxina Web da materia na ferramenta moodle. As clases de teoría impartiranse online (Teams) no horario oficial.
ICT practicals Ao longo do cuadrimestre realizaranse prácticas en grupo, nas que o alumno utiliza a maior parte dos coñecementos teóricos de maneira integrada. A entrega realízase en varias iteracións. O obxectivo da primeira iteración é intentar garantir que o alumno enfoca ben a resolución do problema proposto. Para elo, o profesor intenta detectar erros importantes, e nese caso, orienta ao alumno hacia a sua resolución. Na segunda iteración o alumno corrixe os erros detectados e engade o resto de funcionalidades.

Para os alumnos con matrícula a tempo parcial, o tamaño da práctica será menor, sin que isto supoña un perxuicio na su calificación.

As clases de prácticas impartiranse online (Teams) no horario oficial.
Supervised projects Realizarase un traballo teórico/práctico dirixido, relacionado coa evaluación dunha ferramenta de integración de aplicacións, para que el alumno desenrole a súa capacidade de aprendizaxe de ferramentas/tecnoloxías.
Multiple-choice questions Realizarase un exame de tipo test, co obxectivo de comprobar que o alumno asimiliou os conceptos correctamente. O exame tipo test componse dun conxunto de preguntas con varias respostas posibles, das que só unha é correcta. As preguntas non respostadas non puntúan, e as respostadas erróneamente puntúan negativamente. O exame será presencial.

Personalized attention
Methodologies
ICT practicals
Supervised projects
Description
Asistencia a través da ferramenta Teams da Universidade nos horarios de clases de laboratorio e traballos tutelados para resolver dúbidas relacionadas coas prácticas da materia e para o seguimento na elaboración das mesmas.

As titorías tamén se establecen como un medio de atención personalizada para a resolución de dúbidas relacionadas coa materia de forma telemática a través de correo electrónico ou da ferramenta Teams.

En xeral para todos os alumnos, e en particular para o caso de alumnos con matrícula a tempo parcial ou dispensa académica de exención de asistencia, tanto a documentación das sesións maxistrais como a correspondentes ás sesions prácticas estarán accesibles a través da plataforma moodle da Universidade. Adicionalmente, poderán contactar cos profesores da materia de forma telemática a través de correo electrónico ou da ferramenta Teams.

Assessment
Methodologies Competencies Description Qualification
ICT practicals A56 B1 B3 C3 C6 A práctica estructúrase en 2 partes (chamadas iteracións). É obrigatorio presentar ambas iteracións. A corrección da primeira iteración non leva asociada unha nota, pero a súa entrega é obrigatoria e debe obrigatoriamente cumprir cos requisitos establecidos no enunciado da práctica para dita iteración. O profesor pon a nota da práctica despóis da corrección da segunda iteración. É necesario obter polo menos un 5 sobre 10 na práctica para aprobar a materia. 40
Supervised projects A56 B1 B3 C3 C6 A realización dos traballos tutelados é opcional. En caso de realizalo, valorarase tanto a calidade do traballo teórico como a complexidade da parte práctica e a claridade na exposición. 20
Multiple-choice questions A56 B3 Realizarase un exame de tipo test, co obxectivo de comprobar que o alumno asimilou os conceptos teóricos e prácticos correctamente. 40
 
Assessment comments

Para aprobar a materia é preciso obtener:

  • Un mínimo de 5 puntos (sobre 10) na evaluación da práctica.
  • Un mínimo de 4 puntos (sobre 10) no exame tipo test.
  • Un mínimo de 5 puntos (sobre 10) na nota final, que se calcula como: 0,40*notaExame + 0,40*notaPractica + 0,20*notaTraballos

Observacións adicionais:

  • As notas de prácticas e exámes aprobados consérvanse para a convocatoria correspondente á segunda oportunidade (pero NON para o seguinte curso)
  • Para o caso de alumnos matriculados a tempo parcial e dispensa académica con exención de asistencia, flexibilizaránse as datas de entrega dos traballos realizados na materia así coma o seu dimensionamento.

Sources of information
Basic Bill Burke (2013). RESTful java with JAX-RS 2.0. O’Reilly
Leonard Richardson, Sam Ruby (2007). RESTful Web Services. O’Reilly
Poornachandra Sarang, Frank Jennings, Matjaz Juric, Ramesh Loganathan (2007). SOA Approach to Integration: XML, Web services, ESB, and BPEL in real-world SOA projects. Packt Publishing

Recursos en Internet:

- Estándares XML e Servizos Web

http://www.w3c.org

- Estándares BPEL para fluxos inter-aplicación:

http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf (WS-BPEL 2.0)

- Implementación de Referencia de JAX-RS

https://eclipse-ee4j.github.io/jersey/

- Sitios web de ferramentas de integración de aplicacións

Complementary Masoud Kalali, Bhakti Mehta (2013). Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON. Packt Publishing
Gregor Hohpe, Bobby Woolf (2003). Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley Professional
Herbert Schildt (2015). Java 8. Anaya Multimedia
Brett McLaughlin (2006). Java and XML, Third Edition. O’Reilly
Grady Booch, James Rumbaugh, Ivar Jacobson (2005). Unified Modeling Language User Guide, 2nd edition. Addison-Wesley Professional


Recommendations
Subjects that it is recommended to have taken before
Software Design/614G01015
Networks/614G01017
Internet and Distributed Systems/614G01023

Subjects that are recommended to be taken simultaneously

Subjects that continue the syllabus

Other comments


(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.