Arquitectura Orientada als Serveis

Esteu aquí

Crèdits
6
Tipus
Obligatòria d'especialitat (Enginyeria de Serveis)
Requisits
Aquesta assignatura no té requisits, però té capacitats prèvies
Departament
ESSI
This course focuses on service-oriented architectural model and the service-orientation design paradigm. It will describe Service Oriented Architecture (SOA) concepts and principles, as well as quality considerations for developing modern software systems from a technical and organizational perspective.

Specifically, the course will cover principles of SOA design and SOA design patterns. Furthermore, as SOA involves more than technology, additional topics will include the impact of SOA on culture, organization, and governance.

The aim of this course is to establish a strong understanding of the concepts needed to have an effective working knowledge of SOA methodologies, and SOA systems design.

Professors

Responsable

  • Claudia Patricia Ayala Martinez ( )

Hores setmanals

Teoria
1.4
Problemes
1.5
Laboratori
0
Aprenentatge dirigit
0.15
Aprenentatge autònom
4

Competències

Competències Tècniques de cada especialitat

Enginyeria de serveis

  • CEE5.1 - Capacitat per participar en projectes de millora o creació de sistemes de serveis, aportant especialment: a) propostes d'innovació i recerca basades en nous usos i desenvolupaments de les tecnologies de la informació b) l'aplicació dels principis de l'enginyeria del programari i les bases de dades en el desenvolupament dels sistemes d'informació que siguin més adequats, c) la determinació, instal·lació i gestió de la infraestructura/plataforma informàtica necessària per al funcionament eficient dels sistemes de servei.
  • CEE5.2 - Capacitat per aplicar els coneixements obtinguts en sistemes de servei de qualsevol tipus, estant familiaritzat amb alguns d'ells, i amb coneixement profund dels sistemes de comerç electrònic i les seves extensions (eBusiness, eOrganization, eGovernment, etc.).
  • CEE5.3 - Capacitat per treballar en equips interdisciplinaris d'enginyeria de serveis i, disposant de l'experiència de domini necessària, capacitat per a treballar autònomament en sistemes de serveis concrets.

Específiques comunes

  • CEC1 - Capacitat per aplicar el mètode científic en l'estudi i anàlisi de fenòmens i sistemes en qualsevol àmbit de la Informàtica, així com en la concepció, disseny i implantació de solucions informàtiques innovadores i originals.
  • CEC3 - Capacitat per aplicar solucions innovadores i realitzar avanços en el coneixement que explotin els nous paradigmes de la Informàtica, particularment en entorns distribuïts.

Competències Tècniques Generals

Genèriques

  • CG1 - Capacitat per aplicar el mètode científic en l'estudi i anàlisi de fenòmens i sistemes en qualsevol àmbit de la Informàtica, així com en la concepció, disseny i implantació de solucions informàtiques innovadores i originals.
  • CG5 - Capacitat per aplicar solucions innovadores i realitzar avenços en el coneixement que explotin els nous paradigmes de la Informàtica, particularment en entorns distribuïts.

Competències Transversals

Raonament

  • CTR6 - Capacitat de raonament crític, lògic i matemàtic. Capacitat de resoldre problemes en la seva àrea d'estudi. Capacitat d'abstracció: capacitat de crear i utilitzar models que reflecteixin situacions reals. Capacitat de dissenyar i realitzar experiments senzills, i analitzar-ne i interpretar-ne els resultats. Capacitat d'anàlisi, de síntesi i d'avaluació.

Bàsiques

  • CB6 - Que els estudiants sàpiguen aplicar els coneixements adquirits y la seva capacitat de resolució de problemes en entorns nous o poc coneguts dins de contexts més amplis (o multidisciplinaris) relacionats amb la seva àrea d'estudi.
  • CB8 - Que els estudiants sàpiguen comunicar les seves conclusions i els coneixements i raons darreres que les sustenten- a públics especialitzats i no especialitzats d'una manera clara i sense ambigüitats.
  • CB9 - Que els estudiants posseeixin les habilitats d'aprenentatge que els permetin continuar estudiant d'una manera que haurà de ser en gran mesura autodirigida o autònoma.

Objectius

  1. To understand the main concepts and principles of SOA.
    Competències relacionades: CEE5.1, CEE5.3, CB9, CEC3, CTR6, CG5,
    Subcompetences:
    • To understand the principles of service design
    • To understand what is SOA
    • To understand why Service Oriented Computing is needed
  2. To understand and apply patterns for service design from the provider and requester perspectives
    Competències relacionades: CEE5.1, CEE5.2, CB6, CB9, CEC1, CEC3, CTR6, CG5,
    Subcompetences:
    • To identify problems and solution patterns for using services
    • To identify problems and solution patterns for designing services
    • To design services up to the level of detail needed to physically build them (i.e., implement them)
  3. To represent the design of the systems by means of the Unified Modelling Language (UML)
    Competències relacionades: CB6,
  4. To understand SOA challenges mainly regarding governance, testing and maintenance.
    Competències relacionades: CG1, CB6, CB8, CB9, CEC1, CEC3, CTR6,

