Guías Académicas

ARQUITECTURAS ORIENTADAS A SERVICIOS (SOA)

ARQUITECTURAS ORIENTADAS A SERVICIOS (SOA)

GRADO EN INGENIERÍA INFORMÁTICA EN SISTEMAS DE INFORMACIÓN

Curso 2023/2024

1. Datos de la asignatura

(Fecha última modificación: 18-04-23 17:22)
Código
105929
Plan
ECTS
6.00
Carácter
OBLIGATORIA
Curso
4
Periodicidad
Primer Semestre
Idioma
ESPAÑOL
Área
LENGUAJES Y SISTEMAS INFORMÁTICOS
Departamento
Informática y Automática
Plataforma Virtual

Campus Virtual de la Universidad de Salamanca

Datos del profesorado

Profesor/Profesora
Jesús Ángel Román Gallego
Grupo/s
1
Centro
E. Politécnica Superior de Zamora
Departamento
Informática y Automática
Área
Lenguajes y Sistemas Informáticos
Despacho
Despacho 214. Edificio Administrativo
Horario de tutorías
Ver en : https://politecnicazamora.usal.es/estudiantes/#informacion-academica
URL Web
https://cimet.usal.es
E-mail
zjarg@usal.es
Teléfono
923294500 Ext. 3745

2. Sentido de la materia en el plan de estudios

Bloque formativo al que pertenece la materia.

Materia básica/obligatoria

Papel de la asignatura.

Esta asignatura forma parte de la materia “Sistemas de Información”, junto con otras cinco asignaturas más (“Evaluación de Riesgos, Seguridad Informática, Ingeniería de la Calidad, Contratación de Sistemas de Información y Administración de Sistemas de Información”). Dentro de este curso, la asignatura Arquitecturas Orientadas a Servicios (SOA), se ubica en el primer cuatrimestre, y lo que se pretende con esta asignatura es que el alumno/a adquiera conocimientos sobre la estructuración, arquitectura y funcionamiento de las numerosas aplicaciones, que hoy en día están orientadas a servicios implementados sobre plataformas Web.  Además se pretende que alumno adquiera conocimientos sobre lenguajes concretos orientados a la programación sobre la Web, y tenga la capacidad de implementar este tipo de arquitecturas a través de los mismos.

Perfil profesional.

El principal interés de la materia, es mostrar a los alumnos/as la posibilidad de que sean ellos mismos los que tengan la capacidad de crear aplicaciones que consten de una arquitectura orientada a servicios, las cuales son extensamente utilizadas en la actualidad. Para ello, se emplearán lenguajes de modelado, para realizar el diseño de la arquitectura de las aplicaciones y lenguajes de programación para su implementación. Los lenguajes utilizados dependerán de la plataforma utilizada para implementar los servicios de la arquitectura,  pudiendo ser éstos .NET, Java, PHP, o cualquier otro lenguaje orientado a la Web.

3. Recomendaciones previas

Para cursar esta asignatura es necesario que el alumno/a haya cursado asignaturas donde se haya visto programación Web, acceso a Bases de Datos desde un lenguaje de programación, diseño e implementación de Bases de Datos Distribuidas e Ingeniería del Software.

4. Objetivo de la asignatura

La asignatura consta de tres bloques enlazados con los que se pretende que el conjunto de estudiantes sea capaz de realizar un análisis, diseño, implementación y despliegue de arquitecturas orientadas a servicios, utilizando los estándares propuestos en cada caso y siguiendo una metodología de trabajo basada en una Ingeniería Orientada a Servicios, optimizando recursos y el ciclo de vida de la solución. Además, se proponen diferentes soluciones empresariales basadas Business Intelligence (BI) para su análisis y posterior despliegue.

5. Contenidos

Teoría.

Bloque I. Introducción.

Tema 1: Introducción a las Arquitecturas Orientadas a Servicios

Tema 2: Servicios

Tema 3: Estándares

 

Bloque II. Diseño y Modelado SOA.

Tema 4: Diseño y Modelado de Arquitecturas Orientadas a Servicios

Tema 5: Arquitectura de Referencia SOA

Tema 6: Buses Empresariales (ESB) y Workflows

Tema 7: Ingeniería Orientada a Servicios

Tema 8: Seguridad en Arquitecturas Orientadas a Servicios

Tema 9: Business Process Management (BPM)

 

Bloque III. Herramientas para SOA e Implementación de Aplicaciones.

Tema 10: Arquitecturas Orientadas a Servicios con JAVA y .NET.

Tema 11: Arquitecturas Orientadas a Servicios con PHP.

Tema 12: Arquitecturas Orientadas a Servicios con Python.

Tema 13: Implementación de soluciones SOA.

Práctica.

Se proponen varias prácticas sobre el diseño e implementación de aplicaciones sostenidas con Arquitecturas Orientadas a Servicios vistas en la asignatura. Se utilizarán las herramientas vistas en el temario. Estas prácticas permitirán a los alumnos el correcto manejo de estas herramientas en cuanto a la definición e implantación aplicaciones robustas basadas en Arquitecturas Orientadas a Servicios.

6. Competencias a adquirir

Específicas.

SI 02. Capacidad para determinar los requisitos de los sistemas de información y comunicación de una organización atendiendo a aspectos de seguridad y cumplimiento de la normativa y la legislación vigente.

Transversales.

CT001. Capacidad de organización, gestión y planificación del trabajo.

CT002. Capacidad de análisis, crítica y síntesis.

