Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

<p>Fundamentos de Bancos de Dados – 3aProva</p><p>Prof. Carlos A. Heuser</p><p>Dezembro de 2007</p><p>Duração: 2 horas – Prova com consulta</p><p>Questão 1 (Construção de modelo ER - Peso 3)</p><p>Deseja-se construir um sistema WEB que armazene resultados de alunos em uma</p><p>determinada disciplina. Através de um diagrama entidade-relacionamento, deve</p><p>ser modelada a base de dados que armazena os dados necessários a este sistema. A</p><p>base de dados não deve conter redundância de dados.O modelo ER deve ser repre-</p><p>sentado com a notação vista em aula ou com outra notação de poder de expressão</p><p>equivalente. O modelo deve apresentar, ao menos, entidades, relacionamentos,</p><p>atributos, especializações, identificadores e restrições de cardinalidade.</p><p>A base de dados mantém informações sobre os alunos de uma disciplina. Cada</p><p>aluno é identificado por um número de cartão. Além disso, a base de dados deve</p><p>manter seu nome e sexo.</p><p>Para fazer certos trabalhos, os alunos são organizados em grupos, cada um</p><p>contendo vários alunos. O mesmo grupo de alunos pode fazer vários trabalhos ao</p><p>longo do semestre. Em diferentes tempos, um determinado aluno pode participar</p><p>de diferentes grupos. Cada grupo tem um número que serve para identificá-lo e</p><p>opcionalmente um nome.</p><p>Ao longo do semestre ocorrem várias avaliações. As avaliações são identi-</p><p>ficadas por um número e têm um nome (como "Prova de álgebra relacional"ou</p><p>"Trabalho de modelagem"). Uma avaliação pode ser uma prova ou um trabalho</p><p>em grupo.</p><p>Uma prova ocorre em uma data determinada e é uma avaliação individual, isto</p><p>é, cada aluno recebe uma nota na prova.</p><p>Em um trabalho em grupo, é atribuída uma nota para um grupo de alunos. O</p><p>trabalho em grupo deve ser entregue dentro de um período pré-definido de dias</p><p>(de-até) e pode ser on-line, quando os alunos fazem a entrega através do sistema</p><p>WEB, ou off-line, quando fazem a entrega diretamente ao professor.</p><p>Solução: A solução encontra-se na Figura 1 e está apresentada com a notação do</p><p>Power designer.</p><p>1</p><p>Inheritance_1</p><p>Relationship_1</p><p>Relationship_2</p><p>Relationship_3</p><p>Relationship_4</p><p>Grupo Aluno</p><p>Grupo</p><p>Número do grupo</p><p>Nome do grupo</p><p><pi> I</p><p>VA60</p><p><M></p><p>Identifier_1 <pi></p><p>Aluno</p><p>Número do cartão</p><p>Nome do aluno</p><p>Sexo do aluno</p><p><pi> I</p><p>VA60</p><p>BL</p><p><M></p><p><M></p><p><M></p><p>Identifier_1 <pi></p><p>Nota de prova</p><p>nota na prova I <M></p><p>Nota de trabalho</p><p>nota no trabalho I <M></p><p>Avaliação</p><p>Número da avaliação</p><p>Nome da avaliaçõa</p><p><pi> I</p><p>VA60</p><p><M></p><p><M></p><p>Identifier_1 <pi></p><p>Trabalho em grupo</p><p>data início</p><p>data fim</p><p>tipo</p><p>D</p><p>D</p><p>BL</p><p><M></p><p><M></p><p><M></p><p>Prova</p><p>data da prova <UNDEF> <M></p><p>Figura 1: Modelo conceitual para a questão 1</p><p>Questão 2 (Projeto de base de dados relacional - Peso 2,6)</p><p>Na figura 2, está apresentado um modelo ER parcial do sistema WEB de apro-</p><p>priação de resultados em provas mencionado na questão precedente.</p><p>A notação é a usada em aula com a diferença de que os nomes dos atributos</p><p>estão anotados em letras minúsculas, dentro dos retângulos representativos das</p><p>entidades . Atributos identificadores estão sublinhados.</p><p>A entidade PROVA corresponde às provas armazenadas. A entidade QUESTÃO</p><p>representa questões de cada prova, sendo que o relacionamento SUB-QUESTÃO,</p><p>representa o relacionamento hierárquico entre uma questão e suas sub-questões</p><p>(quando houver). A entidade ALTERNATIVA representa as várias alternativas de</p><p>uma questão ou sub-questão, sendo que a alternativa correta está indicada pelo</p><p>atributo certa. Já a entidade FIGURA contém figuras que podem ser associadas</p><p>a questões.</p><p>Deve ser projetado o esquema (modelo lógico) de uma base de dados relaci-</p><p>onal para o modelo ER em questão. A base de dados deve refletir exatamente</p><p>o especificado no modelo conceitual. O esquema da base de dados relacional</p><p>deve conter os nomes das tabelas, os nomes dos atributos, atributos que formam</p><p>a chave primária e as chaves estrangeiras. Quando houver alternativas de projeto</p><p>dizer que alternativa foi usada. Pode ser usada a notação textual vista em aula para</p><p>representar esquemas relacionais. Solução:</p><p>2</p><p>PROVA</p><p>id</p><p>tempo</p><p>consulta</p><p>QUESTÃO</p><p>no</p><p>texto</p><p>ALTERNATIVA</p><p>no</p><p>texto</p><p>certa</p><p>SUB-</p><p>QUESTÃO</p><p>FIGURA</p><p>no</p><p>figura</p><p>formato</p><p>1</p><p>n</p><p>1</p><p>1</p><p>n</p><p>n</p><p>n n</p><p>Figura 2: Modelo conceitual para a questão 2</p><p>Prova (id_prova, tempo, consulta)</p><p>Questao (id_prova, no_questao, texto,</p><p>no_questao_super_questao)</p><p>id_prova referencia Prova</p><p>(id_prova, no_questao_super_questao)</p><p>referencia Questao</p><p>Alternativa (no_alternativa,id_prova,no_questao,</p><p>texto, certa)</p><p>(id_prova,no_questao) referencia Questao</p><p>Figura (id_figura,figura, formato)</p><p>Figura_Questao (id_prova,no_questao,id_figura)</p><p>(id_prova,no_questao) referencia Questao</p><p>id_figura referencia Figura</p><p>3</p><p>Questão 3 (Engenharia reversa de BD relacional - Peso 2,6)</p><p>Abaixo está apresentado o esquema lógico de uma parte de uma base de dados</p><p>que mantém dados sobre inscritos para um programa de pós-graduação de uma</p><p>universidade.</p><p>Execute um processo de engenharia reversa, construindo o modelo entidade-</p><p>relacionamento correspondente a esta base de dados. O modelo ER deve refletir</p><p>exatamente esta base de dados, contendo entidades, atributos, relacionamentos</p><p>e cardinalidades máximas (quando possível), bem como os identificadores. O</p><p>modelo deve ser construído aplicando as regras apresentadas no livro.</p><p>Para representar o modelo ER use a notação do livro ou da ferramenta CASE</p><p>utilizada no trabalho.</p><p>Candidato (NumeroInscr,NomePess,SexoPess)</p><p>/* tabela com dados dos candidatos inscritos*/</p><p>Questão (NumeroQuestao, TipoQuestao)</p><p>/* tabela com os dados das questões que apareceram</p><p>no exame de ingresso - o campo TipoQuestao assume</p><p>os valores 1 a 3, de acordo com o tipo da</p><p>questão (Matemática, Fundamentos ou Tecnologia)*/</p><p>Resposta (NumeroInscr,NumeroQuestao,Certa)</p><p>(NumeroInscr) referencia Candidato</p><p>(NumeroQuestao) referencia Questão</p><p>/* tabela com a correção das questões -</p><p>o campo Certa contém 1 caso o candidato tenha</p><p>respondido corretamente a questão*/</p><p>Preferencia (NumeroInscr,NoLinha,NoOrient)</p><p>(NumeroInscr) referencia Candidato</p><p>(NoLinha) referencia LinhaPesquisa</p><p>(NoOrient) referencia Orientador</p><p>/* tabela com as preferências dos candidatos,</p><p>indicando qual a linha de pesquisa e qual orientador</p><p>o candidato deseja ter como orientador */</p><p>LinhaPesquisa (NoLinha,NomeLinha)</p><p>/* tabela com dados das linhas de pesquisa*/</p><p>Orientador (NoOrient,NomeOrientador)</p><p>/* tabela com dados dos orientadores*/</p><p>4</p><p>OrientadorLinha (NoLinha,NoOrient)</p><p>(NoLinha) referencia LinhaPesquisa</p><p>(NoOrient) referencia Orientador</p><p>/* tabela que indica quais orientadores podem orientar</p><p>em que cada linha de pesquisa */</p><p>5</p><p>CANDIDATO</p><p>número inscr</p><p>nome</p><p>sexo</p><p>QUESTÃO</p><p>no</p><p>tipo</p><p>ORIENTADOR</p><p>no</p><p>nome</p><p>RESPOSTA</p><p>certa</p><p>LINHA DE PESQUISA</p><p>no</p><p>nome</p><p>PREF</p><p>n</p><p>n</p><p>n</p><p>nn</p><p>n</p><p>n</p><p>Figura 3: Modelo conceitual para a questão 3</p><p>Solução: O modelo conceitual gerado pela engenharia reversa encontra-se na fi-</p><p>gura 3. A entidade Ingresso em curso poderia ser um relacionamento n:n entre</p><p>Aluno e Curso.</p><p>6</p><p>Questão 4 (Normalização - Peso 1,8)</p><p>Considere a tabela abaixo, não necessariamente normalizada, referente à base de</p><p>dados da questão anterior.</p><p>Esta tabela foi obtida a partir de um documento que lista, para cada inscrito:</p><p>1. seu nome;</p><p>2. dados das questões que ele respondeu no exame de ingresso;</p><p>3. suas preferências de orientação.</p><p>Tabela (NumeroInscr,NomePess,</p><p>(NumeroQuestao, TipoQuestao, Certa),</p><p>(NoLinha,NoOrient,</p><p>NomeLinha)</p><p>)</p><p>As dependências funcionais (podendo incluir dependências transitivas) que exis-</p><p>tem nesta tabela são as seguintes:</p><p>• (NumeroInscr)→NomePess</p><p>• (NumeroQuestao)→TipoQuestao</p><p>• (NumeroInscr,NumeroQuestao)→Certa</p><p>• (NoLinha)→NomeLinha</p><p>1. Diga em que forma normal encontra-se a tabela.</p><p>2. Caso a tabela não se encontre na terceira forma normal, mostre a transfor-</p><p>mação da tabela para a terceira forma normal. Mostre cada forma normal</p><p>intermediária, entre aquela em que a tabela se encontra e a terceira forma</p><p>normal.</p><p>7</p><p>Solução:</p><p>1. A tabela não se encontra na 1FN pois contém tabelas aninhadas.</p><p>2. 1FN: (eliminação das tabelas aninhadas)</p><p>Tab1 (NumeroInscr,NomePess)</p><p>Tab2 (NumeroInscr,NumeroQuestao, TipoQuestao, Certa)</p><p>Tab3 (NumeroInscr,NoLinha,NoOrient,</p><p>NomeLinha)</p><p>2FN: (eliminação das dependências funcionais parciais)</p><p>Tab1 (NumeroInscr,NomePess)</p><p>Tab2 (NumeroInscr,NumeroQuestao, Certa)</p><p>Tab2a(NumeroQuestao, TipoQuestao)</p><p>Tab3 (NumeroInscr,NoLinha,NoOrient)</p><p>Tab3a(NoLinha, NomeLinha)</p><p>3FN: (eliminação das dependências funcionais transitivas) =2FN</p><p>8</p>

Mais conteúdos dessa disciplina