Politecnico di Torino
Politecnico di Torino
Politecnico di Torino
Academic Year 2016/17
Distributed programming II
Master of science-level of the Bologna process in Computer Engineering - Torino
Teacher Status SSD Les Ex Lab Years teaching
Sisto Riccardo ORARIO RICEVIMENTO PO ING-INF/05 40 0 20 7
SSD CFU Activities Area context
ING-INF/05 6 C - Affini o integrative Attivitą formative affini o integrative
Subject fundamentals
The course is taught in English.

Optional course for the Laurea Magistrale degree in Computer Engineering, which is taught in English during the 1st semester of the 2nd year.
This course completes the basic knowledge and abilities that are taught in the previous course on Distributed Programming I and that are required for developing distributed applications. It focuses on the techniques for interactions among distributed applications, and in particular web services and related portable data formats (XML and JSON).

Expected learning outcomes
- Knowledge of the main character-oriented standards for data exchange among distributed applications
- Ability to develop applications for XML data manipulation using the Java language
- Knowledge of web services and related architectures (REST vs SOAP)
- Ability to design and develop RESTful web services (REST APIs) using the Java language
Prerequisites / Assumed knowledge
Basic knowledge of the Java language and related programming abilities. Knowledge of the main internet application-level protocols, with particular reference to HTTP. Basic knowledge about web applications.
Part 1: Character-oriented portable data formats (2,8 CFU)
- Main character-oriented techniques for data exchange among distributed applications (XML and JSON)
- XML and related design and programming techniques (schema, standard programming interfaces)
- XML data manipulation in Java

Part2: Web Services (3,2 CFU)
- Service Oriented Architecture (SOA) and web services (REST and SOAP)
- Design of web services
- RESTful web services programming in Java
- Concurrency, robustness, security, interoperability and performance aspects in web services development
Delivery modes
In addition to lectures, the course includes 20 hours of programming laboratory about the application of the presented techniques. During the laboratory time, the students will discuss with the teachers about the solution of the assigned exercises.
Texts, readings, handouts and other learning resources
The course material will be distributed by the teacher and it will be available on the web pages of the course.
Assessment and grading criteria
The exam consists of verifying the expected knowledge and skills acquired by the student.
During the course the student will have to develop XML applications and web services using the Java language. The exam includes a preliminary evaluation of the assignments developed by the student and a test in the Lab composed of a programming test (developing an extension of the previously developed assignments) and an open question. In case of doubts, an oral exam may be requested to complete the evaluation.

Programma definitivo per l'A.A.2016/17

© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
WCAG 2.0 (Level AA)