Buscar

Banco de Dados - Modelagem

Prévia do material em texto

Prof. Ricardo Baudel
ricardo.baudel@gmail.com
BANCO DE DADOSBANCO DE DADOS
Modelagem de dados
Parte 1 - conceitos
Banco de DadosBanco de Dados
O que são modelos
• São representações de algo.
• Ex : planta-baixa de uma casa
• Ex : maquete
Banco de DadosBanco de Dados
O que são modelos
• São usados para representar alguma coisa 
do mundo real
• Dados também podem ser modelados
• Pode-se construir um modelo que representa 
os dados
• Modelo de dados
Banco de DadosBanco de Dados
Conceito formal de Modelo
 
 É uma representação abstrata de um sistema 
real, com a qual se pode explicar ou testar o 
seu comportamento em seu todo ou em 
partes.
Banco de DadosBanco de Dados
Conceito resumido de Modelo
 
 É uma representação simplificada e abstrata.
Banco de DadosBanco de Dados
Prática com o 
BrModelo
Banco de DadosBanco de Dados
Abra o BrModelo e desenhe o modelo de dados 
abaixo :
Banco de DadosBanco de Dados
Conceito de Modelo de Dados
• É uma descrição formal da estrutura de um 
banco de dados.
• Pode ser construído com uma linguagem de 
modelagem de dados
• 2 tipos : 
• Gráfico (o que construímos há pouco)
• Textual
Banco de DadosBanco de Dados
Níveis de abstração do Modelo de dados
• Existem vários níveis de abstração do modelo 
de dados
• Para o usuário comum, usa-se um modelo 
mais simples
• Para o usuário mais avançado, usa-se um 
modelo mais sofisticado
Banco de DadosBanco de Dados
Modelos de dados mais utilizados
• Conceitual
• Lógico
Banco de DadosBanco de Dados
Modelo Conceitual
• Descreve um banco de dados de forma 
abstrata
• Não se preocupa com qual SGBD vai ser 
utilizado para implementar o banco
• Só se preocupa com os dados
• Fácil de entender
• Apropriado para os usuários menos 
especializados
Banco de DadosBanco de Dados
Modelo Conceitual mais utilizado : E-R
• Entidade-Relacionamento
• É um modelo gráfico
• De fácil visualização
• Simples, com poucos elementos
• Existem programas para desenhá-los
Banco de DadosBanco de Dados
Exemplo de Modelo Conceitual E-R
Banco de DadosBanco de Dados
Outro exemplo de Modelo Conceitual E-R
Banco de DadosBanco de Dados
Modelo Lógico
• Descreve um banco de dados de forma mais 
específica
• Se preocupa com qual SGBD vai ser utilizado 
para implementar o banco
• Depende do BD utilizado
• Apropriado para os usuários mais 
especializados
• É mais textual, derivado do conceitual
Banco de DadosBanco de Dados
Exemplo de um 
modelo lógico
Banco de DadosBanco de Dados
Banco de DadosBanco de Dados
Fases de um Projeto de Banco de 
Dados
Banco de DadosBanco de Dados
Fases do Projeto de um Banco de dados
1. Construir o Modelo Conceitual
2. Construir o Modelo Lógico a partir do 
conceitual
3. Construir o Modelo Físico a partir do Lógico
Banco de DadosBanco de Dados
Construindo o Modelo Conceitual
Banco de DadosBanco de Dados
Construção do modelo conceitual
• Modelagem conceitual
• Busca obter uma descrição abstrata dos 
dados que serão armazenados no banco
• Técnica mais usada : modelagem E-R, ou 
entidade-relacionamento
• Modelagem E-R
• Criada por Peter Chen em 1976
Banco de DadosBanco de Dados
Conceitos da Modelagem E-R
Banco de DadosBanco de Dados
Conceitos da Modelagem E-R
• Fundamentais :
• Entidade
• Relacionamento
Banco de DadosBanco de Dados
Entidades
Banco de DadosBanco de Dados
Entidade
• É um conjunto de objetos da realidade 
modelada sobre os quais deseja-se manter 
informações no banco de dados
• Exemplos:
• Produtos
• Clientes 
• Fornecedores 
Banco de DadosBanco de Dados
Entidade
• Representada por um retângulo.
• Ex: 
• entidade representa vários objetos de 
mesmo tipo sobre os quais se guardam 
informações
• Na prática, é qualquer coisa do mundo real
Banco de DadosBanco de Dados
Atributos das entidades
Banco de DadosBanco de Dados
Atributos
• Toda entidade tem propriedades
• Chamamos essas propriedades de atributos
• Exemplo : 
• Pessoa
• CPF
• RG
• Nome
Banco de DadosBanco de Dados
Entidades, Atributos e Valores
Nome: João Silva
e1 Idade: 55 anos
Salario: R$ 3.500
Atributos ValoresEntidade
Empregado
Nome: Recursos Humanos
d1 Localização: Av. Recife, 500
Atributos ValoresEntidade
Departamento
Aluno
Matricula
Nome
DataNasc
Sexo
Entidades e Atributos no Diagrama EREntidades e Atributos no Diagrama ER
• Entidades são representadas por retângulos.
• Atributos são representados por elipses conectadas com as 
entidades.
Atributos
• Quando são muitos, não colocamos no 
modelo E-R
• Ficaria sobrecarregado visualmente
Banco de DadosBanco de Dados
Atributos Simples e CompostosAtributos Simples e Compostos
• Compostos versus Simples:
– Atributos compostos são os que podem ser 
divididos em partes.
• Ex.: Endereço pode ser dividido em Rua, 
Num, Apt., Bairro, Cidade e Estado.
– Atributos simples são os que não podem ser 
divididos.
• Ex.: Matrícula.
– Obs.: Use atributos compostos quando for 
preciso acessar separadamente suas partes.
Atributos Compostos no Diagrama ER
• Atributos compostos são representados por elipses conectadas com outra elipse.
Aluno
Endereco
Rua
Num
Apt
Bairro
Cidade
Estado
Atributos Monovalorados e Multivalorados
• Monovalorados versus Multivalorados:
– Atributo monovalorado possui um único valor 
para cada entidade.
• Ex.: Cada funcionário tem um único Nome.
– Atributo multivalorado pode ter mais de um 
valor para cada entidade.ex.:
• Cada carro pode ter mais de uma cor.
Atributos Multivalorados no Diagrama ER
• Atributos multivalorados são representados por elipses duplas.
DEPARTAMENTO
Localizacoes
Atributos Armazenados e Derivados
• Armazenados versus Derivados:
– Atributos derivados são calculados em 
tempo real a partir de outros atributos (não 
ficam armazenados no banco).
– Ex.: Idade pode ser calculada a partir de 
DataNasc. 
– Atributos armazenados ficam realmente 
gravados no banco.
– Ex.: DataNasc, Matrícula, Nome.
EMPREGADO
Idade
Atributos Derivados no Diagrama ER
• Atributos derivados são representados por elipses pontilhadas (ou 
tracejadas).
Atributo chave
• Um atributo chave é aquele cujo valor é 
sempre diferente para cada entidade.
– Serve para identificar (diferenciar) os 
indivíduos.
– Ex.: Matrícula não pode se repetir.
– Obs.: Uma entidade pode ter mais de um 
atributo chave.
– Ex.: CPF, RG, Título de Eleitor, 
Matrícula ...
EMPREGADO
Matricula
Nome
DataNasc
Sexo
Atributo chave no Diagrama ER
• Atributo chave é representado por um sublinhado no nome do atributo.
Idade
EnderecoRua
Num
Apt Bairro
Cidade
Estado
DEPARTAMENTO
Nome
Num
Localizacoes
– Obs.: Uma entidade pode não ter nenhum atributo chave (entidade fraca), mas isso não 
é recomendável.
– Nesse caso, recomenda-se criar um atributo chave artificial (p. ex., Código).
Relacionamentos
Banco de DadosBanco de Dados
Relacionamentos
TRABALHA_PARA
e1
e2
e3
...
e4
e5
d1
...
d2
d3
r1
...
r2
r3
r4
r5
EMPREGADO
DEPARTAMENTO
• Um relacionamento é uma associação entre entidades.
– Ex.: Indica qual empregado trabalha em qual departamento.
Razão do Relacionamento
• No exemplo, cada empregado só trabalha em um único 
departamento, mas cada departamento pode ter vários 
empregados.
• Por isso, a razão é 1:N (um-para-muitos).
e1
e2
e3
...
e4
e5
d1
...
d2
d3
r1
...
r2
r3
r4
r5
EMPREGADO
TRABALHA_PARA
DEPARTAMENTO
Lado N Lado 1
EMPREGADOMatricula
Nome
DataNasc
Sexo
Relacionamento 1:N no Diagrama ER
• Relacionamento é representado por um losango.
• Os números de cada lado representam a razão do relacionamento.
Idade
EnderecoRua
Num
Apt Bairro
Cidade
Estado
DEPARTAMENTO
Nome
Num
TRABALHA_PARA
N 1
Relacionamento 1:1
e1
e2
e3
...
e4
e5
d1
...
d2
d3
r1
...
r2
r3
EMPREGADO GERENCIA DEPARTAMENTO
Lado 1 Lado 1
• Cada empregado, se for gerente, só gerencia um departamento.
• Cada departamento só tem um gerente.
EMPREGADO
Matricula
Nome
DataNasc
Sexo
Relacionamento 1:1 no Diagrama ER
Idade
EnderecoRua
Num
Apt Bairro
Cidade
Estado
DEPARTAMENTO
Nome
Num
Localizacoes
GERENCIA
1 1
TRABALHA_PARAN 1
Relacionamento N:N
e1
e2
e3...
p1
...
p2
p3
r1
...
r2
r3
EMPREGADO PARTICIPA PROJETO
r4
Lado N Lado N
• Cada empregado pode participar de vários projetos.
• Cada projeto pode ter vários empregados.
EMPREGADO
Matricula
Nome
DataNasc
Sexo
Relacionamento N:N no Diagrama ER
Idade
EnderecoRua
Num
Apt Bairro
Cidade
Estado
DEPARTAMENTO
Nome
Num
Localizacoes
GERENCIA
1 1
TRABALHA_PARAN 1
PROJETO
Nome
Num
PARTICIPA
N N
Participação Total
• Uma entidade tem participação total em um relacionamento quando todos 
os indivíduos participam desse relacionamento.
– Ex.: EMPREGADO e DEPARTAMENTO têm participação 
total no relacionamento TRABALHA_PARA.
e1
e2
e3
...
e4
e5
d1
...
d2
d3
r1
...
r2
r3
r4
r5
EMPREGADO
TRABALHA_PARA
DEPARTAMENTO
Participação Parcial
e1
e2
e3
...
e4
e5
d1
...
d2
d3
r1
...
r2
r3
EMPREGADO GERENCIA DEPARTAMENTO
• Uma entidade tem participação parcial em um relacionamento quando nem todos 
os indivíduos participam desse relacionamento.
– Ex.: EMPREGADO tem participação parcial no relacionamento 
GERENCIA. No entanto, DEPARTAMENTO tem participação total.
Participações no Diagrama ER
• Participação total é representada por uma linha dupla.
• Participação parcial é representada por uma linha simples.
Atributo em um Relacionamento
e1
e2
e3
...
p1
...
p2
p3
r1
...
r2
r3
EMPREGADO PARTICIPA PROJETO
r4
(10 horas)
(07 horas)
(12 horas)
(09 horas)
• Um relacionamento também pode ter um atributo.
– Necessário quando o atributo se refere à associação entre 
entidades, e não às entidades separadamente.
EMPREGADO
Matricula
Nome
DataNasc
Sexo
Atributo de Relacionamento no Diagrama ER
Idade
EnderecoRua
Num
Apt Bairro
Cidade
Estado
DEPARTAMENTO
Nome
Num
Localizacoes
GERENCIA
1 1
TRABALHA_PARA
N 1
PROJETO
Nome Num
PARTICIPA
N N
Horas
Auto-relacionamento (ou Relacionamento Recursivo)
• Uma entidade pode ter um relacionamento com ela mesma.
– Ex.: Cada empregado tem seu gerente, que também é um 
empregado.
e1
e2
e3
...
e4
r1
...
r2
r3
EMPREGADO
SUPERVISAO
gerente
subordinado
EMPREGADO
Matricula
Nome
DataNasc
Sexo
Auto-relacionamento no Diagrama ER
Idade
EnderecoRua
Num
Apt Bairro
Cidade
Estado
DEPARTAMENTO
Nome
Num
Localizacoes
GERENCIA
1 1
TRABALHA_PARA
N 1
PROJETO
Nome Num
PARTICIPA
N N
Horas
SUPERVISÃO
1 N
ge
re
nt
e
subordinado
Conclusão
• Nesta aula, vimos os conceitos básicos do Modelo ER.
• Nesta disciplina, o objetivo é entender, de forma geral, um 
Diagrama ER, e não discutir técnicas detalhadas de projeto.
• No próximo módulo, aprenderemos a fazer modelagem E-R.
• Antes, vamos fazer um exercício de identificação de entidades e 
relacionamentos.
Exercício de identificação de 
entidades, relacionamentos, 
atributos e construção de modelos 
E-R.
Banco de DadosBanco de Dados
Final da Parte 3
Banco de DadosBanco de Dados
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Slide 35
	Slide 36
	Slide 37
	Slide 38
	Slide 39
	Slide 40
	Slide 41
	Slide 42
	Slide 43
	Slide 44
	Slide 45
	Slide 46
	Slide 47
	Slide 48
	Slide 49
	Slide 50
	Slide 51
	Slide 52
	Slide 53
	Slide 54
	Slide 55
	Slide 56
	Slide 57
	Slide 58

Continue navegando

Outros materiais