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.
Teachers
Person in charge
Carles Farre Tost (
)
Weekly hours
Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
7.11
Objectives
Ability to design and implement software that interacts with web services and public or private web APIs
Related competences:
CEE5.1,
CEE5.3,
CB6,
CB9,
CTR3,
CG5,
Understanding of the fundamental Web technologies that are the basis for the development of web services
Related competences:
CB6,
CB8,
CB9,
Know the different protocols and communication standards for web services
Related competences:
CB6,
CB8,
CB9,
Ability to design and implement web services, selecting and using the technologies and tools that are most appropriate in each case
Related competences:
CEE5.1,
CEE5.3,
CB6,
CB8,
CB9,
CTR3,
CG5,
Ability to test and monitor web services, selecting and using the technologies and tools that are most appropriate in each case
Related competences:
CEE5.1,
CEE5.3,
CB6,
CB8,
CB9,
CTR3,
CG5,
Contents
Introduction
Origins & Precedents
Fundamentals of Distributed Sytems. Middleware. SOA
Core Web Technologies
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.
Core WS Protocols
SOAP and WSDL. RESTful WS.
WS Development
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.
Securing WS
General Concepts. Securing RESTful Web Services. XML Security Standards. Securing WS-* Web Services
Advanced Topics
WS Evolution, Management, Monitoring, and Testing. Transactions. Composition and Coordination.
Activities
ActivityEvaluation act
Lectures
Participates actively in class theory. Objectives:23 Contents:
In groups of 3-4, s/he prepares a topic to be presented with the help of slides. S/he handles in the slides before the deadline. S/he delivers the presentation and answers the questions from the teacher and his/her classmates. S/he assess the presentations of the other groups. Objectives:23 Contents:
In pairs, s/he works (installs, configures, programs) in order to achieve a certain number of tasks defined in the statement handed in at the beginning of the session, using the required language, tools and resources. In advance, and autonomously, s/he has introduced her/himself to the use of these technologies. Objectives:1234 Contents:
In groups of 3-4, s/he designs, implements, and deploys web services. Each week s/he comes to the laboratory session to work on the project, indicate the level of achievement of the milestones set for that session, (re)plan the milestones for the next session, present results, and report doubts and problems. At the end of the project, s/he assess the work of his/her project fellows. Objectives:12345 Contents:
Written exam of the topics introduced along the course. Objectives:12345 Week:
16
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
12h
Teaching methodology
The teaching of the course is structured in lecture sessions and laboratory sessions.
Lecture sessions: 2 hours per week.
The instructors can present some of the course content using slides or other material available at Atenea. There will be also sessions in which students will be required to prepare on their own and present to the class a certain topic.
Laboratory sessions: 2 hours per week.
During the first 9 weeks of the course, and after a brief introduction, the students will be required to complete a certain number of tasks using the computer in accordance with a work plan.
During the remaining weeks of the course, the students, in groups of 3-4, will design and implement a web service project. The lab sessions will be used to work in the project, discuss and fix doubts and problems, plan and manage goals, and present results.
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