Código: | LIB10146 | Sigla: | CN | |
Área Científica: | Informática |
Página Web: | https://arturmarques.com/edu/cn/ |
Área de Ensino: | Informática |
Sigla | Nº de Estudantes | Plano de Estudos | Ano Curricular | Créditos | Horas Contacto | Horas Totais |
---|---|---|---|---|---|---|
LIB1 | 45 | Despacho n.º 9236/2020, de 28 de setembro | 3º | 5 | 60 | 125 |
Teórico-Práticas: | 58,00 |
Docência - Horas Semanais
|
Docência - Responsabilidades
|
Espera-se do estudante aprovado:
- Que entenda o conceito de "Cloud Computing"/"Computação na Nuvem", seus modelos de serviço (IaaS, PaaS, SaaS), modelos de deployment (public, private, hybrid), tecnologias de infraestrutura, tecnologias de arquivo, e abordagens selecionadas para o desenvolvimento (Serverless, MicroServices, Cloud Native, DevOps);
- Conhecimentos sobre aspetos de negócio e tecnológicos que suportem escolhas entre diferentes ofertas "Cloud", incluindo casos de estudo;
- Competências para entender/desenvolver/disponibilizar (partes de) soluções, consoante aspetos como natureza pública ou privada da cloud, necessidades de dados e tráfego, necessidades computacionais, interoperabilidade e abertura, concretizando aplicações distribuídas nalguma arquitetura elegida.
Conceitos em "Cloud Computing":
- Conceito de "Cloud"
- Modelos de Serviço (IaaS, PaaS, SaaS)
- Modelos de Concretização/Deployment (public, private, hybrid)
- Tecnologias de Infraestrutura (bare-metal, VMs, containers)
- Soluções de arquivo/storage (File, Block, Object, CDNs)
Desenvolvimento "Cloud Native"
- Camadas de desenvolvimento, provisionamento, runtime, orquestração
Prática com aplicações na Cloud
- Utilizando alguma linguagem de programação (exemplo: Python)
- Sobre a oferta de algum provider (exemplo: AWS, GCP)
Os conteúdos introduzem, elaboram e exemplificam conceitos. Utilizam-se casos de estudo, de negócios e de atividades concretas, suportadas pela Cloud. Isto deverá estabelecer os conceitos e a capacidade de entender como e quais problemas pode a Cloud resolver (e criar).
A forma como se desenvolve, disponibiliza, e executa o software, depende dos recursos e serviços disponíveis, especialmente em termos de dados e computação, pelo que praticar esses aspetos é importante.
A aptidão de utilizar-se e/ou desenvolver-se e/ou disponibilizar-se (partes de) soluções, emerge de praticar-se a utilização, e/ou o desenvolvimento, e/ou o deployment com ferramentas e linguagens concretas, que explorem técnicas e tecnologias efetivamente disponíveis.
Apresentações, exemplos e casos de estudo.
Desenvolvimento e deployment prático de soluções, utilizando tecnologias elegidas.
Avaliação:
Projeto proposto pelo estudante e acordado com o docente (P)
Teste escrito (T)
Nota final = 0.4 * P + 0.6 * T
As apresentações, os exemplos e os casos de estudo, introduzem, ilustram e concretizam os conceitos, respetivamente, e deverão facilitar o seu entendimento.
O desenvolvimento e deployment, na prática, expõe os estudantes à realidade das tecnologias adotadas e deverá traduzir-se na aptidão para a criação e disponibilização de (partes de) cloud apps/soluções.
Lachance, D. (2020). CompTIA Cloud Essentials+ Certification Study Guide, McGraw-Hill Education.
Fraser, S. and T. Ziadé (2021). Python Microservices Development: Build efficient and lightweight microservices using the Python tooling ecosystem, 2nd Edition.
AWS. (2023). Amazon Web Services. from https://aws.amazon.com/
Google. (2023). Google Cloud Platform. from https://cloud.google.com/
Utilização sistemática de soluções que permitem o acompanhamento à distância das sessões e dos alunos, como o software Zoom.