Buscar

Modelo Entidade Relacionamento

Prévia do material em texto

Modelo 
Entidade Relacionamento
Prof. Scilas Barbosa Filho
Scilas Barbosa Filho Modelagem de Dados 1
O Modelo E-R
• Proposto por Peter Chen [1976]
• “The Entity-Relationship Model: Toward
the unified view of data”
• Notações:
– Chen
– Martin (“pé-de-galinha”)
– Bachman (setas)
– IDEF1X (US Air Force)
Scilas Barbosa Filho Modelagem de Dados 2
O Modelo E-R
Elementos:
– Entidades
Conjuntos de “coisas” que possuem características 
próprias.
– Atributos
Representam as características de uma Entidade.
– Relacionamentos
Vínculos ou associações entre Entidades.
Scilas Barbosa Filho Modelagem de Dados 3
Entidade
conceito
• conjunto de objetos sobre os quais é preciso 
armazenar informações úteis.
• conjunto de vários elementos (mais que 1).
• conjuntos de elementos distinguíveis que aceitam 
um código para diferencia-los.
• seus atributos NÃO dependem de outras 
entidades.
• conjuntos qualificativos (ex. grau de instrução).
• Ex de possíveis Entidades: pessoas, locais, 
objetos, documentos, etc.
Scilas Barbosa Filho Modelagem de Dados 4
Entidade
representação
ProdutosFuncionários
matricula nome endereço código descrição unidade
CargosNotas Fiscais
Scilas Barbosa Filho Modelagem de Dados 5
númerosérie dataemissão
código descrição pré-requisitos
Entidade
conceito
CUIDADO:
• aquilo que é entidade numa circunstância, 
pode não ser em outra.
• Exercício: identifique 6 entidades, e seus 
atributos, num possível sistema de controle 
acadêmico (secretaria) da SPEI.
Scilas Barbosa Filho Modelagem de Dados 6
Atributos
conceito
• informações úteis a respeito de uma 
entidade ou relacionamento.
• os atributos de uma entidade permanecem 
constantes para todos os seus 
relacionamentos.
• os atributos de uma entidade são 
independentes de todas as demais entidades.
Scilas Barbosa Filho Modelagem de Dados 7
Atributos
tipos
• determinante:
– seu valor representa um elemento da entidade.
– seu valor é único para a entidade.
– deve ser sublinhado.
• composto
– necessita ser dividido em sub-atributos, para que seu 
significado seja melhor compreendido.
• multi-valorado
– pode assumir mais do que um valor para cada entidade, 
é diferenciado com um (*).
Scilas Barbosa Filho Modelagem de Dados 8
Atributos
representação
ProdutosFuncionários
matricula nome endereço código descrição unidade
CargosNotas Fiscais
Scilas Barbosa Filho Modelagem de Dados 9
númerosérie dataemissão
código descrição pré-requisitos
Atributos
ex: atributo composto
Funcionários
matricula
endereço
rua nº CEP
Scilas Barbosa Filho Modelagem de Dados 10
Atributos
ex: multi-valorado
Funcionários
matricula
* telefone
Scilas Barbosa Filho Modelagem de Dados 11
Qual a melhor solução?
Caso 1 Caso 2
Funcionários
matricula
* telefone
DDD nº descrição
Funcionários
matricula
telefone
*DDD *nº *descrição
Scilas Barbosa Filho Modelagem de Dados 12
Atributos
ex: composto e multi-valorado
Funcionários
matricula
* telefone
DDD nº descrição
Scilas Barbosa Filho Modelagem de Dados 13
Entidades Fracas
• Dependem de uma “entidade forte”
• A Entidade Fraca é representada por:
• Dependência de Existência
• Dependência de Identificador
Scilas Barbosa Filho Modelagem de Dados 14
Entidades Fracas
Dependência de Existência
PertenceFunc Dependente
1 N
Scilas Barbosa Filho Modelagem de Dados 15
Entidades Fracas
Dependência de Identificador
FazContribuinte Declaração IR
1 N
Scilas Barbosa Filho Modelagem de Dados 16
Relacionamentos
conceito
• associação entre entidades.
• representam os vínculos que existem entre 
as entidades no mundo real.
• são representados por losangos.
• Ex. no sistema de controle acadêmico da 
SPEI o relacionamento MATRICULA, 
vincula um ALUNO a uma DISCIPLINA.
Scilas Barbosa Filho Modelagem de Dados 17
Relacionamentos
conceitos
• Grau
– é igual a quantidade de entidades vinculadas 
através do relacionamento.
Disciplina
Pré-Req
Func DeptoLotação
Grau 2
Grau 1
Scilas Barbosa Filho Modelagem de Dados 18
Relacionamentos
conceitos
• Classe
– identifica a quantas vezes cada instância de 
uma entidade pode participar do 
relacionamento.
• para relacionamentos binários temos classes:
– 1:1
– 1:N
– N:N
Scilas Barbosa Filho Modelagem de Dados 19
Relacionamentos
Classe 1:1
Func ProjetoParticipa
1 1
Cada FUNC participa de quantos PROJETOS?
Cada PROJETO tem a participação de quantos FUNC?
Scilas Barbosa Filho Modelagem de Dados 20
Classe 1:1
Scilas Barbosa Filho Modelagem de Dados 21
Classe 1:1
CarroUtilizaFunc
1 1
Fargo
Prizm
Kurt
Brian
Tonya
Scott
Nancy
Mustang
Ranger
Jeep
Scilas Barbosa Filho Modelagem de Dados 22
Relacionamentos
Classe 1:N
Func ProjetoParticipa
1 N
Cada FUNC participa de quantos PROJETOS?
Cada PROJETO tem a participação de quantos FUNC?
Scilas Barbosa Filho Modelagem de Dados 23
Relacionamentos
Classe N:1
Func ProjetoParticipa
N 1
Cada FUNC participa de quantos PROJETOS?
Cada PROJETO tem a participação de quantos FUNC?
Scilas Barbosa Filho Modelagem de Dados 24
Scilas Barbosa Filho Modelagem de Dados 25
VídeoAlugaCliente
1 N
Classe 1:N
Silva
Johnson
Hill
Cerveny
Denton
Fried Green Tomatoes
Gone with the Wind
Terminator
Terminator II
Cretaceous Park
Sandlot
Son of Flubber
BladeRunner
Bad News bears
Relacionamentos
Classe N:N
Func ProjetoParticipa
N N
Cada FUNC participa de quantos PROJETOS?
Cada PROJETO tem a participação de quantos FUNC?
Scilas Barbosa Filho Modelagem de Dados 26
Classe N:N
Scilas Barbosa Filho Modelagem de Dados 27
Classes 1:N e N:N
Scilas Barbosa Filho Modelagem de Dados 28
Administração
Curso Matricula AlunoN NEnsina Disciplina
Informática Adm Mat
Lógica
Banco de
Dados
Custos
Rieta
Colleen
Sean
Jody
Walt
Mike
Jordan
Andrew
Larry
Whitney
Barb
John
N1
Relacionamentos
Totalidade
• Uma Entidade é dita TOTAL num 
relacionamento, quando TODOS os seus 
elementos participam deste relacionamentos.
• Caso contrário a Entidade é dita PARCIAL.
Scilas Barbosa Filho Modelagem de Dados 29
Relacionamentos
Totalidade
Func ProjetoParticiapa
N
N
Quantos PROJETOS estão associados a FUNCIONÁRIOS?
Quantos FUNCIONÁRIOS estão associados a PROJETOS?
Todos
Alguns
Scilas Barbosa Filho Modelagem de Dados 30
Atributos de Relacionamento
• Um Atributo pertence a um Relacionamento 
classe N:N, sempre que:
– fixa-se um elemento da 1ª entidade, e observa-
se o valor do atributo para cada mudança de 
elemento na 2ª entidade.
– se o valor do atributo mudar, então ele não pode 
pertencer a 1ª entidade.
– se o atributo não pertence as entidades 
envolvidas, e é relevante no contexto do 
relacionamento, então ele é atributo do 
relacionamento.
Scilas Barbosa Filho Modelagem de Dados 31
Atributos de Relacionamento
• A quem pertnece os ATRIBUTOS: 
PRECO, QUANTIDADE e PRAZO?
Produtos FornecedoresVende
N N
Scilas Barbosa Filho Modelagem de Dados 32
Atributos de Relacionamento
• PRECO, QUANTIDADE e PRAZO, não 
podem pertencer a PRODUTOS, pois se 
fosse assim TODOS os FORNECEDORES 
deveriam praticar o mesmo preço.
Produtos FornecedoresVende
N N
*Condições
Preço Quant Prazo
Scilas Barbosa Filho Modelagem de Dados 33
Atributos de Relacionamento
• PRECO, QUANTIDADE e PRAZO, não 
podem pertencer a FORNECEDORES, pois 
se fosse assim TODOS os PRODUTOS de 
um fornecedor teriam o mesmo preço.
Produtos FornecedoresVende
N N
*Condições
Preço
Quant
Prazo
Scilas Barbosa Filho Modelagem de Dados 34
Atributos de Relacionamento
• Não pertencendo nem a PRODUTOS ou a 
FORNECEDORES, e sento relevante no 
relaciomaneto VENDA, são atributos do 
relacionamento
Produtos FornecedoresVende
N N
*Condições
Preço
Quant
Prazo
Scilas Barbosa Filho Modelagem de Dados 35
Atributos de Relacionamento
• A quem pertnece os ATRIBUTOS: DATA 
ADMISSÃO e DATA LOTAÇÃO?
Funcionario DepartamentoPertence
N 1
Scilas Barbosa Filho Modelagem de Dados 36
Auto-Relacionamentos
• Relacionamento de uma ENTIDADE consigo 
mesma.
• também chamados deRelacionamentos 
RECURSIVOS.
• Exemplo: Uma empresa tem a entidade FUNC e 
deseja saber quais são os funcionários casados 
com outros funcionários.
Scilas Barbosa Filho Modelagem de Dados 37
Auto-Relacionamentos
Casado comFunc
1
1
Rieta
Colleen
Sean
Jody
Walt
Mike
Jordan
Andrew
Larry
Whitney
Barb
John
isto é equivalente a:
Casado comFunc 1
1
Func
Scilas Barbosa Filho Modelagem de Dados 38
Auto-Relacionamento
• Num Auto-Relacionamento é necessário 
saber o PAPEL que cada elemento do 
conjunto de entidade está representando.
Casdo com
Funcionario
1
1
mulher
marido
Componentes
Peças
N
N
compõe
é composta quantidade
Scilas Barbosa Filho Modelagem de Dados 39
Relacionamentos Múltiplos
• É uma extensão do relacionamento binário 
para um número qualquer de entidades.
Materiais
MRP
Pedidos
Compra
RequisiçõesN N
N
Scilas Barbosa Filho Modelagem de Dados 40
Relacionamentos Múltiplos
Aluno
PDA
Disciplina
ProfessorN 1
N
Um PROF em uma
DISCIPLINA estão
associados a 
quantos ALUNOS?
Um ALUNO em
uma DISCIPLINA 
estão associados a 
quantos PROF?
Um ALUNO e um PROF estão
associados em quantas DISCIPLINAS?
Scilas Barbosa Filho Modelagem de Dados 41
Agregações
• Um AGREGADO é tratado como sendo 
uma ENTIDADE composta por um ÚNICO 
RELACIONAMENTO.
• Serve para que RELACIONAMENTOS 
MÚLTIPLOS sejam decompostos.
Scilas Barbosa Filho Modelagem de Dados 42
Agregações
• O relacionamento MRP não permite que 
uma REQUISIÇÃO seja atendida quando o 
MATERIAL está no estoque:
Materiais
MRP
Pedidos
Compra
RequisiçõesN N
N
Scilas Barbosa Filho Modelagem de Dados 43
Agregações
• Solução:
Decompor MRP em 2 relacionamentos:
1) MATERIAIS - REQUISIÇÃO
2) PEDIDO e o relacionamento 1.
Materiais RequisiçõesItemReq
Pedidos
Compra
Item
Pedido
N N
N
N
Agregado
Scilas Barbosa Filho Modelagem de Dados 44
Agregações
• Exemplo: Como conseqüência da ALOCAÇÃO 
de um FUNCIONÁRIO num PROJETO, ele pode 
necessitar que uma MÁQUINA.
Funcionario ProjetoAlocado
Máquina
Utiliza
N N
N
1
Scilas Barbosa Filho Modelagem de Dados 45
Estrutura de Generalização e 
Especialização
• Permite que uma ENTIDADE tenha sub-
classes ou pertença a super-classes.
• A associação entre uma Generalização 
(super-classe) e suas Especializações (sub-
classes), recebe o nome de “isa” (é um).
• Representada por um triângulo:
ISA
Scilas Barbosa Filho Modelagem de Dados 46
Estrutura de Generalização e 
Especialização
• Também conhecidas como 
PARTICIONAMENTO.
• Serve para representar ENTIDADES com 
ATRIBUTOS parcialmente disjuntos.
• Permite que um relacionamento fique 
restrito a um sub-conjunto de uma 
ENTIDADE.
Scilas Barbosa Filho Modelagem de Dados 47
Estrutura de Generalização e 
Especialização
• Uma super-classe é uma Generalização de 
um conjunto de Especializações (sub-
classes).
• Cada Especialização HERDA, atributos e 
relacionamentos da Entidade da qual 
derivou.
• Relacionamentos entre Especializações de uma 
mesma Generalização são um tipo de Auto-
Relacionamento.
Scilas Barbosa Filho Modelagem de Dados 48
Estrutura de Generalização e 
Especialização
• A entidade FUNCIONÁRIOS pode ser 
particionada em:
Func
ISA
Motoristas Secretárias Engenheiros
Scilas Barbosa Filho Modelagem de Dados 49
Estrutura de Generalização e 
Especialização
• Os Atributos NOME, DATA ADMISSÃO, 
RG, são Atributos de FUNCIONÁRIOS.
• O Atributo IDIOMAS, só é útil para 
SECRETÁRIAS.
• Os Atributos HABILITAÇÃO, 
ACIDENTES são exclusivos dos 
MOTORISTAS
Scilas Barbosa Filho Modelagem de Dados 50
Estrutura de Generalização e 
Especialização
Func
ISA
Motoristas Secretárias Engenheiros
nome data admissão
RG
* Idiomas* acidentes CREAhabilitação
Scilas Barbosa Filho Modelagem de Dados 51
Estrutura de Generalização e 
Especialização
• Todos os FUNCIONÁRIOS estão lotados 
num DEPARTAMENTO.
• Somente os MOTORISTAS dirigem 
VEÍCULOS.
• Apenas os ENGENHEIROS participam de 
PROJETOS.
Scilas Barbosa Filho Modelagem de Dados 52
Estrutura de Generalização e 
Especialização
Func
ISA
Motoristas Secretárias Engenheiros
nome data admissão
RG
* Idiomas* acidentes CREAhabilitação
Veículos
dirigem
N
N
Departamentolotação
N 1
Veículos
Particiapa
N
N
Scilas Barbosa Filho Modelagem de Dados 53
Atributos Globais
• Estão associados a uma Entidade ou a um 
Relacionamento.
• Seu valor é CONSTANTE para todo o 
conjunto ao qual pertence.
• Exemplo: numa biblioteca considere que a 
MULTA por dia de atraso de um exemplar 
seja constante.
Scilas Barbosa Filho Modelagem de Dados 54
Atributo Global
Livro
nome
multa Atributo
Global
código
Scilas Barbosa Filho Modelagem de Dados 55
Recomendações para criação 
de um DER
1. Antes de começar a modelar, conheça o 
“mundo real”.
2. Identifique quais são as ENTIDADES.
3. Para cada Entidade represente seus 
ATRIBUTOS.
4. Confronte cada Entidade consigo mesma e 
com as demais na procura de possíveis 
RELACIONAMENTOS
Scilas Barbosa Filho Modelagem de Dados 56
Recomendações para criação 
de um DER
5. Verifique a existência de ATRIBUTOS DE 
RELACIONAMENTO.
6. Para relacionamentos múltiplos estude a 
necessidade de AGREGAÇÕES.
7. Desenhe o DER, com todas as Entidades, 
Atributos, Relacionamentos, Classes e 
Restrições de Totalidade.
Scilas Barbosa Filho Modelagem de Dados 57
Recomendações para criação 
de um DER
8. Analise cuidadosamente todas as restrições 
que você impôs.
9. Até que você e os seus usuários estejam 
convencidos de que o DER reflete fielmente 
o “mundo real”, volte ao item 1.
Scilas Barbosa Filho Modelagem de Dados 58
Disciplina
Scilas Barbosa Filho Modelagem de Dados 59
casa
Scilas Barbosa Filho Modelagem de Dados 60
Scilas Barbosa Filho Modelagem de Dados 61

Continue navegando