Unidade 2 - Modelagem Conceitual de Dados (Modelo ER)
Aula 4 – Modelagem Entidade-Relacionamento
Capítulo 1
Introdução à Modelagem Conceitual de Dados
A modelagem conceitual é o primeiro passo crucial para criar sistemas de informação eficientes e alinhados às necessidades do negócio. Ela nos permite visualizar e organizar dados de forma clara e independente de tecnologia.
O que é Modelagem Conceitual de Dados?
Representação Abstrata
Captura a essência do negócio através de uma visão simplificada e compreensível da realidade organizacional.
Foco no Domínio
Entender profundamente as regras de negócio sem preocupação com aspectos tecnológicos ou de implementação.
Base Estrutural
Serve como fundamento sólido para o desenvolvimento de sistemas robustos e bancos de dados eficientes.
Por que usar Modelagem Conceitual?
1
Comunicação Clara
Facilita o diálogo entre analistas, desenvolvedores e stakeholders do negócio, criando uma linguagem comum.
2
Qualidade de Dados
Previne redundâncias e inconsistências, garantindo integridade e confiabilidade das informações.
3
Protótipo Estratégico
Atua como blueprint para o projeto físico, orientando decisões técnicas e de arquitetura.
Capítulo 2
Origem e Histórico do Modelo Entidade-Relacionamento
O Modelo ER revolucionou a forma como pensamos sobre dados e suas relações, estabelecendo conceitos que permanecem fundamentais até hoje na engenharia de software e design de bancos de dados.
Peter Chen e a criação do Modelo ER (1976)
1
Publicação Revolucionária
Peter Chen publica o artigo "The Entity-Relationship Model: Toward a Unified View of Data", transformando a modelagem de dados.
2
Base Teórica Sólida
Fundamentou-se na teoria relacional de Codd e nos princípios de abstração de dados para criar uma notação intuitiva.
3
Influência Duradoura
Seus conceitos influenciaram profundamente a UML, ferramentas CASE e práticas modernas de modelagem de sistemas.
Evolução e Aplicações do Modelo ER
Bancos Relacionais
Aplicação essencial no design de sistemas Oracle, MySQL, PostgreSQL e outros SGBDs.
Engenharia de Software
Integração com DFDs, diagramas de classes e metodologias ágeis de desenvolvimento.
Análise de Negócios
Ferramentas modernas como Lucidchart, ERwin e IBM Data Architect facilitam a criação colaborativa.
Capítulo 3
Conceitos Fundamentais do Modelo ER
Entender os três pilares do Modelo ER - entidades, atributos e relacionamentos - é essencial para criar modelos conceituais precisos e eficazes que representem fielmente o domínio do negócio.
Entidades: O que são?
Entidades representam objetos do mundo real que possuem existência independente e significado próprio no contexto do negócio. Elas são os elementos centrais de qualquer modelo conceitual.
Exemplos Práticos
Cliente - pessoa ou organização
Produto - item comercializado
Funcionário - colaborador da empresa
Evento - acontecimento registrado
Representação Gráfica: Retângulo com o nome da entidade em seu interior, seguindo a notação de Chen.
Atributos: Características das Entidades
Atributos são as propriedades que descrevem e qualificam uma entidade, capturando informações relevantes para o negócio.
Simples e Compostos
Simples são indivisíveis (ex: idade). Compostos podem ser divididos em partes menores (ex: endereço completo).
Monovalorados e Multivalorados
Monovalorados têm um único valor (ex: CPF). Multivalorados podem ter múltiplos valores (ex: telefones).
Derivados
Calculados a partir de outros atributos. Exemplo: idade derivada da data de nascimento.
Chave (Identificador)
Atributo único que identifica inequivocamente cada instância da entidade.
Representação: Elipses ligadas à entidade por linhas, com notações especiais para cada tipo.
Relacionamentos: Associação entre Entidades
Relacionamentos capturam as interações e conexões significativas entre entidades, expressando as regras de negócio que governam essas associações.
Cliente realiza Pedido
Associação comercial fundamental em sistemas de vendas e e-commerce.
Médico atende Paciente
Relacionamento central em sistemas hospitalares e de gestão de saúde.
Professor leciona Disciplina
Conexão essencial em sistemas acadêmicos e de gestão educacional.
Representação Gráfica: Losango com o nome do relacionamento, conectando as entidades envolvidas.
Grau e Tipo de Relacionamento
01
Relacionamento Unário
Envolve uma única entidade. Exemplo: Funcionário supervisiona Funcionário (hierarquia organizacional).
02
Relacionamento Binário
Envolve duas entidades distintas. Exemplo: Cliente compra Produto. É o tipo mais comum em modelagem.
03
Relacionamento Ternário
Envolve três entidades. Exemplo: Fornecedor entrega Produto para Projeto (relacionamento triplo).
Autorrelacionamento
Caso especial onde a entidade se relaciona consigo mesma. Exemplo clássico: Pessoa casa com Pessoa, representando vínculos matrimoniais.
Cardinalidade e Participação
Esses conceitos definem as regras quantitativas e de obrigatoriedade nos relacionamentos, sendo fundamentais para expressar com precisão as restrições do negócio.
1
Um para Um (1:1)
Cada instância de A relaciona-se com no máximo uma de B, e vice-versa. Exemplo: Pessoa possui Passaporte.
2
Um para Muitos (1:N)
Uma instância de A relaciona-se com várias de B, mas cada B relaciona-se com apenas uma de A. Exemplo: Cliente realiza Pedidos.
3
Muitos para Muitos (N:M)
Múltiplas instâncias de A relacionam-se com múltiplas de B. Exemplo: Estudante cursa Disciplinas.
Participação: Total (obrigatória - linha dupla) ou Parcial (opcional - linha simples). Define se toda instância deve participar do relacionamento.
Capítulo 4
Notações do Modelo ER
Diferentes notações foram desenvolvidas ao longo do tempo, cada uma com suas particularidades visuais e contextos de aplicação. Conhecer as principais notações amplia sua capacidade de comunicação e interpretação de modelos.
Notação de Chen
A notação clássica proposta por Peter Chen em 1976 utiliza formas geométricas distintas para cada elemento do modelo, criando uma linguagem visual rica e expressiva.
Retângulos
Representam entidades e conjuntos de entidades.
Losangos
Indicam relacionamentos entre entidades.
Elipses
Denotam atributos das entidades ou relacionamentos.
Linhas Conectoras
Ligam elementos relacionados, com anotações de cardinalidade.
Notação de Bachman e Outras
Notação de Bachman
Utiliza setas direcionais para indicar relacionamentos, com ênfase na hierarquia. Popular em sistemas legados e CODASYL.
Notação Pé-de-Galinha (Crow's Foot)
Amplamente usada em ferramentas modernas. Símbolos intuitivos representam cardinalidades de forma visual e compacta.
Notação UML
Utilizada em modelagem orientada a objetos. Integra conceitos de ER com classes, atributos e associações.
A escolha da notação depende do contexto: Chen para ensino e documentação conceitual, Crow's Foot para implementação em SGBDs, e UML para projetos orientados a objetos.
Símbolos Especiais
Além dos elementos básicos, notações especiais enriquecem a expressividade do modelo, comunicando características importantes dos dados.
Atributo Chave
Identificado por sublinhado no nome. Determina univocamente cada instância da entidade. Exemplo: CPF, Matrícula.
Atributo Multivalorado
Representado por dupla elipse. Pode conter múltiplos valores. Exemplo: telefones, emails, dependentes.
Atributo Derivado
Elipse tracejada. Valor calculado a partir de outros atributos. Exemplo: idade (derivada de data_nascimento).
Participação Total
Linha dupla conectando entidade ao relacionamento. Indica que todas as instâncias devem participar obrigatoriamente.
Capítulo 5
Modelagem Independente de Tecnologia
Um dos maiores benefícios da modelagem conceitual é sua natureza agnóstica em relação à tecnologia, permitindo focar exclusivamente nas necessidades do negócio antes de considerar aspectos de implementação.
Foco no Negócio, não na Tecnologia
A modelagem conceitual deliberadamente abstrai detalhes técnicos como tipos de dados, índices, ou linguagens de programação específicas.
Linguagem Universal
Facilita diálogo entre áreas técnicas e de negócio com vocabulário compartilhado.
Flexibilidade de Implementação
Permite escolher livremente SGBDs, arquiteturas cloud ou on-premise, tecnologias emergentes.
Longevidade do Modelo
Permanece válido mesmo quando tecnologias mudam ou sistemas são migrados.
Benefícios da Independência Tecnológica
Reutilização Inteligente
O mesmo modelo conceitual pode ser implementado em Oracle, PostgreSQL, MongoDB ou qualquer outro SGBD, adaptando-se às necessidades específicas de cada projeto.
Adaptação Ágil
Mudanças nas regras de negócio são incorporadas rapidamente no modelo conceitual, independente da tecnologia subjacente implementada.
Redução de Erros
Validar o modelo com stakeholders antes da implementação evita retrabalho custoso e garante alinhamento com requisitos reais.
Capítulo 6
Exemplos Práticos de Modelagem ER
Nada substitui a prática! Vamos explorar casos reais de modelagem para consolidar os conceitos aprendidos e desenvolver intuição sobre como estruturar domínios complexos.
Exemplo 1: Sistema de Biblioteca
Um caso clássico que ilustra perfeitamente relacionamentos N:M e o uso de atributos multivalorados e chave.
Médico atende Paciente (via Consulta): N:M com entidade associativa Consulta
Consulta ocorre em Hospital: N:1 (várias consultas em um hospital), participação total da Consulta
Médico trabalha em Hospital: N:M (médicos podem atuar em múltiplos hospitais)
Exercício Prático: Criando um Diagrama ER
Desafio: Modele um sistema de vendas online com as seguintes características do negócio:
1
Identificar Entidades
Cliente, Produto, Pedido, Categoria, Pagamento - quais são relevantes? Que outras entidades você identifica?
2
Definir Atributos
Que informações descrevem cada entidade? Quais são chave? Existem atributos compostos ou multivalorados?
3
Estabelecer Relacionamentos
Como as entidades se conectam? Qual a cardinalidade de cada relacionamento? Participação é total ou parcial?
Dica: Comece simples e vá refinando. Valide com cenários reais: "Um cliente pode fazer quantos pedidos?", "Um produto pode estar em quantas categorias?"
Capítulo 7
Dicas para uma Modelagem ER Eficiente
Seguir boas práticas na modelagem garante que seu trabalho seja compreensível, mantível e verdadeiramente útil para o desenvolvimento do sistema. Qualidade importa!
Boas Práticas
Nomenclatura Clara e Consistente
Use nomes significativos e objetivos para entidades e atributos. Evite abreviações obscuras. Prefira Cliente a Cli, data_nascimento a dt_nasc.
Elimine Ambiguidades
Cada elemento deve ter significado único e inequívoco. Documente casos especiais. Se "Status" pode ser confuso, use "StatusPedido" ou "StatusPagamento".
Evite Redundâncias
Não duplique informações que podem ser derivadas ou que já existem em outra entidade. Mantenha normalização conceitual.
Valide com Stakeholders
Revise o modelo com usuários de negócio, analistas e desenvolvedores. Diferentes perspectivas revelam problemas e oportunidades de melhoria.
Documente Regras de Negócio
Capture restrições, políticas e definições importantes que não são evidentes no diagrama. Crie um glossário de termos.
Ferramentas para Modelagem ER
Escolher a ferramenta certa potencializa sua produtividade e facilita colaboração em equipe. Conheça as principais opções do mercado.
Lucidchart
Ferramenta web colaborativa com templates prontos, integração com Google Drive e recursos de compartilhamento em tempo real.
Draw.io (diagrams.net)
Gratuita e open-source, funciona no navegador ou desktop. Exporta para diversos formatos e integra-se com plataformas de armazenamento.
IBM Data Modeler & ERwin
Soluções enterprise com engenharia reversa, geração de código SQL, versionamento e recursos avançados para grandes projetos.
Microsoft Visio
Integrado ao ecossistema Microsoft, oferece stencils profissionais, colaboração via SharePoint e templates para diversos tipos de diagramas.
Capítulo 8
Revisão e Próximos Passos
Chegamos ao final desta jornada pela Modelagem Entidade-Relacionamento! Vamos consolidar o aprendizado e preparar o caminho para os próximos desafios.
Recapitulando os Conceitos-Chave
Entidades
Objetos do mundo real com existência própria
Atributos
Propriedades que descrevem entidades
Relacionamentos
Associações entre entidades
Cardinalidade
Quantidades mínimas e máximas
Notações
Linguagens visuais para expressar modelos
Independência
Foco no negócio, não na tecnologia
Dominar esses conceitos é fundamental para criar modelos conceituais robustos que representem fielmente as necessidades do negócio e sirvam como base sólida para o desenvolvimento de sistemas.
Conclusão e Convite à Prática
"A modelagem ER é a fundação invisível sobre a qual sistemas robustos e alinhados ao negócio são construídos."
Você agora possui as ferramentas conceituais para transformar requisitos de negócio complexos em modelos claros e expressivos. O próximo passo é praticar, praticar, praticar!
Exercite criando seus próprios diagramas
Modele sistemas do seu cotidiano: biblioteca pessoal, controle financeiro, agenda de compromissos.
Discuta modelos com colegas
Diferentes perspectivas enriquecem a modelagem e revelam aspectos não considerados.
Prepare-se para a próxima etapa
Próxima aula: Modelagem Lógica e Física de Dados - onde transformaremos modelos conceituais em estruturas implementáveis!