Credits
6
Types
Elective
Requirements
This subject has not requirements
, but it has got previous capacities
Department
ESSI
Teachers
Person in charge
- Carles Farre Tost ( carles.farre@upc.edu )
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
Activity Evaluation act
Presentations
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: 2 3
Contents:
Theory
6h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
25h
Laboratory: Weekly Sessions
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: 1 2 3 4
Contents:
Theory
0h
Problems
0h
Laboratory
18h
Guided learning
0h
Autonomous learning
27h
Laboratory: Project
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: 1 2 3 4 5
Contents:
Theory
0h
Problems
0h
Laboratory
10h
Guided learning
0h
Autonomous learning
20h
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.
Evaluation methodology
30% Final Exam30% Weekly Lab Sessions
20% Lab Project
20% Presentations
Bibliography
Basic
-
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
Complementary
-
Web application architecture: principles, protocols, and practices
- Shklar, Leon; Rosen, Richard,
John Wiley,
cop. 2009.
ISBN: 9780470518601
http://cataleg.upc.edu/record=b1352863~S1*cat
Web links
Previous capacities
Fundamentals of Software Engineering & ProgrammingFundamentals of Computer Networks and Internet