Você está na página 1de 36

'

Projeto L
ogico de Bancos de Dados

&

'

Projeto de Bancos de Dados

Modelos de Dados
Conceituais ou de Alto Nvel : Modelo ER,Modelos
Sematicos,OMT Class Diagram
De representacao ou de implementacao
Orientados `a Objetos: O2, Objeto-Relacional
Orientados `a Tupla: Relacional
Fsico ou de Baixo Nvel
Metodos de acesso: ISAM etc.
API: B-Trive etc.
&

'

Projeto - Vis
ao Geral

Mini-Mundo

Anlise de
Requisitos
Requisitos Funcionais
Anlise Funcional
Especificao das Transaes
em alto nvel

Requisitos de BD
Projeto Conceitual
Esquema Conceitual em
um modelo de dados de alto nvel

Independente de SGBD
Projeto Lgico
Esquema Lgico
em um modelo de nvel lgico

Especfico para um SGBD


Projeto de Aplicaes

Projeto Fsico

Implementaes

Esquema Fsco
para um SGBD especfico

Programas

&

'

Projeto L
ogico

Mapear esquemas conceituais para esquemas l


ogicos

Modelos conceituais: ER, EER, UML Class Diagram

Modelos logico: Relacional, Objeto-Relacional, Hierarquico

&

'

Projeto L
ogico - Objetivos

Implementar em um SGBD especfico o projeto conceitual, o


qual, supoe-se, captura corretamente os requisitos da aplicacao.

Mapeamento: Representar as construcoes do esquema


conceitual usando construcoes do modelo logico.

Manter requisitos originais...nem sempre e possvel

&

'

Projeto L
ogico - Lacuna Sem
antica

Diferenca de poder de expressividade entre os modelos do nvel


conceitual e o do nvel logico.

Nem sempre e possvel garantir todos os requisitos do esquema


conceitual no esquema logico.

Em alguns casos, o custo do mapeamento nao e compensador,


mesmo sendo possvel.
Exemplo: mapeamento de herancas
&

'

Projeto L
ogico - Principais Tarefas

Mapeamento de Tipos de Entidade


Mapeamento de Tipos Relacionamentos
Mapeamento de Especializacoes/Generalizacoes
Geracao de restricoes de integridade
Definicao de esquemas externos via visoes (opcional)
&

'

Passo 1 : Tipos de Entidade

Para cada tipo de entidade regular E no esquema ER, criar uma relac
ao R
que inclui todos os atributos simples de E
Com relac
ao aos atributos compostos, incluir somente os atributos
simples em R
Escolher um dos atributos chave de E com chave prim
aria de R.

Exemplo: Mapeamento dos tipos de entidade EMPLOYEE, DEPARTMENT e PROJECT

&

'

Passo 2 : Tipos de Entidade Fraca


Para cada tipo de entidade fraca W no esquema ER, criar uma relaca
o R,
e incluir todos os atributos simples (ou todos os componentes simples dos
atributos compostos) de W como atributos de R
Para cada tipo de entidade E dono de W , tal que P
e a relac
ao que
representa E e K a chave prim
aria de P, incluir os atributos de K em R e
definir com eles uma chave estrangeira em R referenciando P
aria de R a combinaca
o das chaves prim
arias dos
Definir como chave prim
donos e da chave parcial de W, se houver
Este passo resolve o mapeamento de tipos de relacionamento que
envolvem entidades fracas

Exemplo: Mapeamento do tipo de entidade DEPENDENT

&

'

Passo 3 : Tipos de Relacionamento 1:1


Para cada tipo de relacionamento bin
ario 1:1 R no esquema ER,
identificar as relaco
es S e T que correspondem aos tipos de entidade
participantes de R. Escolher uma das relac
oes, digamos S, e incluir como
chave estrangeira em S a chave prim
aria de T
Incluir todos os atributos simples de R como atributos de S
Preferencialmente, o participante escolhido deve ser aquele com
participaca
o total no tipo de relacionamento
o total e se n
ao
Alternativamente, se os dois participantes tem participaca
participam de outros tipos de relacionamento, pode-se representar os dois
tipos de entidade e o tipo de relacionamento na mesma relac
ao

Exemplo: Mapeamento do tipo de relacionamento MANAGES entre EMPLOYEE e


MANAGES

&

'

Passo 4 : Tipos de Relacionamento 1:N


Para cada tipo de relacionamento bin
ario 1:N R no esquema ER, que n
ao
envolva entidade fraca, identificar a relaca
o S que corresponde ao tipo de
entidade participante de R que est
a no lado N
Incluir como chave estrangeira de S a chave prim
aria da relac
ao T que
representa o outro tipo de entidade participante de R
Incluir todos os atributos simples de R como atributos de S
Preferencialmente, o participante escolhido deve ser aquele com
participaca
o total no tipo de relacionamento
Alternativamente, se os dois participantes tem participaca
o total e se n
ao
participam de outros tipos de relacionamento, pode-se representar os dois
tipos de entidade e o tipo de relacionamento na mesma relac
ao

