Pesquisar este blog

quinta-feira, 22 de novembro de 2012

Trabalho Final de BDI


Trabalho Final de BDI

            Como trabalho final de BDI, deverá ser analisado pelo aluno e seu grupo um sistema qualquer do mundo real, desde que seja, de uma complexidade maior que os exercícios em sala de aula, ou seja, deve ser complexo o suficiente para ter mais de 6(seis) Entidades. Poderá ser utilizado o sistema analisado em APSI pelo grupo, aproveitando a análise e adequando-as aos conceitos do MER de modelagem, mapeamento, normalização e implementação através da linguagem SQL.

            O trabalho deve apresentar os seguintes itens abaixo:

  • ESCOPO: Descrição do sistema analisado, mostrando as suas relações e informações a serem guardadas, bem como todas a restrições e regas existentes para o armazenamento e consulta desses dados.

  • MODELAGEM: Documentação do sistema usando as ferramentas conceituais:

      • DER (Diagrama de Entidade-Relacionamento) do sistema analisado.
      • M-Rel (Modelo Relacional) do sistema analisado, contendo os esquemas das relações e os domínios dos atributos de cada relação.

  • IMPLEMENTAÇÃO: O Banco de Dados criado em qualquer SGBD ou SBD de domínio do aluno. Contendo:

      • Comandos SQL que criaram as tabelas, relacionamentos, atributos, chaves primárias e estrangeiras, bem como triggers, procedures, funções e views necessárias para o funcionamento do banco.

sexta-feira, 9 de novembro de 2012

Normalização


Normalização

1)       Quais são as diretrizes informais para o projeto de esquema de relações? Explique resumidamente cada uma.
R: A primeira diretriz da semântica tem como objetivo projetar um esquema de relação de maneira que seja simples descrever seu significado, a segunda projetar esquemas de relações de maneira que nenhuma anomalia de alteração ocorra em relações, a terceira diretriz diz esta ligada a valores nulos, ela evita colocar atributos em um esquema de relação base cujo valor possa ser null, a quarta diretriz corresponde a tuplas espúrias o objetivo principal é projetar esquemas de relação tal que, quando aplicadas operações JOIN-NATURAIS, os atributos nas condições-joins envolvam atributos que sejam ou chaves primarias ou chaves estrangeiras de maneira a garantir que nenhuma tupla espúria seja gerada. 


2)       Quais são as métricas de qualidade informal para projeto de esquemas de relações? Explique resumidamente cada uma delas.
R: As métricas de qualidade informal são conhecidas como semânticas de atributos, redução de valores redundantes em tuplas, redução de valores nulos em tuplas e não permissão de tuplas espúrias.

Semântica de atributos: Mostra de forma detalhada como interpretar os valores de atributos que estão guardados em uma determinada tuplas.
Redução de valores redundantes em tuplas: Tem como objetivo reduzir valores desnecessários que possam ter nas tuplas.
Redução de valores nulos em tupãs: Se os atributos não forem aplicados as tuplas de relação podem-se ter vários valores nulos isso pode despender o espaço de armazenamento e dificultar o entendimento da operação. 
Tuplas espúrias: Nesse tipo de tuplas pode ocorrer falta de informação correta e o projeto sair ruim, por esse motivo passa a ser invalida.



3)       O que é e para que serve o conceito de dependência funcional? Quais são os tipos de dependência? Explique-os
R: Dependências funcionais são restrições que existem nas relações ela da oportunidade de modificar algo necessário para que o banco de dados seja modelado de forma correta, essa dependência é uma propriedade do significado semântica dos tributos em um esquema de relação R, essa semântica é o modo como os tributos se relacionam para especificar as dependências funcionais envolvidas na relação.


4)       O que é e para que serve normalização de dados relacionais? Quando será utilizada a normalização na maioria das vezes?

R: Na normalização de base é com se fosse uma prevenção para que não haja redundância de informações com objetivo de reorganização de dados, será muito utilizado quando a tabela precisar de chaves estrangeiras para diferenciar dados.


5)       O que são e quantas são as formas formais de relação? Explique-as resumidamente. Para manter eficiência e a simplicidade de processamento em certos casos podemos normalizar as relações até a 3ºFN por que?

R: É uma ligação com a dependência funcional para garantir os dados das diretrizes. São três tipos de forma normal cada uma com sua diferença, a primeira é a (1FN) visa eliminar atributos multivalorados, a segunda (2FN) é quando ela pertence a (1FN) e suas colunas que não são chave primaria dependerem da chave primaria, a (3FN) se já estiver na (2FN) e nenhum dos seus atributos dependerem funcionalmente de atributos não chave.


6)       Dê exemplos de normalizações de uma relação.
R: Tabela normalizada
Atributos não atômicos ou contém tabelas aninhadas
Exemplo: Tabela de alocação de funcionários a projetos
Código do Projeto: 1
Tipo: Desenvolvimento
Descrição: Vagas




Álgebra Relacional - Exercícios


Álgebra Relacional - Exercícios


ð  Seleção

1)       Mostre o conteúdo da relação departamento.
R: σ(DEPARTAMENTO)








        2)    
Mostre os empregados que trabalham no departamento 4.
R: σ NDEP=4 (EMPREGADO)








3)       Mostre a(s) localização(ões) do departamento de pesquisa (5).
R: σ DNUMERO =5(LOCAIS_DPTO)













4)       Mostre o(s) projetos(s) do departamento 4.
R: σ PNUMERO=4 (PROJETO)











5)       Mostre as informações de relação trabalha_em cujo número do projeto igual a 3.
R: σ PNUMERO=3 (TRABALHA_EM)








ð  Projeção

1)       Mostre o número e o nome dos dependentes.
R: π nssemp,nomedependente(DEPENDENTE)












2)       Mostre o nome e a localização dos projetos.
R: π pnome,plocalização(PROJETO)











3)       Mostre o nome do departamento e o código do gerente dos departamentos.
R: π dnome, snner (DEPARTAMENTO)











4)       Mostre o nome e a data de nascimento dos empregados.
R: π pnome, datanasc(EMPREGADO)
















5)       Mostre o nome e o salário dos empregados.
R: π pnome, salário(EMPREGADO)


















ð  Seleção+Projeção

1)       Mostre o código, nome e o salário dos empregados que ganham mais de 2500.






,





2)       Mostre o nome e a localização dos projetos do departamento 5.













3)       Mostre o número do empregado e o número do projeto cujas horas são maiores que 10.












4)       Mostre o nome e o sexo do dependente cujo número do empregado é igual a 123456789.












5)       Mostre o nome, relação e a data do aniversário dos dependentes cujo número do empregado é igual a 333445555.







ð  Junção

1)       Mostre o nome e o salário do empregado e o nome e a relação dos seus dependentes.







2)       Mostre o nome do departamento e o nome e o salário do empregado que é o seu gerente.



3)       Mostre o nome do departamento e a sua localização.





4)       Mostre o nome do projeto, sua localização e o departamento ao qual pertence.










5)       Mostre o nome do empregado e o nome do projeto nos quais eles trabalharam.








ð  Agregação

1)       Mostre a quantidade de empregados do sexo masculino e a quantidade de empregados do sexo feminino.










2)       Mostre a quantidade de dependentes do sexo masculino e a quantidade de dependentes do sexo feminino do empregado cujo número é 123456789.









3)       Mostre o nome e o salário do empregado e a quantidade de dependentes que possui.









4)       Mostre a despesa total de cada departamento com os salários dos empregados.










5)       Mostre a soma total das horas empregadas em cada projeto.