Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2009
Modelagem de Dados
Parte II
1
O Modelo
Entidade--Relacionamento
Entidade
Conceito
O modelo de entidade-
entidade-relacionamento (MER) é
baseado na percepção do mundo real que consiste em
um conjunto de objetos básicos chamados entidades e
nos relacionamentos entre estes objetos.
Ele foi desenvolvido para facilitar o projeto de banco
de dados,
dados, permitindo a especificação de um esquema
de “negócio”, onde tal esquema representa a estrutura
lógica geral do banco de dados
dados..
É representado graficamente por um DER (Diagrama
Entidade Relacionamento)
2
Modelos
Modelo Conceitual
– Espelha a realidade independente da implementação
– Independência de hardware e software
Modelo Lógico
– Dependência da Abordagem
– Independência de software e hardware
Componentes do DER
Entidades
Relacionamentos
PEDIDO
CLIENTE PRODUTO
3
Entidade
Objeto que existe no mundo real com uma
identificação distinta e com um significado próprio
Entidade
Uma entidade pode ser:
– Objeto real
um livro, um carro, um local.
– Pessoa
um empregado, um aluno, um cliente.
– Conceito abstrato
um curso, uma empresa.
– Acontecimento
uma venda, uma mercadoria despachada.
– Associação
Aproveitamento de um aluno numa disciplina
4
Entidade
Como uma entidade é representada?
Aluno Livro
Cliente Departamento
Avaliação
Venda
Entidade
Ponderações
– Entidade X Instâncias
– Domínio do mundo real
– Preocupação na construção de sistemas
5
Atributo
Todo objeto para ser uma entidade deve possuir propriedades
que são descritas por atributos e valores
Esses atributos e valores, juntos, descrevem as instâncias de
uma entidade
Exemplo
– Carro: placa, marca, cor, ano de fabricação
– Cliente: nome, endereço, telefone, cpf
Atributo
Representando atributos
Número
Nome
SSN
Projeto
Localização Nome
Empregado
Salário
Endereço
6
Atributo
Classificação
– Atributo composto
– Atributo multivalorado
– Atributo derivado
– Atributo agregado
– Atributo determinante
Atributo composto
Pode ser dividido em partes menores que representam
atributos mais básicos com significado independentes
SSN
Nome
Empregado
Salário
Logradouro
Endereço
Complemento
Número
Bairro
7
Atributo multivalorado
É um atributo assume mais de um valor para uma
mesma ocorrência de entidade.
Seu nome deve estar no plural e representado
graficamente por uma elipse dupla.
SSN
Nome
Cliente
Telefones
Atributo derivado
São os obtidos através de operações sobre outros
atributos pertencentes a mesma ocorrência-
ocorrência-de
de--
entidade (operação na horizontal).
Como exemplo citamos os totais, diferenças,
somatórios, etc. SSN
Nome
Empregado
SalárioBruto
Desconto
SalárioLíquido
8
Atributo agregado
São os obtidos por operações ou comparações entre
atributos pertencentes a ocorrências-
ocorrências-de
de--entidade
distintas de uma ou mais entidades (operação ou
comparação na vertical).
Os principais exemplos são os valores máximos,
mínimos, médias, somatórios, saldos, etc.
Código
Nome
Departamento
TotalDeEmpregados
Atributo determinante
É um atributo que identifica (determina) uma única
ocorrência da entidade.
CPF
Nome
Cliente
Endereço
9
Atributo
Propriedades dos atributos
– Definição
placa - código de id. do veículo junto ao DETRAN
– Tipo (numérico, alfa, data)
data de nascimento - data, salário - numérico
– Formato
salário bruto - 99.999,00, ano de fabricação - 9999
– Domínio
salário bruto >= 380,00
– Chave de identificação
Carro: placa, marca, modelo, ano de fabricação
Chave de identificação: placa
Descobrindo Entidades
10
Descobrindo Entidades
Conhecer os objetos principais do domínio
observado
– Perceber a realidade em diversas entidades
Descobrindo Entidades
Atividade
– Uma clinica médica necessita controlar as
consultas médicas realizadas e marcadas pelos
médicos a ela vinculados, assim como acompanhar
quem são os pacientes atendidos para manter o
acompanhamento clínico dos mesmos.
11
Descobrindo Entidades
Nome
Endereço
Paciente
Sexo CRM
Idade
Médico Nome
Especialidade
Descobrindo Entidades
Data_Consulta
CRM_Medico
Consulta
Nome_Paciente
12
Descobrindo Entidades
Consulta
Médico Paciente
Medica
Generalização e Especialização
Generalização
– Uma entidade é utilizada para representar entidades
distintas pertencentes a um mesmo macro tipo
– Na generalização colocamos todas as instâncias de
entidades diversas em uma única entidade
Especialização
– Entidades que possuem propriedades que permitam
identificar um grupo, uma classe dentro da entidade
genérica
13
Generalização e Especialização
Médico
Atividade
– Encontrar os subtipos do tipo pedido
Relacionamentos
14
Relacionamentos
O fato, o acontecimento que liga dois objetos, duas
“coisas” do mundo real
Casado com
João Maria
Relacionamentos
Representa um mapeamento (associação) entre as
classes de entidades.
– Exemplos:
As pessoas moram em apartamentos
Os apartamentos formam condomínios
Os condomínios localizam
localizam--se em ruas
As ruas estão em uma cidade
15
Relacionamentos
Representação
Está
Aluno Matriculado
Disciplina
Relacionamentos
O relacionamento acontece nos dois sentidos
– Apenas um é necessário na modelagem
– Preferencialmente da entidade mais forte para a
mais fraca
Conta
Cliente Movimenta
Corrente
Conta É Cliente
Corrente Movimentada
16
Relacionamentos
Cardinalidade
Numero de ocorrências de uma entidade que está
associado, com ocorrências de outra entidade,
determina a cardinalidade
Relacionamentos
Cardinalidade
Relacionamento de um-
um-para
para--um (1:1)
João *
* 20
Marcos *
* 12
Silvia *
*8
Bianca *
*6
17
Relacionamentos
Cardinalidade
Relacionamento de um-
um-para
para--muitos (1:N)
Empregado Departamento
João *
* RH
Marcos *
* Financeiro
Silvia *
* Compras
Bianca *
Relacionamentos
Cardinalidade
Relacionamento de muitos-
muitos-para
para--muitos (N:M)
Aluno Disciplina
João *
* PBD
Marcos *
* Redes
Silvia *
* Programação
Bianca *
18
Relacionamentos
Cardinalidade
Representação no DER
1 1 Poltrona
Passageiro Ocupa
de Avião
N 1
Empregado Lotação Departamento
N M
Aluno Cursa Disciplina
Relacionamentos
Cardinalidade
Observações
– O grau deve ser determinado analisando o
relacionamento em todos os sentidos. O maior é o
determinante
N 1
Empregado Lotação Departamento
1:1
N:1
19
Relacionamentos
Cardinalidade
Observações
– O relacionamento com cardinalidade N:M é conseqüência de
um relacionamento com cardinalidade 1:N em ambos os
sentidos
– Este tipo de relacionamento pode possui atributos, ou seja,
possui propriedades que são inerentes ao fato e não às
entidades
turma data da matricula
N M
Aluno Cursa Disciplina
1:M
N:1
Relacionamento
Cenário 01
– Em uma determinada empresa, são realizados diversos
projetos de engenharia que alocam os funcionários
disponíveis em seu quadro funcional conforme a
necessidade, ficando estes funcionários alocados a
somente um projeto até o encerramento do mesmo
Definir as entidades e relacionamentos
Onde ficaria atributos como: data de inicio e tempo de
alocação
Cenário 02
– Um funcionário pode está alocado a muitos projetos,
que são executados por vários funcionários
Quais as modificações no modelo?
20
Relacionamento
Cenário 01
Matricula Nome Codigo do Data Inicio Tempo de
Projeto do Projeto Alocação
1466 Pedro P-25 12/12/05 18 meses
2322 Luiz P-18 05/01/02 12 meses
7712 Carlos Nulo Nulo Nulo
4415 Silvia P-18 18/04/07 3 meses
Relacionamento
Funcionários Projetos
Cenário 02
Matricula Nome Código do Projeto Nome do Projeto
P-18 Phoenix
1466 Pedro P-25 Minerva
2322 Luiz P-32 Corrupt
7712 Carlos P-55 Nova Ponte
4415 Silvia P-203 Canal Novo
Matricula Código do Data Inicio Tempo de
funcionário Projeto do Projeto Alocação Alocado
1466 P-25 12/12/05 18 meses
2322 P-18 05/01/02 12 meses
7712 Nulo Nulo Nulo
4415 P-18 18/04/07 3 meses
21
Descobrindo
Relacionamentos
Como saber qual o grau de um relacionamento
que observamos?
Será mesmo um relacionamento, ou é um
procedimento de sistema?
– Certos verbos utilizados para expressar o
relacionamento são tipicamente representações de
procedimentos.
Item de nota fiscal baixa um item de estoque
Item de nota fiscal refere
refere--se a um item de estoque
Relacionamentos
Condicionalidade
Relacionamentos que possuem uma condição,
uma qualificação para ocorrerem
Relacionamentos condicionais
– São aqueles em que nem todos ao elementos de
uma entidade A estão ligados com os elementos de
uma entidade B
22
Relacionamentos
Condicionalidade
Relacionamentos incondicionais
– Todos os elementos de uma entidade estão
obrigatoriamente relacionados com um elemento,
no mínimo, da outra entidade
Relacionamentos
Condicionalidade
Representação no DER
1 N
Empregado Possui Dependente
23
Relacionamentos
Condicionalidade
(1,1) (1,1) Cada entidade da classe A está associada
A B
B a uma única entidade da classe B
(1,1) (0,1)
A B Cada entidade da classe A está associada
a zero ou uma entidade da classe B
Relacionamento
Exemplo
(1,1) (0,N)
Empregado Dependência Dependente
(0,N)
Lotação
(1,1)
Departamento
24
Entidades - Classificação
Entidade primária (forte)
– Quando existe em si e por si é concebida
– Seu conceito não carece/necessita do conceito de
outra coisa
– Exemplos:
Entidades - Classificação
Entidade dependente (fraca)
– Não existe por si só. Sua existência está
condicionada à uma única outra entidade da qual
ela depende.
Exemplo:
25
Entidades - Classificação
Entidade de relacionamento/associativa
– Não existe por si só. Sua existência está
condicionada a existência de duas ou mais
entidades, a partir da qual é concebida.
Exemplo:
Código
Matrícula
Nota
Relacionamento Especiais
Relacionamento entre múltiplas entidades
– As entidades devem ser analisadas aos
aos pares
pares
Aluno N N Disciplina
Professor
26
Relacionamento Especiais
Relacionamento binários de um-
um-para
para--um
– Este tipo existe. É fato. Mas como implementá
implementá--los através de
referencias lógicas?
– Onde coloca-
coloca-se a chave estrangeira para efetivar, logicamente,
este relacionamento?
1 1
Nota Fiscal Remete Pedido
Relacionamento Especiais
Grau de Relacionamento
– Determina quantas entidades participam de um
relacionamento.
Binário: duas entidades ou um auto-
auto-relacionamento
Ternário: três entidades
Enário: mais que três entidades
27
Relacionamento Especiais
Grau de Relacionamento
R E1 R E2
E1
E1
E1 E2
E4 R E3
R E3
E2
E2
Relacionamento - Classificação
Agregação
– Agregação é utilizada quando se quer transformar um
relacionamento entre entidades, em uma entidade
(abstrata)
Exemplo:
N N
Meliante Assassina Vitima
N
Usa Arma
28
Relacionamento - Classificação
Agregação
Crime
N N
Meliante Assassina Vitima
Usa
Arma
Relacionamento - Classificação
Cenário
– Um medico atende a muitos pacientes, que o
consultam, e um paciente pode realizar consultas
com muitos médicos. Sempre que um paciente
consulta um medico, este fornece uma receita, que
pode ter um, ou vários remédios
29
Relacionamento - Classificação
Cenário 03
Consulta
N N
Médico Atende Paciente
Receita
Remédio
Relacionamento - Classificação
Relacionamento de especialização/generalização
– Existem muitos casos em que uma entidade representa
elementos do mundo real que se subdividem em
categorias com atributos parcialmente distintos.
Exemplo:
Empregado
ESPECIALIZAÇÃO
ESPECIALIZA
GENERALIZAÇÃO
ÃO
função
A G
U O
30
Relacionamento - Classificação
Auto--relacionamento
Auto
– Ocorre entre uma entidade e ela mesma.
Exemplo:
1 N
M M
chefia Empregado Pré-requisito Disciplina
Relacionamento
Papel de uma entidade no relacionamento
– Função que a entidade desempenha em um
relacionamento
Apartamento ? Pessoa
31
Relacionamento
Papel de uma entidade no relacionamento
Está alugando
1
N
Aluga Locatário
Apartamento Pessoa
1
N Possui Locador
Tem a posse
Relacionamento
Papel de uma entidade no relacionamento
M
Pré-requisito Disciplina
é pré-requisito de
32
Iniciando do Projeto
Lembre-se! O que define conceitualmente uma
Lembre-
entidade é se desejamos guardar dados para o objeto
em si
Identifique as entidades chaves no domínio
Identifique os objetos que se relacionam com estas
entidades
Analisar estudo de caso
33
This document was created with Win2PDF available at http://www.win2pdf.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.
This page will not be added after purchasing Win2PDF.