- Docente: Michele Colajanni
- Credits: 8
- SSD: ING-INF/05
- Language: English
- Teaching Mode: Traditional lectures
- Campus: Bologna
-
Corso:
Second cycle degree programme (LM) in
Computer Engineering (cod. 0937)
Also valid for Second cycle degree programme (LM) in Artificial Intelligence (cod. 9063)
Learning outcomes
Digital services have to meet various requirements in terms of performance, scalability and reliability. We analyze the whole lifecycle of high quality services, from design to deployment, testing and operation. In each phase, we aim to provide the students with the ability to gather and analyze data, to identify sources of outages and critical dependencies, and to avoid bottlenecks and single points of failure. Finally, we expect students to be prepared to evaluate and discuss alternatives and justify investment in support of business services.
Course contents
Introduction
- Cloud services
- Cloud provider architectures
- High-quality services: performance, scalability, reliability (and security)
- Lifecycle of high-quality services
Part 1: Architectures for scalable and reliable services
- Sources of outages and critical dependencies
- Bottlenecks and single points of failure
- Design: maturity assessment, architectural principles for reliability and scalability, AKF scale cube model
- Migration to cloud
- Critical data management: Strategy, Governance, Management
- Implementation alternatives on cloud platforms and multi-clouds
Part 2: Service deployment
- Secure and robust software production
- Secure and robust DevOps
- Labs on cloud platforms
Part 3: Tests
- Benchmarking
- Performance testing
- Stress testing
Part 4: Scalable and reliable organizations
- Roles and responsibilities
- Leaders and managers
- Putting all together
- Capacity planning
- Understanding and managing complexity
- Managing changes
Part 5: Issues, incident and crises
- Performance monitoring
- Warning signs in operation
- Incidents management
- Crisis management
Readings/Bibliography
Slides, teacher's notes, book chapters, scientific articles and online resources indicated on the Virtuale website.
Teaching methods
The course consists of lectures and exercises in class. Interaction is appreciated and evaluated as a component of the final grade.
Assessment methods
There are two possibilities of assessment.
(1) Software project (max 2 students), presentation of the results and discussion.
(2) Individual design project, presentation of the results and oral exam.
The students interested to the option (1) must complete the assessment by the end of July.
Teaching tools
All the teaching material is available to the students on the course (Virtuale) website.
Office hours
See the website of Michele Colajanni