Politecnico di Torino
Anno Accademico 2017/18
Distributed programming II
Corso di Laurea Magistrale in Ingegneria Informatica (Computer Engineering) - Torino
Docente Qualifica Settore Lez Es Lab Tut Anni incarico
Sisto Riccardo ORARIO RICEVIMENTO PO ING-INF/05 40.5 0 19.5 0 8
Sisto Riccardo ORARIO RICEVIMENTO PO ING-INF/05 40.5 0 19.5 0 8
SSD CFU Attivita' formative Ambiti disciplinari
ING-INF/05 6 C - Affini o integrative Attivitą formative affini o integrative
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).

Risultati di apprendimento attesi
- 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
Prerequisiti / Conoscenze pregresse
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
Organizzazione dell'insegnamento
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.
Testi richiesti o raccomandati: letture, dispense, altro materiale didattico
The course material will be distributed by the teacher and it will be available on the web pages of the course.
Criteri, regole e procedure per l'esame
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 (which consists of developing an extension of the previously developed assignments) and one or more open-answer questions. In case of doubts, an oral exam may be requested to complete the evaluation.
The evaluation of the assignments developed by the student is done by
sampling: at each exam call a different set of aspects is evaluated. The evaluation of the assignments contributes to the final grade with up to
20 points, while the programming test contributes with up to 6 points and the questions with up to 4 points.
Laude requires oral exam.
Orario delle lezioni
Statistiche superamento esami

Programma definitivo per l'A.A.2017/18

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