Projeto de Banco de Dados

Modelagem, SQL e Gerenciamento de Dados

Código: INF1930 | Turma: MINF-0104

Carga horária: 72h (4 créditos) | Horário: Terças e Sextas, 11:10–12:50 | Bloco G – Sala 102 / Bloco A – Sala 704 (UNICAP)

Material oficial da disciplina com aulas, exercícios, cronograma e informações essenciais.

Tópicos Principais:

Fundamentos e Modelagem Conceitual

Modelo Relacional e Formalização

Implementação e Consulta com SQL

Bem-vindo à Disciplina!

Uma jornada do conceito à implementação

O que esperar desta disciplina?

Evolução Progressiva

Da modelagem abstrata à implementação prática em SQL. Cada etapa prepara você para a próxima.

Aprendizado Ativo

Foco em compreender lógica e tomar decisões estruturais, não em memorização.

Projeto Real

Você desenvolverá um banco de dados completo do zero, em um domínio real escolhido por você.

Habilidades Profissionais

Modelagem, normalização, SQL avançado e defesa técnica — competências essenciais para o mercado.

Como ter sucesso?

  • Participe ativamente e tire dúvidas
  • Pratique com as listas de exercícios regularmente
  • Comece o projeto cedo e evolua gradualmente
  • Trabalhe de forma colaborativa em equipe
  • Entenda os conceitos, não apenas decore
  • Prepare-se para a defesa técnica

Objetivos da Disciplina

Conheça as competências que você desenvolverá ao longo da disciplina.

Objetivo Geral

Capacitar o estudante a modelar, estruturar, normalizar e implementar bancos de dados relacionais, assegurando integridade estrutural e capacidade de formulação de consultas complexas.

Objetivos Específicos

Compreender fundamentos e arquitetura de SGBD

Modelar domínios reais utilizando MER

Aplicar transformação MER → Modelo Relacional

Aplicar normalização até 3FN

Implementar banco de dados em SQL (DDL e DML)

Construir consultas SQL com JOIN, GROUP BY, HAVING e subconsultas

Defender tecnicamente projeto completo

Resultados de Aprendizagem

Ao final da disciplina, o estudante será capaz de:

  1. RA1 – Modelar domínio real utilizando MER
  1. RA2 – Transformar MER em esquema relacional
  1. RA3 – Aplicar normalização até 3FN
  1. RA4 – Implementar banco relacional em SQL
  1. RA5 – Formular consultas complexas
  1. RA6 – Defender tecnicamente projeto de dados

Mapa de Competências × Avaliação

Observação: A Formativa I possui caráter diagnóstico, acompanhando os fundamentos de Banco de Dados e SGBD, e contribui para o 1º GQ.

Organização em Macro-Módulos

A disciplina está organizada em quatro macro-módulos progressivos, do conceitual ao prático.

1

Macro-Módulo I

Fundamentos e Arquitetura

  • BD e SGBD
  • Arquitetura ANSI/SPARC
  • Independência de dados

Pré-requisito: Nenhum
Carga horária: 8h

2

Macro-Módulo II

Modelagem Conceitual (MER)

  • Entidades e atributos
  • Relacionamentos e cardinalidades
  • Entidade fraca
  • Especialização
  • Agregação
  • DER completo

Pré-requisito: Macro-Módulo I
Carga horária: 18h

3

Macro-Módulo III

Modelo Relacional e Normalização

  • Transformação MER → Relacional
  • Chave primária e estrangeira
  • Dependência funcional
  • 1FN, 2FN e 3FN

Pré-requisito: Macro-Módulo II
Carga horária: 18h

4

Macro-Módulo IV

SQL

  • Introdução ao SQL
  • DDL (CREATE TABLE, PK, FK)
  • DML (INSERT, UPDATE, DELETE)
  • SELECT, JOIN, GROUP BY
  • HAVING e Subconsultas
  • EXISTS / NOT EXISTS

Pré-requisito: Macro-Módulo III
Carga horária: 16h

Metodologia de Ensino

Abordagem pedagógica centrada no aluno, combinando teoria e prática com metodologias ativas para desenvolvimento progressivo de competências.

Estratégias Pedagógicas

Resolução progressiva de problemas

