Teste SIG - MER
Casos: Teste SIG - MER. Pesquise 862.000+ trabalhos acadêmicosPor: Dona • 27/4/2014 • 1.422 Palavras (6 Páginas) • 325 Visualizações
Regras: O teste admite consulta total da documentação. Não são admitidos u uso de portáteis, telemóveis ou outros aparelhos electrónicos. Responda às questões na folha de enunciado no espaço reservado para isso. Caso esse espaço não lhe chegue responda nas costas mas assinale esse facto devidamente
Grupo I (7 valores)
Uma empresa no sector do ramo imobiliário que se dedica à promoção da venda de apartamentos, moradias e terrenos tem Lojas espalhadas por todo o país. Cada loja tem um número de Vendedores associados a ela e apenas a ela ou seja um vendedor não pode ser vendedor em duas lojas distintas. Um, e apenas um, dos vendedores de cada loja é o seu Chefe e representa essa loja perante a administração da empresa imobiliária. Cada loja organiza, a pedido dos Clientes da imobiliária, Visitas programadas a Imoveis (apartamentos, moradias, terrenos, etc) que tem para venda. Cada imóvel está afecto a uma e uma só loja.
Para gerir a informação resultante da sua actividade esta empresa implementou uma Base de Dados (BD) que tem a seguinte estrutura de informação organizada em tabelas:
Tendo em conta as regras de normalização verifique se as tabelas estão na 3FN e se não estiverem altere quais não estão justificando a sua resposta; caso ache que a tabela está inicialmente bem definida mantenha-a como está. Escreva as tabelas na forma NomeTabela (Atributos)<Chave primária>
(Ex: NOTAS(NºAluno,CodDisciplina,DataNota,Nota) < NºAluno,CodDisciplina> ) fazendo as alterações nas mesmas que entender dever fazer. Haverá tabelas que é necessário redefinir mas poderá haver tabelas que estão bem definidas à partida. O atributo ResultadoVisita é um atributo do Tipo Memo onde é colocado texto livre.
2
I.1) (2 valores) – Resolva esta questão para as tabelas FVENDEDOR e FIMOVEIS
A tabela FVENDEDOR está definida como FVENDEDOR(NºVendedor, NomeVendedor, NºLoja, NomeDaLoja). Escolhendo Nº vendedor como chave primária da mesma, e só isso terá sentido, ficaria:
FVENDEDOR(NºVendedor, NomeVendedor, NºLoja, NomeDaLoja) <NºVendedor>
Verifica-se que existe uma dependência transitiva entre NomeDaLoja NºLojaNºVendedor o que fere as regras da 3FN e consequentemente o atributo NomeDaLoja deve deixar de fazer parte desta tabela devendo ficar a mesma na forma:
FVENDEDOR(NºVendedor, NomeVendedor, NºLoja) <NºVendedor>
A Tabela FIMOVEIS está definida como FIMOVEIS(NºImovil, Tipo, Localização, NºLoja, LocalizacaoDaLoja, Estado, DataEstado). Escolhendo NºImovil como chave primária fica:
FIMOVEIS(NºImovil, Tipo, Localização, NºLoja, LocalizacaoDaLoja, Estado, DataEstado) <NºImovil>
Verifica-se que existe uma dependência transitiva entre LocalizaçãoDaLoja NºLojaNªImovil e em consequência o atributo LocalizacaoDaLoja deve deixar de fazer parte da tabela ficando a mesma na forma:
FIMOVEIS(NºImovil, Tipo, Localização, NºLoja, Estado, DataEstado) <NºImovil>
I.2) (2 valores) - Resolva esta questão para as tabelas FCLIENTES e FLOJAS
A tabela FCLIENTES está na forma FCLIENTES(NºCliente, NomeCliente). Definindo NºCliente como chave primária ficará:
FCLIENTES(NºCliente, NomeCliente) <NºCliente> e a tabela está na 3FN pelo que não necessita de ser alterada.
A tabela FLOJAS está definida como FLojas(NºLoja, Localização, ChefeDaLoja, NomeDoChefe). Escolhendo NºLoja como chave primária fica na forma:
FLojas(NºLoja, Localização, ChefeDaLoja, NomeDoChefe) <NºLoja>
Verifica-se uma dependência transitiva entre NomeDoChefeChefeDALojaNºLoja pelo que o atributo NomeDoChefe deve abandonar a tabela por ferir, via essa dependência transitiva, a 3FN. No final deverá ficar:
FLojas(NºLoja, Localização, ChefeDaLoja) <NºLoja>
I.3) (2 valores) Resolva esta questão para a tabela FVISITAS
A tabela FVISITAS está na forma:
FVISITAS(NºCliente, NºVendedor, NºImovil, DataVisita, NomeCliente, NºLoja, ResultadoVisita)
Escolhendo a chave primária composta <NºCliente,NºVendedor,NºImóvil,DataVisita> a tabela ficará na forma:
FVISITAS(NºCliente, NºVendedor, NºImovil, DataVisita, NomeCliente, NºLoja, ResultadoVisita)
<NºCliente,NºVendedor,NºImóvil,DataVisita>
Verifica-se que o atributo NomeCliente depende apenas de NºCliente pelo que ao não depender da totalidade da chave viola a 2FN pelo que deve abandonar esta tabela.
Por outro, em relação NªLoja não só está ligado aos atributos NºImovil e NºVendedor pelo que por esse facto apresenta dependências transitivas (ver tabelas FVENDEDOR e FIMOVEIS) em relação a ambos, como também não depende da totalidade da chave pelo que viola a 2FN e a 3FN. Por estes motivos deve também abandonar a tabela.
Assim a tabela FVISITAS deve ficar na forma:
FVISITAS(NºCliente, NºVendedor, NºImovil, DataVisita, ResultadoVisita)
<NºCliente,NºVendedor,NºImóvil,DataVisita>
3
I.4) (1 valor) – Sabendo que as propriedades do atributo Estado da tabela FIMOVEIS são as que abaixo se apresentam indique se:
a) 1)Ao inserir um novo registo nesta tabela pode não preencher o atributo Estado. Justifique
Não pode porque o seu preenchimento é obrigatório visto Necessário = Sim
b) 2) O atributo Estado pode ser preenchido com o texto “Vendido”. Justifique
Não pode porque só aceita, nas Regras de Validação, “Para Venda” ou “Reservado”
Grupo II (4 valores)
Embora as Tabelas definidas no Grupo I tenham algumas deficiências no que toca às questões da Normalização, a BD foi implementada e os seus utilizadores começaram-na a carregar com dados. Mas nesse processo depararam-se com algumas situações cujo motivo se pretende que justifique:
II.1) (1 valor) Quando se tentou introduzir o registo com NºCliente = 456 obteve-se a mensagem abaixo. Indicada. Essa mensagem
...