Você está na página 1de 19

UNIVERSIDADE DO TOCANTINS

TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS


PRÁTICA EM DESENVOLVIMENTO DE SISTEMAS

ESTUDO DE CASO
1. DESCRIÇÃO
A Livraria VirtuaTADS é uma loja que será criada com o propósito de comercialização de
livros. No entanto, em um primeiro momento necessita de um sistema para controle do seu
acervo, das editoras dos livros, dos fornecedores e dos
seus funcionários. Neste sistema não será gerenciada a
venda de produtos.
Assim, os diretores decidiram desenvolver um
sistema que contemplasse o cadastro de editoras,
funcionários e fornecedores, o gerenciamento (cadastro,
alteração, exclusão e consulta) de produtos, bem como a
possibilidade de efetuar a entrada de produtos no sistema.
Tudo isso, levando em consideração o que há de mais
importante hoje em dia na confiabilidade dos sistemas, a
segurança.
Considerando o projeto desenvolvido pelos engenheiros de software para a Livraria
VirtuaTADS (ANEXO I – Sistema Web para a Livraria VirtuaTADS), implemente o sistema Web
deste projeto, conforme os conceitos estudados nas disciplinas do curso e orientações
apresentadas na seção 2 deste documento.
O sistema Web a ser desenvolvido deverá possuir uma interface para a gestão da livraria
que contemple as seguintes funcionalidades:
• Autenticação de usuários
• Cadastro de funcionários;
• Cadastro de fornecedores;
• Gerenciamento (inserção, alteração, exclusão e consulta) de produtos;
• Cadastro de editoras;
• Entrada de produtos (lançamento em estoque);
• Emissão de relatório gerencial em HTML: relação de produtos do acervo contendo a
quantidade existente de cada produto.
UNIVERSIDADE DO TOCANTINS
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
PRÁTICA EM DESENVOLVIMENTO DE SISTEMAS

2. ORIENTAÇÕES PARA O DESENVOLVIMENTO DO PROJETO DO