Listas estruturadas (1 fácil, 2 médias, 1 difícil, 1 desafio)

Projeto Integrador

Oficinas práticas de SQL

Revisões antes dos GQ

Taxonomia de Bloom

Ferramentas e Recursos

Ferramentas e referências utilizadas ao longo da disciplina.

Ferramentas Utilizadas

  • Editor de texto para documentação

Bibliografia Básica

  • ELMASRI, R.; NAVATHE, S. B. Sistemas de Banco de Dados. Pearson.
  • SILBERSCHATZ, A.; KORTH, H.; SUDARSHAN, S. Database System Concepts. McGraw-Hill.

Bibliografia Complementar

  • DATE, C. J. An Introduction to Database Systems. Addison-Wesley.
  • HEUSER, C. A. Projeto de Banco de Dados. Bookman.
  • RAMAKRISHNAN, R.; GEHRKE, J. Database Management Systems. McGraw-Hill.

Material das Aulas e Exercícios

📘 Macro-Módulo I – Fundamentos e Arquitetura

Conceitos fundamentais de bancos de dados, SGBDs e arquitetura.


📗 Macro-Módulo II – Modelagem Conceitual (MER)

Modelagem de domínios reais utilizando o Modelo Entidade-Relacionamento (MER).


📙 Macro-Módulo III – Modelo Relacional e Normalização

Transformação do MER para o Modelo Relacional e aplicação da normalização.


📕 Macro-Módulo IV – SQL

Linguagem SQL para implementação, manipulação e consulta de bancos de dados relacionais.

Sistema de Avaliação

Entenda como sua nota será calculada e os requisitos para aprovação na disciplina.

Avaliações Formativas

As Avaliações Formativas têm caráter diagnóstico e processual, acompanhando a evolução da aprendizagem antes das avaliações somativas. São compostas por questões objetivas, discursivas curtas ou atividades práticas em sala.

Conteúdo Detalhado por Avaliação

Avaliação Formativa I

  • Conceitos básicos de banco de dados
  • Arquitetura ANSI/SPARC
  • Independência lógica e física
  • Componentes de um SGBD

Avaliação Formativa II

  • Introdução à Modelagem Conceitual
  • Entidades e atributos
  • Relacionamentos e cardinalidade
  • Entidade fraca
  • Especialização e generalização
  • Agregação
  • DER completo

Avaliação Formativa III

  • Dependência funcional
  • Normalização (1FN, 2FN e 3FN)
  • Consolidação do Projeto Relacional e Validação Estrutural

1º GQ (Peso 2)

2º GQ (Peso 3)

Cronograma da Disciplina

Planejamento completo das aulas, avaliações e feriados.

Carga horária: 72h | Terças e Sextas | 11:10–12:50 | Bloco G Sala 102 | Bloco A Sala 704

📘 Macro-Módulo I – Fundamentos e Arquitetura

📗 Macro-Módulo II – Modelagem Conceitual (MER)

📙 Macro-Módulo III – Modelo Relacional e Normalização

📕 Macro-Módulo IV – SQL

Projeto Integrador

Desenvolvimento de um Banco de Dados Relacional

Objetivo

Desenvolver um banco de dados completo — da modelagem conceitual à implementação SQL e defesa técnica. Cada etapa corresponde aos conteúdos desenvolvidos até aquele momento da disciplina.


1º GQ

Etapa 1 – Modelagem Conceitual (MER)

Entrega: 11/09/2026 (Aula 10)

Entregáveis:

  • DER completo
  • Entidades, atributos e identificadores
  • Relacionamentos e cardinalidades
  • Entidades fracas, especializações e agregações
  • Justificativa técnica (1–2 páginas)

Valor: 2,5 pontos

Etapa 2 – Modelo Relacional

Entrega: 29/09/2026 (Revisão para o 1º GQ)

Entregáveis:

  • Esquema relacional completo
  • Chaves primárias e estrangeiras
  • Transformação MER → Modelo Relacional
  • Estratégias para especializações e relacionamentos

Valor: 2,5 pontos


2º GQ

Etapa 3 – Normalização

Entrega: 27/10/2026 (Avaliação Formativa III)

Entregáveis:

  • Dependências funcionais
  • Diagnóstico da forma normal
  • Decomposição até a 3FN
  • Justificativa técnica

