Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
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
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
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
Modelo E/R
Conceitos Adicionais
Atributos Multivalorados
Cardinalidade
Auto-Relacionamento
Existncia
Relacionamento Total ou Obrigatrio
Relacionamento Parcial ou Opcional
Relacionamento Hbrido (Contingencial)
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
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
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
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
40
Modelo E/R
Resumo (Cont.)
Alguns construtores adicionais: entidades fracas,
hierarquias ISA e agregao.
41
Modelo E/R
Resumo (Cont.)
Alternativas podem incluir:
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