Exemplo

Propaganda
Modelagem E-R
Exercícios e Verificação
IME- Instituto Militar de Engenharia
Mini-mundos
Biblioteca
Escola de música
Oficina
Distribuidora de filmes
MCRC - IME/RJ
1
Biblioteca
Sistema de controle e gerenciamento de empréstimos de livros de uma biblioteca
acadêmica: —
A biblioteca dispõe de livros, também denominados títulos. Estes possuem nome,
autores e editoras. Cada título pertence a uma área de conhecimento e possui um
código único de identificação. —
Cada título possui vários exemplares. Cada exemplar possui um código único de
identificação. —
Cada título pode ter vários autores e um mesmo autor pode ter escrito vários
títulos. Um autor possui código, nome, telefone e endereço. — As editoras possuem
código, nome, telefone e endereço. —
As áreas de conhecimento possuem código e uma descrição. —
Usuários, que podem ser alunos, professores ou funcionários, tomam livros
emprestados por uma semana. A data de empréstimo é importante no processo.
Cada usuário possui um código, nome, telefone e endereço —
Cada título possui várias palavras-chave e uma palavra-chave pode estar ligada a
vários títulos. Uma palavra-chave possui código e descrição.
MCRC - IME/RJ
Biblioteca
área
codigo
descricao
(1,1)
associa
Palavra-chave
(1,n)
indexa
(0,n)
(0,n)
título
(1,n)
(1,n)
(1,1)
autoria
disponibiliza
autor
codigo
nome
telefone
endereco
(1,n)
exemplar
codigo
descricao
edita
(1,n)
editora
codigo
nome
telefone
endereco
(1,1)
usuário
codigo
nome
(0,5)
(0,1)
codigo
nome
telefone
endereco
tipo
empresta
codigo
MCRC - IME/RJ
data
2
MCRC - IME/RJ
Considerações
A disponibilização de um exemplar não deveria
envolver o local (estante 15b, por exemplo)?
Professor não teria outros relacionamentos com
título?
Sugerir, avaliar, fixar como livro-consulta?
Se palavra-chave e área de conhecimento têm as
mesmas propriedades pq não generalizá-las?
Formação de código diferente, cardinalidades diferentes nos
relacionamentos...
Alguma outra generalização possível?
Questão avançada: exemplar não deveria “herdar”
os atributos de título?
Mas não se configura como classe específica (herança)
MCRC - IME/RJ
3
Escola de Música
Uma escola de música precisa manter uma base de dados organizada com o
objetivo de prover informações sobre músicos, orquestras, sinfonias e
instrumentos: —
Cada orquestra é catalogada contendo o seu nome, cidade, país e data
correspondentes à sua criação; —
Orquestras executam sinfonias, as mais variadas. Os profundos conhecedores de
música são capazes até de selecionar a orquestra que melhor desempenha uma
determinada sinfonia. De cada uma sinfonia, é possível saber o seu nome, o
compositor e a data de sua criação; —
Orquestras são constituídas de músicos, os mais variados, de acordo com a sua
função dentro da mesma: maestro, flautista, etc. Cada músico é catalogado
contendo: nome do músico, identidade, nacionalidade e data de nascimento. Um
músico só pode pertencer a uma orquestra; —
Músicos tocam sinfonias, porém em alguns casos, alguns músicos podem mudar
de função segundo a sinfonia (por exemplo, um violinista pode virar maestro). A
data em que um músico apresenta uma determinada sinfonia também é
importante no contexto. —
Cada músico pode ser apto a tocar vários instrumentos, mas em cada sinfonia
toca apenas um instrumento, pois depende de sua função na sinfonia.
MCRC - IME/RJ
Escola de Música
Nome
compositor
data_criação
data
instrumento
Id
nome
modelo
(0,n)
(0,n)
(0,n)
sinfonia
apres
função
usa
(0,1)
(1,n)
(0,n)
(0,n)
apto a
(0,n)
id
nome
nacionalida
nascim
(0,n)
músico
(0,1) comp
(20,n)
(0,n)
executa
orquestra
Nome
cidade
país
data_criação
desempenho
MCRC - IME/RJ
4
MCRC - IME/RJ
Considerações
Função poderia ser atributo?
O relac apto a é redundante?
Falta um relac. entre musico e inst.?
MCRC - IME/RJ
5
Oficina Mecânica
Sistema de controle e gerenciamento de execução de ordens de serviço em uma
oficina mecânica: Clientes levam veículos à oficina mecânica para serem
consertados ou para passarem por revisões periódicas. —
Cada veículo é designado a uma equipe de mecânicos que identifica os serviços a
serem executados e preenche uma ordem de serviço (OS) e prevê uma data de
entrega. —
A partir da OS, calcula-se o valor de cada serviço, consultando-se uma tabela de
referência de mão-de-obra. O valor de cada peça necessária à execução do serviço
também é computado. —
O cliente autoriza a execução dos serviços e a mesma equipe responsável pela
avaliação realiza os serviços. Clientes possuem código, nome, endereço e telefone.
Veículos possuem código, placa e descrição. —
Cada mecânico possui código, nome, endereço e especialidade. —
Cada OS possui um número, uma data de emissão, um valor e uma data para
conclusão dos trabalhos. Uma OS pode ser composta de vários ítens (serviços) e
um mesmo serviço pode constar em várias ordens de serviço. Uma OS pode
envolver vários tipos de peças e um mesmo tipo de peça pode ser necessária em
várias ordens de serviço.
MCRC - IME/RJ
Oficina Mecânica
possui
telefone
pessoa
id
nome
endereço
(0,n)
(1,1)
cliente
t,i
(0,n)
orçam
mecânico
(1,n)
(0,n)
especialidad
comp
(1,n)
código
placa
descrição
veículo
(1,1)
num-os
data_entrega
data_emissao
os
(0,n)
comp
(1,n)
equipe
Id_equipe
desc
item
id
descr
valor
t,e
serviço
peça
(0,n)
demanda
(0,n)
MCRC - IME/RJ
6
MCRC - IME/RJ
MCRC - IME/RJ
7
Considerações
Não preciso colocar valor em OS
pois é um valor derivável
Cliente possui um veículo por um
dado período... O veículo pode
voltar à oficina sob outro cliente
A equipe não teria um responsável?
A OS teria um status?
Especificada, Aprovada, Concluída, ...
MCRC - IME/RJ
Distribuidora de filmes
A empresa de distribuição possui vários cinemas, em diversas localidades; —
Cada cinema possui uma identificação única, um nome fantasia, um endereço
completo, incluindo rua, avenida, bairro, município, estado e sua capacidade de
lotação; —
Os filmes podem ser dos mais variados tipos e gêneros; Cada filme é registrado
com um título original, e se for filme estrangeiro, possuirá também o título em
Português, o gênero, sua duração, sua impropriedade e seu país de origem,
informações sobre os atores que compõem seu elenco, e seu diretor. Existirá um
único diretor para cada filme; —
Alguns cinemas apresentam mais de um filme em cartaz, sendo nestes casos,
sessões alternadas com um filme e outro; As sessões possuem horários que
variam de acordo com a duração do filme, havendo sempre um intervalo de
aproximadamente 15 minutos entre elas; —
Os atores de um filme podem, obviamente, atuar em diversos filmes, assim como
o diretor de um filme pode também ser ator neste filme ou ainda mais, ser ator
em outro filme. Um ator possui as seguintes características: um número de
identificação, um nome, uma nacionalidade e uma idade; —
As sessões de cinema devem ter seu público registrado diariamente, para que se
permita a totalização dos assistentes quando o filme sair de cartaz, ou a qualquer
instante;
MCRC - IME/RJ
8
Distribuidora de filmes
id
titulo
genero
duração
Id
localizacao
capacidade
cinema
(0,n)
(0,n)
Filme
estrangeiro
p,e
filme
(0,n)
(1,n)
diretor
tempo
classe
(1,n)
(1,1)
(0,n)
data
feriado
festival
atua
dirige
sessão
horario
publico
Tit-ingles
gênero
Descrição
Impropriedade
País-origem
ator
t,i
id
nome
nacionalid
idade
pessoa
MCRC - IME/RJ
MCRC - IME/RJ
9
Considerações
Não poderia colocar horário como um
atributo identificador de sessão?
Generalizar pessoa não afeta e melhor
organiza o modelo
Seria melhor manter filme estrangeiro
como classe genérica e filme brasileiro
como classe específica?
Revisar os atributos usados em filme e
filme estrangeiro, o que vc mudaria?
MCRC - IME/RJ
Verificação de um Esquema
Não existe um esquema único para
representar uma realidade
Mas há critérios que devem ser
observados
Correção
Completude
Redundância
Aspecto temporal
MCRC - IME/RJ
10
Corretude
Erro sintático:
Não respeitar as regras do modelo ER
• associações entre relacionamentos, ou entre
entidades, diretamente
Erro semântico:
Estabelecer associações incorretas
• atributos em entidades erradas, ou
• uma entidade aparece como atributo em outra
entidade
• Fundir em um único relacionamento entre entidades
A e B, dois relacionamentos diferentes
MCRC - IME/RJ
Completude
Mais difícil de verificar
Verificar as consultas necessárias
Verificar as atualizações necessárias
Apuração do público por município, por cinema, e por sessão
de cada cinema;
Dado um determinado ator, localizar os cinemas onde estão
em cartaz os filmes em que este ator atua;
Em quais cinemas está sendo exibido um determinado gênero
de filme;
Em quais cinemas estão sendo exibidos filmes nacionais.
Cadastrar filmes antes mesmo de ter o plano de sua exibição;
Planejar a exibição de filmes com 1 mês de antecedência;
MCRC - IME/RJ
11
Redundância
Um esquema deve ser mínimo
Não deve conter conceitos redundantes
Relacionamentos redundantes
que podem ser obtidos através da combinação
de outros relacionamentos
Se retirados, não há perda de informação
FABRICA
RESIDE
COMP
DEPTO
REDUNDÂNCIA
MAQUINA
EM USO
MCRC - IME/RJ
Redundância
Atributos redundantes
Atributos que podem ser obtidos por cálculos
sobre outros elementos do esquema
Ex.: tot-emp pode ser obtido contabilizando-se o
número de empregados por departamento, e o
codigo do departamento em empregado pode ser
obtido através do relacionamento lotação
cod-depto
tot-emp
DEPTO
EMPREGADO
cod-emp
cod-depto
LOTAÇÃO
MCRC - IME/RJ
12
Aspecto Temporal
Manter histórico de alterações
Ex.: Na oficina podemos ter que tratar um carro
que passa por vários proprietários
Atributos que mudam
salário
EMPREGADO
EMPREGADO
Qual seria
outra opção?
(1,n)
RECEBE
(1,1)
data
valor
SALARIO
MCRC - IME/RJ
Aspecto Temporal
Relacionamentos que mudam
Adiciona-se um atributo para identificar o
momento de uma instância do relacionamento
Relacionamentos 1:1 ou 1:n, tornam-se n:m
EMPREGADO
EMPREGADO
(1,1)
ALOCAÇÃO
(1,n)
BAIUCA
(1,n)
data
ALOCAÇÃO
Pq precisa de um
identificador no
relacionamento?
(1,n)
BAIUCA
MCRC - IME/RJ
13
Outras considerações
Entidades isoladas
Entidades sem atributo
Será que precisam existir como entidades?
Relacionamentos n-ários
Será que faltam relacionamentos?
Será que deixamos de identificá-los?
Restrições
Que outras restrições precisamos explicitar
que o modelo ER não permitiu?
MCRC - IME/RJ
14
Download