mapeamento entre o modelo conceptual e o modelo...
TRANSCRIPT
TGD/JLB © 2007-2008
SI – 2007-2008 1
Mapeamento entre o Modelo Conceptual e o Modelo Relacional
• Conversão de Classes• Conversão de Associações e Agregações • Conversão de Generalizações
3. Modelação Conceptual de Classes
TGD/JLB © 2007-2008
SI – 2007-2008 2
Conversão de Classes
Cada classe dá origem a uma tabela
Motorista
códigoNaEmpresanomePróprioapelido
Motorista
#motorista códigoNaEmpresa nomePróprio apelido1 DV07 Jorge Sampaio3 J007 Maria Branca4 P235 José Lami5 Y666 Ana Chaves
TGD/JLB © 2007-2008
SI – 2007-2008 3
Conversão de Associações e Agregações
• A implementação de uma associação entre duas ou mais classes num SGBDr pode ou não necessitar de uma tabela independente das tabelas correspondentes a essas classes.
De seguida apresentam-se regras de conversão para os principais tipos de associações utilizadas, havendo normalmente várias opções de implementação, umas mais recomendadas do que outras.
• As regras de conversão para agregações são idênticas às das associações com a mesma multiplicidade, pelo que não se apresentam exemplos.
TGD/JLB © 2007-2008
SI – 2007-2008 4
Conversão de Associações Binárias
EspecificaçãoDeServiço
horaPrevistaDePartidaduraçãoPrevista
ContratoDeServiço
tipoDeTarifainclui
ContratoDeServiço
#contratoDeServiço tipoDeTarifa #especificaçãoDeServiçoIncluída1 Alfa 12 Beta 54 Beta 48 Gama 3
…
EspecificaçãoDeServiço
#especificaçãoDeServiço horaPrevistaDePartida duraçãoPrevista1 10:00 2:443 15:00 3:234 10:00 5:445 23:23 3:30
…
TGD/JLB © 2007-2008
SI – 2007-2008 5
ContratoDeServiço
#contratoDeServiço tipoDeTarifa #especificaçãoDeServiço horaPrevistaDePartida duraçãoPrevista1 Alfa 1 10:00 2:442 Beta 5 23:23 3:304 Beta 4 10:00 5:448 Gama 3 15:00 3:23
…
Opção de conversão não recomendada
EspecificaçãoDeServiço
horaPrevistaDePartidaduraçãoPrevista
ContratoDeServiço
tipoDeTarifainclui
Porquê?
Conversão de Associações Binárias
TGD/JLB © 2007-2008
SI – 2007-2008 6
Conversão de Associações Binárias
EspecificaçãoDeServiço
horaPrevistaDePartidaduraçãoPrevista
ContratoDeServiço
tipoDeTarifainclui
ContratoDeServiço
#contratoDeServiço tipoDeTarifa1 Alfa2 Beta4 Beta8 Gama
…
EspecificaçãoDeServiço
#especificaçãoDeServiço horaPrevistaDePartida duraçãoPrevista #contrato de serviço1 10:00 02:44 13 15:00 03:23 84 10:00 05:44 45 23:23 03:30 2
…
Opção de conversão não recomendada
TGD/JLB © 2007-2008
SI – 2007-2008 8
Conversão de Associações Binárias
administra
Banco
nomeDoBanco {CC3}siglaDoBanco {CC2}códigoSWIFT {CC1}
ContaBancária
númeroDeConta {CC1}tipoDeContalimiteLevantamento
Banco
#banco nomeDoBanco siglaDoBanco códigoSWIFT22 Banco Português do Atlântico Atlântico 33445533 Banco Comercial Português BCP 77890734 Caixa Geral de Depósitos CGD 333333
ContaBancária
#contaBancária númeroDeConta tipoDeConta limiteLevantamento #bancoQueAdministra910988876 382-98989-210 O 200 34910988878 12120009-32 O 100 34910988880 AA23347800 O 50 22910988881 334-00899-230 H 34
TGD/JLB © 2007-2008
SI – 2007-2008 9
Conversão de Associações Binárias
Qual a diferença em termos de tabelas relacionais?
TGD/JLB © 2007-2008
SI – 2007-2008 10
M otoris ta
#motorista códigoNaEmpresa nomePróprio apelido
…
Conversão de Associações BináriasViatura
matrículamarcamodelocilindradapotência
podeConduzir
Motorista
códigoNaEmpresanomePróprioapelido
Motorista_podeConduzir_Viatura
#motorista #viatura
…
Viatura
#viatura matrícula marca modelo cilindrada potência
…
TGD/JLB © 2007-2008
SI – 2007-2008 14
classificação
recomendaLivroParaCurso
Curso
códigoCurso
Docente
siglaDocente
Livro
códigoISBN
Conversão de Associações ternárias
Docente
#docente siglaDocente
…
Curso
#curso códigoCurso
…
Livro
#livro códigoISBN
…
RecomendaLivroParaCurso
#docente #curso #livro classificação7 33 1 187 33 2 157 33 3 77 22 1 77 22 3 209 33 1 159 33 3 12
…
TGD/JLB © 2007-2008
SI – 2007-2008 15
Engenheiro Projecto Livro Notas1 alfa 11011 beta 11022 alfa 21012 beta 21023 delta 11011 delta 2102
Chaves candidatas: (Engenheiro, Projecto)(Engenherio, Livro Notas)(Projecto, Livro Notas)
Conversão de Associações ternárias
TGD/JLB © 2007-2008
SI – 2007-2008 16
Estagiário Projecto Supervisor101 alfa 1101102 alfa 1101102 beta 2101103 beta 2102101 delta 3101104 delta 3101
Chaves candidatas: (Estagiário, Projecto)(Estagiário, Supervisor)
Conversão de Associações ternárias
TGD/JLB © 2007-2008
SI – 2007-2008 17
Funcionário Projecto Local1101 alfa Porto1101 alfa Lisboa2101 beta Lisboa2102 beta Lisboa3101 delta Porto3101 gama Porto
Chaves candidatas: (Funcionário, Local)
Conversão de Associações ternárias
TGD/JLB © 2007-2008
SI – 2007-2008 18
Conversão de Generalizações Exclusivas
Viatura
matrículamarcamodelocilindradapotência
classeDaViatura
Pesado
nEixos
Reboque
nEixostipoAtrelado
Ligeiro
nPassageiros
Viatura
#viatura matrícula marca modelo cilindrada potência classeDaViatura12 12-12-TR Volvo Z707 2002 250 Ligeiro13 13-44-TR Volvo Z704 2002 250 Ligeiro77 22-98-ZR Volvo P4 8000 400 Pesado78 22-99-ZR Volvo X700 2002 200 Ligeiro79 22-12-ZZ Volvo P4 8000 500 Pesado
117 22-12-ZI Renault XPTO Reboque
Ligeiro
#viaturaLigeiro nPassageiros12 513 478 2
…
Pesado
#viaturaPesado neixos77 879 8
116 12…
Reboque
#viaturaReboque neixos tipoAtrelado101 8 Articulado102 8 Articulado117 12 Longo
…
TGD/JLB © 2007-2008
SI – 2007-2008 19
Conversão de Generalizações Exclusivas
Viatura
matrículamarcamodelocilindradapotência
classeDaViatura
Pesado
nEixos
Reboque
nEixostipoAtrelado
Ligeiro
nPassageiros
Viatura
#viatura matrícula marca modelo cilindrada potência classeDaViatura neixos tipoAtrelado nPassageiros12 12-12-TR Volvo Z707 2002 250 Ligeiro 413 13-44-TR Volvo Z704 2002 250 Ligeiro 577 22-98-ZR Volvo P4 8000 400 Pesado 878 22-99-ZR Volvo X700 2002 200 Ligeiro 279 22-12-ZZ Volvo P4 8000 500 Pesado 8
…
Opção de conversão menos recomendada
Porquê?
TGD/JLB © 2007-2008
SI – 2007-2008 20
Estudante
podeSer
Trabalhador DirigenteAssociativo DirigenteSindical Militar
Conversão de Generalizações Inclusivas
Estatutos_Estudante
#estudante podeSer1 Trabalhador1 Militar3 Dirigente Associativo3 Militar5 Militar
…
Trabalhador
#estudanteTrabalhador
178
…
DirigenteAssociativo
#estudanteDirigenteAssociativo
31519
…
DirigenteSindical
#estudanteDirigenteSindical
101145
…
Militar
#estudanteMilitar
135
…
Estudante
#estudante Nome1 João
…
TGD/JLB © 2007-2008
SI – 2007-2008 21
Polygon
HexagonTriangle Rectangle
Person
Head Leg
Não confundir!
Elevator
Express Service
Window
TitleBar ScrollBar Border
TGD/JLB © 2007-2008
SI – 2007-2008 22
M o to ris ta
có d ig o N a E m p re s an o m e P ró p rioa p e lid oo u tro s A p e lid o s
sa lá rio M e n s a lb o n u s A n u a l
V ia tu ra
m a tríc u lam a rcam o d e loc ilin d ra d ap o tê n c ia
p o d e C o n d u z ir
m a trícu lac o n d u to r
c la ss e D a V ia tu ra
E s p e c ific a ç ã o D e S e rv iç o
h o ra P re v is ta D e P a rtid ad u ra ç ã o P re v is ta
P e rió d ic o
fre q u ê n c ia P re v is tad a ta P re v is ta D e In íc iod a ta P re v is ta D e F im
O c a s io n a l
d a ta P re v is ta D e R e a liza ç ã o
re g u la rid a d e D o S e rv iç o
C o n tra to D e S e rv iç o
tip o D e T a rifa
D e p ó s ito D e V ia tu ra# D e p ó s ito D e V ia tu ra
d e p ó s ito B a s e
S e rv iç o
d a ta D e R e a liz a ç ã oh o ra D e P a rtid ad u ra çã o
C lie n te
d e s ig n a ç ã o S o c ia l$ L im ite D e C ré d ito
P e rc u rs o
n o m e
T ra je c to
o rig e md e s tin od is tâ n c ia
{o rd e n a d o }
# T ra je c to
é F o rm a d o P o r
P e s a d o
n E ixo s
R e b o q u e
n E ixo stip o A tre la d o
L ig e iro
n P a s sa g e iro s
in c lu i d á O rig e m
é R e a liz a d o N o
te m O rig e m te m D e s tin o
é P re v is to N o
P e s s o aV e r M o d e lo P e s so a
n e g o c e ia
p o d e P e rte n c e rA
é A s se g u ra d o P o r
u tiliz a
TGD/JLB © 2007-2008
SI – 2007-2008 23
Um empresário de Enoturismo pretende implementar um SI para manter a informação relativa às diversas quintas. De cada uma das quintas é necessário saber o seu nome, morada, número de telefone, email e região onde se situa. Actualmente há duas quintas na região do Douro e uma no Alentejo mas o negócio está em franca expansão. É também considerado importante saber a distância entre as diferentes quintas e o tempo estimado de deslocação. Cada quinta disponibiliza quartos para reserva. De cada quarto é necessário saber a designação, o número de ocupantes máximo, e o número da extensão de telefone. É ainda importante saber as características de cada quarto, isto é, se tem televisão, banheira ou chuveiro, ar condicionado, etc. O preço de um quarto depende da época do ano da estadia. Cada quinta disponibiliza equipamento para os visitantes, por exemplo, piscina, campo de ténis, mesa de bilhar, etc. Para cada tipo de equipamento é necessário definir o preço de utilização (que é o mesmo para todas as quintas), no entanto, alguns são de utilização gratuita. Além disso, são organizadas actividades para os visitantes, como por exemplo, piqueniques, passeios de barco, visitas guiadas à propriedade. Cada tipo de actividade pode ser oferecida nas diferentes quintas, sendo necessário saber o preço por pessoa a que cada quinta propõe a actividade.A principal actividade das quintas é a produção de vinhos de mesa. De cada vinho importa saber em que quinta foi produzido, o nome, ano de produção, uma descrição das suas principais características, o seu teor alcoólico, o preço de venda ao público, a quantidade produzida (em número de garrafas). Éimportante saber a partir de que castas (por exemplo, Sousão, Tinta Roriz ou Touriga Franca) foi cada vinho produzido e as percentagens correspondentes.É ainda necessário manter um registo do pessoal (nome, email e telemóvel) que trabalha nas diferentes quintas e as respectivas funções. Em cada quinta há diversas funções que tem de ser realizadas, como por exemplo realizar uma visita guiada ou exercer as funções de enólogo. Cada elemento do pessoal pode exercer mais do que uma função em cada quinta. Por exemplo, um enólogo pode ser responsável pela produção de duas quintas e além disso ser responsável por conduzir as provas em várias quintas.
TGD/JLB © 2007-2008
SI – 2007-2008 24
-Nome-Morada-Telefone-Email
Quintas
-Nome-Num_ocupantes-Telefone
Quartos
-DesignaçãoCaracterísticas
-DesignaçãoÉpocas Ano
-Designação-Descrição
Actividades
-Nome-Ano-Descrição-Teor alcoólico-Produção-Preço
Vinhos-Designação-Descrição
Castas
-DesignaçãoRegiões
-Designação-Descrição-Preço aluguer
Equipamento
-Nome-Email-Telemóvel
Pessoal
-DesignaçãoFunções
-Preço
-Distância-Tempo Desl.
-%
-Preço
TGD/JLB © 2007-2008
SI – 2007-2008 25
Conclusões
Fase prévia: Identificar e estudar todas as fontes relevantes de conhecimento sobre o sistema, com o objectivo de tipificar os utilizadores e descrever exaustivamente os casos de utilização. Elaborar descrições do contexto e do problema, bem como maquetas de baixa resolução das principais interfaces.
Fase de Modelação de Classes: Classes, Associações, etc.
Fase seguinte: Traduzir o modelo de classes para o modelo do sistema informático mais apropriado a utilizar, por exemplo, obtendo o esquema relacional no caso de se perspectivar a implementação com apoio num SGBDr.