Questão nº 64
Questão de Análise de Sistemas · CESGRANRIO BNDES 01/2024 (nº 64)
Considere que um dos estados do Brasil resolveu executar obras de infraestrutura em um de seus principais rios. Esse rio percorre um trajeto desde a serra até o mar, passando por 15 municípios desse estado. Todo o percurso do rio foi segmentado em trechos que recebem as obras. Cada trecho pode ter uma ou mais obras, uma obra é realizada em apenas um trecho e em apenas um município. As obras em questão podem demorar de seis meses a dois anos. Mensalmente, todas as obras são avaliadas quanto ao seu valor executado (no mês) comparado ao respectivo valor orçado (para despesas no mesmo mês). Foram criadas quatro tabelas segundo o modelo relacional de dados (as chaves primárias estão sublinhadas; as chaves estrangeiras estão indicadas pelo sinal @ no início do nome do atributo):
OBRA (ID-obra, @município, @trecho, @mês, valor-orçado, valor-executado)
MUNICÍPIO (ID-município, nome, quantidade-habitantes, IDH)
TRECHO (ID-trecho, extensão-em-km)
TEMPO (ID-mês, mês-calendário, ano-calendário)
Considere ainda os domínios de alguns atributos:
MUNICÍPIO.quantidade-habitantes [1.000,10.000.000]
TRECHO.extensão-em-km [10,1.000]
TEMPO.mês-calendário [1,12]
Por fim, considere as seguintes dependências funcionais (em que a notação A → B indica que A determina B):
ID-município → quantidade-habitantes
nome → IDH
O modelo de dados apresentado com quatro tabelas, que implementa um modelo dimensional,
- Aestá incorreto pois OBRA.mês deveria apontar para TEMPO.mês-calendário.
- Bnão permite o drill down por município para os valores executado e orçado.
- Cpossui a tabela TRECHO que representa uma dimensão não aditiva.
- Dpossui uma tabela fato (OBRA). (alternativa correta)
- Eé do tipo floco de neve.
Resposta comentada
Gabarito Alternativa D
Conceito-chave: Em um modelo dimensional, temos tabelas fato (que guardam medidas numéricas, como valores orçados e executados, e que mudam a cada evento) e tabelas dimensão (que descrevem como podemos filtrar/agrupar essas medidas, como município, trecho e tempo). A tabela OBRA é a fato, pois registra as métricas (valor-orçado, valor-executado) associadas a cada combinação de chaves estrangeiras.
- (A) Incorreta: A chave estrangeira
OBRA.mêsaponta paraTEMPO.ID-mês(a chave primária), não paraTEMPO.mês-calendário(que é apenas um atributo descritivo). A armadilha aqui é confundir o atributo de negócio (mês-calendário) com a chave técnica da dimensão. - (B) Incorreta: O modelo permite drill down por município, pois
OBRApossui a chave estrangeira@município, que se relaciona comMUNICÍPIO(dimensão). Basta agrupar os valores deOBRAporMUNICÍPIO.nome. - (C) Incorreta: A tabela
TRECHOé uma dimensão normal (com atributo descritivoextensão-em-km). O termo "não aditiva" se aplica a medidas (fatos), não a dimensões. A armadilha é usar jargão técnico incorretamente. - (D) Correta: A tabela
OBRAé a tabela fato do modelo, pois contém as medidas (valor-orçado e valor-executado) que são avaliadas mensalmente, e suas chaves estrangeiras (@município,@trecho,@mês) conectam às dimensões. É exatamente o papel de uma fato em um esquema dimensional. - (E) Incorreta: O modelo é do tipo estrela, pois a tabela fato
OBRAse conecta diretamente a três dimensões (MUNICÍPIO,TRECHO,TEMPO), sem hierarquias normalizadas em outras tabelas. O floco de neve exigiria, por exemplo, queMUNICÍPIOtivesse uma FK para uma tabelaESTADO.
Fonte: CESGRANRIO BNDES 01/2024 Analista - Análise de Sistemas (Desenvolvimento) (Caderno Prova 3). Reproduzida para fins de estudo.