Você está na página 1de 59

Modelagem de Dados

Modelo
Entidade/Relacionamento
Eduardo Nbrega

Introduo
Abordagem proposta por Peter P. Chen
(dcada de 70) para o processo de modelao
de dados com ampla aceitao;
Trabalho publicado considerado um
referencial definitivo;
A proposta inicial mantm-se actualizada e tem
evoludo pela agregao de novos elementos;
Abordagem composta por tcnica de
diagramao e um conjunto de conceitos.

Modelo E/R
Modelo Entidade - Relacionamento (E/R)
Entidade
Representao Abstrata dos Objetos do
Mundo Real - algo sobre que dados so
armazenados (um Ser, um Fato)
Exemplo:

Professor

Aluno

Voo

Modelo E/R
Conjunto de Entidades
Grupos de Entidades com Caractersticas
Similares
Ex.: Conjunto de DEPARTAMENTOS da Empresa

Corresponde aos Substantivos

Modelo E/R
Relacionamento
Associao entre Objetos dos Sistemas
Ex: Emprega (Departamento X Funcionrio)
Conjunto de Relacionamentos
Grupo de Relacionamentos do Mesmo Tipo
Ex: Departamento D1 EMPREGA o Funcionrio F3

Corresponde aos Verbos


5

Modelo E/R
Atributos
Toda Propriedade de uma Entidade ou
Relacionamento
Ex: Nome, Endereo e Salrio so Propriedades
de FUNCIONRIO
Chave - Atributo(s) Determinante(s)
Conjunto de Atributos que Determina Unicamente
uma Ocorrncia de uma Entidade

Modelo E/R
Atributos
Exemplo:
CDIGO
MATRCULA

Disciplina
Funcionrio

Atributos

Correspondem aos Complementos

Modelo E/R
Conceitos Adicionais

Atributos Multivalorados
Cardinalidade
Auto-Relacionamento
Existncia
Relacionamento Total ou Obrigatrio
Relacionamento Parcial ou Opcional
Relacionamento Hbrido (Contingencial)

Relacionamento Relevante X Redundante


Relacionamento Exclusivo

Modelo E/R
Diagrama E/R
Conjunto de
Entidades
nome 1

Conjunto
de
Relaciona
mentos

E1

R1

nome 2

E2
9

Modelo E/R
Diagrama E/R
E1

E1

nome 1

Papel
E2
E2
nome 2
10

Modelo E/R
Diagrama E/R
Exemplo de papis em relacionamentos
Supervisionado

n
Super
viso

Empregado
Supervisiona

Rene
Departamento

Empregado
Trabalha-no

11

Modelo E/R
Mais de um relacionamento envolvendo as
mesmas entidades
Leci m
n Leciona
ona

Professor

Disciplina
1

Coor
dena

Coordena
12

Modelo E/R

Um Relacionamento pode ser N-rio

Agncia

Cliente

CCA
CCA

n
Conta

13

Modelo E/R
Relacionamento fraco
Restrio de existncia

Hospital

Tem
Tem

Entidade Forte

Relacionamento Fraco

Ambulatrio

Entidade Fraca

A classificao de entidades como fortes ou fracas depende da


ocorrncia de uma dependncia de existncia ou de identificao entre 14
entidades.

Modelo E/R
Dependncia de identidade
Entidade No Pode ser Identificada Atravs de
seus Prprios Atributos

Hospital

Ambulatrio

atributo 1
atributo 2
...
atributo n

atributo 1
atributo x
...
atributo k

15

Modelo E/R
Diagrama E/R
Conjunto de
Atributos
E1

at 1

at 2
E1
at 3

atributo 1
atributo 2
...
atributo n
16

Modelo E/R
Tipos de Atributos Possveis
Compostos / Simples
Compostos: Podem ser divididos em partes
menores
Simples/Atmicos: No se subdividem
Uni / Multi-Valorados
Uni-Valorados: Tm um nico valor
Multi-Valorados: Tm um conjunto de valores
Armazenados / Derivados
Armazenados: Explicitamente registrados
Derivados: Obtidos a partir de um clculo e de
outro(s) atributo(s) relacionados(s)
Com Valores Nulos
Complexos
17