Continguts

  1. SOA Fundamentals and Principles
    Introduction to Service Oriented Computing, SOA Paradigm and service design principles
  2. Introduction to SOA Development LifeCycle
    Introduction to the main stages of SOA development and their associated challenges.
    The course will then mainly focus on the logical perspective of the service design stage.
  3. SOA Planning and Service Analysis and Identification
    Factors that motivate SOA adoption and how to identify services through a case study
  4. Definition of a logical context for designing Information Systems through Pattern-Based Service Design
    Definition of a logical context based on Object Oriented programming languages, relational databases and UML to apply SOA patterns for service design and service usage
  5. Pattern-Based Service Design - The provider perspective.
    To apply basic service design patterns that support the tasks of the service provider
  6. Pattern-Based Service Design - The requester perspective
    To apply basic service design patterns that support the tasks of the service requester
  7. Assessment of Challanges of SOA Development
    Main challenges of SOA

Activitats

Activitat Acte avaluatiu


Presentation of the SOA Course and presentation of students

-Yourself introduction (previous background, professional interests and expectations from the course)

Teoria
1h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

SOA Fundamentals and Principles

-The teacher will provide some specific articles and reading material that the student should read and complement with other sources in advance to the lecture to actively participate during the classes.
Objectius: 1
Continguts:
Teoria
4h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

SOA Development Lifecycle

The teacher will provide some specific articles and reading material that the student should read and complement with other sources in advance to the lecture to actively participate during the classes.
Objectius: 1
Continguts:
Teoria
1.8h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Overview of SOA Analysis and Service Identification through a case study

The student should read the case study and complement it with other sources in advance to the lecture to actively participate during the classes.
Objectius: 1 2
Continguts:
Teoria
1h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
2.7h
Aprenentatge autònom
2h

Definition of the Design Context to be used in the course

To understand the context defined by the teacher to be able to solve the design problems of the course
Objectius: 2
Continguts:
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

High Level Service Concepts Representations and UML elements for design

The teacher will provide some specific articles and reading material that the student should read and complement with other sources in advance to the lecture to actively participate during the classes.
Objectius: 3
Continguts:
Teoria
5h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

Application of Service Design patterns: The provider perspective

For the theory sessions: The teacher will provide lectures about some patterns. The student should complement with other sources to actively participate during the classes. For the problems sessions: the student should solve the exercises in advance and comment his/her solutions or doubts during the class.
Objectius: 2 3
Continguts:
Teoria
4h
Problemes
9h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
10h

Semminar: Challenges of SOA Development

To present some topics related with the challenges of SOA
Objectius: 4
Continguts:
Teoria
0h
Problemes
5h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
20h

Control 1

It includes theory and problems. Focuses on the contents 1 to 5
Objectius: 1 2
Setmana: 9
Tipus: examen de problemes
Teoria
0h
Problemes
2h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
8h

Application of service design patterns: The requester perspective

For the theory sessions: The teacher will provide lectures about some patterns. The student should complement with other sources to actively participate during the classes. For the problems sessions: the student should solve the exercises in advance and comment his/her solutions or doubts during the class.
Objectius: 2 3
Continguts:
Teoria
4h
Problemes
9h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
10h

Control 2

It includes problems. Focuses on the content 6
Objectius: 2 3
Setmana: 13
Tipus: examen de problemes
Teoria
0h
Problemes
2h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
8h

Lecture on SOA Monitoring

The students must attend to the lecture as it will help them to prepare their final presentation
Objectius: 4
Continguts:
Teoria
1.5h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Metodologia docent

The course will be tackled by lectures, students participation and classes of problems, although the distribution in both types does not follow any regular weekly pattern.

Some of the course contents are presented by teachers but others are not presented in class. However, they must be privately studied by students in their own time. These contents are also obligatory - the only difference is the way in which they are studied. Teachers will indicate which contents should be studied at each juncture of the course, and the teaching resources that may be employed.

The classes of problems put into practice what is learnt during the course (which includes both contents presented in class and those learnt by students in their private study). Sometimes, students will be required to either have wholly or partially solved problems before the class. The problem and possible solutions will then be discussed in class. On other occasions, the problem will be set and solved in class. It is crucial for the correct development of the course that the students prepare their solutions to the exercises that teachers propose.

Mètode d'avaluació

The evaluation method will be based on:

Final grade: 35% Control1+ 30% Control2 + 20%Seminar + 15% Participation

Control1 and Control 2 refer to previously scheduled exams (performed during the normal sessions of the course)
Control1 will include contents 1-to 5
Control2 will include content 6

Seminar refers to the presentation of a topic related to SOA challenges that will be selected by the student and prepared through the course. The teacher will schedule the seminar at the end of the course activities. Each student is assessed on the individual presentations.

Participation is evaluated based on the contribution of the student to the sessions. A student is evaluated on participation only if the student attends at least the 80% of the scheduled meetings and classes.

Bibliografia

Bàsica:

  • Web Services & SOA: Principles and Technology - Papazoglou, Mike, Pearson – Prentice Hall, January 2012.
  • Service-Oriented Modeling (SOA): Service Analysis, Design, and Architecture. - Bell, Michael, Wiley, 2008..
  • Service-Oriented Architecture: Concepts, Technology, and Design - Thomas, Erl, 2005. ISBN: 0-13-185858-0
  • SOA Design Patterns - Erl, Thomas, Prentice Hall, ISBN: 0136135161

Web links

Capacitats prèvies

It is mandatory that the students have previous knowledge about software architecture and software design

It is desirable that the student knows the Unified Modelling Language (UML) as we will use it as standard notation to describe the proposed design solutions