Valor: 1,0 ponto

Etapa 4 – Implementação SQL

Entrega: 10/11/2026 (Aula 21)

Entregáveis:

  • Script DDL
  • Script DML
  • Integridade referencial implementada

Valor: 1,5 pontos

Etapa 5 – Consultas SQL

Entrega: 17/11/2026 (Aula 23)

Entregáveis:

  • Cinco consultas obrigatórias: JOIN, GROUP BY, HAVING, Subconsulta, EXISTS ou NOT EXISTS
  • Justificativa da lógica de cada consulta

Valor: 1,5 ponto

Etapa 6 – Defesa Técnica

Data: 24/11/2026

Entregáveis:

  • Apresentação de 10–15 minutos
  • Demonstração do banco de dados
  • Explicação das decisões de modelagem
  • Execução das consultas SQL
  • Respostas à banca

Valor: 2,0 pontos

Formação de Grupos - Projeto Integrador

Orientações para organização e registro dos grupos

Tamanho dos Grupos

  • Mínimo: 2 estudantes
  • Máximo: 4 estudantes
  • Recomendado: 3 integrantes

2 → risco de sobrecarga | 4 → risco de assimetria | 3 → melhor divisão técnica

Modalidade de Formação

  • Formação livre até 28/08/2026
  • Após essa data, o professor poderá realocar estudantes sem grupo

Composição Estratégica (Recomendação)

  • 1 perfil analítico (modelagem)
  • 1 perfil estruturador (normalização)
  • 1 perfil técnico (SQL)
  • 1 perfil comunicador (defesa)

⚠️ Não obrigatório, mas melhora o desempenho.

Registro Oficial do Grupo

Até 28/08/2026, cada grupo deve enviar:

  • Nome do projeto
  • Integrantes
  • Domínio escolhido
  • Justificativa do domínio (1 parágrafo)

Sem registro formal → grupo não validado.

Troca ou Saída de Integrante

  • Permitida até 11/09/2026 (Entrega do MER)
  • Após essa data: mudanças exigem justificativa formal
  • Reorganização pode implicar redefinição de tarefas

Situações Especiais

  • Aluno sem grupo após prazo: alocado em grupo existente ou projeto individual com complexidade reduzida.
  • Conflitos internos: comunicação formal ao professor; avaliação individual pode ser aplicada.

Checklist do Projeto Integrador

Verifique os requisitos antes de cada entrega.

ETAPA 1 – MER (11/09/2026)

  • Entidades definidas
  • Atributos completos
  • Cardinalidade mínima e máxima
  • Entidades fracas identificadas
  • Especialização justificada
  • Justificativa técnica anexada

ETAPA 2 – Modelo Relacional (29/09/2026)

  • Relações listadas
  • PK identificadas
  • FK declaradas
  • Estratégia de especialização definida
  • Sem perda semântica

ETAPA 3 – Normalização (27/10/2026)

  • Dependências funcionais listadas
  • Forma normal identificada
  • Decomposição até 3FN
  • Preservação de dependências verificada
  • Justificativa formal escrita

ETAPA 4 – SQL (10/11/2026)

  • Script DDL executável
  • PK e FK implementadas
  • Dados coerentes inseridos
  • Integridade referencial testada
  • Sem erros de sintaxe

ETAPA 5 – Consultas (17/11/2026)

  • JOIN + GROUP BY
  • HAVING
  • Subconsulta escalar
  • Subconsulta correlacionada
  • EXISTS ou NOT EXISTS
  • Explicação lógica de cada consulta

ETAPA 6 – DEFESA (24/11/2026)

  • Domínio explicado
  • Decisões estruturais justificadas
  • Consultas demonstradas
  • Respostas técnicas seguras

Linha do Tempo do Projeto

Evolução do Projeto Integrador ao longo do semestre.

1

28/08/2026 - Lançamento do Projeto

Início oficial, formação de grupos e escolha do domínio.

2

28/08/2026 - Registro dos Grupos

Envio do nome do grupo, integrantes, domínio e justificativa.

3

11/09/2026 - Entrega 1: MER

Modelagem Conceitual com justificativa técnica.

4

29/09/2026 - Entrega 2: Modelo Relacional

Transformação do MER para esquema relacional formal.