Modelo E/R
Diagrama E/R
Conjunto de
Atributos
Multivalorados

E1
atributo 1
...
atributo n

at 1

at 2
E1

Ek
atributo 1
atributo 2

at 3

18

Modelo E/R
Diagrama E/R
Cardinalidade
Nmero de Entidades ao Qual Outra
Entidade pode Estar Associada via
Relacionamento
Um - para - Um

19

Modelo E/R
Cardinalidade de Relacionamento
Um - para - Um

E1

E1
R1

1
E2
E2
20

Modelo E/R
Cardinalidade de Relacionamentos
Um - para - Muitos

B
21

Modelo E/R
Cardinalidade de Relacionamento
Um - para - Muitos

E1

E1
R1

n
E2
E2
22

Modelo E/R
Cardinalidade de Relacionamentos
Muitos - para - Muitos

B
23

Modelo E/R
Cardinalidade de Relacionamento
Muitos - para - Muitos

E1

E1
R1

n
E2
E2
24

Modelo E/R
Diagrama E/R
Auto-relacionamento

n
E1

R1

E1

25

Modelo E/R
Diagrama E/R
Relacionamento Total ou Obrigatrio

E1

R1

E1
E1

R1

E2
E2

E2
26

Modelo E/R
Diagrama E/R
Relacionamento Parcial ou Opcional

E1
E1

R1

E2

E2
27

Modelo E/R
Diagrama E/R
Relacionamento Hbrido (Contingencial)

E1
E1

R1

E2

E2
28

Modelo E/R
Relacionamento Relevante X Redundante
Necessita compreenso detalhada do ambiente

1
Cliente

R1
Entrega
ao

Recebe
R4

Entrega

Faz
R3
n

R2
Tem
1

Pedido
29

Modelo E/R
Relacionamentos exclusivos
Ocorrncia e um tipo de entidade s pode
participar de um relacionamento
Pode armazenar

Pode armazenar

Depsito
Deve ser armazenada

Matria
Prima

Produto
Acabado
30

Modelo E/R
Relacionamentos entre subtipos
Tratar um tipo de entidade como mais de um
tipo
Existirem diferenas significativas entre seus
atributos
Tiverem diferentes meios de identificao
Participarem em relacionamentos de tipos
diferentes

31

Modelo E/R
Entidade como mais de um tipo (Cont.)
Hierarquia de Relacionamentos -UM: Contribui para
a Modularidade, permitindo que Atributos Comuns
de Entidades Similares possam ser Representados
em um nico Lugar de um Diagrama E/R

32

Modelo E/R
Relacionamentos entre subtipos (Cont.)
Generalizao e especializao

Nmero

Saldo
Conta
Limite

Juros
Conta Poupana

UM

Conta-Corrente
33

Modelo E/R
Uso de um Relacionamento Ternrio
Versus um par de Relacionamentos
Binrios

Ex.: Um Empreendimento Bancrio onde um


Cliente pode ter diversas Contas, cada uma
localizada em uma Agncia Especfica e uma
Conta pode pertencer a mais de um Cliente

34

Modelo E/R

Agncia
1

Cliente

CCA

Conta

Relacionamento Ternrio
35

Modelo E/R
Agncia
1

CA
N

Cliente

Conta
N

CC
Relacionamentos
Binrios

36

Modelo E/R
Uso de Um Atributo ou Um Conjunto de
Entidades
Distino depende da Estrutura da
Empresa que est sendo Modelada e da
Semntica associada ao Atributo em
Questo

37

Modelo E/R

Telefone

Nome
Funcionrio

Funcionrio

Telefone

Funtel

38

Modelo E/R
Agregao
Agrupar uma parte de um Diagrama E/R em
um nico Conjunto-Entidade
Nome
Funcionrio

Descrio

Horas
Cod

m Trab n

Projeto

Id

Usa

Equipamento
39

Modelo E/R
Resumo do Projeto Conceitual
Modelo ER popular para criao do projeto
conceitual de BD
Construes so expressivas, prximas da intuio
sobre aplicaes

