Académique Documents
Professionnel Documents
Culture Documents
Modelagem de
Dados/Modelo
EntidadeRelacionamento
Modelagem de Dados
Contedo
Introduo
Fases de Projeto de BD
Ciclo de vida de BD
Modelo conceitual de BD
Modelo Entidade-Relacionamento
Entidade/Atributo/Relacionamento
Representao
Extenses
Exerccios
Modelagem Conceitual de Dados - Slide 2
Modelagem de Dados
Introduo
Abstrao da informao
Habilidade mental que permite aos seres humanos visualizarem os
problemas do mundo real com vrios graus de detalhe, dependendo
do contexto do problema.
J.Rumbaugh
Modelagem de Dados
Introduo
(Valdemar W. Setzer)
seres, objetos,
organismos, fatos
informaes informais
informaes formais
dados
mundo real
organizao;
alteraes
modelo descritivo
modelo conceitual
estruturas de informaes;
especificaes de manipulao
modelo operacional
modelo interno
Modelagem de Dados
Introduo
Fases de Projeto de um banco de dados
Modelagem Conceitual
Procura capturar formalmente os requisitos de informao de um BD;
Projeto Lgico
Objetiva definir as estruturas de dados que implementem os requisitos
identificados na modelagem conceitual;
Projeto Fsico
Define parmetros fsicos de acesso ao BD;
Procura otimizar o desempenho do sistema em relao ao acesso aos
dados.
Modelagem Conceitual de Dados - Slide 5
Modelagem de Dados
Fase do Projeto de banco de Dados
Mini-Mundo
Independente do SGBD
Dependente do SGBD
Anlise e Coleta de
Requisitos
Requisitos do BD
Projeto Conceitual
Projeto
Fsico
Catlogo do
BD
Modelagem de Dados
Cclo e Vida do BD
Anlise dos requerimentos
Modelo Entidade-Relacionamento
Focaliza na estrutura dos dados/metadados
No aborda a modelagem funcional
Modelo Orientado a Objeto
Modela objetos atravs do encapsulamento dos
metadados (estrutura) e mtodos (funes)
Modelo Entidade-Relacionamento
Conceito
Modelo de dados conceitual de alto nvel bastante popular. Esse
modelo e suas variaes so frequentemente utilizados para o projeto
conceitual de aplicaes de banco de dados e por muitas ferramentas
de projeto de banco de dados
Elmasri/Navathe
Modelo Entidade-Relacionamento
Definio
Proposto por Peter Chen [1976]
Baseado na percepo do mundo real
Qualifica todo item de informao como entidade, atributos e
relacionamento facilitando assim o entendimento tanto por
parte do projetista do banco de dados, quanto do usurio
Objetivos:
Simplicidade de representao
Ferramenta para os projetistas
Ferramenta de comunicao
Criar uma viso unificada dos dados
Modelo Entidade-Relacionamento
Entidade
Entidade - qualquer objeto distinto a ser representado pelo banco de
dados.
Um grupo de pessoas, coisas ou eventos que compartilham um
conjunto de atributos
Identificada pelo usurio, definido pelo projetista de dados
Concretas: carro, casa, filme, produto, etc..
Abstratas: atividade, cargo, show, etc..
Instncia de uma Entidade
Uma pessoa, coisa ou evento individual
Percebido com um registro lgico
Modelo Entidade-Relacionamento
Atributo
Atributo - informaes teis a respeito de uma entidade ou
relacionamento, so independentes de todas as demais entidades.
Tipos de atributo :
determinante:
seu valor representa uma instncia da entidade
seu valor nico por instncia da 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 (*)
Modelagem Conceitual de Dados - Slide 13
Modelo Entidade-Relacionamento
Atributo
Domnio de um atributo - determina o conjunto de valores vlidos de
um atributo
Ex : Idade numrico (0,120)
Nome texto de 30 posies
Entidade
Atributos
Modelagem Conceitual de Dados - Slide 14
Modelo Entidade-Relacionamento
Representao entidade/atributo
Funcionrios
Funcionrios
endereo
matricula
Funcionrios
matricula
Atributo
composto
rua
n CEP
Atributo multi-valorado
*telefone
Modelo Entidade-Relacionamento
Representao entidade/atributo
Entidade
Nome da entidade = (atributo1, atributo2, , atributon)
Atributo
Identificador - sublinhado
Multivalorados - {}
Compostos - ( )
Ex.
Carro = (Placa,Registro(Numero, Estado),Modelo, {cor})
(BSA3321, (234,Bahia), Corsa,{azul,branco})
(VIT3521, (317,Bahia), Corsa,{vermelho,preto})
Modelo Entidade-Relacionamento
Representao entidade/atributo
Modelo Entidade-Relacionamento
Tipos de Entidade
Fortes - so entidades de dados que possuem alto grau de
independncia com relao existncia e identificao.
Fracas - so entidades que possuem dependncia de existncia e de
identificao. Esto sempre ligadas outras entidades fortes por
relacionamentos. As entidades fracas possuem as seguintes
propriedades:
Devem ser consideradas como pertencentes a somente uma outra
entidade (forte ou fraca).
Devem ter pelo menos um relacionamento estabelecido com a
forte.
Devem ter pelo menos uma identificao parcial prpria.
Devem ter pelos menos uma identificao da forte com que se
Entidade Fraca
relaciona
Modelagem Conceitual de Dados - Slide 18
Modelo Entidade-Relacionamento
Atributo de identificao e de conexo
Modelo Entidade-Relacionamento
Relacionamento
Entidades no esto isoladas, necessrio identificar relacionamentos para
representar corretamente o ambiente observado.
uma associao lgica entre as diversas entidades. So representados
por losangos.
Entidade 1
Relaciona
Entidade 2
Modelo Entidade-Relacionamento
Relacionamento
Grau do relacionamento
Nmero de entidades que participam no relacionamento
gerenciado
Unrio
Gerncia
Funcionario
gerencia
Funcionario
Pertence
Departamento
Binrio
Modelo Entidade-Relacionamento
Relacionamento
Fornecedor
Ternrio
Pea
Projeto
Modelo Entidade-Relacionamento
Relacionamento
Cardinalidade - o nmero de instncias de uma entidade que podem
ser associados com instncias de outra entidade
1
Func
Utiliza
Carro
Modelo Entidade-Relacionamento
Relacionamento
Classificacao
N
Filme
Modelo Entidade-Relacionamento
Relacionamento
Cardinalidade de relacionamento - N:M
Func
M
Participa
N
Projeto
Modelo Entidade-Relacionamento
Relacionamento
Cardinalidade de relacionamento Um-para-Um (1:1)
a
1
b1
a
2
b2
a
2
a
3
b3
a
4
b4
Modelo Entidade-Relacionamento
Relacionamento
Cardinalidade de relacionamento (1:N)
a
1
b1
b2
a
2
b3
a
2
b4
a
3
b4
Modelo Entidade-Relacionamento
Relacionamento
Cardinalidade de relacionamento (M:N)
a
1
b1
a
2
b2
a
2
a
3
b3
a
4
b4
Modelo Entidade-Relacionamento
Notaes para DER
Entidade
Entidade fraca
Relacionamento
Atributos
Modelo Entidade-Relacionamento
Relacionamento
Modelo Entidade-Relacionamento
Relacionamento
Modalidade: Associaes mandatrias e opcionais
Associar um par de nmeros inteiros (min, max) a cada
participao de um tipo de entidade E em um tipo de
relacionamento R
(Elmasri/Navathe)
min = 0
min > 0
participao parcial
participao total
Modelo Entidade-Relacionamento
Relacionamento
Relacionamento 1:1
Todo consumidor possui apenas um registro de dados cadastrais.
Consumidor
Nome
CPF
(1,1)
Possui
(0,1)
Dados Cadastrais
Endereo
CPF
Consumidor(CPF, Nome)
Dados Cadastrais(CPF, Endereo) FK=CPF se refere a CPF de Consumidor
* Representar a chave estrangeira com grifado pontilhado
Modelagem Conceitual de Dados - Slide 32
Modelo Entidade-Relacionamento
Relacionamento
Relacionamento 1:1 (no obrigatrio)
Um homem pode ser casado com uma nica mulher. Uma mulher
pode ser casa com um nico homem.
Data
Homem
Nome
CPF
(0,1)
Casado
(0,1)
Mulher
Nome
CPF
Homem(CPF, Nome)
Mulher(CPF,
Nome)
Casado(CPFHomem, CPFMulher, DataCasamento) FK1=CPFHomem se
refere a CPF de Homem
FK2=CPFMulher se refere a CPF de Mulher
Modelagem Conceitual de Dados - Slide 33
Modelo Entidade-Relacionamento
Relacionamento
Relacionamento 1:n
Toda cidade pertence a apenas um estado. Um estado deve ter
vrias cidades.
Cidade
populao
nome
idcidade
(0,n)
Pertence
(1,1)
Estado
sigla
nome
idestado
Modelo Entidade-Relacionamento
Relacionamento
Relacionamento 1:n (no obrigatrio)
Todo vendedor emite vrios pedidos de compra. Um pedido
de compra pode ser emitido atravs da Internet sem o
envolvimento do vendedor.
Vendedor
Telefone
Nome
idvendedor
(0,1)
Emite
(1,n)
Pedido
Item
Quantidade
Nmero
Data
Vendedor(idvendedor,nome, Telefone)
Pedido(Nmero, Item, Quantidade, data, idvendedor)
FK=idvendedor se refere a chave primria de Vendedor
Modelo Entidade-Relacionamento
Relacionamento
Relacionamento m:n (obrigatrio)
Todo funcionrio participa de pelo menos um projeto. Cada
projeto tem a participao de um ou vrios funcionrios.
Funcionrio
Funo
Nome
Matrcula
(1,m)
Participa
(0,n)
Projeto
Horas trabalhadas
Nome
Cdigo
Modelo Entidade-Relacionamento
Relacionamento
Exerccio 3
Fazer um DER apresentando as entidades Empregado, Departamento,
Dependentes de Empregado e Projetos, seus atributos, relacionamentos e
respectivas cardinalidades e modalidade de relacionamento. Realize tambm
os mapeamentos.
Neste problema um empregado sempre est alocado a um departamento,
cada departamento gerenciado por um gerente e ser importante saber a
data que este gerente iniciou na gerncia.
O empregado pode ou no possuir dependentes. Se os empregados so
casados, apenas um deles pode declarar os dependentes.
Um empregado pode ou no trabalhar em um ou mais projetos e a
quantidade de horas trabalhadas em cada projeto deve ser registrada. Um
projeto dever conter no mnimo um empregado alocado. Todo projeto
controlado por um departamento.
Do empregado precisamos conhecer todas as suas informaes cadastrais, de
seus dependentes apenas o nome, sexo, data de nascimento e parentesco
(filho, neto, pai, me,Modelagem
etc.)
Conceitual de Dados - Slide 37
Modelo Entidade-Relacionamento
Extenses
O modelo E-R no conseguia refletir alguns fatos do mundo real, foi
Modelo Entidade-Relacionamento
Extenses
Especializao
Considerando uma entidade uma classe, especializar subdividir a
classe em subclasses. A classe ou entidade principal tambm
chamada de superclasse.
Colaborador
Funcionrio
Terceiro
Modelo Entidade-Relacionamento
Extenses
Especializao
Funcionrio
Secretria
Engenheiro
Tcnico
Velocidade datilog.
Tipo
Grau
Modelo Entidade-Relacionamento
Extenses
Especializao
Define um conjunto de subclasses de um tipo de entidade
Estabelece atributos especficos e adicionais para cada subclasse
Colaborador
Funcionrio
assalariado
Terceiro
por hora
Modelo Entidade-Relacionamento
Extenses
Generalizao
Inverso da Especializao. Ocorre quando uma superclasse
(entidade) um agrupamento de subclasses (entidades).
Representao do conjunto global
Processo inverso de especializao, define apenas as
carcatersticas comuns
Pessoa
Homem
Mulher
Modelo Entidade-Relacionamento
Extenses
Generalizao
Funcionrio
Secretria
Engenheiro
Tcnico
Velocidade datilog.
Tipo
Categoria
Modelo Entidade-Relacionamento
Extenses
Especializaes/Generalizao
H um relacionamento entre a superclasse e as subclasses
Especializao considerada uma diviso em duas ou mais
entidades e no entidades diferentes
Os relacionamentos podem ser estabelecidos entre a superclasse
e as subclasses
Modelo Entidade-Relacionamento
Extenses
Agregao
Abstrao da informao onde relacionamentos so tratados como
entidades em nvel mais alto
So usadas quando desejamos associar um relacionamento a uma
entidade atravs de um outro relacionamento.
Modelo Entidade-Relacionamento
Extenses
Agregao
data consulta
Medico
(0,N)
consulta
(0,N)
solicita
(0,M)
(0,M)
Paciente
data solicitacao
data realizacao
resultado
Exame
Medico(CodMedico, Nome, ...)
Paciente(CodPaciente, Nome, ...)
Consulta(CodMedico, CodPaciente, DataConsulta)
Exame(CodExame, Descricao, ...)
SolicitacaoExame(CodMedico,CodPaciente,CodExame,DataSolicitacao,
DataRealizacao,Resultado)
Modelagem Conceitual de Dados - Slide 46
Modelo Entidade-Relacionamento
Extenses
Agregao
Permite relacionamento entre relacionamentos tratando o
relacionamento como uma entidade abstrata
Modelo Entidade-Relacionamento
Extenses
Agregao
Funcionario
(0,N)
periodo
data
alocado
data
(1,M)
Projeto
(1,1)
reserva
(1,N)
Maquina
Funcionario(Matricula, Nome, ...)
Projeto(CodProjeto, NomeProjeto, ...)
AlocacaoProjeto(Matricula, CodProjeto, DataAlocacao)
Reserva(Matricula,CodProjeto,CodMaquina, DataReserva, Periodo)
Maquina(CodMaquina, Processador, Memria, ...)
Modelagem Conceitual de Dados - Slide 48
Modelo Entidade-Relacionamento
Recomendaes para criao de um DER
1.
2.
3.
4.
5.