CT003. Capacidad para relacionar y gestionar diversas informaciones e integrar conocimientos e ideas

CT004. Capacidad para comprender y elaborar modelos abstractos a partir de aspectos particulares.

CT005. Capacidad de toma de decisiones.

CT006. Capacidad para adaptarse a nuevas situaciones.

CT007. Capacidad de actualización y continua integración de las nuevas tecnologías.

CT008. Capacidad creadora e innovadora ante la evolución de los avances tecnológicos.

CT009. Capacidad de comunicación, tanto oral como escrita, de conocimientos, ideas, procedimientos, y resultados, en lengua nativa.

CT010. Capacidad de integración en grupos de trabajo unidisciplinares o multidisciplinares.

CT011. Aprendizaje autónomo.

7. Metodologías

La asignatura se desarrolla de forma que los alumnos adquieran un conocimiento teórico y práctico en el diseño e implementación de Arquitecturas Orientadas a Servicios, para lo que se utilizará una metodología a través de la cual se ponga en práctica de forma constante la teoría.

 

Interacción con el alumno

Se fomentará la interacción del alumno por diferentes vías:

  • Clases presenciales: dado el carácter teórico-práctico de la asignatura, el profesor estará presente en el aula para resolver las posibles dudas de los alumnos y guiarlos en la realización de los ejercicios.
  • Tutorías: los alumnos podrán acudir a tutorías para cualquier consulta relativa a la materia.

Espacio virtual: se dispondrá de la herramienta Studium para el intercambio de información con los alumnos (apuntes, ejercicios,etc.) y como medio de comunicación (foros, chats, wikis, etc.). Las entregas de trabajos también se realizarán desde esta plataforma.

8. Previsión de Técnicas (Estrategias) Docentes

9. Recursos

Libros de consulta para el alumno.

  • Booch, G., Rumbaugh, J., Jacobson, I., Molina, J. J. G., & Martínez, J. S. (2006). El lenguaje unificado de modelado: guía del usuario. Addison-Wesley.
  • Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (2003). Patrones de diseño.
  • Rosen, M., Lublinsky, B., Smith, K. T., & Balcer, M. J. (2012). Applied SOA: service-oriented architecture and design strategies. John Wiley & Sons.
  • Rumbaug, J., Blaha, M., & Dremerluni, W. (1997). Modelado y diseño orientado a objetos. Prentice Hall.
  • Erl, T. (2007). SOA principles of service design (the Prentice Hall service-oriented computing series from Thomas Erl). Prentice Hall PTR.
  • Hansen, M. D. (2007). SOA using java web services. Pearson Education.
  • de la Torre, C. (2008). Arquitectura SOA con tecnología Microsoft. Krasis Press.
  • Eckel, B. (2003). Thinking in JAVA. Prentice Hall Professional.
  • Stelting, S., & Maassen, O. (2003). Patrones de diseño aplicados a Java. Pearson Educación.
  • Hitpass, B. (2017). BPM: Business Process Management: Fundamentos y Conceptos de Implementación 4ª Edición actualizada y ampliada. Dr. Bernhard Hitpass.
  • Liebowitz, J. (2006). Strategic intelligence: business intelligence, competitive intelligence, and knowledge management. Auerbach Publications.
 

 

Otras referencias bibliográficas, electrónicas o cualquier otro tipo de recurso.

Open Group

https://www.opengroup.org/soa/

StarUML

staruml.sourceforge.net/

BlueJ

http://www.bluej.org/download/download.html

Documentación de Java

http://java.sun.com/javase/6/docs/

Eclipse

http://www.eclipse.org/downloads/

Web Services .Net

http://msdn.microsoft.com/es-es/library/bb972248.aspx

Java

http://java.sun.com/javase/downloads/

IBM

www.ibm.com/software/solutions/soa/

NetBeans

http://www.netbeans.org/

Service-Oriented Architecture

http://www.service-architecture.com

10. Evaluación

Consideraciones generales.

*En el examen teórico es necesario obtener una calificación mínima de 5 para aprobar la asignatura.

Criterios de evaluación.

Se utilizará el sistema de calificaciones vigente (RD 1125/2003) artículo 5º. Los resultados obtenidos por el alumno en cada una de las materias del plan de estudios se calificarán en función de la siguiente escala numérica de 0 a 10, con expresión de un decimal, a la que podrá añadirse su correspondiente calificación cualitativa: 0 - 4,9: Suspenso (SS), 5,0 - 6,9: Aprobado (AP), 7,0 - 8,9: Notable (NT), 9,0 - 10: Sobresaliente (SB). La mención de Matrícula de Honor podrá ser otorgada a alumnos que hayan obtenido una calificación igual o superior a 9,0. Su número no podrá exceder del 5% de los alumnos matriculados en una asignatura en el correspondiente curso académico, salvo que el número de alumnos matriculados sea inferior a 20, en cuyo caso se podrá conceder una sola Matrícula de Honor.

Se tendrá en cuenta el Reglamento de Evaluación de la Universidad de Salamanca.

Instrumentos de evaluación.

Evaluación continua: seguimiento de la evolución en clase del alumno, participación en clase, prácticas y trabajos realizados (incluyendo defensa de los mismos).

Exámenes teórico-prácticos.

Recomendaciones para la evaluación.

La asistencia a clase y la participación del alumno unido al trabajo continuo permiten superar sin dificultad la asignatura.

Recomendaciones para la recuperación.

A cada alumno se le indicará, de forma individualizada, qué partes de la asignatura debe reforzar para poder superarla.