5

27/10/2026 - Entrega 3: Normalização

Dependências funcionais e normalização até 3FN.

6

10/11/2026 - Entrega 4: Implementação SQL

Scripts DDL e DML com banco de dados funcional.

7

17/11/2026 - Entrega 5: Consultas Avançadas

5 consultas complexas com justificativa lógica.

8

24/11/2026 - Defesa Final

Apresentação oral e demonstração técnica do projeto.

Políticas da Disciplina

Regras, prazos e conduta acadêmica

Frequência

  • Frequência mínima conforme regimento institucional
  • Atrasos acima de 15 minutos podem ser registrados como ausência

Entregas

  • Entregas fora do prazo sofrem desconto progressivo
  • Plágio implica nota zero
  • Código deve ser executável e funcional

Avaliações (GQ)

  • GQ inclui obrigatoriamente prova escrita
  • 1º GQ: 10 pontos (peso 2); prova escrita vale 4,0 pontos
  • 2º GQ: 10 pontos (peso 3); prova escrita vale 3,0 pontos
  • Projeto Integrador: 5,0 pontos no 1º GQ (Etapas 1 e 2)
  • Projeto Integrador: 6,0 pontos no 2º GQ (Etapas 3 a 6)
  • 2ª chamada: não exige atestado ou justificativa
  • Notas do Projeto compõem o GQ conforme o Sistema de Avaliação

Conduta Acadêmica

  • IA é permitida como apoio; o estudante deve dominar e defender o que entregou
  • Na defesa, todas as decisões técnicas devem ser explicadas
  • Integridade acadêmica é obrigatória

Política de Atraso - Projeto Integrador

Entregas até 23h59 do dia estipulado na plataforma. Arquivos devem estar executáveis e identificados com o nome do grupo.

Tabela de Penalidade

Regras Complementares

  • Atraso na etapa 5 compromete a Defesa
  • Não há prorrogação automática
  • Casos excepcionais seguem o regimento institucional
  • Entregas parciais não garantem pontuação integral
  • Ausência na defesa implica nota zero no projeto
  • Membro que não souber explicar o projeto pode ter avaliação individual reduzida

Recursos Complementares

Materiais adicionais para aprofundar seu aprendizado

🗂️ Modelagem

💻 SQL Online

  • SQLZoo – tutoriais interativos

🎲 Geradores de Dados

📦 Bases de Dados Públicas

📚 Documentação Oficial

💬 Comunidades

Dicas de Estudo

Orientação estratégica para maximizar seu aprendizado

Não decore, compreenda estrutura

Banco de dados é lógica estruturada. Entender dependência funcional elimina a necessidade de decorar normalização.

Sempre pense em integridade

Antes de escrever SQL, verifique: a tabela faz sentido, há redundância e a chave está correta?

Para SQL avançado

Treine: GROUP BY com HAVING, EXISTS, subconsulta correlacionada e armadilha com NULL em NOT IN.

Para o Projeto

O erro mais comum: modelo bonito, mas mal justificado. A defesa técnica é o que demonstra maturidade.

Para o 2º GQ

O que diferencia nota 7 de nota 9: dominar agregação, saber usar EXISTS e interpretar resultados corretamente.

Como Estudar Esta Disciplina

Um roteiro para cada aula

Seguir um roteiro consistente por aula é a forma mais eficiente de consolidar o aprendizado progressivo.

Leia os Slides

Revise os slides antes da aula. Identifique os conceitos centrais e anote dúvidas.

Resolva a Lista de Exercícios

Após a aula, resolva a lista correspondente. Não avance sem entender os exercícios anteriores.

Faça a Autoavaliação

Verifique se consegue explicar os conceitos com suas próprias palavras. Se não, revise.

Atualize o Projeto Integrador

Aplique o conteúdo da aula ao projeto. Cada aula contribui diretamente ao banco de dados que você está construindo.

Tire Dúvidas

Não acumule dúvidas. Procure o professor, monitores ou colegas antes da próxima aula.

Antes da Prova

Checklist de preparação

Verifique se você está pronto para a avaliação. Avance apenas quando conseguir marcar todos os itens com confiança.

