You are on page 1of 61

Modelo Entidade Relacionamento

Prof. Scilas Barbosa Filho

Scilas Barbosa Filho

Modelagem de Dados

O Modelo E-R
Proposto por Peter Chen [1976] The Entity-Relationship Model: Toward the unified view of data Notaes:
Chen Martin (p-de-galinha) Bachman (setas) IDEF1X (US Air Force)
Scilas Barbosa Filho

Modelagem de Dados

O Modelo E-R
Elementos:
Entidades
Conjuntos de coisas que possuem caractersticas prprias.

Atributos
Representam as caractersticas de uma Entidade.

Relacionamentos
Vnculos ou associaes entre Entidades.
Scilas Barbosa Filho

Modelagem de Dados

Entidade
conceito conjunto de objetos sobre os quais preciso armazenar informaes teis. conjunto de vrios elementos (mais que 1). conjuntos de elementos distinguveis que aceitam um cdigo para diferencia-los. seus atributos NO dependem de outras entidades. conjuntos qualificativos (ex. grau de instruo). Ex de possveis Entidades: pessoas, locais, objetos, documentos, etc.
Scilas Barbosa Filho

Modelagem de Dados

Entidade
representao
Funcionrios Produtos

matricula nome endereo

cdigo descrio unidade Cargos

Notas Fiscais nmero data emisso cdigo

srie
Scilas Barbosa Filho

descrio

pr-requisitos

Modelagem de Dados

Entidade
conceito

CUIDADO: aquilo que entidade numa circunstncia, pode no ser em outra. Exerccio: identifique 6 entidades, e seus atributos, num possvel sistema de controle acadmico (secretaria) da SPEI.

Scilas Barbosa Filho

Modelagem de Dados

Atributos
conceito

informaes 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 so independentes de todas as demais entidades.
Scilas Barbosa Filho

Modelagem de Dados

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

Atributos
representao
Funcionrios Produtos

matricula nome endereo

cdigo descrio unidade Cargos

Notas Fiscais nmero data emisso cdigo

srie
Scilas Barbosa Filho

descrio

pr-requisitos

Modelagem de Dados

Atributos
ex: atributo composto

Funcionrios endereo rua n CEP

matricula

Scilas Barbosa Filho

Modelagem de Dados

10

Atributos
ex: multi-valorado

Funcionrios * telefone

matricula

Scilas Barbosa Filho

Modelagem de Dados

11

Qual a melhor soluo?


Caso 1 Funcionrios * telefone DDD n descrio Caso 2 Funcionrios telefone *DDD *n *descrio

matricula

matricula

Scilas Barbosa Filho

Modelagem de Dados

12

Atributos
ex: composto e multi-valorado

Funcionrios * telefone DDD n descrio

matricula

Scilas Barbosa Filho

Modelagem de Dados

13

Entidades Fracas
Dependem de uma entidade forte A Entidade Fraca representada por:

Dependncia de Existncia Dependncia de Identificador


Scilas Barbosa Filho

Modelagem de Dados

14

Entidades Fracas
Dependncia de Existncia
1
Pertence

Func

N
Dependente

Scilas Barbosa Filho

Modelagem de Dados

15

Entidades Fracas
Dependncia de Identificador
1
Faz

Contribuinte

Declarao IR

Scilas Barbosa Filho

Modelagem de Dados

16

Relacionamentos conceito
associao entre entidades. representam os vnculos que existem entre as entidades no mundo real. so representados por losangos. Ex. no sistema de controle acadmico 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 atravs do relacionamento.
Disciplina

Func
Pr-Req

Lotao

Depto

Grau 2
Modelagem de Dados

Grau 1
Scilas Barbosa Filho

18

Relacionamentos conceitos
Classe identifica a quantas vezes cada instncia de uma entidade pode participar do relacionamento. para relacionamentos binrios temos classes: 1:1 1:N N:N
Scilas Barbosa Filho

Modelagem de Dados

19

Relacionamentos Classe 1:1


Cada FUNC participa de quantos PROJETOS?

Func

1
Participa

1 Projeto

Cada PROJETO tem a participao de quantos FUNC?


Scilas Barbosa Filho

Modelagem de Dados

20

Classe 1:1

Scilas Barbosa Filho

Modelagem de Dados

21

Classe 1:1

1 Func Utiliza

1 Carro

Kurt Brian Tonya Scott Nancy


Scilas Barbosa Filho

Fargo Mustang Ranger Jeep Prizm Modelagem de Dados

22

Relacionamentos Classe 1:N


Cada FUNC participa de quantos PROJETOS?

Func

1
Participa

N Projeto

Cada PROJETO tem a participao de quantos FUNC?


