cloud computing course (cc-mei)

Cloud Computing 2020 (CC-MEI)

Master Ingeniería Informática (FIB/UPC – 2020)

ECTS: 3.0 – Weeks: 6,75
Course starts on 10/02/2020 (Monday)

Oficial web site

Idioma de impartición de las clases curso 2020: Español
Idioma documentación: Inglés

Course workload: important warning

The student should be aware that CC-MEI 2020 edition is a 3.0 ECTS course that requires an effort from the student equivalent to 75 hours (3.0 ECTS*25 hours/ECTS).  This means more than 10 hours per week(4 hours in class + 6 hours outside of class on average) for 6,75 weeks. It is not recommended to take this course if the student has other commitments during the term that will prevent them to dedicate the required amount of hours to this course. They can wait for the next course edition.

Course Goal:

Services converge and pass from the physical world to the digital world, making them accessible from any electronic device. Cloud Computing is what makes it possible for digital technology to penetrate every corner of our economy and society. The goal of this course is to help students to understand this profound transformation that is causing Cloud Computing and related emerging technologies such as Artificial Intelligence. This course will encourage their desire to want to delve further into this exciting world of technology and become actively involved.

Course Description:

This course will review Cloud Computing technologies which will shape our near future, as well as attempt to visualize in which direction this technology will take us. The course will pay special attention to the relation of Cloud Computing with advanced analytics technologies (such as Artificial Intelligence in general and Deep Learning technologies in particular).  We will look under the hood of these advanced analytics services in the Cloud, either in terms of software or hardware, in order to understand how their high-performance requirements can be provided.

The practical component is an important part of this subject. In this course the “learn by doing” method is used, with a set of Hands-on that the students must carry out throughout the course. The course will be marked by a continuous assessment which ensures constant and steady work. The method is also based on teamwork and a ‘learn to learn’ approach reading and presenting related topics in short presentations. Thus the student is able to adapt and anticipate new technologies that will arise in the coming years.

Course Lectures:

0. Motivation

1. Cloud Computing paradigm

  • The evolution of the Cloud Computing
  • Cloud deployment and services models

2. Cloud Computing technologies

  • Containers and orquestrators
  • APIs: the doors in the Cloud

3. New relate paradigms

  • Serveless computing
  • Edge computing

4. Cloud Computing and Big Data Analytics

  • Current Cloud computing software stack
  • Current Cloud computers Hardware: the Paradigm shift

5. AI & DL: The next wave of Cloud

  • Programming DL
  • Scaling DL applications

Course Activities:

  • Class attendance and participation: Regular and consistent attendance is expected and to be able to discuss concepts covered during class. The theoretical activities include participatory lecture classes, which explain the basic contents of the course. Attendance in class is mandatory unless you have a reason to miss class that is acceptable to the instructor. Students are responsible for all material and projects are given in class whether they are present or not. It is the responsibility of the student to obtain handouts, assignments, projects, etc. for any missed class from a fellow student.
  • Hands-on: Activities focused on the acquisition of knowledge through experimentation by “learn by doing” approach mixing theory and practice. Part of the hands-on will be conducted during a regular class sessions and part will be done out of the class sessions. All the hands-on will involve writing a report with all the results to be delivered to the “Racó” 
  • Homework Assignments: Homework will be assigned weekly that includes reading the documentation that expands the concepts introduced during lectures, and periodically will include reading research papers related with the lecture of the week, and prepare presentations (with slides).  Some students/groups randomly chosen will present their presentation.
  • Assessment: There will be 2 short midterm exams along the course.
  • Student presentation: Students/groups randomly chosen will present the homework (presentations/projects).
  • Final exam: At the end of the term the student will have an optional exam. 

Teacher’s master classes, the presentations of the students and the practices of the course, will be mixed throughout the class on Mondays and Thursdays. It is expected that the student always carry his/her laptop to do the assigned hands-on or follow the digital documentation that the teacher will distribute each day.

Grading Procedure:

The evaluation of this course can be obtained by continuous evaluation. This evaluation will take into account different items:

  • In-class exams will account for  10% of the grade:
    • Midterm 1: 5%
    • Midterm 2: 5%
  • Attendance & participation in class will account for 14% of the grade:
    • Each day: 1%
  • Homework, reading papers and presentations will account for 34% of the grade:
    • Presentation 1: 12%
    • Presentation 2: 2%
    • Presentation 3: 10%
    • Presentation 4: 10%
  • Hands-on (+reports) will account for 42% of the grade:
    • Hands-on 1: 8%
    • Hands-on 2: 1% (not requires a report)
    • Hands-on 3: 10%
    • Hands-on 4: 4%
    • Hands-on 5: 12%
    • Hands-on 6: 7%

Requirements for continuous evaluation is: 

  • Minimum of 80% of attendance in class sessions
  • Minimum of 50% of Homework and presentations
  • Minimum of 50% of Hands-on

Course Exam, for those students who have not benefited the continuous evaluation, will be announced during the course. This exam includes the evaluation of the knowledge of the entire course (practical part, theoretical part and self-learning part of homework). During this exam the student is not allowed to use any type of documentation.

Previous Knowledge:

Python is the programming language of choice for the labs’ sessions of this course. It is assumed that the student has a basic knowledge of Python prior to starting classes. Also, some experience with Linux basics will be necessary.


Class handouts and materials associated with this class can be found on the Racó (FIB intranet).


Jordi Torres Viñals
Email: torres‘
Twitter: @JordiTorresAI
Office: UPC Campus Nord, Modul C6. Room 217. Jordi Girona 1-3, 08034 – Barcelona

This page and its links will be updated throughout this course to keep the information as updated as possible. (last modified: 12 Jan 2020)

Banner picture: CC-MEI 2018 students.