SISTEMA WEB
• Para o desenvolvimento do Sistema Web é obrigatória a adoção das seguintes
ferramentas:
o MySQL (http://dev.mysql.com/) para a criação e gerenciamento do Banco de
Dados;
o Netbeans para a criação do projeto web, onde a linguagem web a ser utilizada para
a implementação deverá ser baseada em Java, no caso JSP ou JSF.
o Tomcat ou Glassfish como servidor Web;
o HTML para a criação do relatório gerencial.
Esta padronização é necessária para a avaliação, uma vez que deverão ser postados no
ambiente virtual o Script SQL do banco de dados e o projeto Netbeans, conforme consta nas
orientações gerais da disciplina.
Devem ser utilizados padrões de projeto na implementação. Sugere-se a utilização do
padrão MVC (Model-View-Control) para o desenvolvimento em camadas (utilizar no mínimo 2
camadas) utilizando a linguagem de programação Java para web.
Não serão avaliados os trabalhos que não se enquadrarem dentro dos requisitos citados,
sendo automaticamente desconsiderados e o grupo ficando sujeito a ficar sem nota. Não serão
aceitos frameworks para persistência de dados, tais como: hibernate, JPA, etc.
É imprescindível a análise do projeto do sistema Web para a Livraria VirtuaTADS (ANEXO
I), de modo que possam ser identificadas as funcionalidades solicitadas e como estas devem ser
implementadas. Além do desenvolvimento das funcionalidades solicitadas, deve haver
preocupação quanto a questões referentes ao projeto da interface do sistema e sua usabilidade.
Para auxiliar no desenvolvimento do sistema, estão sendo disponibilizados como material
de apoio, na área da disciplina no ambiente virtual AVA-UNTINS
(http://ava2.unitins.br/ava/default.aspx), o projeto do “Cinema Melhores Filmes” e a implementação
do sistema web. A implementação do sistema web disponibilizada é uma compilação das
melhores práticas adotadas pelos alunos da Turma 2007 e pode ser utilizado como padrão para o
desenvolvimento do sistema Web para a Livraria VirtuaTADS.

Bons estudos!
ANEXO I

Projeto do Sistema Web para a Livraria


VirtuaTADS
Sistema Web para a

Documento de especificação de requisitos e


projeto do sistema

Este documento contém a especificação dos requisitos


para um sistema Web para a Livraria VirtuaTADS
apresentando a situação atual e a pretendida, além da
modelagem necessária à sua implementação. Trata-se de
um projeto hipotético utilizado para a disciplina de Prática
em Desenvolvimento de Sistemas.

Grupo dos Professores


Componentes: Alex Coelho, Fredson Vieira Costa
e Luciane Machado Fraga
Data: 28/10/2010
Sumário

1. VISÃO DO NEGÓCIO 6
1.1 OBJETIVO 6
1.2 SITUAÇÃO ATUAL 6
2. REQUISITOS 8
2.1 REQUISITOS FUNCIONAIS 8
2.2 REQUISITOS NÃO FUNCIONAIS 8
2.2.1 REQUISITOS NÃO FUNCIONAIS GERAIS DO SISTEMA 8
3. DIAGRAMA DE CASO DE USO 9
3.1 AUTENTICAR NO SISTEMA 9
3.2 GERENCIAR PRODUTO 10
3.3 CADASTRAR FORNECEDOR 11
3.4 CADASTRAR EDITORA 12
3.5 CADASTRAR FUNCIONÁRIO 13
3.6 ENTRADA DE PRODUTOS 13
3.7 EMITIR RELATÓRIO 14
4. DIAGRAMA DE ATIVIDADES 16
4.1 AUTENTICAÇÃO NO SISTEMA 16
4.2 CADASTRAR FUNCIONÁRIO 16
4.5 GERENCIAR PRODUTO 17
4.6 ENTRADA DE PRODUTOS 17
5. DIAGRAMA DE CLASSES DE DOMÍNIO 18
6. PROJETO DE BANCO DE DADOS 19
1. Visão do Negócio
O sistema projetado consiste em um sistema web utilizado para o armazenamento
de informações do acervo, das editoras, dos funcionários e dos fornecedores da Livraria
VirtuaTADS, de modo a agilizar a consulta de tais informações.

1.1 Objetivo
O sistema de informação projetado tem como objetivo possibilitar o armazenamento
dos livros que a livraria possui, bem como das editoras, dos seus funcionários e dos
fornecedores através de um sistema web.

1.2 Situação atual


A livraria VirtuaTADS é uma empresa nova que deseja tornar-se referência entre as
empresas que mantém um acervo de livros de uma correta logística para aquisição dos
livros com os fornecedores e controle de seus produtos.

Para o desenvolvimento do projeto do sistema foi realizada entrevista com os


proprietários da livraria. Nesta entrevista foram fornecidas informações do processo de
gestão da nova livraria, as quais são apresentadas a seguir.

Documentação de levantamentos

O levantamento de requisitos do sistema foi realizado através de uma reunião com


proprietários da livraria, onde foram coletadas as seguintes informações apresentadas na
ata de reunião:

Sistema: Sistema para a Livraria VirtuaTADS Versão: 1.0

ATA DE REUNIÃO

Código: 1 Data: 28/10/2010 Hora início: 08:30 Hora término: 11:40

Entrevistador(es): Alex Coelho, Fredson Vieira Costa, Luciane Machado Fraga

Entrevistado(s): Proprietário da Livraria VirtuaTADS

Assunto: Definição dos requisitos do sistema

Descrição:

• A Livraria VirtuaTADS é uma empresa que quer ingressar no mercado de livros. Para
que isso seja possível necessita-se de um sistema web para a livraria que permita o
armazenamento do acervo, das editoras, dos funcionários e dos fornecedores, de
modo a manter todas estas informações centralizadas em um banco de dados e,
assim, agilizar as consultas.

• O sistema Web deve ser baseado em um banco de dados gratuito, de modo que não
hajam despesas extras para a empresa. Neste banco de dados serão cadastradas
todas as informações.

• Para os funcionários deverá ser cadastrado o seu nome, CPF, RG, endereço,
telefone, e-mail e senha para acesso ao sistema e gerenciamento de informações.

• Para os fornecedores e editoras é importante que sejam armazenadas informações


como o razão social da empresa, CNPJ, nome para contato, telefone e e-mail.

• Para os produtos devem ser mantidos os seguintes dados: título, o(s) autor(es),
editora, ISBN, número de páginas, ano, sinopse, edição, categoria (Artes, Autoajuda,
Cursos e idiomas, Didáticos, etc.) e valor de venda.

• Para a realização da entrada de produtos no acervo deve ser mantida a data, o


funcionário que a realizou, o fornecedor, os livros a serem inseridos no acervo, o
valor de compra de cada livro e suas respectivas quantidades disponíveis.

• Para realizar operações no sistema um funcionário deverá estar cadastrado e


fornecer o seu e-mail e senha para obter acesso.

• A senha de acesso ao sistema permite ao funcionário cadastrar produtos, cadastrar


fornecedores, cadastrar editoras, bem como efetuar a entrada de produtos. Além
disso, um funcionário logado poderá realizar consultas dos dados.

• O sistema deve emitir um relatório HTML com o acervo cadastrado no banco de


dados. No relatório deve ser especificado o título dos livros e a quantidade existente
de cada produto.
2. Requisitos

2.1 Requisitos Funcionais


1. O sistema deve permitir a um funcionário logado efetuar o cadastro de
fornecedores.

2. O sistema deve permitir a um funcionário logado efetuar o cadastro de


funcionários.
3. O sistema deve permitir a um funcionário logado efetuar o cadastro de editoras.

4. O sistema deve permitir a um funcionário logado efetuar o cadastro de produtos.

5. O sistema deve permitir a um funcionário logado efetuar a alteração de produtos.

6. O sistema deve permitir a um funcionário logado efetuar a exclusão de produtos.

7. O sistema deve permitir a um funcionário logado consultar produtos.

8. O sistema deve permitir a um funcionário logado efetuar a entrada de produtos


no acervo.

9. O sistema deve realizar a autenticação de usuários no sistema.

10. O sistema deve permitir a um funcionário logado acesso ao relatório gerencial.

2.2 Requisitos não funcionais


1. O sistema deve possuir um mecanismo de segurança para evitar que pessoas
não autorizadas tenham acesso ao sistema ou a dados privados.

2. As senhas de acesso ao sistema não devem estar diretamente visíveis no banco


de dados e sim de algum modo criptografadas.

3. A interface disponível para o funcionário deve ser simples e intuitiva.

4. Somente funcionários cadastrados e autenticados podem operar a parte


administrativa do sistema.

5. O sistema deve registrar o funcionário que efetuou o cadastro de um produto no


acervo.

2.2.1 Requisitos não funcionais gerais do sistema


1. As informações serão armazenadas em um banco de dados MySQL, numa
versão gratuita.

2. O sistema será desenvolvido em JSP e/ou JSF.

3. O sistema adotará um servidor web gratuito (Glassfish ou TomCat).


3. Diagrama de Caso de Uso

Atores do Sistema

Nome Descrição

Administrador Representa o administrador do sistema. Ele tem acesso a


todas as funcionalidade do sistema. Ele é um funcionário com
caracteristicas especiais para o sistema.

Funcionário Representa os usuários que acessam o sistema proposto. Ele


têm acesso restrito a funcionalidades do sistema, visto que não
pode realizar o cadastro de outro funcionário.

3.1 Autenticar no Sistema

Detalhamento do caso de Uso

1. DESCRIÇÃO
O caso de uso “Autenticar no Sistema” descreve as operações para um usuário
(administrador ou funcionário) efetuar o login no sistema web da livraria.
2. ATORES
Funcionário (por herança o Administrador também pode atuar sobre este caso de uso)

3. PRÉ-CONDIÇÃO
O usuário acessou uma área restrita do sistema.

4. FLUXO DE EVENTOS
Esse caso de uso se inicia quando o usuário realizar a operação correspondente a
autenticação no sistema.

4.1. FLUXO PRINCIPAL


1. O usuário seleciona o seu tipo de usuário no sistema (administrador ou
funcionário).
2. O usuário informa login e senha no sistema.
3. O sistema valida as informações especificadas.
4. O usuário é autenticado e as funcionalidades restritas do sistema são
apresentadas.
5. O caso de uso é encerrado.
4.2. FLUXOS ALTERNATIVOS
1. Informações não validadas
1. No passo 3 do fluxo 4.1, caso o login e a senha informados pelo usuário
não sejam validados pelo sistema, o usuário não terá acesso às
funcionalidades restritas do sistema e deverá retornar ao passo 2.

5. PÓS-CONDIÇÕES
O usuário é autenticado no sistema.

3.2 Gerenciar Produto

Detalhamento do caso de Uso

1. DESCRIÇÃO
O caso de uso “Gerenciar Produto” descreve as operações para que usuário
(administrador ou funcionário) realize o gerenciamento (inserção, alteração, exclusão e
consulta) de um produto no sistema web da livraria.

2. ATORES
Funcionário (por herança o Administrador também pode atuar sobre este caso de uso)

3. PRÉ-CONDIÇÃO
O usuário deve estar logado no sistema.

4. FLUXO DE EVENTOS
Esse caso de uso se inicia quando o usuário realizar a operação correspondente a
gerenciar o produto no sistema.

4.1. FLUXO PRINCIPAL


1. O usuário é autenticado no sistema.
2. O usuário escolhe a opção desejada no que se refere ao “Gerenciamento
de Produtos” na página do site.
3. O caso de uso é encerrado.
4.2. FLUXOS ALTERNATIVOS
1. Inserir novo produto
1. No passo 2 do fluxo 4.1, o usuário poderá realizar o seu cadastro do
produto.
2. É aberta uma tela onde o usuário informa os dados do produto nos
campos específicos.
3. Se usuário selecionar a opção “Cadastrar”, o sistema grava as
informações na base de dados.
4. Se usuário selecionar a opção “Cancelar”, o sistema ignora as
informações.
2. Alterar produto
1. No passo 2 do fluxo 4.1, o usuário poderá alterar as informações
cadastradas para um determinado produto.
2. Usuário seleciona o produto desejado.
3. É aberta uma tela onde o usuário altera os dados que desejar do produto
nos campos específicos.
4. Se usuário selecionar a opção “Alterar”, o sistema grava as informações
na base de dados.
5. Se usuário selecionar a opção “Cancelar”, o sistema ignora as
informações.
3. Excluir produto
1. No passo 2 do fluxo 4.1, o usuário poderá excluir um produto cadastrado.
2. Usuário seleciona o produto desejado.
3. Se usuário selecionar a opção “Excluir”, o sistema envia uma mensagem
na tela: “Confirma exclusão?”.
4. O sistema valida a resposta (Sim ou Não).
5. Se o campo de resposta for Sim, o sistema remove as informações do
produto selecionado na base de dados.
6. Se o campo de resposta for Não, o sistema ignora a operação.
4. Consultar produto
1. No passo 2 do fluxo 4.1, o usuário poderá consultar as informações
cadastradas para um determinado produto.
2. É aberta uma tela onde o usuário informa o nome do produto desejado.
3. Se o produto for encontrado na base de dados, o mesmo é visualizado na
tela.
4. Se o produto não for encontrado na base de dados, é visualizada uma
mensagem informativa na tela.

5. PÓS-CONDIÇÕES
O gerenciamento do produto é realizado no sistema.

3.3 Cadastrar Fornecedor

Detalhamento do caso de Uso

1. DESCRIÇÃO
O caso de uso “Cadastrar Fornecedor” descreve as operações para um usuário
(administrador ou funcionário) realizar o cadastro de um fornecedor no sistema web da
livraria.

2. ATORES
Funcionário (por herança o Administrador também pode atuar sobre este caso de uso)

3. PRÉ-CONDIÇÃO
O usuário deve estar logado no sistema.
4. FLUXO DE EVENTOS
Esse caso de uso se inicia quando o usuário realizar a operação correspondente a
cadastrar o fornecedor no sistema.

4.1. FLUXO PRINCIPAL


1. O usuário é autenticado no sistema.
2. É aberta uma tela onde o usuário informa os dados do fornecedor nos
campos específicos.
3. Se usuário selecionar a opção “Cadastrar”, o sistema grava as informações
na base de dados.
4. Se usuário selecionar a opção “Cancelar”, o sistema ignora as
informações..
5. O caso de uso é encerrado.

5. PÓS-CONDIÇÕES
O cadastro do fornecedor é realizado no sistema.

3.4 Cadastrar Editora

Detalhamento do caso de Uso

1. DESCRIÇÃO
O caso de uso “Cadastrar Editora” descreve as operações para um usuário
(administrador ou funcionário) realizar o cadastro de uma editora no sistema web da
livraria.

2. ATORES
Funcionário (por herança o Administrador também pode atuar sobre este caso de uso)

3. PRÉ-CONDIÇÃO
O usuário deve estar logado no sistema.

4. FLUXO DE EVENTOS
Esse caso de uso se inicia quando o usuário realizar a operação correspondente a
cadastrar editoras no sistema.

4.1. FLUXO PRINCIPAL


1. O usuário é autenticado no sistema.
2. É aberta uma tela onde o usuário informa os dados da editora nos campos
específicos.
3. Se usuário selecionar a opção “Cadastrar”, o sistema grava as informações
na base de dados.
4. Se usuário selecionar a opção “Cancelar”, o sistema ignora as informações.
5. O caso de uso é encerrado.

6. PÓS-CONDIÇÕES
O cadastro da editora é realizado no sistema.
3.5 Cadastrar Funcionário

Detalhamento do caso de Uso

1. DESCRIÇÃO
O caso de uso “Cadastrar Funcionário” descreve as operações para o administrador
realizar o cadastro de um funcionário no sistema web da livraria.

2. ATOR
Administrador

3. PRÉ-CONDIÇÃO
O administrador deve estar logado no sistema.

4. FLUXO DE EVENTOS
Esse caso de uso se inicia quando o administrador realizar a operação correspondente a
cadastrar o funcionário no sistema.

4.1. FLUXO PRINCIPAL


1. O administrador é autenticado no sistema.
2. É aberta uma tela onde o administrador informa os dados do funcionário
nos campos específicos.
3. Se administrador selecionar a opção “Cadastrar”, o sistema grava as
informações na base de dados.
4. Se administrador selecionar a opção “Cancelar”, o sistema ignora as
informações.
5. O caso de uso é encerrado.

5. PÓS-CONDIÇÕES
O cadastro do funcionário é realizado no sistema.

3.6 Entrada de Produtos

Detalhamento do caso de Uso

1. DESCRIÇÃO
O caso de uso “Entrada de Produtos” descreve as operações para um usuário
(administrador ou funcionário) registrar na base de dados a entrada de produtos em
estoque na livraria.

2. ATORES
Funcionário (por herança o Administrador também pode atuar sobre este caso de uso)

3. PRÉ-CONDIÇÕES
O usuário deve estar logado no sistema.

4. FLUXO DE EVENTOS
Esse caso de uso se inicia quando o usuário realizar a operação correspondente ao
registro da entrada de produtos.
4.1 FLUXO PRINCIPAL
1. O usuário informa login e senha no sistema.
2. O usuário escolhe a opção “Entrada de produtos” na página inicial do site.
3. O usuário consulta e seleciona o produto que deseja registrar.
4. O usuário consulta e seleciona o fornecedor do produto que deseja
registrar.
5. O usuário informa a quantidade, o valor unitário de compra e o valor
unitário de venda do produto que deseja registrar.
6. O usuário adiciona o produto à lista de produtos a serem registrados.
7. O usuário realiza o registro.
8. O caso de uso é encerrado.
4.2. FLUXOS ALTERNATIVOS
1. Cadastro de produtos
1. No passo 3 do fluxo 4.1, caso o produto ainda não esteja cadastrado, o
usuário deverá realizar o seu cadastro para prosseguir o registro da
entrada do produto em estoque.
2. É aberta uma tela onde o usuário informa os dados do produto nos
campos específicos.
3. Se usuário selecionar a opção “Cadastrar”, o sistema grava as
informações na base de dados.
4. Se usuário selecionar a opção “Cancelar”, o sistema ignora as
informações.
2. Cadastro de fornecedores
1. No passo 4 do fluxo 4.1, caso o fornecedor ainda não esteja cadastrado, o
funcionário deverá realizar o seu cadastro para prosseguir o registro da
entrada do produto em estoque.
2. É aberta uma tela onde o funcionário informa os dados do fornecedor nos
campos específicos.
3. Se usuário selecionar a opção “Cadastrar”, o sistema grava as
informações na base de dados.
4. Se usuário selecionar a opção “Cancelar”, o sistema ignora as
informações.
3. Inclusão de mais de um tipo de produto na lista de produtos
1. No passo 6 do fluxo 1, caso o usuário queira adicionar outro produto à
tabela de produtos, deverá retornar ao passo 3 do fluxo 1.

4. PÓS-CONDIÇÕES
É registrada a entrada de novos produtos que são adicionados ao estoque já existente.

3.7 Emitir Relatório

Detalhamento do caso de Uso

1. DESCRIÇÃO
O caso de uso “Emitir Relatório” descreve as operações para um usuário (administrador
ou funcionário) realizar a emissão de relatório gerencial no sistema web da livraria.

2. ATORES
Funcionário (por herança o Administrador também pode atuar sobre este caso de uso)

3. PRÉ-CONDIÇÃO
O usuário deve estar logado no sistema.
4. FLUXO DE EVENTOS
Esse caso de uso se inicia quando o usuário realizar a operação correspondente a emitir
relatório no sistema.

4.1. FLUXO PRINCIPAL


1. O usuário é autenticado no sistema.
2. O usuário escolhe a opção “Emitir relatório” na página do site.
3. O sistema emite o relatório.
4. O caso de uso é encerrado.

5. PÓS-CONDIÇÕES
O relatório é gerado pelo sistema.
4. Diagrama de Atividades

4.1 Autenticação no Sistema

4.2 Cadastrar Funcionário

OBS: Os demais cadastros obedecerão a este mesmo diagrama.


4.5 Gerenciar Produto

4.6 Entrada de Produtos


5. Diagrama de Classes de Domínio
6. Projeto de Banco de Dados

Você também pode gostar