Scilas Barbosa Filho

Modelagem de Dados

23

Relacionamentos Classe N:1


Cada FUNC participa de quantos PROJETOS?

Func

N
Participa

1 Projeto

Cada PROJETO tem a participao de quantos FUNC?


Scilas Barbosa Filho

Modelagem de Dados

24

Classe 1:N
1 Cliente Aluga N Vdeo Gone with the Wind Terminator Terminator II Cretaceous Park Sandlot Son of Flubber BladeRunner Bad News bears Fried Green Tomatoes Modelagem de Dados 25

Silva Johnson Hill Cerveny Denton

Scilas Barbosa Filho

Relacionamentos Classe N:N


Cada FUNC participa de quantos PROJETOS?

Func

N
Participa

N Projeto

Cada PROJETO tem a participao 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


Curso
1

Ensina

Disciplina N

Matricula

Aluno Jordan Mike

Informtica Administrao

Adm Mat Lgica Banco de Dados Custos

Scilas Barbosa Filho

Modelagem de Dados

Rieta Colleen Sean Jody Walt Andrew Larry Whitney Barb John

28

Relacionamentos Totalidade
Uma Entidade dita TOTAL num relacionamento, quando TODOS os seus elementos participam deste relacionamentos.

Caso contrrio a Entidade dita PARCIAL.

Scilas Barbosa Filho

Modelagem de Dados

29

Relacionamentos Totalidade
Quantos PROJETOS esto associados a FUNCIONRIOS? Todos Func N
Particiapa

Projeto N

Alguns Quantos FUNCIONRIOS esto associados a PROJETOS?


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 observase o valor do atributo para cada mudana de elemento na 2 entidade. se o valor do atributo mudar, ento ele no pode pertencer a 1 entidade. se o atributo no pertence as entidades envolvidas, e relevante no contexto do relacionamento, ento ele atributo do relacionamento.
Scilas Barbosa Filho

Modelagem de Dados

31

Atributos de Relacionamento
A quem pertnece os ATRIBUTOS: PRECO, QUANTIDADE e PRAZO?
N
Vende

Produtos

Fornecedores

Scilas Barbosa Filho

Modelagem de Dados

32

Atributos de Relacionamento
PRECO, QUANTIDADE e PRAZO, no podem pertencer a PRODUTOS, pois se fosse assim TODOS os FORNECEDORES deveriam praticar o mesmo preo.
Produtos
N
Vende

Fornecedores

*Condies Preo Scilas Barbosa Filho Quant Prazo

Modelagem de Dados

33

Atributos de Relacionamento
PRECO, QUANTIDADE e PRAZO, no podem pertencer a FORNECEDORES, pois se fosse assim TODOS os PRODUTOS de um fornecedor teriam o mesmo preo.
Produtos
N
Vende

Fornecedores
*Condies Preo Prazo

Quant

Scilas Barbosa Filho

Modelagem de Dados

34

Atributos de Relacionamento
No pertencendo nem a PRODUTOS ou a FORNECEDORES, e sento relevante no relaciomaneto VENDA, so atributos do relacionamento
Produtos
N
Vende
*Condies Preo Prazo

Fornecedores

Quant

Scilas Barbosa Filho

Modelagem de Dados

35

Atributos de Relacionamento
A quem pertnece os ATRIBUTOS: DATA ADMISSO e DATA LOTAO?
N
Pertence

Funcionario

Departamento

Scilas Barbosa Filho

Modelagem de Dados

36

Auto-Relacionamentos
Relacionamento de uma ENTIDADE consigo mesma. tambm chamados de Relacionamentos RECURSIVOS. Exemplo: Uma empresa tem a entidade FUNC e deseja saber quais so os funcionrios casados com outros funcionrios.

Scilas Barbosa Filho

Modelagem de Dados

37

Auto-Relacionamentos
Jordan Mike Rieta Colleen Sean Jody Walt Andrew Larry Whitney Barb John
Scilas Barbosa Filho

Func

1 Casado com 1

isto equivalente a:

Func

Casado com

Func 38

Modelagem de Dados

Auto-Relacionamento
Num Auto-Relacionamento necessrio saber o PAPEL que cada elemento do conjunto de entidade est representando.
1
Funcionario

mulher
Casdo com Peas

compe Componentes

marido

composta

quantidade

Scilas Barbosa Filho

Modelagem de Dados

39

Relacionamentos Mltiplos
uma extenso do relacionamento binrio para um nmero qualquer de entidades.
Materiais N N Requisies

MRP

N Pedidos Compra
Scilas Barbosa Filho

Modelagem de Dados

40

Relacionamentos Mltiplos
Um PROF em uma DISCIPLINA esto associados a quantos ALUNOS?
Aluno N

