DFD e DER
- Sistema Exemplo: LibraryFree
Escopo
- Desenvolver uma aplicação que permita a um usuário individual, escola ou empresa, montar sua biblioteca e controlar empréstimo e devolução de livros. O sistema gerencia o empréstimo via web integrando a entrega com sistemas de encomendas. Acompanha as devoluções do livro com avaliação de pontualidade, qualidade e condições na entrega.
Requisitos Funcionais
USUÁRIO
Conta
- Cadastrar conta
- Autenticar usuário
- Recuperar senha
- Alterar dados cadastrados
- Desativar conta
Livros
- Pesquisar livros
- Reservar livros
- Solicitar empréstimo
Empréstimo e devolução
- Renovar empréstimo
- Realizar devolução
Extras
- Sugerir livros para aquisição
- Visualizar perfis de outros usuários e bibliotecas
- Visualizar informações do livro
BIBLIOTECA ou PROPRIETÁRIO
Conta
- Cadastrar conta
- Autenticar usuário
- Recuperar senha
- Alterar dados
- Aprovar conta
- Exclur conta
Livros
- Cadastrar livros
- Pesquisar livros (encontrar livro no estoque)
- Alteara dados do livro
- Aprovar empréstimo
- Gerenciar devoluções (talvez cobrar multa)
Devolução
- Confirmar devolução (verificar o prazo e aplicar a cobrança se necessário)
- Avaliar devolução
Extras
- Sugerir livros para aquisição
- Visualizar perfis de outros usuários e bibliotecas
- Visualizar informações do livro
- Enviar ordem de compra para fornecedores
- Gerar Relatórios:
- Usuários em ordem alfabética
- Usuários com pendências
- Usuários por endereço
- Usuários por faixa etária
- Usuários por uso
- Livros em ordem de ISBN
- Livros em ordem alfabética
- Livros por estante
- Livros por autor
- Livros por assunto
- Livros por editora
- Livros por data de aquisição
- Livros por data de entrada
- Empréstimos ativos
- Empréstimos por data
- Empréstimos por usuário
- Empréstimos por livro
- Devoluções por data
- Devoluções por usuários
- Devoluções por condição do livro
Pesquisa (Pedro)
- Normalização: Normalização de dados é o processo formal passo a passo que examina os atributos de uma entidade, com o objetivo de evitar anomalias observadas na inclusão, exclusão e alteração de registros. Normalmente após a aplicação das regras de normalização de dados, algumas tabelas acabam sendo divididas em duas ou mais tabelas, o que no final gera um número maior de tabelas do que o originalmente existente. Este processo causa a simplificação dos atributos de uma tabela, colaborando significativamente para a estabilidade do modelo de dados, reduzindo-se consideravelmente as necessidades de manutenção.
- Objetivos da normalização:
- Minimização de redundâncias e inconsistências;
- Facilidade de manipulações do banco de dados;
- Facilidade de manutenção do sistema de Informação.
- Para aplicar a normalização de dados é necessário considerar a sequência das formas normais, isto é, para aplicar a segunda forma normal por exemplo, é necessário que seja aplicado a primeira forma normal. Da mesma forma, para aplicar a terceira forma normal é necessário que já tenha sido feita a normalização na segunda forma normal.
- Objetivos da normalização:
- 1FN: Uma relação estará na Primeira forma normal 1FN, se e somente se todos os domínios básicos contiverem somente valores atômicos (não contiver grupos repetitivos). Em outras palavras podemos definir que a primeira forma normal não admite repetições ou campos que tenha mais que um valor.
- Procedimentos:
- a) Identificar a chave primária da entidade;
- b) Identificar o grupo repetitivo e removê-lo da entidade;
- c) Criar uma nova entidade com a chave primária da entidade anterior e o grupo repetitivo.
- A chave primária da nova entidade será obtida pela concatenação da chave primária da entidade inicial e a do grupo repetitivo.
- Procedimentos:
- 2FN: Uma tabela está na Segunda Forma Normal 2FN se ela estiver na 1FN e todos os atributos não chave forem totalmente dependentes da chave primária (dependente de toda a chave e não apenas de parte dela). Se o nome do produto já existe na tabela produtos, então não é necessário que ele exista na tabela de produtos. A segunda forma normal trata destas anomalias e evita que valores fiquem em redundância no banco de dados.
- Procedimentos:
- a) Identificar os atributos que não são funcionalmente dependentes de toda a chave primária;
- b) Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles.
- A chave primária da nova entidade será o atributo do qual os atributos do qual os atributos removidos são funcionalmente dependentes.
- Procedimentos:
- 3FN: Uma tabela está na Terceira Forma Normal 3FN se ela estiver na 2FN e se nenhuma coluna não-chave depender de outra coluna não-chave.
- Na terceira forma normal temos de eliminar aqueles campos que podem ser obtidos pela equação de outros campos da mesma tabela.
- Procedimentos:
- a) Identificar todos os atributos que são funcionalmente dependentes de outros atributos não chave;
- b) Removê-los.
- A chave primária da nova entidade será o atributo do qual os atributos removidos são funcionalmente dependentes.
- Exemplos com aplicação das 3 formas: