modelo entidade relacionamento -...
Post on 11-Feb-2019
221 Views
Preview:
TRANSCRIPT
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.
– AtributosRepresentam as características de uma Entidade.
– RelacionamentosVínculos ou associações entre Entidades.
Scilas Barbosa Filho Modelagem de Dados 3
Entidadeconceito
• 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
Entidaderepresentação
ProdutosFuncionários
matricula nome endereço código descrição unidade
CargosNotas Fiscais
Scilas Barbosa Filho Modelagem de Dados 5númerosérie data
emissãocódigo descrição pré-requisitos
Entidadeconceito
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
Atributosconceito
• 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
Atributostipos
• 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
Atributosrepresentação
ProdutosFuncionários
matricula nome endereço código descrição unidade
CargosNotas Fiscais
Scilas Barbosa Filho Modelagem de Dados 9númerosérie data
emissãocódigo descrição pré-requisitos
Atributosex: atributo composto
Funcionários
matriculaendereço
rua nº CEP
Scilas Barbosa Filho Modelagem de Dados 10
Atributosex: 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
matriculatelefone
*DDD *nº *descrição
Scilas Barbosa Filho Modelagem de Dados 12
Atributosex: 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 FracasDependência de Existência
PertenceFunc Dependente1 N
Scilas Barbosa Filho Modelagem de Dados 15
Entidades FracasDependência de Identificador
FazContribuinte Declaração IR1 N
Scilas Barbosa Filho Modelagem de Dados 16
Relacionamentosconceito
• 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
Relacionamentosconceitos
• Grau– é igual a quantidade de entidades vinculadas
através do relacionamento.
Disciplina
Pré-Req
Func DeptoLotação
Grau 2
Grau 1Scilas Barbosa Filho Modelagem de Dados 18
Relacionamentosconceitos
• 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
RelacionamentosClasse 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
CarroUtilizaFunc1 1
Fargo
Prizm
Kurt
Brian
Tonya
Scott
Nancy
Mustang
Ranger
Jeep
Scilas Barbosa Filho Modelagem de Dados 22
RelacionamentosClasse 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
RelacionamentosClasse 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ídeoAlugaCliente1 N
Classe 1:N
Silva
Johnson
Hill
Cerveny
Denton
Fried Green Tomatoes
Gone with the WindTerminator
Terminator II
Cretaceous Park
Sandlot
Son of Flubber
BladeRunnerBad News bears
RelacionamentosClasse 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 deDados
Custos
RietaColleenSeanJodyWalt
MikeJordan
AndrewLarryWhitneyBarbJohn
N1
RelacionamentosTotalidade
• 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
RelacionamentosTotalidade
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 FornecedoresVendeN 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 FornecedoresVendeN 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 FornecedoresVendeN N
*Condições
PreçoQuant
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 FornecedoresVendeN N
*Condições
PreçoQuant
Prazo
Scilas Barbosa Filho Modelagem de Dados 35
Atributos de Relacionamento
• A quem pertnece os ATRIBUTOS: DATA ADMISSÃO e DATA LOTAÇÃO?
Funcionario DepartamentoPertenceN 1
Scilas Barbosa Filho Modelagem de Dados 36
Auto-Relacionamentos
• Relacionamento de uma ENTIDADE consigo mesma.
• também chamados de Relacionamentos 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 comFunc1
1
Rieta
Colleen
Sean
Jody
Walt
MikeJordan
Andrew
Larry
Whitney
Barb
John
isto é equivalente a:
Casado comFunc 1 1Func
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 comFuncionario
1
1mulher
marido
ComponentesPeças
N
Ncompõ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
PedidosCompra
RequisiçõesN N
N
Scilas Barbosa Filho Modelagem de Dados 40
Relacionamentos Múltiplos
Aluno
PDA
Disciplina
ProfessorN 1
N
Um PROF em umaDISCIPLINA estão
associados a quantos ALUNOS?
Um ALUNO emuma DISCIPLINA estão associados a
quantos PROF?
Um ALUNO e um PROF estãoassociados 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
PedidosCompra
RequisiçõesN N
N
Scilas Barbosa Filho Modelagem de Dados 43
Agregações• Solução:
Decompor MRP em 2 relacionamentos:1) MATERIAIS - REQUISIÇÃO2) PEDIDO e o relacionamento 1.
Materiais RequisiçõesItemReq
PedidosCompra
ItemPedido
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ãoRG
* 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ãoRG
* Idiomas* acidentes CREAhabilitação
Veículos
dirigem
N
N
DepartamentolotaçãoN 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
nomemulta Atributo
Globalcó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
top related