Cloud Computing

You are here

Credits
3
Types
Elective
Requirements
This subject has not requirements

Department
AC
Mail
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 a converged infrastructure and a set of common services over which applications can be deployed and run over the network. Not only does this allow users to be connected to this new digital world through their mobile devices, it will soon also allow the connection of any object or device. This will cause a deluge of digital information requiring a big data analytics with magnitudes never seen before.

This course will start with a brief review of Cloud Computing and Big Data technologies which will shape our near future, as well as attempt to visualize in which direction this technology will take us.

In this course students will gain a practical view of the latest in Cloud technology in order to know how to start to implement a prototype that can help to develop a business idea created by the student. The students will begin creating a basic toolbox to get started in the Cloud. This will prepare them to practice with APIs, the doors in the Cloud. All these things together will allow the students to mine the deluge of data coming from the Cloud, or use new advanced analytics services provided nowadays by the Cloud. Finally, 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 goal is to help students become part of this profound transformation that is causing the Advanced Analytics that the Cloud is already providing as a service, and also, to encourage their desire to want to delve further into this exciting world of technology and become actively involved.

(2017 course edition will be in Spanish and will start on Friday April 7th)

Teachers

Person in charge

  • Jordi Torres Viñals ( )

Weekly hours

Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
5

Competences

Technical Competences of each Specialization

Direcció i gestió

  • CDG1 - Capability to integrate technologies, applications, services and systems of Informatics Engineering, in general and in broader and multicisciplinary contexts.

Especifics

  • CTE6 - Capability to design and evaluate operating systems and servers, and applications and systems based on distributed computing.
  • CTE9 - Capability to apply mathematical, statistical and artificial intelligence methods to model, design and develop applications, services, intelligent systems and knowledge-based systems.

Generic Technical Competences

Generic

  • CG1 - Capability to plan, calculate and design products, processes and facilities in all areas of Computer Science.
  • CG4 - Capacity for mathematical modeling, calculation and simulation in technology and engineering companies centers, particularly in research, development and innovation tasks in all areas related to Informatics Engineering.
  • CG6 - Capacity for general management, technical management and research projects management, development and innovation in companies and technology centers in the area of Computer Science.
  • CG7 - Capacity for implementation, direction and management of computer manufacturing processes, with guarantee of safety for people and assets, the final quality of the products and their homologation.
  • CG8 - Capability to apply the acquired knowledge and to solve problems in new or unfamiliar environments inside broad and multidisciplinary contexts, being able to integrate this knowledge.

Transversal Competences

Appropiate attitude towards work

  • CTR5 - Capability to be motivated by professional achievement and to face new challenges, to have a broad vision of the possibilities of a career in the field of informatics engineering. Capability to be motivated by quality and continuous improvement, and to act strictly on professional development. Capability to adapt to technological or organizational changes. Capacity for working in absence of information and/or with time and/or resources constraints.

Basic

  • CB6 - Ability to apply the acquired knowledge and capacity for solving problems in new or unknown environments within broader (or multidisciplinary) contexts related to their area of study.
  • CB8 - Capability to communicate their conclusions, and the knowledge and rationale underpinning these, to both skilled and unskilled public in a clear and unambiguous way.
  • CB9 - Possession of the learning skills that enable the students to continue studying in a way that will be mainly self-directed or autonomous.

Objectives

  1. Cloud Basics
    Related competences: CDG1, CTE6, CG1, CG4, CTR5,
  2. Understand current required layers in a Big Data Software Stack
    Related competences: CG1, CG4, CG6, CG7, CB9,
  3. Understand APIs: The doors in the Cloud
    Related competences: CDG1, CB6, CB9,
  4. Learn new Software requirements for Advanced Analytics
    Related competences: CTE6, CTE9, CG8,
  5. Learn new Hardware requirements for Advanced Analytics
    Related competences: CDG1, CTE6, CTE9, CB6, CB8, CB9,
  6. Learn by doing in Lab sessions
    Related competences: CDG1, CG1, CG4, CG6, CG7, CG8, CB6,

Contents

  1. Cloud Basics
  2. Current required layers in a Big Data Software Stack
  3. APIs: The doors in the Cloud
  4. New Software requirements for Advanced Analytics
  5. New Hardware requirements for Advanced Analytics
  6. Lab session 1:
    "Basic Toolbox to Getting Started in the Cloud"
  7. Lab session 2:
    "Doors in the Cloud" - Case study mining the social web
  8. Lab session 3:
    "Analysing the Cloud" - Sentimental Analysis of Tweets
  9. Lab session 4:
    "Advanced Analytics as a Cloud Services". Case Study: Sentimental Analysis of images
  10. Lab session 5:
    "Under the hood of Advanced Analytic Services in the Cloud" - Case study TensorFlow (and optionally with GPUs)
  11. Elevator Pitch presentations
    Compreensive presentation of one Cloud provider (by all students)

Activities

Cloud Basics

Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
0
Objectives: 1
Contents:

Understand APIs: The doors in the Cloud

Theory
2
Problems
0
Laboratory
0
Guided learning
0
Autonomous learning
0
Objectives: 3
Contents:

Understand current required layers in a Big Data Software Stack

Theory
4
Problems
0
Laboratory
0
Guided learning
0
Autonomous learning
0
Objectives: 2
Contents:

Learn new Software requirements for Advanced Analytics

Theory
2
Problems
0
Laboratory
0
Guided learning
0
Autonomous learning
0
Objectives: 4
Contents:

Learn new Hardware requirements for Advanced Analytics

Theory
1.5
Problems
0
Laboratory
0
Guided learning
0
Autonomous learning
0
Objectives: 5
Contents:

Learn by doing in Lab sessions

Theory
0
Problems
0
Laboratory
11.5
Guided learning
0
Autonomous learning
0
Objectives: 6
Contents:

Elevator Pitch presentation

Theory
2
Problems
0
Laboratory
0
Guided learning
0
Autonomous learning
4

Contents:

Homework

Theory
0
Problems
0
Laboratory
0
Guided learning
0
Autonomous learning
17
Objectives: 2 1 3 4 5 6
Contents:

Teaching methodology

During the course there will be four types of activities:

a) Activities focused on the acquisition of theoretical knowledge. The theoretical activities include participatory lecture classes, which explain the basic contents of the course.
b) Activities focused on the acquisition of knowledge through experimentation by "learn by doing" approach in lab sessions guided by hands-on (and final report). Prior to the lab sessions the student will prepare a related piece of homework.
c) A short oral presentation by the student of one of the topics in the course (indicated by the teacher). This activity requires the preparation of a short slides presentation.
d)Course project that will be based on technologies considered in this course

Evaluation methodology

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

- Attendance (minimum 80% required) & participation in class will account for 25% of the grade.
- Homework and presentations will account for 25% of the grade.
- Course Project will account of 15% of the grade
- Lab sessions (+ Lab reports) will account for 35% of the grade

Bibliografy

Basic:

  • Hand-on sessions at GitHub - TORRES, Jordi, , . ISBN:
  • Slides of the course - TORRES, Jordi, , . ISBN:

Previous capacities

Python is the programming choice 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.

Any student can learn the required background by following two hands-on that provide a fast-paced introduction to the basic characteristics of Python and git (will be available some weeks before to start the course).

Warning. Be sure to acquire the required background prior to starting CC-MEI labs.