(Também CKP8422 - Topicos Especiais Em Redes E Sist. Distribuidos II)
Ciência da Computação, Departamento de Computação, (UFC)
- Professor - Fernando Trinta (fernando.trinta@dc.ufc.br)
- Assistente de Ensino - Francisco Anderson de Almada Gomes, (andersonalmadagomes@gmail.com)
Departamento de Computação, horários: Terça e Quintas (10:00-12:00), Bloco 950, Sala 05. Aulas práticas, quando ocorreram, serão no Lab LEC.
- Edições passadas à 2018.1, apenas no SigaA.
Computação em Nuvem é o termo bastante difundido que representar um novo modelo de uso de recursos de TI (hardware, software, dados), onde tais recursos são oferecidos remotamente aos seus usuários, em geral por meio de virtualização. Este novo modelo tem alcançado muito sucesso, pois traz consigo benefícios como utilização de recursos sob demanda, otimização de desempenho e escalabilidade. Porém, o benefício destas propriedades requer que aplicações sejam concebidas com foco na nuvem. Neste sentido, esta disciplina busca apresentar ao aluno como aplicações podem tirar proveito da nuvem para alcançar benefícios como alta elasticidade, maior desempenho e alta disponibilidade.
Um relato de experiência das várias edições desta disciplina pode ser estudado no artigo Teaching Software Development for the Cloud: An Experience Report, publicado no Congresso Brasileiro de Software 2017.
Conceitos Básicos de Computação em Nuvem. Modelos de Serviços e de Implantação em Nuvem. Virtualização. Desenvolvimento com PaaS. Desenvolvimento SaaS. Multitenancy. Mobile Cloud Computing. Desafios para software em nuvem.
Não há livro texto obrigatório. Entretanto, a seguir estão alguns livros que podem ser recomendados:
- Google Cloud Platform Blog
- DevOps | AWS Cloud | Cloud Tutorials for Beginners
- Containers Patterns: There are a thousand ways to use containers
- AWS Tutoriais
- Google Cloud Platform Tutorais
- Microsoft Azure Tutoriais
-
Objetivo Geral Introduzir ao aluno os principais conceitos do paradigma de computação móvel em nuvem, em especial, àqueles relacionados ao desenvolvimento de aplicações.
-
Objetivos Específicos Apresentar os modelos de serviços em nuvem (Infraestrutura como Serviço, Plataforma como Serviço e Software como Serviço), Modelos de Implantação (Nuvem Pública, Privada, Comunitária e Híbrida), Principais plataformas de nuvem públicas (Amazon AWS, Google AppEngine, Microsoft Azure) e para nuvens privadas (OpenStack, CloudStack, OpenNebula, Eucalyptus). Apresentar o modelo de programação Map/Reduce e o conceito de criação de software multi inquilino (MultiTenancy). Discutir sobre os desafios para o desenvolvimento de software para/e com a nuvem.
A metodologia do curso constará de aulas expositivas, enriquecidas por seminários e debates com a utilização de recursos audiovisuais. As avaliações serão baseadas nas aulas, exercícios dirigidos, e o projeto final.
Para participar deste curso é desejável que os participantes tenham:
- Inglês técnico para leitura, estudo e acompanhamento das atividades propostas, uma vez que a maior parte do material disponível está em inglês.
- Conhecimento básico de arquitetura de computadores, sistemas operacionais, redes, engenharia de software, sistemas distribuídos e banco de dados.
- Conhecimento de plataformas de desenvolvimento de software para Web;
Estes artigos podem ser obtidos a partir da rede da UFC, mediante acesso ao portal de periódicos da CAPES.
Aulas | Tópicos | Recursos | Tarefas |
---|---|---|---|
22 Fev 2018 | Apresentação da Disciplina | Slides PDF | - |
27 Fev 2018 | Conceitos Básicos de Computação em Nuvem | Slides PDF | - |
01 Mar 2018 | Conceitos Básicos de Computação em Nuvem | Slides PDF | - |
06 Mar 2018 | Amazon AWS Demo | (http://aws.amazon.com) | - |
08 Mar 2018 | AWS - Principais Serviços | (http://aws.amazon.com) | - |
13 Mar 2018 | AWS Rest API | Slides PDF | Trabalho AWS |
15 Mar 2018 | Elasticidade | Slides PDF | - |
15 Mar 2018 | Elasticidade | Slides PDF | - |
22 Fev 2018 | Google Cloud Platform | Slides PDF | Trabalho GAE |
27 Mar 2018 | Virtualização | Slides PDF | - |
29 Mar 2018 | Semana Santa | - | - |
03 Abr 2018 | Amazon Auto Scalling Groups | - | - |
05 Abr 2018 | Revisão para Prova | Slides PDF | - |
10 Abr 2018 | Primeira Avaliação | - | |
12 Abr 2018 | Turma Liberada para Conclusão de Projeto | - | - |
17 Abr 2018 | Apresentação dos Projetos | - | - |
24 Abr 2018 | MultiTenancy | - | |
26 Abr 2018 | Open Source Cloud | - | |
01 Mai 2018 | Feriado (Dia do Trabalho) | - | - |
03 Mai 2018 | Demonstração OpenStack | - | - |
08 Mai 2018 | Desafios na Integração Nuvem + ES | - | - |
10 Mai 2018 | Desafios na Integração Nuvem + ES (cont) | - | - |
15 Mai 2018 | Turma Liberada para Conclusão de Projeto | - | - |
17 Mai 2018 | Entrega de Notas da Avaliação 1 | - | - |
22 Mai 2018 | Mobile Cloud Computing | ||
24 Mai 2018 | Aula Demonstração - CAOS | - | - |