Beruflich Dokumente
Kultur Dokumente
2
Conceito geral de Generalizao/Especializao
Genrico
Especfico
Herana
3
Generalizao/Especializao em MER
Critrio de
Entidade mais especfica
Especializao/
Generalizao
4
Subclasse/Superclasse
Subclasse (subtipo):
Subconjunto de entidades;
Resulta do agrupamento de entidades em subgrupos de
um tipo-entidade.
Outro exemplo:
Superclasse (supertipo) : tipo-entidade Empregado
Subclasses (subtipos): Secretrio, Engenheiro, Tcnico
5
Herana
De atributos:
atributos da superclasse so herdados pelas subclasses;
De relacionamentos:
instncias de relacionamentos da superclasse so
herdados pelas entidades das subclasses;
Observao:
qualquer entidade membro de uma subclasse tambm
deve ser membro da superclasse;
qualquer entidade membro da superclasse pode ser
opcionalmente includa como membro de qualquer
nmero (incluindo zero) de subclasses.
6
Herana ...
Conjuntos de entidades mais especficos herdam todos os
atributos do conjunto de entidades mais genrico;
Nome Pessoa
Idade
Altura
Vnculo Vnculo
N#USP
Curso
N#Func
Aluno Professor Funcionrio
Funo
7
Herana ...
Conjuntos de entidades mais especficos participam de
todos os conjuntos de relacionamentos definidos para o
conjunto de entidades mais genrico.
8
Herana ...
A chave dos conjuntos de entidades mais especficos herdada
do conjunto de entidades mais genrico. Ou seja, a chave
definida implicitamente:
Nome Pessoa
Idade
Altura
Vnculo Vnculo
N#USP
Curso
9
Herana ... (mltiplos nveis)
Nome Pessoa
Idade
Altura
Vnculo Vnculo
N#Func
Funo
N#USP
Aluno Professor Funcionrio
Curso
Curso Funo
10
Generalizao/Especializao
Especializao:
Resultado da separao de um tipo-entidade de nvel
mais alto (superclasse), formando vrios tipos-entidade
de nvel mais baixo (subclasse).
Procedimento:
Define-se um conjunto de subclasses de um tipo-entidade;
Associam-se atributos adicionais especficos s subclasses
e/ou estabelecem-se tipos-relacionamento adicionais
especficos s subclasses.
11
Especializao
CASO 1:
determinados atributos aplicam-se somente a
alguns conjuntos de entidades especficos;
12
Especializao ...
CASO 2:
existem relacionamentos dos quais participam apenas
entidades de alguns subconjuntos especficos;
Pessoa
Vnculo
13
Generalizao
Pode ser visto como o processo inverso especializao;
Resultado da unio de dois ou mais tipos-entidade de
nvel mais baixo (subclasse), produzindo um tipo-
entidade de nvel mais alto (superclasse);
uma abstrao de um conjunto de entidades.
Procedimento:
Suprimir diferenas entre os tipos-entidade;
Identificar atributos em comum, generalizando-os em uma
superclasse.
14
Generalizao & Especializao
nome_empregado CPF_empregado
EMPREGADO
tipo_empregado
generalizao d especializao
15
Restries
Especializao definida pelo atributo:
as subclasses que participam da hierarquia so
determinadas por uma condio baseada em algum
atributo da superclasse;
exemplo: tipo_empregado (secretria, engenheiro, etc.)
Outras denominaes comuns:
subclasses definidas por predicado;
subclasses definidas por condio.
16
Restrio de Disjuno
Subclasses mutuamente exclusivas:
uma entidade de uma superclasse deve ser membro no
mximo de uma nica subclasse:
d d (disjoint)
17
Restrio de Disjuno ...
Sigla Disciplina
Nome
Tipo
Excluso Mtua:
Tipo Uma disciplina no pode ser
de graduao e de ps ao
mesmo tempo.
Grad. Ps-Gr.
Semestre Nvel
18
Sobreposio ...
Nome Pessoa Sobreposio:
Funo Um funcionrio pode
acumular mais de uma
Funo funo ao mesmo tempo
19
Restrio de Completude
Total - cada entidade de uma superclasse deve
ser membro de alguma subclasse na
especializao;
superclasse
20
Restrio de Totalidade
Sigla Disciplina
Especializao Total:
Nome Qualquer disciplina de
Tipo
pelo menos um tipo:
graduao, ps-graduao,
Tipo
ou especializao.
21
Especializao parcial
Nome Pessoa
Funo
Especializao Parcial:
Um funcionrio pode ser,
Funo
por exemplo, Gerente de
Recursos Humanos.
22
Observaes
Restries de disjuno e de completude so
independentes. Logo, existem as seguintes
possibilidades de hierarquias:
total disjunta;
parcial disjunta;
total com sobreposio;
parcial com sobreposio.
23
Total disjunta
S h disciplinas de
Sigla Disciplina graduao, de ps-graduao,
Nome e de especializao.
Tipo
Tipo
Uma disciplina ou de graduao
ou de ps, ou de especializao.
24
Parcial disjunta
Semestre Nvel
25
Total sobreposta
Nome
Aluno H somente alunos de
Nvel
graduao, de ps-graduao,
e de especializao.
Nvel
Um aluno pode ao mesmo
tempo estar matriculado em
um curso de graduao e em
Grad. Ps-Grad. Especializ.
um curso de especializao.
Ano Mestr./Dout.
Ingresso
26
Parcial sobreposta
Nome Pessoa
Funo
Alm de Vigia, Secretrio e
Bibliotecrio, h outras funes.
Funo
27
Exerccio
Modele uma hierarquia de generalizao/especializao para os tipos-entidade
carro e caminho. Defina as restries de disjuno e de completude.
cdigo-renavam
chassi
nmero_passageiros
CARRO preo
velocidade-mxima
nmero_portas
cdigo-renavam
chassi
CAMINHO capacidade_carga
preo
nmero_eixos
28
Generalizao/Especializao
Uma subclasse pode possuir outras subclasses
especificadas a partir dela;
Herana simples:
cada subclasse participa em apenas um relacionamento
superclasse/subclasse.
Herana mltipla:
cada subclasse pode participar em mais do que um
relacionamento superclasse/subclasse.
Exemplo:
29
CPF_empregado
EMPREGADO
nome_empregado
d
GERENTE
SECRETRIO ENGENHEIRO
formao
idioma tipo_engenheiro
TCNICO MENSALISTA HORISTA
salrio valor_hora
grau_tcnico
ENGENHEIRO_GERENTE adicional
30
CPF_empregado
EMPREGADO
nome_empregado
entidades de
engenheiro_gerente herdam os
tipo_empregado cargo forma_pagamento
d
atributos e os relacionamentos
de empregado, engenheiro,
gerente e mensalista.
d
GERENTE
SECRETRIO ENGENHEIRO
formao
idioma tipo_engenheiro
TCNICO MENSALISTA HORISTA
salrio valor_hora
grau_tcnico
subclasse
ENGENHEIRO_GERENTE adicional
compartilhada
31
Agregao
Tipos-entidades/tipos-relacionamentos agregados
so representados como tipos-entidades/tipos-
relacionamentos comuns;
Pode englobar:
dois tipos-entidades e um tipo-relacionamento;
dois tipos-relacionamentos e um tipo entidade.
Exemplos:
32
Exemplo 1:
ALUNO
CPF_pessoa CGC_univ
nome_pessoa data_ingresso nome_univ
N M
PESSOA ingressa UNIVERSIDADE
M
a agregao aluno
o tipo-entidade est relacionada ao
orienta
aluno composto dos tipo-entidade
tipos-entidade pessoa N professor
e universidade e do
CPF_professor
tipo-relacionamento PROFESSOR
ingressa nome_professor
33
Exemplo 2:
N
EMPREGADO EMPREGADO trabalha
M 1
desenvolve agrega os
tipos-relacionamentos
desenvolve trabalha e controla e o DEPARTAMENTO
tipo-entidade
N departamento 1
M
PROJETO PROJETO controla
34
Exemplo 3:
RG Data CRM
Nome Nome
35
Exemplo 3 ...
Usando RG, CRM e Data possvel identificar cada
consulta univocamente;
RG Data CRM
Nome Nome
36
Exemplo 3 ...
Onde colocar Data ?
Consulta
RG Data CRM
Nome Nome
37
Exemplo 3 ...
Elementos
Componentes
Entidade
Agregada
Consulta (elemento
composto)
Paciente N Atende M Mdico
RG Data CRM
Nome Nome
Relacionamento Atributo da Entidade
Gerador da Agregada
Agregao
38
Exemplo 3 ...
Chave de Consulta: {RG, CRM, Data}
Consulta
RG Data CRM
Nome Nome
39
Exemplo 3 ...
Consulta
M Mdico N
Paciente N Atende
CRM Tem
RG
Data Nome
Nome
Preo
1
Recibo
40
Algumas observaes sobre Agregao
Toda Agregao sempre gerada a partir de
somente um conjunto de relacionamentos;
41
Projeto Lgico de BD
42
Projeto Lgico de BD ...
43
Projeto Lgico de BD ...
Modelar hierarquias de generalizao:
identificar atributos e relacionamentos comuns;
determinar as restries de disjuno e de
completude;
Modelar agregaes;
44
Exerccios
1. Explicar o contedo da modelo apresentado pelo
DER abaixo e sugerir uma alterao que permita
que um mesmo professor possa orientar um
mesmo aluno em diferentes nveis de ps-
graduao.
Nome NUSP
Ttulo
45
2. Considerando o DER abaixo, propor uma
extenso de tal forma que se possa modelar o fato
de que somente algumas entrevistas resultam
numa oferta de emprego.
Candidato N M Empresa
Entrevista
RG CNPJ
Nome Nome
46
3. Elaborar o esquema conceitual para o BD de uma companhia. A
companhia organizada em departamentos. Cada departamento tem
um nome e um nmero. Alm disto, um departamento controla
vrios projetos, cada um dos quais com um nome, um nmero de
identificao e o perodo de tempo no qual deve ser desenvolvido.
Na referida companhia, cada projeto somente pode ser desenvolvido
por um departamento especfico. Existem somente trs tipos de
funcionrios que trabalham na companhia: pesquisador, secretrio e
de limpeza.
Para os pesquisadores, deseja-se armazenar: o nome, o
endereo, o sexo, a data de aniversrio, o salrio e a rea de atuao.
Para os secretrios, deseja-se armazenar: o nome, o endereo, o
sexo, a data de aniversrio, o salrio e o grau de escolaridade. J
para os funcionrios de limpeza, deseja-se armazenar: o nome, o
endereo, o sexo, a data de aniversrio, o salrio, o cargo e a jornada
de trabalho.
47
Exerccio 3 (continuao do enunciado) ...
48
4. Deseja-se criar um BD para uma agncia de turismo, contendo
informaes sobre recursos oferecidos pelas cidades que fazem parte
da programao de turismo da agncia. As informaes a serem
mantidas sobre cada cidade referem-se a hotis, restaurantes e
pontos tursticos.
Sobre os hotis que a cidade possui deseja-se guardar o
cdigo, o nome, o endereo, a categoria (sem estrela, 1 estrela, 2
estrelas, ...), os tipos de quartos que os formam (por exemplo, luxo,
superluxo, ...), o nmero dos quartos e o valor da diria de acordo
com o tipo do quarto.
Sobre cada cidade deve-se armazenar seu nome, seu estado e a
populao. Alm disso, quando uma nova cidade cadastrada no
banco de dados da agncia, um cdigo a ela oferecido.
49
Exerccio 4 (continuao do enunciado) ...
Cada restaurante da cidade possui um cdigo que o identifica,
um nome, um endereo e o tipo de sua categoria (luxo, simples, ...).
Alm disso, um restaurante pode pertencer a um hotel e um hotel
somente pode ser associado a um restaurante.
Diferentes pontos tursticos da cidade esto cadastrados no
sistema: igrejas, casas de show e museus. A agncia de turismo
somente trabalha com estes trs tipos de pontos tursticos. Alm da
descrio e do endereo, igrejas devem possuir como caracterstica a
data e o estilo de construo. J casas de show devem armazenar o
horrio de incio do show (igual para todos os dias da semana) e o
dia de fechamento (apenas um nico dia na semana), alm da
descrio e do seu endereo. Os museus devem armazenar o seu
endereo, descrio, data de fundao e n. de salas. Um museu pode
ter sido fundado por vrios fundadores. Para estes, deve-se
armazenar o seu nome, a data de nascimento e a data da morte, a
nacionalidade e a atividade profissional que desenvolvia. Alm
disso, um mesmo fundador pode ter fundado vrios museus. Quando
qualquer ponto turstico cadastrado no sistema, ele tambm recebe
um cdigo que o identifica. O mesmo vlido para fundadores.
50
Exerccio 4 (continuao do enunciado) ...
51
Material extra Multiplicidade.
Cardinalidade x Multiplicidade:
52
Por este motivo, alguns autores usam os conceitos
de multiplicidades mnimas e mximas:
M N
CE1 CR CE2
(Min, Max) (Min, Max)
53
Vejamos um exemplo:
N 1
Aluno Orienta Professor
(0, 1) (0, N)
54
Para cada CE em um papel do CR indica-se a Quantidade
Mnima e a Quantidade Mxima de instncias de
relacionamento das quais uma entidade pode participar;
Dada uma entidade e1 de CE1, definem-se os nmeros mnimo
e mximo de entidades de CE2 com as quais e1 pode se
relacionar;
Multiplicidade - explora um conjunto de situaes muito mais
ricas semanticamente, englobando os conceitos de
Cardinalidade e de Participao Total.
55
Outro exemplo:
O que fazer se quisermos restringir o relacionamento
de tal forma que um professor oriente pelo menos dois
alunos?
Cardinalidade e a participao total no so suficientes
para representar a informao podemos usar
multiplicidade.
56
Para algumas combinaes de multiplicidade podem existir
combinaes de cardinalidade + restrio de participao
correspondentes. Exemplos:
1 1
CE1 Rel. (0, 1) CE2
(0, 1)
1 N
CE1 (0, N)
Rel. (0, 1) CE2
N M
CE1 Rel. (1, N)
CE2
(0, M)
1 N
CE1 Rel. CE2
(0, N) (1, 1)
57
Diversas outras combinaes de multiplicidades no oferecem
combinaes correspondentes. Exemplos:
(0, M)
CE1 Rel. CE2 Toda entidade de CE1
(2, N) deve estar associada a
ao menos 2 entidades de
CE2
58