1. Visão do Sistema

Propaganda
Projeto de Banco de Dados
DIM0434
2010.2
RESALL
Relatório Final
Caio
Eduardo
Leonardo
Teresa
Histórico de Revisões
Data
<data
mudança>
da
Versão
1.0
1.1
Descrição
<Descrição
alteração>
da
Autor
<Autor(es)
alteração>
da
1.
Visão do Sistema
1.1.
Descrição da aplicação
O RESALL(Resources All) é uma aplicação que foi desenvolvida por um grupo de alunos por
do 4º período do curso de Bacharelado em Ciência da Computação pela Universidade Federal
do Rio Grande do Norte (UFRN).
A aplicação foi idealizada com base na dificuldade em administrar os recursos que são
disponibilizados à professores pelo departamento de Informática e Matemática Aplicada,
conhecido como DIMAP, localizado na UFRN. Esses recursos englobam materiais que,
normalmente, auxiliam à didática de aula, como por exemplo, um Datashow, a reserva da
própria sala de aula, um notebook, dentre outros.
O problema abordado, no qual foi baseado o desenvolvimento do sistema, vai de encontro a
tentar minimizar possíveis desorganizações na forma com que os recursos são reservados, e
também sendo um meio pelo qual o professor e a secretaria, que gerencia de fato os materiais,
possam manter comunicação a certa do estado do recurso, por exemplo, agilizando eventuais
procedimentos. Procedimentos estes que pode estar relacionados a dificuldade em reservar
recursos, escassez de recursos, falhas que o recurso pode apresentar e que devem ser
manifestadas a secretaria, dentre outras dificuldades.
Essa aplicação, portanto, tem o propósito de ser uma forma virtual de gerenciar recursos, a
fim de facilitar os mecanismos de empréstimo e devolução dos mesmos.
O RESALL é um sistema Web desenvolvido em Java, usando o JDBC para o
desenvolvimento do banco de dados objeto-relacional, e a tecnologia de JSP (usando a API
Servlets) para interação com o usuário.
Sobre o RESALL foi desenvolvido um banco de dados. O BD utilizado foi projetado de forma
a manter dados sobre os usuários cadastrados, reservas realizadas, recursos, penalidades
atribuídas a determinados usuários, dados sobre quais recursos estão em manutenção,
cadastro de reportes realizados mediante defeito no recurso e um log que registrará todos os
acessos realizados no banco.
O RESALL engloba possibilidades de cadastrar usuários, que podem realizar reservas,
cadastrar recursos, registrar reserva, visualização possibilidades de reserva, visualização de
penalidades do usuário e outras ações. De modo geral, o sistema possui um nível de
permissão, que restringe ao(s) administrador(es) poder(em) realizar cadastros e remoção de
dados do BD. Abaixo uma tabela com as funcionalidades propostas pelo sistema.
Crie um texto que responda às seguintes perguntas de maneira precisa:
Qual o problema que você quer resolver?
Qual o contexto do seu problema?
Quem é afetado com o problema?
Que conseqüências tem o problema?
Que solução seu sistema propõe?
Qual o propósito de sua solução?
Uma solução para o problema trará que benefícios?
Por fim, descreva as funcionalidades do seu sistema. Se você fosse vender este produto para
alguém, como você apresentaria ele para alguém em forma de texto e figuras? Faça aqui!!!
1.2.
Usuários
Nesta seção descreva os usuários do sistema.
Nome
Secretaria
Descrição
Administrador do sistema
Professor
Usuário comum – cliente - do sistema
1.3.
Responsabilidade
Cadastrar
usuário,
cadastrar
cadastrar penalidades, visualizar
cadastrar recurso em manutenção.
recursos,
reportes,
Informações armazenadas
Descreva textualmente que informações serão armazenadas pelo sistema? Dados e
relacionamentos entre eles devem estar explicítios aqui, mas não necessariamente seu tipo.
1.4.
Dicionário de dados
Aqui você criará um repositório textual centralizado de informações tais como significado,
relacionamentos para outros dados, uso, formato, comprimento, etc. A idéia do dicionário de
dados é funcionar como uma base que pode ser consultada por alguém que, por exemplo, não
entende o que determinada informação quer dizer com relação ao mini-mundo.
1.5.
Operações
Liste que operações de inserção e atualização serão oferecidas pelo seus sistema.
Código - Funcionalidades
RA001 – Buscar conteúdo
RA002 – Reservar recurso
RA003 – Reportar problema
RA004 – Cancelar reserva
RA005 – Situação do usuário
RADM001 – Inserir recurso
RADM002 – Remover recurso temporariamente (manutenção)
RADM003 – Remover recurso
RADM004 – Atribuir penalidade
RADM005 – Inserir tipo de recurso
RADM006 – Relatório de recurso
RADM007 – Cadastrar usuário
RADM008 – Relatório de usuário
RADM009 – Remover usuário
RADM010 – Retirada de recurso
RADM011 – Devolução de recurso
1.6.
Consultas
Liste que consultas serão oferecidas pelo seus sistema.
1.7.
Visões
Liste que visões de usuários serão oferecidas pelo seu sistema e quais dados armazenados
e dados derivados cada uma das visões terá acesso.
Nome
1.8.
Descrição
Dados
Acesso
com
Dados
Restrição
com
Dados
Derivados
Restrições de integridade
Liste aqui as restrições de integridade do dados a serem armazenados. Dentre os tipos de
restrições temos tipos dos dados, e integridade de relacionamentos.
2.
Modelagem ER
A figura abaixo representa o modelo Entidade-Relacionamento do banco de dados
implementado. Ele contem as seguintes entidades:
 Usuário que tem uma identificação, um nome, uma permissão que identifica se é um