📘 Fundamentos e Modelagem

  • Sei explicar o que é um SGBD e suas vantagens
  • Sei descrever a arquitetura ANSI/SPARC
  • Sei identificar entidades, atributos e identificadores
  • Sei representar relacionamentos e cardinalidades
  • Sei modelar entidades fracas
  • Sei aplicar especialização e generalização
  • Sei construir um DER completo

📙 Modelo Relacional e Normalização

  • Sei transformar MER em esquema relacional
  • Sei identificar chaves primárias e estrangeiras
  • Sei mapear especializações para o modelo relacional
  • Sei identificar dependências funcionais
  • Sei verificar se uma relação está em 1FN, 2FN ou 3FN
  • Sei decompor uma relação até a 3FN
  • Sei justificar decisões de normalização

📕 SQL

  • Sei escrever CREATE TABLE com PK e FK
  • Sei usar INSERT, UPDATE e DELETE
  • Sei escrever SELECT com WHERE
  • Sei usar JOIN entre tabelas
  • Sei usar GROUP BY e funções de agregação
  • Sei usar HAVING para filtrar grupos
  • Sei escrever subconsultas escalares
  • Sei usar EXISTS e NOT EXISTS

Erros Comuns na Disciplina

Aprenda com os erros mais frequentes e evite-os.

Alguns erros se repetem entre os estudantes. Conhecê-los antecipadamente pode melhorar seu desempenho.

Erros Comuns em Modelagem

Confundir cardinalidade com opcionalidade

Cardinalidade define quantos (1:1, 1:N, N:M). Opcionalidade define se é obrigatório ou não. São conceitos distintos.

Criar atributos que deveriam ser entidades

Se algo tem identidade própria e pode ter relacionamentos, é uma entidade, não um atributo.

Especialização sem justificativa

Use especialização apenas quando resolve um problema real de modelagem, não por estética.

Erros Comuns em Normalização

Não identificar todas as dependências funcionais

Liste todas as dependências antes de normalizar. Dependências ocultas causam problemas futuros.

Parar na 2FN achando que está em 3FN

Verifique dependências transitivas com atenção. Muitos projetos param na 2FN sem perceber.

Erros Comuns em SQL

Criar chave primária sem significado

Evite PKs compostas desnecessárias. Use surrogate keys quando apropriado.

Fazer JOIN sem entender multiplicidade

Antes do JOIN, entenda quantas linhas são esperadas para evitar resultados inesperados.

Não testar subconsulta com NULL

NULL em subconsultas com NOT IN pode gerar resultados vazios inesperados. Sempre teste.

Esquecer de usar HAVING com agregação

WHERE filtra antes de agrupar; HAVING filtra depois. Confundir isso gera erros lógicos.

O que Diferencia Nota 10?

Critérios de excelência que elevam seu projeto

A diferença entre nota 7-8 e nota 9-10 está nos detalhes. Estes são os critérios que realmente fazem a diferença.

Em Modelagem Conceitual

Modelo enxuto e elegante

Evite entidades desnecessárias. Um modelo simples e bem justificado vale mais que um complexo sem propósito.

Cardinalidades precisas e justificadas

Explique por que é (1,N) e não (0,N). A justificativa demonstra maturidade técnica.

Nomenclatura consistente e profissional

Use nomes claros, em português ou inglês consistente. Evite abreviações confusas.

Em Normalização

01

Dependências funcionais completas e formais

Liste todas as DFs com notação formal, mostrando domínio da teoria.

02

Justificativa de cada decomposição

Explique por que decompôs, garantindo preservação de dependências e sem perda de informação.

Em SQL

Consultas claras e bem comentadas

Código limpo, indentado e comentado demonstra profissionalismo.

Uso estratégico de subconsultas

Escolha entre subconsulta e JOIN pela melhor abordagem, não pela primeira que funcionar.

Tratamento de casos especiais

Considere NULLs, duplicatas e divisões por zero. Projetos nota 10 antecipam problemas.

Na Defesa Técnica

Segurança nas respostas

Responda com confiança e admita quando não souber. Honestidade técnica é valorizada.

Capacidade de justificar decisões

Tenha respostas prontas para perguntas como "Por que essa cardinalidade?" ou "Por que não normalizou mais?"

Demonstração prática funcionando

Mostre o banco rodando e execute consultas ao vivo.