Construtores bsicos: entidades,


relacionamentos e atributos.

40

Modelo E/R
Resumo (Cont.)
Alguns construtores adicionais: entidades fracas,
hierarquias ISA e agregao.

Vrios tipos de restries de integridade podem


ser expressas no ER.

Projeto ER subjetivo. A anlise de alternativas


pode ser delicada, especialmente para grandes
cenrios.

41

Modelo E/R
Resumo (Cont.)
Alternativas podem incluir:

Entidade vs. Atributo


Entidade vs. Relacionamento
Relacionamento binrio ou ternrio
Quando usar hierarquias ISA
Quando usar agregao

Nota: H muitas variaes do modelo ER.

42

Um Exemplo
Exemplo: Um Sistema nico de Sade
Ideal
Hospitais so formados por um ou mais
Ambulatrios e cada um destes est em um
nico Hospital
Mdicos clinicam em um nico Hospital, cada
um deles agregando vrios Mdicos

43

Um Exemplo
Hospitais solicitam exames clnicos em vrios
Laboratrios, cada um destes pode ter
solicitaes de vrios Hospitais
Pacientes consultam vrios Mdicos, e estes so
consultados por vrios Pacientes

44

Um Exemplo
Ambulatrios atendem vrios Pacientes, enquanto
estes s podem ser atendidos em um nico
Ambulatrio
Pessoal de apoio est alocado a cada
Ambulatrio, e cada um destes conta com vrios
integrantes do Pessoal de apoio

45

Um Exemplo
Pacientes realizam vrios Exames, e cada
Exame realizado por um nico Paciente
Laboratrios fazem vrios Exames, e cada um
dos Exames feito em um nico Laboratrio
Cada Paciente pode receber vrios Diagnsticos,
e cada Diagnstico de um nico Paciente

46

Um Exemplo
Hospital
1

M
1

Formado

Clinica

Ambulatrio

N
Mdico

1
Aloca

Solicita

Laboratrio

1
Consulta

Atende

Faz

N
Pessoal

N
Realiza

Paciente
1

1
Recebe

N
Diagnstico

Exame
47

Outro Exemplo
Considere uma aplicao de BD para um
aeroporto privado e de pequeno porte que
visa manter informaes sobre avies,
proprietrios dos avies, empregados do
aeroporto e pilotos.
Da anlise de requisitos feita para esta
aplicao, as seguintes informaes foram
coletadas:

48

Outro Exemplo
Cada avio tem um nmero de registro, de um tipo de
avio especfico e armazenado em um hangar
particular. Cada tipo de avio tem um nmero de
modelo, uma capacidade e um peso. Cada hangar tem
um nmero, uma capacidade de armazenamento e uma
localizao.
O BD tambm deve manter informaes sobre os
proprietrios de cada avio e sobre os empregados que
realizam manuteno no mesmo. Cada avio pode
pertencer a um grupo de empresas, enquanto que cada
empresa pode ter mais de um avio. Alm disso, desejase guardar a data de aquisio do mesmo pelas
empresas proprietrias. Cada uma destas empresas
caracterizada pelo CNPJ, nome, endereo e telefone.
49

Outro Exemplo
Cada empregado pode realizar vrios servios de
manuteno, os quais podem ser feitos por vrios
empregados. Um avio pode passar por vrios servios
de manuteno e cada um destes servios
caracterizado pela data da manuteno, nmero de
horas trabalhadas, tipo do servio feito e finalmente, o
nmero do avio tambm usado na identificao de
cada servio.
Tanto o Piloto quanto o Empregado so subtipos de
Pessoa. Cada piloto tem atributos especficos, como o
nmero da licena e o conjunto de restries de vo.
Cada empregado tem atributos prprios, como salrio,
funo e data de incio no emprego. Todas as pessoas
no BD tm um CPF , nome, endereo e telefone.
50

