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
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.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.
Competències Tècniques Generals
Genèriques
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
Treball en equip
CTR3 - Ser capaç de treballar com a membre d'un equip, ja sigui com a un membre més, ja sigui realitzant tasques de direcció, amb la finalitat de contribuir a desenvolupar projectes d'una manera pragmàtica i amb sentit de la responsabilitat; assumir compromisos tenint en compte els recursos disponibles.
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
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,
Conèixer les tecnologies web fonamentals que són la base per al desenvolupament dels serveis web
Competències relacionades:
CB6,
CB8,
CB9,
Conèixer els diferents protocols i estàndards de comunicació dels serveis web
Competències relacionades:
CB6,
CB8,
CB9,
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,
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
Introducció
Orígens i Precedents
Fundamentals of Distributed Sytems. Middleware. SOA
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.
Protocols per a Serveis Web
SOAP and WSDL. RESTful WS.
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.
Seguretat de Serveis Web
General Concepts. Securing RESTful Web Services. XML Security Standards. Securing WS-* Web Services
Temes Avançats
WS Evolution, Management, Monitoring, and Testing. Transactions. Composition and Coordination.
Activitats
ActivitatActe avaluatiu
Classes de Teoria
Participa activament a la classe de teoria. Objectius:23 Continguts:
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:23 Continguts:
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:1234 Continguts:
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:12345 Continguts:
Examen escrit dels continguts de l'assignatura Objectius:12345 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