Exemplo: Mapeamento do tipo de relacionamento WORKS FOR, CONTROLS e


SUPERVISION

&

'

Passo 5: Tipos de Relacionamento M:N


Para cada tipo de relacionamento bin
ario M:N R no esquema ER, criar
uma nova relac
ao S para representar R
Incluir como chaves estrangeiras de S as chaves prim
arias das relaco
es
que representam os tipos de entidade participantes de R
Definir a chave prim
aria de S como sendo a combinaca
o destas chaves
estrangeiras
Incluir todos os atributos simples, ou atributos componentes simples de
atributos compostos, de R como atributos de S
Note que poderiamos representar da mesma maneira tipos de
relacionamento 1:1 e 1:N

Exemplo: Mapeamento do tipo de relacionamento WORKS ON

&

'

Passo 6: Atributos Multivalorados

Para cada atributo multivalorado A, criar uma nova relac


ao R que inclui
um atributo correspondente a A
Definir como chave estrangeira de R a chave prim
aria K da relac
ao que
representa o tipo entidade para o qual o atributo A est
a definido
aria de A
e composta pelo atributo A mais os atributos da
A chave prim
chave K
Se A
e tamb
em um atributo composto, incluir somente seus componentes

Exemplo: Mapeamento do atributo DLOCATION do tipo de entidade DEPARTMENT

&

'

Passo 7: Tipos de Relacionamento N


ao-Bin
arios
Para cada tipo de relacionamento R n-
ario, sendo n> 2, criar uma nova
relac
ao S para representar R
arias das relaco
es
Incluir como chaves estrangeiras em S as chaves prim
que representam os tipos de entidade participantes
Incluir todos os atributos simples, ou atributos componentes simples de
atributos compostos, de R como atributos de S
A chave prim
aria de S
e geralmente composta pela combinaca
o de todas
as chaves estrangeiras que referenciam as relac
oes que representam os
tipos de entidade participantes
aria de S pode ser composta somente pela chave estrangeira
A chave prim
que referencia a relaca
o que representa o tipo de entidade que participa
com cardinalidade 1 em R

Exemplo: Tipo de relacionamento SUPPLY entre SUPLIER, PROJECT e PART

&

'

Relacionamentos Tern
arios

Sala

Ocorre

Horrio

?
Atividade
Quantas Atividades podem ser alocadas em uma mesma Sala no mesmo
Hor
ario?
ario?
Em quantas Salas uma mesma Atividade pode ocorrer no mesmo Hor
Em quantos Hor
arios uma mesma Atividade pode ocorrer na mesma Sala?

&

'

Relacionamentos Tern
arios

1
Sala

1
Ocorre

Horrio

Atividade

Occorre

&

NumSala

OrdemHor

NomeAtv

2010

Palesta A

2010

Palestra B

2010

Palestra A

2011

Palestra A

'

Relacionamentos Tern
arios

1
Sala

1
Ocorre

Horrio

Atividade

Occorre

&

NumSala

OrdemHor

NomeAtv

2010

Palesta A

2010

Palestra B

2010

Palestra A

2011

Palestra A

'

Passo 8: Especializac
oes/Generalizaco
es

Restric
oes
Partic
ao da super classe
Disjunc
ao das subclasses
Opc
oes de mapeamento
1-para-1: uma tabela diferente p/ a super classe e para cada subclasse
Otimizado: uma mesma tabela p/ super classe e subclasses
Herancas m
ultiplas

&

'

Subclasses com Parti


c
ao e Disjunc
ao

&

'

Subclasses sem Parti


c
ao e com Disjunc
ao

&

'

Subclasses com Parti


c
ao e sem Disjunc
ao

&

'

Subclasses sem Parti


c
ao e sem Disjunc
ao

&

'

Grupos de Sub-classes

&

'

Sem Parti
c
ao e Sem Disjunc
ao - 1 para 1

&

'

Com Disjunc
ao e Sem Parti
c
ao - 1 para 1

&

'

Com Parti
c
ao e Sem Disjunc
ao - 1 para 1

&

'

Com Parti
c
ao e Com Disjunc
ao - 1 para 1

&

'

Mapeamento de Herancas: Otimizado

Atributos discriminantes: Indicam a pertinencia `a uma


sub-classe
Todas as instancias das sub-classe tem um valor determinado
para o atributo
Nativo X Imposto
Caracterstico X Compartilhado

&

'

Atributo Discriminante Imposto

&

'

Sem Partic
ao e Sem Disjunc
ao - Otimizado

&

'

Sem Parti
c
ao e Com Disjunc
ao - Otimizado

&

'

Com Partic
ao e Sem Disjunc
ao - Otimizado

&

'

Com Partic
ao e Com Disjunc
ao - Otimizado

&

'

Otimizado

&

'

Otimizado

&

'

Otimizado

&

Você também pode gostar