Outro Exemplo
O BD tambm mantm informaes sobre os avies que
cada piloto pilota e os tipos de avies que cada
empregado pode realizar manuteno. Cada avio pode
ser pilotado por vrios pilotos e cada piloto pode pilotar
vrios avies. Sempre que um vo (ou est para ser)
realizado, comunicaes so feitas com vrias torres de
comando. Cada torre de comando possui um cdigo e
uma localizao.
Cada empregado pode trabalhar na manuteno de
vrios tipos de avio e cada modelo de avio pode
precisar de vrios empregados trabalhando na sua
manuteno.
51

Data_In

Trabalha
Tipo

Horas
Faz

Empregado

Nmero

Recebe

Pilota

Aeronave
N

Tem

Piloto

N
N

1
N

Funo

Data

Servio

Salrio

Modelo_Av

Licena

Restri

Pertence
Data

Pessoa

Nmero
Guarda
Peso

Empresa

Capacid

Hangar

Comunica
CPF

Fone
M

CNPJ

Endere

Nome

Torre_Com
End

Nome
Num

Local

Capacid

Cdigo

Local

Fone

52

Exerccio
Deseja-se guardar dados sobre
empregados, departamentos e projetos de
uma companhia
Suponha que, depois da fase de anlise de
requisitos, os projetistas chegaram
seguinte descrio do mini-mundo, ou
seja, a parte da companhia a ser
representada no banco de dados:

53

Exerccio
A companhia organizada em departamentos e cada
depto tem um nome, um nmero e um empregado que o
gerencia. Deseja-se guardar a data na qual o
empregado comeou a gerenciar o depto. Um
departamento pode estar em vrios locais.
Um depto controla um nmero de projetos, os quais
possuem nmero, nome e um nico local.
Um empregado caracterizado por um cadastro, nome,
sexo e salrio. Ele est associado a um depto mas pode
trabalhar em vrios projetos que no necessariamente
so controlados pelo mesmo depto. Deseja-se guardar o
nmero de horas que um empregado trabalha em um
projeto e o supervisor direto de cada empregado.
Cada empregado possui dependentes caracterizados
por nome, data de nascimento e grau de parentesco.
54

Sexo

Salrio

Nmero

Nome
Trabalha
para

N
Cad

Nome

Locais

Departamento

Empregado
Data-Ini
1

Gerencia

1
1
Superviso

Dependentes
de

M
Trabalha
em

Controla
N
N

Horas

Projeto
Local

Dependentes
Nmero
Nome

Data-nasc

Grau-P

Nome
55

Outro Exerccio
Considere o seguinte sistema de
gerenciamento imobilirio simplificado, que
visa manter informaes sobre clientes,
proprietrios dos imveis, contratos de
aluguel, funcionrios e agncias:

56

Outro Exerccio
Cada cliente possui CPF, nome, endereo e
uma lista de telefones para contato. Cada
cliente atendido por um nico funcionrio, o
qual caracterizado pelo nmero da carteira
profissional, nome, endereo, telefone, funo
e salrio.
Cada funcionrio possui um nico supervisor e
trabalha em uma nica agncia. Cada agncia
tem um cdigo, uma descrio e um
funcionrio que a gerencia. Deseja-se guardar
a data na qual o funcionrio comeou a
gerenciar a agncia. Alm disso, cada gerente
pode gerenciar apenas uma nica agncia.

57

Outro Exerccio
Um cliente tem uma ou mais preferncias por
um ou mais tipos de imveis, onde cada
preferncia caracterizada pelo cdigo do
cliente, tipo e valor mximo de aluguel.
Um cliente pode estar associado a vrios
contratos de aluguel, os quais possuem
nmero, perodo e valor. Mas, cada contrato
refere-se a um nico cliente.
Cada contrato diz respeito a um nico imvel, o
qual possui um cdigo, localizao, tipo e valor
solicitado pelo proprietrio. Alm disso, cada
imvel possui um nico proprietrio que tem
CPF, nome e telefones.

58

Outro Exerccio
Um imvel disponvel para negociao pode
ser divulgado em vrios jornais, os quais
possuem um cdigo e um nome. Deseja-se
guardar a data e o custo da divulgao de
cada imvel feito por cada jornal.

59

Você também pode gostar