usuário comum ou um administrador e um login;
 Penalidade que tem uma duração e a data em que foi dada inicio;
 Log que possui uma identificação, uma descrição e uma operação que é equivalente as
operações de acesso ao BD;
 Recurso que possui uma identificação;
 Manutenção que possui uma identificação e uma data em que o recurso entrou;
 Tipo que contem uma identificação e sua descrição.
Ele ainda contem os relacionamentos, que são considerados os mais importantes, Reserva e
Reporte que relacionam um usuário a um recurso.
3.
Modelagem Relacional
O mapeamento do modelo ER no modelo Relacional foi feito tendo como base nas
seguintes regras básicas:
1. Caso exista algum atributo composto, serão usados as folhas da composição
desse atributo para fazerem parte da relação;
2. Entidades fortes são mapeadas em uma nova relação contendo todos os seus
atributos;
3. Entidades fracas são mapeadas em uma nova relação contendo todos os seus
atributos, adicionado a chave estrangeira;
4. De modo geral, os relacionamentos podem ser mapeados de forma que uma nova
relação, além das relações que são o resultado do mapeamento das entidades,
seja criada de modo a conter os atributos chaves das “entidades” além dos seus
atributos.
Seguindo essas regras, o seguinte modelo relacional foi obtido e logo abaixo uma
breve descrição de como cada relação foi mapeada.
Como pode-se observar foram criadas 8 relações.
 As relações Usuário e Tipo foram obtidas seguindo a 2ª regra. Eram entidades fortes
que foram mapeadas em novas relações com seus atributos.
 As relações Recurso e Penalidade adquiriram a chave estrangeira da relação Tipo e
Usuário, respectivamente, par fins de identificação. O mapeamento foi feito com base
na 2ª e 4ª regra.
 A relação Manutenção adquiriu a chave estrangeira da relação Recurso para poder
identificar qual o recurso está em manutenção.
 As relações Reporte, Reserva e Log adquiriram chaves estrangeiras das relações
Usuário e Recurso, para poder identificar qual Usuário realizou a operações a respeito
de qual Recurso. Operação esta que é de reporte, de reserva ou de registro no log,
respectivamente.
4.
Normalização
Modelo relacional inicial contendo as dependências funcionais de todas as relações.
Decomposição das relações para que o modelo satisfaça as formais normais 1NF, 2NF, e
3NF
5.
Implementação do BD
Descrição dos SQL utilizados para criar o BD e fazer as consultas/alterações necessárias.
6.
Aplicação
Descrição da aplicação criada.
Interface
Uso
Consultas
Atualizações
7.
Relatório
Análise de todo o projeto contendo:
1.
2.
3.
4.
5.
Dificuldades encontradas
Que decisões foram tomadas
O que você faria diferente?
Quais as vantagens de algumas de suas decisões
Outras informações pertinentes
Download