Please find here some information about laboratories format for this course and topics, as well as the questionnaire for the evaluation of the labs.
LAB01: XML
How do services communicate? What's the language in which messages traverse the realms of SOAs?. In this module, we will give a look to the cornerstone language of service-oriented architectures: XML.
LAB02: JSON
What is the most common notation used currently for service communication?
Currently it is the Javascript Object Notation, better known as JSON, and in this module we will present some practical uses, for example, to define objects, and to send and receive data.
LAB03: Docker
Creating, customizing, managing and orchestrating environments is a key part of the engineering of web services, and of software development in general.
In this lab, you will have an introductory lecture on Docker, an alternative to the paradigm of VMs, and a widespread technology that can be used to create and distribute development environments.
LAB04: Testing
The field of web services relies on tests even more than run-of-the-mill software development, because you often integrate in your application web services that you don't control, and that are not always well-documented or work as you expect.
In this lab session, you will learn to use curl and Postman, two tools that can be used to test APIs.
LAB05: REST
As we discussed in the class, REST is currently the leading paradigm for the design of APIs for web-based services.
In this lab, you will have the chance to experiment with creating a small web service using a framework designed to facilitate this process, Ruby on Rails.
LAB06: Documentation
Writing web services is fundamental, but documenting them properly is what makes them usable and impactful.
In this session, you will be acquainted with ways to streamline the process of writing documentation for your APIs, and how the process can be automated to make it as effortless as possible.
LAB07: Authentication
As we aggregate more and more of our resources into the Web, we need our infrastructure to be secure. Passwords, however, have long been called outdated, and APIs offer a convenient way to authenticate and authorize users.
In this session, you will be introduced to different (and increasingly sophisticated) methods to perform this task, from API keys to OAuth.