TECNOLOGIE PER I SISTEMI DISTRIBUITI E IL WEB CON LABORATORIO

Academic Year 2018/2019 - 3° Year - Curriculum B
Teaching Staff Credit Value: 9
Scientific field: INF/01 - Informatics
Taught classes: 36 hours
Exercise: 24 hours
Laboratories: 12 hours
Term / Semester:

Learning Objectives

  • Technologies for Distributed Systems and the Web: foundations

    Knowledge and understanding: students will acquire a precise knowledge and understanding of the conceptual foundations (i.e., fundamental concepts, problem classes and relevant solutions) underlying present-day design and development of distributed systems, including server-side Web applications.
    Applying knowledge and understanding: students will become capable of employing solutions and paradigms learned during the course, so as to develop an effective "toolset" of skills, required for the design of distributed systems and server-side Web applications.
    Making judgements: students will acquire the ability to assess the relative merits and limits of solutions commonly adopted, within software industry, to tackle problems and scenarios typical of the design of distributed systems and server-side Web applications.
    Communication skills: students will learn terminology and paradigms specific to distributed systems and server-side Web development, and acquire the communication skills required to express and discuss, at a rigorous technical level, problems of interest for the field.
    Learning skills: students will become capable of profitaby reading, understanding and making use of available information sources, i.e. textbooks and/or online resources, possibly applying the information acquired to real-world scenarios.

  • Technology for Distributed Systems and the Web: laboratory

    Knowledge and understanding: students will acquire a precise knowledge and understanding of the conceptual foundations (i.e., fundamental concepts, problem classes and relevant solutions) underlying present-day design and development of distributed systems, including server-side Web applications.
    Applying knowledge and understanding: students will become capable of employing solutions and paradigms learned during the course, so as to develop an effective "toolset" of skills, required for the design of distributed systems and server-side Web applications.
    Making judgements: students will acquire the ability to assess the relative merits and limits of solutions commonly adopted, within software industry, to tackle problems and scenarios typical of the design of distributed systems and server-side Web applications.
    Communication skills: students will learn terminology and paradigms specific to distributed systems and server-side Web development, and acquire the communication skills required to express and discuss, at a rigorous technical level, problems of interest for the field.
    Learning skills: students will become capable of profitaby reading, understanding and applying available sources, i.e. textbooks and/or online resources, possibly applying the information acquired to real-world scenarios.


Course Structure

  • Technologies for Distributed Systems and the Web: foundations

    Classroom lectures

  • Technology for Distributed Systems and the Web: laboratory

    Laboratory sessions


Detailed Course Content

  • Technologies for Distributed Systems and the Web: foundations

    The course will introduce the main concepts, paradigms and architectural aspects pertaining the following topics.

    • Client-server, socket-based applications
    • Client-server, remote invocation based applications
    • Linux Threads in C
    • Java Threads
    • Servlets and Web applications
    • Web services: SOAP and REST
  • Technology for Distributed Systems and the Web: laboratory
    • Client-server, socket-based applications
    • Client-server, remote invocation based applications
    • Linux Threads in C
    • Java Threads
    • Servlets and Web applications
    • Web services: SOAP e REST

Textbook Information