Um ALUNO em uma DISCIPLINA esto associados a quantos PROF?


1 Professor

PDA

Um ALUNO e um PROF esto associados em quantas DISCIPLINAS?


N Disciplina
Scilas Barbosa Filho

Modelagem de Dados

41

Agregaes
Um AGREGADO tratado como sendo uma ENTIDADE composta por um NICO RELACIONAMENTO. Serve para que RELACIONAMENTOS MLTIPLOS sejam decompostos.

Scilas Barbosa Filho

Modelagem de Dados

42

Agregaes
O relacionamento MRP no permite que uma REQUISIO seja atendida quando o MATERIAL est no estoque:
Materiais N N Requisies MRP

N Pedidos Compra
Scilas Barbosa Filho

Modelagem de Dados

43

Agregaes
Soluo:
Decompor MRP em 2 relacionamentos:
1) MATERIAIS - REQUISIO 2) PEDIDO e o relacionamento 1. Materiais Agregado
N Item Req N Item Pedido N N

Requisies

Pedidos Compra
Scilas Barbosa Filho

Modelagem de Dados

44

Agregaes
Exemplo: Como conseqncia da ALOCAO de um FUNCIONRIO num PROJETO, ele pode necessitar que uma MQUINA.
Funcionario
N Alocado N

Projeto

N Utiliza 1

Mquina
Scilas Barbosa Filho

Modelagem de Dados

45

Estrutura de Generalizao e Especializao


Permite que uma ENTIDADE tenha subclasses ou pertena a super-classes. A associao entre uma Generalizao (super-classe) e suas Especializaes (subclasses), recebe o nome de isa ( um). Representada por um tringulo:
ISA
Scilas Barbosa Filho

Modelagem de Dados

46

Estrutura de Generalizao e Especializao


Tambm 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 Generalizao e Especializao


Uma super-classe uma Generalizao de um conjunto de Especializaes (subclasses). Cada Especializao HERDA, atributos e relacionamentos da Entidade da qual derivou.
Relacionamentos entre Especializaes de uma mesma Generalizao so um tipo de AutoRelacionamento.
Scilas Barbosa Filho

Modelagem de Dados

48

Estrutura de Generalizao e Especializao


A entidade FUNCIONRIOS pode ser particionada em:
Func

ISA

Motoristas

Secretrias

Engenheiros

Scilas Barbosa Filho

Modelagem de Dados

49

Estrutura de Generalizao e Especializao


Os Atributos NOME, DATA ADMISSO, RG, so Atributos de FUNCIONRIOS. O Atributo IDIOMAS, s til para SECRETRIAS. Os Atributos HABILITAO, ACIDENTES so exclusivos dos MOTORISTAS
Scilas Barbosa Filho

Modelagem de Dados

50

Estrutura de Generalizao e Especializao


Func
RG nome data admisso

ISA

Motoristas

Secretrias

Engenheiros

habilitao * acidentes

* Idiomas

CREA

Scilas Barbosa Filho

Modelagem de Dados

51

Estrutura de Generalizao e Especializao


Todos os FUNCIONRIOS esto lotados num DEPARTAMENTO. Somente os MOTORISTAS dirigem VECULOS. Apenas os ENGENHEIROS participam de PROJETOS.

Scilas Barbosa Filho

Modelagem de Dados

52

Estrutura de Generalizao e Especializao


Func
nome Veculos N dirigem N Motoristas N Secretrias Engenheiros Particiapa N RG data admisso Veculos N 1 lotao Departamento

ISA

habilitao * acidentes

* Idiomas

CREA

Scilas Barbosa Filho

Modelagem de Dados

53

Atributos Globais
Esto 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
cdigo nome multa

Atributo Global

Scilas Barbosa Filho

Modelagem de Dados

55

Recomendaes para criao de um DER


1. Antes de comear a modelar, conhea o mundo real. 2. Identifique quais so as ENTIDADES. 3. Para cada Entidade represente seus ATRIBUTOS. 4. Confronte cada Entidade consigo mesma e com as demais na procura de possveis RELACIONAMENTOS
Scilas Barbosa Filho

Modelagem de Dados

56

Recomendaes para criao de um DER


5. Verifique a existncia de ATRIBUTOS DE RELACIONAMENTO. 6. Para relacionamentos mltiplos estude a necessidade de AGREGAES. 7. Desenhe o DER, com todas as Entidades, Atributos, Relacionamentos, Classes e Restries de Totalidade.
Scilas Barbosa Filho

Modelagem de Dados

57

Recomendaes para criao de um DER


8. Analise cuidadosamente todas as restries que voc imps. 9. At que voc e os seus usurios 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