Guia de Cursos

Queres conhecer a oferta de cursos da NOVA, nas áreas das licenciaturas, mestrados e doutoramentos?
No nosso Guia de Cursos encontras informação útil sobre Faculdades, Institutos e Escolas.
Podes ainda aceder a informações complementares necessárias a uma completa integração.

saber mais Guia de Cursos

Faculdade de Ciências e Tecnologia

Sistemas de Computação em Cloud

Código

11174

Unidade Orgânica

Faculdade de Ciências e Tecnologia

Departamento

Departamento de Informática

Créditos

6.0

Professor responsável

Nuno Manuel Ribeiro Preguiça, Paulo Orlando Reis Afonso Lopes

Horas semanais

4

Língua de ensino

Português

Objectivos

Conhecimentos

  • Compreender os fundamentos dos sistemas de computação em Cloud
  • Conhecer os centros de dados, as infra-estruturas (armazenamento, rede e computação) e as técnicas de virtualização de recursos
  • Compreender os diferentes modelos de serviço Cloud (IaaS, PaaS, SaaS). Exemplos, sua realização e características
  • Compreender os modelos de programação usados para desenvolvimento de aplicações que beneficiam dum ambiente de Cloud.

Aptidões e competências

  • Saber identificar as classes de aplicações que beneficiam dos sistemas de computação de Cloud.
  • Saber criar soluções que tirem partido das características dos serviços de Cloud e respectivos recursos.
  • Saber avaliar soluções desenvolvidas em plataformas Cloud.

Pré-requisitos

O aluno deve ter presente as matérias de Fundamentos de SO, Redes de Computadores e Sistemas Distribuídos.

Conteúdo

1- Introdução e motivação: aplicações tipo e seus requisitos. Características dos sistemas de suporte: componentes e modelos de serviço. 

2- Infraestruturas e Centros de Dados. Perspetiva histórica. Infra-estruturas de computação, de rede e de armazenamento.

3- Virtualização de recursos para uma infraestrutura elástica. Tecnologias de virtualização de hardware. Gestão de recursos, orquestração, particionamento e partilha.

4- Serviços de Cloud nos domínios da computação, do armazenamento e do suporte de aplicações distribuídas. Conceitos e realização. Aspectos de custo, elasticidade, desempenho, disponibilidade, gestão e privacidade.

 5- Modelos de programação e exploração das plataformas mais comuns. Casos de estudo: Google AppEngine, Amazon AWS e processamento de grandes volumes de dados usando Elastic MapReduce. 

Bibliografia

Cloud Computing: Theory and Practice, Dan C. Marinescu, Morgan Kaufman-Elsevier, 2013.

The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines, Luiz André Barroso, Jimmy Clidaras, Urs Hölzle, Synthesis Lectures on Computer Architecture, Morgan & Claypool Publishers, 2013.

Artigos seleccionados de revistas e/ou conferências.

Método de ensino

O programa é desenvolvido através de sessões teóricas e sessões laboratoriais. Nas primeiras, são apresentados e enquadrados os temas tratados, incentivando-se a perspectiva crítica do aluno, na identificação dos modelos de computação genéricos dos sistemas tratados, nos seus aspectos comuns e diferenciadores e na sua confrontação com o estudo de casos de sistemas existentes concretos.  Essas dimensões são aprofundadas através da realização de um conjunto de trabalhos práticos, de natureza laboratorial, nos quais os alunos desenvolvem e avaliam experimentalmente soluções a nível da concepção de aplicações e da gestão dos ambientes computacionais característicos.

A avaliação assenta em testes presenciais individuais e em trabalhos laboratoriais ao longo do semestre, em grupos, havendo um relatório escrito por cada trabalho e sua discussão oral.  

Cursos