🚀 Tópico 8 - Projeto Prático: Modelagem de Sistema

🎯 Objetivos de Aprendizagem
  • Aplicar todos os conceitos aprendidos em um projeto real
  • Desenvolver um modelo ER completo
  • Documentar decisões de modelagem
  • Apresentar e defender o modelo criado
  • Consolidar conhecimentos em modelagem
🎯 1. Introdução ao Projeto Prático

Este projeto prático consolida todos os conceitos aprendidos nos tópicos anteriores, aplicando-os em um cenário real de modelagem de banco de dados.

Objetivo do Projeto

Desenvolver um modelo ER completo para um sistema de gestão acadêmica, aplicando todos os conceitos de modelagem aprendidos.

📋 Etapas do Projeto:
  • Análise de Requisitos: Entender o domínio
  • Identificação de Entidades: Mapear objetos
  • Definição de Atributos: Caracterizar entidades
  • Estabelecimento de Relacionamentos: Conectar entidades
  • Definição de Chaves: Identificar chaves
  • Normalização: Aplicar formas normais
  • Criação do Diagrama: Usar ferramentas
  • Documentação: Registrar decisões
🏫 2. Cenário: Sistema de Gestão Acadêmica
📚 Descrição do Sistema:

Uma universidade precisa de um sistema para gerenciar seus alunos, professores, disciplinas, turmas e notas. O sistema deve permitir:

👥 Gestão de Pessoas:
  • Cadastro de alunos e professores
  • Controle de matrículas
  • Histórico acadêmico
  • Dados pessoais e acadêmicos
📚 Gestão Acadêmica:
  • Cadastro de disciplinas
  • Formação de turmas
  • Controle de notas
  • Relatórios acadêmicos
🎯 Requisitos Funcionais:
Requisitos do Sistema
  • Um aluno pode estar matriculado em múltiplas disciplinas
  • Uma disciplina pode ter múltiplos alunos
  • Um professor pode lecionar múltiplas disciplinas
  • Uma disciplina pode ter múltiplos professores
  • Cada turma tem um professor responsável
  • Alunos podem ter notas em diferentes avaliações
🔍 3. Análise de Requisitos
📋 Entidades Identificadas:
👥 Entidades de Pessoas
  • Aluno: Estudantes da universidade
  • Professor: Docentes da universidade
  • Coordenador: Coordenadores de curso
📚 Entidades Acadêmicas
  • Disciplina: Matérias do currículo
  • Turma: Grupos de alunos
  • Curso: Programas acadêmicos
🏷️ Atributos das Entidades:
Entidade Atributos Chave Primária
Aluno Matrícula, Nome, CPF, Data_Nascimento, Curso Matrícula
Professor ID, Nome, CPF, Especialidade, Departamento ID
Disciplina Código, Nome, Carga_Horária, Curso Código
Turma ID, Disciplina, Professor, Período, Ano ID
🔗 4. Relacionamentos do Sistema
📊 Relacionamentos Identificados:
🔹 Relacionamentos Principais:
  • Aluno ←→ Curso: (N,1) - Aluno pertence a um curso
  • Aluno ←→ Turma: (N,N) - Aluno pode estar em múltiplas turmas
  • Professor ←→ Turma: (1,N) - Professor pode lecionar múltiplas turmas
  • Disciplina ←→ Turma: (1,N) - Disciplina pode ter múltiplas turmas
🔸 Relacionamentos Secundários:
  • Curso ←→ Disciplina: (1,N) - Curso tem múltiplas disciplinas
  • Coordenador ←→ Curso: (1,1) - Coordenador responsável por curso
  • Aluno ←→ Nota: (1,N) - Aluno pode ter múltiplas notas
  • Turma ←→ Nota: (1,N) - Turma pode ter múltiplas notas
🔑 Chaves Estrangeiras:
Chaves Estrangeiras
  • Turma: ID_Disciplina, ID_Professor
  • Aluno: ID_Curso
  • Nota: ID_Aluno, ID_Turma
  • Disciplina: ID_Curso
📊 5. Aplicação da Normalização
🔍 Análise de Dependências:
🔹 Dependências Funcionais:
  • Matrícula → Nome, CPF, Data_Nascimento
  • ID_Professor → Nome, CPF, Especialidade
  • Código_Disciplina → Nome, Carga_Horária
  • ID_Turma → Disciplina, Professor, Período
🔸 Formas Normais Aplicadas:
  • 1FN: Atributos atômicos
  • 2FN: Eliminação de dependências parciais
  • 3FN: Eliminação de dependências transitivas
  • Resultado: Tabelas normalizadas
🎨 6. Criação do Diagrama ER
🛠️ Ferramentas Recomendadas:
🔹 Draw.io

Ferramenta gratuita e fácil

Acessar
🔸 ERDPlus

Especializada em ERD

Acessar
🔹 MySQL Workbench

Integrado ao MySQL

Download
📋 Checklist do Diagrama:
Checklist de Qualidade
  • ✅ Todas as entidades estão representadas
  • ✅ Atributos estão identificados
  • ✅ Relacionamentos estão corretos
  • ✅ Cardinalidades estão definidas
  • ✅ Chaves primárias estão marcadas
  • ✅ Chaves estrangeiras estão identificadas
  • ✅ Diagrama está legível e organizado
📚 7. Documentação do Projeto
📋 Elementos da Documentação:
🔹 Documentação Técnica:
  • Especificação de Requisitos: Descrição do sistema
  • Modelo Conceitual: Diagrama ER
  • Dicionário de Dados: Definição de entidades
  • Regras de Negócio: Restrições do sistema
🔸 Documentação de Apoio:
  • Decisões de Design: Justificativas
  • Alternativas Consideradas: Outras opções
  • Limitações: Restrições do modelo
  • Evoluções Futuras: Melhorias planejadas
🎤 8. Apresentação do Projeto
📊 Estrutura da Apresentação:
🔹 Conteúdo Técnico:
  • Introdução: Contexto e objetivos
  • Análise: Requisitos e entidades
  • Modelagem: Diagrama ER
  • Normalização: Formas normais
🔸 Apresentação Visual:
  • Slides: Apresentação clara
  • Diagramas: Visualização do modelo
  • Exemplos: Casos de uso
  • Demonstração: Funcionamento
🎯 Critérios de Avaliação:
Critérios de Avaliação
  • Correção Técnica: Aplicação correta dos conceitos
  • Completude: Cobertura de todos os requisitos
  • Clareza: Apresentação e documentação
  • Inovação: Soluções criativas
🧪 Exercícios Práticos
📝 Exercício 1: Desenvolvimento do Projeto

Desenvolva um modelo ER para:

  • Sistema de biblioteca
  • Controle de estoque
  • Gestão de funcionários
  • Sistema de vendas
🎯 Exercício 2: Apresentação

Prepare uma apresentação:

  • Slides explicativos
  • Demonstração do modelo
  • Justificativa das decisões
  • Defesa do projeto
📚 Referências Bibliográficas
📖 Livros Fundamentais:
  • ELMASRI, R.; NAVATHE, S. Sistemas de Banco de Dados. 6ª ed. São Paulo: Pearson, 2017.
  • DATE, C. J. An Introduction to Database Systems. 8ª ed. Boston: Addison-Wesley, 2003.
  • CONNOLLY, T.; BEGG, C. Database Systems: A Practical Approach to Design, Implementation, and Management. 6ª ed. Boston: Pearson, 2015.
📄 Recursos Online: