Crèdits
6
Tipus
Complementària d'especialitat (Enginyeria de Serveis)
Requisits
Aquesta assignatura no té requisits, però té capacitats prèvies
Departament
ESSI
This course focus on the need for systems interoperability and how Web services, an umbrella concept for different cross-platform solutions based on Web standards, attempt to overcome the many challenges that distributed information systems have addressed in various ways (but not always successfully) in the past. By the end of the course, students will have learned the relevant concepts related to the nature, characteristics and types of Web Services and acquired some experience in consuming, designing, constructing and maintaining services located at the web.

Professorat

Responsable

  • Carles Farre Tost ( )

Hores setmanals

Teoria
2
Problemes
0
Laboratori
2
Aprenentatge dirigit
0
Aprenentatge autònom
7.11

Objectius

  1. Capacitat per dissenyar i implementar software que interactuï amb serveis i APIs web públics o privats
    Competències relacionades: CEE5.1, CEE5.3, CB6, CB9, CTR3, CG5,
  2. Conèixer les tecnologies web fonamentals que són la base per al desenvolupament dels serveis web
    Competències relacionades: CB6, CB8, CB9,
  3. Conèixer els diferents protocols i estàndards de comunicació dels serveis web
    Competències relacionades: CB6, CB8, CB9,
  4. Capacitat per dissenyar i implementar serveis web, seleccionant i utilitzant les tecnologies i les eines més adients en cada cas
    Competències relacionades: CEE5.1, CEE5.3, CB6, CB8, CB9, CTR3, CG5,
  5. Capacitat per provar i monitoritzar serveis web, seleccionant i utilitzant les tecnologies i les eines més adients en cada cas
    Competències relacionades: CEE5.1, CEE5.3, CB6, CB8, CB9, CTR3, CG5,

Continguts

  1. Introducció
  2. Orígens i Precedents
    Fundamentals of Distributed Sytems. Middleware. SOA
  3. Tecnologies Web
    The Fundamentals: URIs. HTTP. Proxies, caches, cookies. Browser-Based Computing: JavaScript, DOM, AJAX. Server-Side Computing: CGI, PHP, Java Servlets. Web Data Exchange Formats: XML, JSON.
  4. Protocols per a Serveis Web
    SOAP and WSDL. RESTful WS.
  5. Desenvolupament de Serveis Web
    Properties of a service development methodology. Qualities of service development methodology. Web services development lifecycle.Service analysis, design and construction. Design Patterns for Web Service Development.
  6. Seguretat de Serveis Web
    General Concepts. Securing RESTful Web Services. XML Security Standards. Securing WS-* Web Services
  7. Temes Avançats
    WS Evolution, Management, Monitoring, and Testing. Transactions. Composition and Coordination.

Activitats

Activitat Acte avaluatiu


Teoria
20h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
10h

Presentacions

En grups de 3-4, prepara un tema per ser presentat amb l'ajuda de transparències. Lliura les transparències abans del termini fixat. Fa la presentació i respon les preguntes del professor i dels seus companys de classe. Avalua les presentacions dels altres grups.
Objectius: 2 3
Continguts:
Teoria
6h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
25h

Laboratori: Sessions setmanals

Per parelles, treballa (instal·la, configura, programa) per tal de dur a terme una sèrie de tasques preestablertes en l'enunciat lliurat a l'inici de la sessió, utilitzant el llenguatge, eines i recursos indicats. Amb antelació, i de manera autònoma, s'ha familiaritzat i introduït en l'ús d'aquestes tecnologies.
Objectius: 1 2 3 4
Continguts:
Teoria
0h
Problemes
0h
Laboratori
18h
Aprenentatge dirigit
0h
Aprenentatge autònom
27h

Laboratori: Projecte

En grups de 3-4, dissenya, implementa i desplega serveis web. Cada setmana acudeix a la sessió de laboratori per treballar en el projecte, indicar el grau d'assoliment de les fites establertes per aquella sessió, (re)planificar les fites per a les properes sessions, presentar resultats i reportar dubtes i problemes. Al final del projecte, avalua la feina dels seus companys de projecte.
Objectius: 1 2 3 4 5
Continguts:
Teoria
0h
Problemes
0h
Laboratori
10h
Aprenentatge dirigit
0h
Aprenentatge autònom
20h

Examen Final

Examen escrit dels continguts de l'assignatura
Objectius: 1 2 3 4 5
Setmana: 16
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
12h

Metodologia docent

La docència de l'assignatura està estructurada en classes de teoria i classes de laboratori.

Classes de teoria: 2 hores de classe per setmana.
Els instructors poden presentar alguns dels continguts del curs utilitzant diapositives o algun altre material disponible a Atenea. També hi haurà sessions en què els estudiants seran requerits per preparar pel seu compte i presentar davant la classe algun tema.

Classes de laboratori: 2 hores de laboratori per setmana.
Durant les 9 primeres setmanes de curs, i després d'una breu introducció sobre les tasques a realitzar, els alumnes, per parelles, les duran a terme usant l'ordinador d'acord amb un pla de treball preestablert i una llista d'objectius.
Durant la resta de setmanes del curs, els alumnes, en grups de 3-4, dissenyaran i implementaran un projecte de serveis web. Les sessions de laboratori serviran per treballar en el projecte, discutir i resoldre dubtes i problemes, fixar objectius, fer-ne el seguiment i presentar resultats.

Mètode d'avaluació

30% Examen Final
30% Sessions de laboratori setmanals
20% Projecte de laboratori
20% Presentacions

Bibliografia

Bàsica:

  • Service design patterns: fundamental design solutions for SOAP/WSDL and RESTful Web services - Daigneau, Robert, Addison-Wesley, cop. 2012. ISBN: 9780321544209
    http://cataleg.upc.edu/record=b1409220~S1*cat
  • SOA with REST: Principles, Patterns & Constraints for Building Enterprise Solutions with REST (The Prentice Hall Service Technology Series from Thomas Erl) - Erl, Thomas et al., Prentice Hall, 2012. ISBN: 9780137012510
  • Web services: principles and technology - Papazoglou, M, Pearson, cop. 2008. ISBN: 978-0-321-15555-9
    http://cataleg.upc.edu/record=b1319474~S1*cat

Complementaria:

Web links

Capacitats prèvies

Coneixements de Programació i Enginyeria del Software
Coneixements de Xarxes i Internet