Definição Formal da Disciplina "Computação em Nuvem

A disciplina de Computação em Nuvem é um campo de estudo dentro da Ciência da Computação e da Engenharia de Software que abrange os princípios, arquiteturas, tecnologias, modelos de serviço e implantações que permitem o fornecimento sob demanda de recursos de computação escaláveis, elásticos e compartilhados pela Internet, com pagamento baseado no uso.

Elementos Centrais da Definição:

1. Objeto de Estudo:

 - Infraestrutura, plataformas e software como serviços (IaaS, PaaS, SaaS).

- Virtualização, orquestração de contêineres e computação sem servidor (serverless).

- Redes, armazenamento distribuído e data centers.

2. Princípios Fundamentais:

- Auto-serviço sob demanda: Capacidade do usuário de provisionar recursos sem intervenção humana do provedor.

- Amplo acesso via rede: Acesso através de mecanismos padrão (ex.: HTTP, APIs).

- Pool de recursos: Multi-tenancy e alocação dinâmica.

- Elasticidade rápida: Escalabilidade automática para cima ou para baixo.

- Serviço mensurável: Monitoramento, controle e otimização de uso.

3. Modelos de Serviço (camadas de abstração):

- IaaS (Infraestrutura como Serviço): Máquinas virtuais, redes, armazenamento.

- PaaS (Plataforma como Serviço): Ambientes para desenvolvimento/deploy de aplicações (ex.: banco de dados, middleware).

- SaaS (Software como Serviço): Aplicações completas acessíveis via navegador.

4. Modelos de Implantação:

- Nuvem pública, privada, híbrida e comunitária.

 5. Tecnologias Habilitadoras:

- Virtualização (hypervisors), contêineres (Docker, Kubernetes), SDN (Software-Defined Networking), armazenamento distribuído, segurança em nuvem, DevOps e FinOps.

6. Aspectos Econômicos e de Gestão:

- Modelos de custo pay-as-you-go, otimização de custos, SLAs (Service Level Agreements), governança e conformidade.

Objetivos Educacionais Típicos:

- Projetar e implementar sistemas escaláveis na nuvem.

- Selecionar modelos de serviço e implantação adequados a diferentes cenários.

- Gerenciar segurança, disponibilidade e custos em ambientes de nuvem.

- Dominar ferramentas de provedores líderes (AWS, Azure, GCP) e tecnologias open-source.

Contexto Acadêmico:

Esta disciplina de nível avançado (graduação ou pós-graduação), com pré-requisitos em redes, sistemas distribuídos, administração de sistemas e programação. Pode incluir laboratórios práticos com provedores comerciais ou ambientes de nuvem privada (ex.: OpenStack).