🎓 Portal do Curso: Gestão da Tecnologia da Informação (GTI)
Bem-vindo ao portal oficial de materiais das disciplinas de Engenharia de Software e Banco de Dados para o curso de GTI da FATEC.
Este ambiente foi projetado para ser seu guia prático durante o semestre, reunindo toda a teoria, roteiros de laboratório e apresentações em um só lugar.
📚 Disciplinas Disponíveis
💻 Engenharia de Software e Aplicações
Foco no ciclo de vida do software, metodologias ágeis (Scrum/Kanban), engenharia de requisitos e garantia de qualidade.
🗄️ Banco de Dados e Aplicações
Modelagem conceitual e relacional, normalização e implementação prática com linguagem SQL (DDL/DML).
🛠️ Ferramentas Recomendadas
Para um melhor aproveitamento das aulas práticas, recomendamos a instalação dos seguintes softwares:
- VS Code (com extensões SQLite Viewer e Marp for VS Code)
- Git & GitHub Desktop
- DB Browser for SQLite
- StarUML (para modelagem DER/UML)
🚀 Como Iniciar?
Navegue pelo menu lateral à esquerda para acessar os módulos de cada disciplina. Cada módulo contém o conteúdo teórico e links para atividades práticas.
"A tecnologia move o mundo, mas a gestão da informação é o que o mantém girando."
Engenharia de Software e Aplicações
📋 PLANO DE ENSINO ATUALIZADO
Carga Horária: 80 aulas presenciais + 40 atividades autônomas
Curso: Tecnólogo em Gestão da Tecnologia da Informação - FATEC
🎯 OBJETIVO GERAL
Capacitar o aluno a aplicar princípios da Engenharia de Software no desenvolvimento de sistemas, utilizando metodologias, técnicas e ferramentas modernas para análise, projeto, implementação e validação de software.
🧪 METODOLOGIA
- Aulas expositivas + práticas.
- Aprendizado baseado em projetos (PBL).
- Estudos de caso reais.
- Uso de ferramentas do mercado (Git, Docker, Jira, Figma).
📊 AVALIAÇÃO
| Tipo | Peso |
|---|---|
| Exercícios e atividades | 20% |
| Trabalhos práticos | 30% |
| Projeto final | 40% |
| Participação | 10% |
🚀 DIFERENCIAL TECNOLÓGICO
Integração de stacks modernas para o projeto final:
- Backend: Spring Boot (Java)
- Frontend: Angular
- Banco: PostgreSQL
- DevOps: Docker & Git
🧭 MÓDULOS DO CURSO
📖 BIBLIOGRAFIA BÁSICA
- PILONE, Dan; MILES, Russell. Use A Cabeça - Desenvolvimento de Software.
- PRESSMAN, R. S. Engenharia de Software.
- SOMERVILLE, I. Engenharia de Software.
📖 BIBLIOGRAFIA COMPLEMENTAR
- GUEDES, G. UML 2 – Uma Abordagem Prática.
- YOURDON, E. Análise Estruturada Moderna.
Módulo 1: Introdução à Engenharia de Software
📚 Conteúdo Teórico
- Conceitos de Software: Definição, natureza e tipos de produto.
- A Crise do Software: Histórico de falhas, custos elevados e atrasos que levaram ao nascimento da disciplina.
- Engenharia de Software: Definição formal, objetivos e importância na Gestão de TI.
- Visão Geral do Ciclo de Vida: Do entendimento do problema à aposentadoria do sistema.
🛠️ Atividade Prática
- Análise de Casos: Discussão em sala sobre falhas reais de software (ex: Ariane 5, Therac-25).
- Entendimento Inicial: Levantamento de requisitos básico para um sistema simples (ex: Agenda de Contatos).
🎯 Atividade Autônoma
- Resumo Comparativo: Produza um texto comparando um software de sucesso comercial (ex: WhatsApp) com um caso de fracasso documentado, identificando possíveis causas na engenharia de software.
Módulo 2: Ciclo de Vida de Software
📚 Conteúdo Teórico
Estudo dos principais modelos de processo e como eles influenciam o desenvolvimento:
- Modelo em Cascata (Waterfall): Abordagem linear e seus desafios.
- Modelo Incremental e Iterativo: Entregas graduais.
- Modelo em Espiral: Foco em análise de riscos.
- Modelos Ágeis (Scrum, Kanban): Velocidade, adaptabilidade e feedback.
🛠️ Atividade Prática
- Simulação de Metodologia: Workshop comparando a execução de um mini-projeto usando Cascata vs. uma Sprint Ágil de 30 minutos.
🎯 Atividade Autônoma
- Estudo de Campo: Escolha um sistema real que você utiliza e tente identificar, com base em suas atualizações e interface, qual modelo de desenvolvimento a empresa provavelmente adota. Justifique sua resposta.
Módulo 3: Gerência de Projetos
📚 Conteúdo Teórico
- Conceitos de Projeto: Diferença entre projeto e operação.
- Restrição Tripla: Equilíbrio entre Escopo, Tempo e Custo.
- Introdução ao PMBOK: As áreas de conhecimento da gerência de projetos.
- Gestão Ágil: Fundamentos do Scrum (Papéis, Eventos e Artefatos).
🛠️ Atividade Prática
- Configuração de Gestão: Criação de um Backlog inicial e definição de uma Sprint usando ferramentas visuais.
🧰 Ferramentas Recomendadas
- Trello / Jira: Para gestão de tarefas e fluxo de trabalho.
🎯 Atividade Autônoma
- Planning: Realize o planejamento (EAP/WBS ou Backlog) de um projeto fictício de sua escolha, definindo prazos estimados e recursos necessários.
Módulo 4: Engenharia de Requisitos
📚 Conteúdo Teórico
- Tipos de Requisitos:
- Funcionais (RF): O que o sistema faz.
- Não Funcionais (RNF): Como o sistema se comporta (Desempenho, Segurança, UX).
- Técnicas de Elicitação: Entrevistas, Questionários, Prototipação, Brainstorming.
- Documentação: Casos de Uso (UML) e User Stories (Ágil).
🛠️ Atividade Prática
- Elaboração de Documento: Construção de um Documento de Requisitos e modelagem de Casos de Uso para o sistema do curso.
🎯 Atividade Autônoma
- Simulação de Levantamento: Realize uma entrevista simulada com um "cliente" (colega ou familiar) e documente 5 requisitos funcionais e 3 não funcionais com clareza técnica.
Módulo 5: Modelagem de Dados
📚 Conteúdo Teórico
- Modelo Entidade-Relacionamento (MER): Representação conceitual.
- Normalização: 1FN, 2FN e 3FN para garantir integridade.
- Conversão Logística: Do MER para o modelo relacional (tabelas e chaves).
🛠️ Atividade Prática
- Laboratório de Banco de Dados: Modelagem física do banco de dados do projeto final usando ferramentas de diagramação.
🧰 Ferramentas Recomendadas
- MySQL Workbench
- Draw.io / LucidChart
🎯 Atividade Autônoma
- Modelagem Completa: Crie o Modelo Entidade-Relacionamento (MER) completo do sistema que você planejou no Módulo 3.
Módulo 6: Projeto de Software (Arquitetura e Design)
📚 Conteúdo Teórico
- Arquitetura de Software: Padrões de alto nível (MVC - Model View Controller, Arquitetura em Camadas).
- Diagramas UML Essenciais:
- Diagrama de Classes: Estrutura estática.
- Diagrama de Sequência: Interação dinâmica entre objetos.
- Princípios de Design: Coesão, Acoplamento e SOLID.
🛠️ Atividade Prática
- Arquitetando a Solução: Modelagem do sistema principal usando diagramas UML para definir a estrutura de código.
🎯 Atividade Autônoma
- Documentação Arquitetural: Crie um diagrama de sequência que represente um fluxo crítico do seu sistema (ex: Processo de Login ou Finalização de Compra).
Módulo 7: Projeto de Interface (UI/UX)
📚 Conteúdo Teórico
- Princípios de Usabilidade: Heurísticas de Nielsen.
- UI (User Interface): Cores, tipografia e hierarquia visual.
- UX (User Experience): Jornada do usuário e fluxos intuitivos.
- Wireframes vs. Protótipos.
🛠️ Atividade Prática
- Prototipagem em Baixa/Alta Fidelidade: Criação de telas e interações usando ferramentas de design.
🧰 Ferramentas Recomendadas
- Figma (Principal recomendação)
🎯 Atividade Autônoma
- Protótipo Navegável: Desenvolva um protótipo navegável (mínimo 3 telas) para o fluxo principal do seu projeto no Figma.
Módulo 8: Versionamento e Configuração
📚 Conteúdo Teórico
- Controle de Versão Distribuído: Por que Git?
- Workflow do Git: Status, Commit, Push, Pull.
- Gerenciamento de conflitos: Branch, Merge e Pull Requests.
- Versionamento Semântico (SemVer): Gestão de releases (v1.0.0).
🛠️ Atividade Prática
- Laboratório Git: Criação de conta no GitHub, configuração de repositório e fluxo de trabalho em equipe.
🎯 Atividade Autônoma
- Repositório Profissional: Crie um repositório no GitHub para o seu projeto, realize pelo menos 3 commits significativos e utilize uma branch secundária para testar uma funcionalidade antes do merge.
Módulo 9: Testes de Software
📚 Conteúdo Teórico
- Tipos de Testes:
- Unitário: Teste de lógica isolada.
- Integração: Comunicação entre partes.
- Sistema/E2E: Fluxo completo do ponto de vista do usuário.
- Testes Automatizados: Aumentando a confiabilidade do código.
🛠️ Atividade Prática
- Workshop de Testes: Implementação de testes automatizados simples usando frameworks modernos (JUnit para Java ou Jest para JavaScript).
🎯 Atividade Autônoma
- Plano de Testes: Crie uma planilha de casos de teste para a tela principal do seu projeto, contendo Descrição, Entrada, Resultado Esperado e Status.
Módulo 10: Qualidade de Software
📚 Conteúdo Teórico
- Garantia de Qualidade (QA): Processos e auditoria.
- Métricas de Software: Verificando complexidade e cobertura de código.
- Code Review: Padrões de revisão e feedback construtivo entre desenvolvedores.
🛠️ Atividade Prática
- Revisão Entre Pares: Laboratório de Code Review, onde alunos revisam o código uns dos outros em busca de melhorias de legibilidade e performance.
🎯 Atividade Autônoma
- Análise de Qualidade: Utilize uma ferramenta de análise estática (ex: SonarQube ou extensões de Linter) em um código seu e produza um relatório com 3 pontos de melhoria identificados.
Módulo 11: Manutenção e Documentação
📚 Conteúdo Teórico
- Tipos de Manutenção:
- Corretiva: Conserto de erros.
- Evolutiva: Adição de novas capacidades.
- Preventiva/Refatoração: Melhoria técnica interna.
- Documentação: Documentação de API (Swagger), READMEs claros e Manuais de Implantação.
🛠️ Atividade Prática
- Documentando o Legado: Criação de documentação técnica para o projeto final para garantir que outros desenvolvedores consigam rodar e evoluir o sistema.
🎯 Atividade Autônoma
- Readme de Impacto: Refine o arquivo
README.mddo seu repositório no GitHub, incluindo: Descrição do Projeto, Tecnologias Usadas, Como Rodar e Screenshots.
Módulo 12: Ferramentas CASE
📚 Conteúdo Teórico
- Engenharia de Software Auxiliada por Computador (CASE): Ferramentas que automatizam tarefas do ciclo de vida.
- Integração de Ferramentas: Como conectar Requisitos -> Projeto -> Código -> Testes.
🛠️ Exemplos no Mercado
- StarUML / Visual Paradigm (Modelagem)
- Enterprise Architect (Gestão Completa)
- IDEs com suporte a Refactoring e Análise.
🎯 Atividade Prática
- Configuração de Toolchain: Verificação da integração entre as ferramentas usadas ao longo do curso.
🚀 Módulo 13: Projeto Final (Estudo de Caso)
O ponto culminante do curso, onde o aluno aplica de forma integrada todos os conhecimentos adquiridos.
🏁 Atividade Principal
Desenvolvimento completo de um sistema funcional, seguindo rigorosamente as fases da Engenharia de Software.
🏗️ Etapas Obrigatórias
- Levantamento de Requisitos: RF e RNF bem definidos.
- Modelagem: Diagrama de Classes e MER.
- Arquitetura: Definição da stack tecnológica (Recomendação: Spring Boot + Angular).
- Protótipo: Design de interface funcional.
- Implementação: Código versionado no Git.
- Testes: Validação através de casos de teste.
- Documentação: README e guia técnico.
📦 Entrega e Avaliação
- Sistema funcional demonstrado em sala.
- Repositório no GitHub com histórico de commits.
- Pasta de documentação técnica completa.
💡 Sugestão de Tema: "ToDo Kanban de Gestão"
Um sistema para gerenciar tarefas de uma equipe, com autenticação, painéis visuais e persistência de dados.
Slides de Engenharia de Software
Nesta seção, você encontrará todos os slides conceituais divididos por unidades:
Unidade I
Unidade II
Unidade III
Unidade IV
- Slide 10: Testes Dinâmicos
- Slide 11: Gestão de Configuração
- Slide 12: Manutenção
- Slide 13: Reengenharia
Unidade V
Unidade I: Introdução e Processos
Unidade II: Requisitos e Modelagem
Unidade III: Arquitetura e Testes Estáticos
Unidade IV: Configuração e Manutenção
Unidade V: Qualidade e Métricas
Banco de Dados e Aplicações
📋 Plano de Ensino
Disciplina: Banco de Dados e Aplicações
Carga Horária: 80 horas (Aulas) + 40 horas (Atividades Autônomas)
Curso: Tecnólogo em Gestão da Tecnologia da Informação
🎯 Objetivo
Entender fundamentos e arquitetura de sistemas de bancos de dados bem como técnicas de projeto e implementação de banco de dados com o uso de ferramentas.
📚 Ementa
- Sistemas de Arquivos vs. SGBD.
- Sistemas de gerenciamento de banco de dados (SGBD): arquitetura e aspectos operacionais.
- Aplicações e tecnologias emergentes em Banco de Dados.
- Técnicas e ferramentas de gerenciamento de Banco de dados.
- Storage.
- Controle de concorrência.
- Segurança e integridade.
- Modelagem de dados a partir do modelo de negócios.
- Modelo entidade-relacionamento e suas extensões.
- Mapeamento de modelo Entidade-Relacionamento para modelo relacional.
- Formas Normais (Normalização).
- Linguagem de Manipulação (DML) e de Descrição (DDL) de dados.
- Projeto e Implementação de Banco de Dados com ferramentas de produtividade.
📖 Bibliografia Básica
- BEIGHLEY, Lynn. Use a Cabeça SQL. Alta Books, 2008.
- HEUSER, C.A. Projeto de Banco de Dados. Serie Livros Didáticos, V.4. Bookman, 2009.
- SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistema de Banco de Dados. Campus, 2006.
📖 Bibliografia Complementar
- MACHADO, Felipe Nery R. Banco de Dados – Projeto e implementação. São Paulo: Érica, 2004.
- ELMASRI, R.; NAVATHE, S. B. Sistemas de Banco de Dados: Fundamentos e Aplicações. SP: Pearson, 2005.
🧭 Navegação por Módulos
- Introdução e Arquitetura de SGBD
- Modelagem Conceitual (Entidade-Relacionamento)
- Modelagem Relacional e Normalização
- Linguagem SQL (DDL e DML)
- Administração, Concorrência e Segurança
- Projeto Prático e Tendências
- Atividades Autônomas (40h)
Módulo 1: Introdução e Arquitetura de SGBD
Neste módulo, exploramos a evolução do armazenamento de dados e a arquitetura dos sistemas modernos.
📁 Sistemas de Arquivos vs. SGBD
- Limitações dos sistemas de arquivos tradicionais (Redundância, Inconsistência, Dificuldade de acesso).
- Vantagens do uso de um SGBD.
🏗️ Arquitetura de SGBD
- Níveis de abstração de dados (Físico, Lógico, Visão).
- Arquitetura de Três Esquemas (ANSI/SPARC).
- Independência de dados.
💾 Storage e Aspectos Operacionais
- Gerenciamento de armazenamento em disco.
- Estrutura de memória dos SGBDs.
- Otimização de I/O.
Próximo Passo: Modelagem Conceitual (ER)
Módulo 2: Modelagem Conceitual (ER)
A modelagem é o processo de abstrair a realidade do negócio para uma estrutura de dados organizada.
🏢 Modelagem a partir do Negócio
- Identificação de entidades e processos no mundo real.
- Regras de negócio e restrições.
📐 Modelo Entidade-Relacionamento (ER)
- Entidades e Atributos: O que queremos armazenar?
- Relacionamentos: Como as entidades interagem?
- Cardinalidade: 1:1, 1:N, N:M.
🚀 Extensões do Modelo ER
- Especialização e Generalização (Herança).
- Agregação.
- Atributos compostos e multivalorados.
Próximo Passo: Modelagem Relacional e Normalização
Módulo 3: Modelagem Relacional e Normalização
Transformando o modelo conceitual em uma estrutura lógica eficiente.
🔗 Mapeamento ER para Relacional
- Conversão de Entidades em Tabelas.
- Mapeamento de Atributos e Chaves (PK e FK).
- Tratamento de relacionamentos N:M.
🧹 Normalização (Formas Normais)
- 1ª Forma Normal (1FN): Eliminação de grupos repetitivos.
- 2ª Forma Normal (2FN): Eliminação de dependências parciais.
- 3ª Forma Normal (3FN): Eliminação de dependências transitivas.
- Benefícios da normalização: Redução de redundância e anomalias.
Próximo Passo: Linguagem SQL
Módulo 4: Linguagem SQL
Domínio das linguagens DDL e DML para interação com o banco de dados.
🛠️ DDL - Data Definition Language
CREATE TABLE,ALTER TABLE,DROP TABLE.- Definição de restrições (Constraints):
NOT NULL,UNIQUE,CHECK.
✍️ DML - Data Manipulation Language
INSERT,UPDATE,DELETE.- Consultas avançadas com
SELECT.
🔍 Consultas e Operações
- Joins (INNER, LEFT, RIGHT).
- Agrupamentos (
GROUP BY,HAVING). - Subconsultas e Views.
📖 Recursos de Aula
Próximo Passo: Administração e Segurança
Plano de Aula: Do Modelo à Realidade com SQL
Tema: Manipulação de Dados e Integridade (DML)
Tecnologia: SQL (SQLite)
Ferramentas: Windows 10/11, VS Code, Extensão SQLite Viewer.
🕒 AULA 1 (50 min) - Fundamentos e Setup
1. Introdução (15 min): A Analogia do Arquivo Morto
Imagine um arquivo de aço em um escritório.
- A Tabela: É a gaveta rotulada "Clientes".
- O Registro (Linha): É a ficha individual de um cliente.
- A Coluna: São os campos fixos da ficha (Nome, CPF, Telefone).
- SGBD: É o secretário que organiza, busca e tranca essas gavetas para garantir que ninguém apague dados por erro.
Conceito Teórico: Diferença entre DDL (Data Definition - Criar a gaveta) e DML (Data Manipulation - Colocar fichas na gaveta). Focaremos em inserir e garantir que os dados sejam íntegros (ex: não permitir dois clientes com o mesmo ID).
2. Setup do Ambiente no Windows (10 min)
- Abra o VS Code.
- Pressione
Ctrl + Shift + X(Extensões) e instale: "SQLite Viewer" (de Florian Becker) e "SQLTools". - Crie uma pasta no seu C: chamada
C:\AulaSQL. - No VS Code, crie um arquivo chamado
aula.sql.
3. Mão na Massa I (25 min): Criação e Inserção
-- 1. Criando a tabela de Produtos (DDL)
CREATE TABLE produtos (
id INTEGER PRIMARY KEY AUTOINCREMENT,
nome TEXT NOT NULL,
preco REAL CHECK(preco > 0),
estoque INTEGER DEFAULT 0
);
-- 2. Inserindo dados (DML)
INSERT INTO produtos (nome, preco, estoque)
VALUES ('Teclado Mecânico', 250.50, 15);
INSERT INTO produtos (nome, preco, estoque) VALUES
('Mouse Gamer', 120.00, 30),
('Monitor 24pol', 890.90, 5),
('Cabo HDMI', 25.00, 100);
-- 3. Consultando para validar
SELECT * FROM produtos;
🕒 AULA 2 (50 min) - Evolução e Desafio
1. Recapitulação (10 min)
Revisão do comando INSERT e a importância das Constraints (regras).
2. Mão na Massa II (20 min): Alteração e Filtros Complexos
-- Atualizando o preço de um item específico
UPDATE produtos
SET preco = 280.00
WHERE id = 1;
-- Deletando um produto sem estoque
DELETE FROM produtos
WHERE estoque = 0;
-- Consulta com lógica: Produtos caros com pouco estoque
SELECT nome, preco
FROM produtos
WHERE preco > 100 AND estoque < 10
ORDER BY preco DESC;
3. Desafio Proposto (20 min)
Cenário: Você precisa gerenciar uma biblioteca simples.
- Crie uma tabela chamada
livroscom:id,titulo,autoreano. - Insira 3 livros de sua preferência.
- Desafio Extra: Tente inserir um livro sem título. O SQL deve barrar se você usou
NOT NULL. - Consulta: Selecione apenas os livros lançados após o ano 2010.
marp: true theme: default paginate: true header: 'Aula: Banco de Dados Aplicado' footer: 'Designer Instrucional: Prof. Especialista | 2 Aulas de 50 min' style: | section { font-size: 26px; font-family: "Segoe UI", Tahoma, sans-serif; } h1 { color: #2c3e50; } code
🚀 Do Modelo à Realidade: SQL Prático
Objetivo: Compreender a arquitetura de tabelas e manipular dados com segurança.
- 🛠️ Ferramentas: VS Code + SQLite
- 🖥️ Sistema: Windows
- 📝 Foco: DML (Insert, Update, Delete)
🕒 AULA 1: FUNDAMENTOS E SETUP
🏗️ Analogia: O Arquivo de Aço
- Database: O Escritório.
- Tabela: A Gaveta de Clientes.
- Registro (Row): A Ficha do Cliente.
- Campo (Column): Os dados na ficha (Nome, CPF).
Regra de Ouro: Um banco de dados sem regras (Integridade) é apenas uma lista de compras bagunçada! 📉
🛠️ Setup no Windows (VS Code)
- Abra o VS Code.
- Instale a Extensão:
SQLite Viewer. - Crie o arquivo
aula.sql.
👨💻 Mão na Massa: Criando a Tabela
CREATE TABLE produtos (
id INTEGER PRIMARY KEY AUTOINCREMENT,
nome TEXT NOT NULL,
preco REAL CHECK(preco > 0)
);
📥 Inserindo Dados (DML)
INSERT INTO produtos (nome, preco, estoque)
VALUES ('Teclado Mecânico', 250.50, 15);
-- Consultando o resultado:
SELECT * FROM produtos;
🕒 AULA 2: CONTINUAÇÃO
🔄 Atualizando Dados (Cuidado!)
UPDATE produtos
SET preco = 280.00
WHERE id = 1;
🚨 PERIGO: Sem o WHERE, o SGBD alterará o preço de todos os produtos!
🔍 Filtros e Lógica
SELECT nome, preco
FROM produtos
WHERE preco > 100 AND estoque < 10
ORDER BY preco DESC;
🏆 Desafio Proposto: Sistema de Livros
- Crie a tabela
livros(id, titulo, autor, ano). - Insira 3 livros.
- Faça um
UPDATEno ano de um dos livros. SELECTtodos os livros de um autor específico.
✅ Conclusão
- O SQL é a linguagem universal para conversar com esses dados.
Próxima Aula: Relacionamentos (Chaves Estrangeiras)! 🔗
Módulo 5: Administração e Segurança
Garantindo a integridade, disponibilidade e performance dos dados.
🛡️ Segurança e Integridade
- Controle de acesso (Users, Roles, Privileges).
- Criptografia e Auditoria.
- Restrições de integridade referencial.
🔄 Controle de Concorrência
- Conceito de Transação (ACID).
- Bloqueios (Locks) e Deadlocks.
- Níveis de isolamento.
🛠️ Técnicas e Ferramentas
- Gerenciamento de usuários e senhas.
- Ferramentas de produtividade (DBDesigner, MySQL Workbench, SQL Developer).
- Monitoramento de performance.
Próximo Passo: Projeto e Tendências
Módulo 6: Projeto e Tendências
Aplicação prática e olhar para o futuro dos bancos de dados.
🏗️ Projeto e Implementação
- Estudo de caso: do modelo de negócio ao banco operacional.
- Uso de ferramentas CASE de produtividade.
🚀 Tecnologias Emergentes
- Bancos de Dados NoSQL (Documento, Grafos, Chave-Valor).
- Big Data e Data Warehousing.
- Bancos de Dados em Nuvem (Cloud DBs).
Seção Seguinte: Atividades Autônomas (40h)
Slides de Banco de Dados
Confira os slides das aulas ao vivo convertidos para Markdown:
- Slide 01: Introdução e Fundamentos
- Slide 02: Notação Peter Chen e DER
- Slide 03: Comandos DDL
- Slide 04: Comandos DML
🎯 Atividades Autônomas (40h) - Banco de Dados
Atividades práticas e de pesquisa para complementar a carga horária da disciplina.
📑 Atividade 1: Pesquisa de SGBDs (10h)
Faça um levantamento dos principais SGBDs relacionais vs. NoSQL utilizados atualmente no mercado. Crie uma tabela comparativa.
📐 Atividade 2: Projeto Logístico (10h)
Com base em um cenário de e-commerce, elabore o modelo ER completo e realize a normalização até a 3ª Forma Normal.
⌨️ Atividade 3: Script SQL (10h)
Desenvolva um script SQL completo contendo a criação das tabelas (DDL) e pelo menos 10 consultas (DML) que incluam JOINs e agrupamentos.
🛡️ Atividade 4: Segurança da Informação (10h)
Pesquise sobre técnicas de SQL Injection e elabore um guia de boas práticas para desenvolvedores evitarem falhas de segurança em bancos de dados.
Voltar para: Visão Geral da Disciplina