cloud computing course (cc-mei)

Cloud Computing 2019 (CC-MEI)

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

ECTS: 3.0 – Weeks: 6,75

Oficial web site

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

Course workload: important warning

The student should be aware that CC-MEI 2019 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 this quarter that will prevent to dedicate the required amount of hours to this course. You 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.

Cloud computing is a service model for large-scale distributed computing. It is based on converged infrastructure and a set of common services over which applications can be deployed and run over the network. This will cause a deluge of digital information requiring a big data analytics with magnitudes never seen before.

Cloud Computing is the real enabler of the democratization of technologies that will transform our society. It means Artificial Intelligence and its related technologies are available to everyone.

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. This year we will focus on the last part of the course in the software that enables DL applications (focusing on one case study based in Keras).

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. Course organization

1. Cloud Computing paradigm

2. Cloud Computing technologies

3. Current layers in a Cloud Computing Software Stack

4. Cloud Computers Hardware: the Paradigm shift

5. AI & DL: The next wave of Cloud

6. Under the hood of AI & DL: a case study

Course Activities:

  • In-class exams: Midterm & Quizzes will be administered during regular class time and in the regular classroom.
  • Activities focused on the acquisition of theoretical knowledge.  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.
  • Activities focused on the acquisition of knowledge through experimentation (Hands-on)  by “learn by doing” approach mixing theory and practice in regular class sessions (some of the hands-on will involve writing a report with all the results to be delivered to the “Racó”).
  • Homework will be assigned weekly that includes, finish hands-on by your own, 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 short presentations (with slides that will be submitted to the “Racó”).  Some students/groups randomly chosen will present their short presentation.


The evaluation of this course will take into account different items:

  • In-class exams will account for  25% of the grade.
  • Attendance & participation in class will account for  15% of the grade.
  • Homework, reading papers and presentations will account for 20% of the grade.
  • Hands-on (+reports) will account for 40% of the grade

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, prior exposure to Git and experience with Linux basics will be necessary.


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


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: 25 Jan 2019)

Banner picture: CC-MEI 2018 students.