Você está na página 1de 33

Unioeste Universidade Estadual do Oeste do

Paran
CENTRO DE CINCIAS EXATAS E TECNOLGICAS
Colegiado de Cincias da Computao
Curso de Bacharelado em Cincias da Computao

Especificao de Requisitos e Modelagem


Sistema Livraria

Hudson Joo Magalhes


Willian Dias Tamagi
Mauro Brischke

Cascavel
2011

SUMRIO
1 MOTIVAO.
2 PROBLEMA DA EMPRESA
3 CRONOGRAMA
4 METODOLOGIA ESCOLHIDA.................................................................................

3
3
3
4

5 REQUISITOS FUNCIONAIS.......................................................................................
6 REQUISITOS NO FUNCIONAIS ............................................................................
6.1 REQUISITOS DE PROCESSO ....................................................................................
6.2 REQUISITOS DO PRODUTO .....................................................................................
6.3 O GRAFO SIG..
7 MODELAGEM ORGANIZACIONAL i*...................................................................
7.1 MODELO DE DEPENDNCIAS ESTRATGICAS..................................................
7.2 MODELO DE RAZES ESTRATGICAS.................................................................
8 CASOS DE USO ............................................................................................................
8.1 REPRESENTAO DOS CASOS DE USO...............................................................
8.2 DESCRIO DOS CASOS DE USO..........................................................................
9 DIAGRAMAS DE CLASSES .......................................................................................
CONCLUSO....................................................................................................................
Apndice A Coleta de Informaes...............................................................................

5
7
7
7
8
9
10
11
14
14
14
22
30
30

1 INTRODUO E MOTIVAO
Busca por conhecimento da equipe, no desenvolvimento do aprendizado do uso da
engenharia de software para o desenvolvimento de sistemas em geral, atender o cliente que
necessita de um sistema organizacional para controle do caixa, e cadastro dos dados dos
produtos, e consulta do estoque via internet produzindo um sistema de qualidade que gerencie as
tarefas de uma livraria, e possa trazer uma maior interao com o cliente.
O objetivo diminuir o tempo gasto nos arquivamentos dos dados dos produtos e dos
livros, manuteno e controle do estoque, efetuar pedidos de clientes com um sistema web. Com
este sistema poder resultar na economia de tempo e esforo, gerando tambm mais segurana e
restrio aos dados e agilidade no atendimento ao cliente. Alm disso, a venda e gerao de uma
Nota Fiscal Eletrnica NFE, uma obrigao para todas as empresas SIMPLES Nacional, para o
ano de 2012.
Definimos produto de venda, todo e qualquer produto do estoque da empresa, como
canetas, lpis, cadernos, etc. Tratamos livros como sendo um produto, porm com uma herana
de algumas informaes adicionais, como autor, editora e ano de edio.
2 PROBLEMA DA EMPRESA
A empresa ainda no possui qualquer tipo de sistema para o controle. Por esse motivo h
uma grade perda de tempo esse controle, alm de que esse controle como esta sendo feito em
arquivos de papel mesmo, ocorre frequentemente perda de informao ou at erro humano na
hora de passar a informao para o papel, gerando assim transtornos. O controle de compras com
o fornecedor, feito apenas guardando as notas de compra em um arquivo fisico, o que gera o
mesmo problema anterior de estravios, os livros so divididos em sees, onde cada uma
representa um genero, porm como no h um controle muito bom de quantos exemplares
existem na livraria, acontee de trocarem o livro de seo e isso geralmente s notado muitos
meses depois.
O Sistema proposto iria resolve essas situaes para o proprietrio, agilizando e
organizando o dia a dia da empresa, alem de evita erros graves (perda de registros).
Descrio da Empresa:
Revistaria Saber
Avenida Brasil, 6676 - Cascavel - PR, 85810-000
Centro Cascavel - PR
Telefone: (45) 3225-5112

3 CRONOGRAMA DE DESENVOLVIMENTO
Id
1
2
3
4
5

Nome
Iterao Preliminar
Treinamento JAVA e Banco de Dados
Definio da Arquitetura
Definio da Metodologia gil
Reviso da Anlise de Requisitos

Durao
25,d
10,d
5,d
5,d
5,d

Incio
18/04/2011
18/04/2011
02/05/2011
09/05/2011
16/05/2011

Trmino
20/05/2011
29/04/2011
06/05/2011
13/05/2011
20/05/2011

6
7
8
9
1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
2
9
3
0
3
1
3
2
3
3
3
4

Marco de Referncia
Mdulo 0
Modelagem do Banco de Dados
Implementao do Banco de Dados

,d
15,d
10,d
5,d

20/05/2011
23/05/2011
23/05/2011
06/06/2011

20/05/2011
10/06/2011
03/06/2011
10/06/2011

Marco de Referncia

,d

10/06/2011

10/06/2011

Mdulo 1

17,d

13/06/2011

05/07/2011

Interface de Abertura + Login do Sistema

5,d

13/06/2011

17/06/2011

Controle Usurio + Criptografia

10,d

20/06/2011

01/07/2011

Reviso e Teste

2,d

04/07/2011

05/07/2011

Marco de Referncia

,d

05/07/2011

05/07/2011

Mdulo 2

12,d

06/07/2011

21/07/2011

Controle Fornecedor

10,d

06/07/2011

19/07/2011

Reviso e Teste

2,d

20/07/2011

21/07/2011

Marco de Referncia

,d

21/07/2011

21/07/2011

Mdulo 3

12,d

22/07/2011

08/08/2011

Controle Produto

10,d

22/07/2011

04/08/2011

Reviso e Teste

2,d

05/08/2011

08/08/2011

Marco de Referncia

,d

08/08/2011

08/08/2011

Mdulo 4

12,d

09/08/2011

24/08/2011

Controle Livro

10,d

09/08/2011

22/08/2011

Reviso e Teste

2,d

23/08/2011

24/08/2011

Marco de Referncia

,d

24/08/2011

24/08/2011

Mdulo 5

12,d

25/08/2011

09/09/2011

Controle Compra

10,d

25/08/2011

07/09/2011

Reviso e Teste

2,d

08/09/2011

09/09/2011

Marco de Referncia

,d

09/09/2011

09/09/2011

Mdulo 6

12,d

12/09/2011

27/09/2011

Controle Venda

10,d

12/09/2011

23/09/2011

Reviso e Teste

2,d

26/09/2011

27/09/2011

3
5
3
6
3
7
3
8
3
9
4
0
4
1
4
2
4
3

Marco de Referncia

,d

27/09/2011

27/09/2011

Mdulo 7

17,d

28/09/2011

20/10/2011

Controle Financeiro

10,d

28/09/2011

11/10/2011

Gerador de Relatrios

5,d

12/10/2011

18/10/2011

Reviso e Teste

2,d

19/10/2011

20/10/2011

Marco de Referncia

,d

20/10/2011

20/10/2011

Mdulo 8 (Final)

15,d

21/10/2011

10/11/2011

Revises e Testes Finais

5,d

21/10/2011

27/10/2011

Correo Final

10,d

28/10/2011

10/11/2011

4 METODOLOGIA ESCOLHIDA
Como a exigncia do mercado de softwares hoje em dia bem forte, no so em questo a
qualidade mais tambem ao tempo de entrega, alem da complexidade do sistema que ir ser
desenvolvido, visvel previso de mudanas das especificaes durante a produo do projeto e a
gesto sendo indispensvel para assegurar a qualidade do produto, foi especificado que a
metodologia que usremos para o desenvolvimento do sistema ser a metodologia Scrum.
Como a metodologia Scrum, uma metodologia para equipes pequenas e mdias e que
iro desenvolver software com requisitos vagos e em constante mudana, resolvemos adotar esta
metodologia. Para isso a estratgia de constante acompanhamento e realizao de vrios
pequenos ajustes durante o desenvolvimento do sistema. O Scrum tem como hierarquia do
desenvolvimento o seguinte esqueleto:
1. O ScrumMaster, que mantm os processos (normalmente no lugar de um gerente de
projeto).
2. O Proprietrio do Produto, ou Product Owner, que representa os stakeholders e o
negcio.
3. A Equipe, ou Team, um grupo multifuncional com cerca de 7 pessoas e que fazem a
anlise, projeto, implementao, teste etc.
Dentre as variveis de controle em projetos (custo, tempo, qualidade e escopo), h um
foco explcito em escopo (backlog). Para isso, recomenda-se a priorizao de funcionalidades que
representem maior valor possvel para o negcio. Desta forma, caso seja necessrio a diminuio
de escopo, as funcionalidades menos valiosas sero adiadas ou canceladas.
O Scrum incentiva o controle da qualidade como varivel do projeto, pois o pequeno
ganho de curto prazo na produtividade, ao diminuir qualidade, no compensado por perdas (ou
at impedimentos) a mdio e longo prazo, tendo em vista que o foco do desenvolvimento a
sprint que ser desenvolvida a cada iterao. Segue um esquema do funcionamento do scrum:

Figura 2: Funcionamento do Scrum.


Primeiramente desenvolvido o backlog do produto, que so todas as funcionalidades do
sistema, depois so extraidos, algumas dessas funcionalidades para a gerao do backlog da
sprint, para entao comear o desenvolvimento de tais funcionalidades, e por fim entregue uma
verso usavel da sprint.
5 REQUISITOS FUNCIONAIS
Os requisitos funcionais descrevem os servios que o sistema deve oferecer e suas "funes" ao
fim do seu desenvolvimento, como devem se comportar a certas entradas, as mais variadas
situaes. Os requisitos funcionais que sero apresentados foram estudados e analisados
juntamente ao filho do dono da empresa que tambm faz parte da equipe de desenvolvimento. Os
seguintes requisitos esto apresentados abaixo.
[RF - 01] Cadastrar Produtos
O sistema dever permitir cadastrar novos produtos com todos os seus atributos (descrio, preo,
quantidade, ncm, etc.) e tambm a variao do produto livro, salvando seus dados especficos
(autor, editora, ano de edio). O cadastro no poder ser realizado no caso de j existir no
estoque um produto com o mesmo cdigo de barra.
[RF - 02] Remover Produto
O sistema dever permitir a excluso de produtos por nome ou cdigo de barra. Atualizando a
base de dados e cancelamento de pedidos pendentes.
[RF - 03] Alterar Produto
O sistema atualizar os dados especfico de cada produto existente na base de dados. Exceto
cdigo de barras.
[RF - 04] Consultar Produto
O sistema permitir a consulta de um produto j existente no banco de dados. Atravs do sistema
padro, como tambm por uma pgina web, a consulta sempre ser feita pelo cdigo identificador
do produto ou pelo seu nome. A consulta web ser possvel somente para o cliente pesquisar se o
produto contm estoque na empresa, atravs de uma pgina web da empresa.
[RF 05] Cadastrar Funcionrio

O sistema ir cadastrar um funcionrio quando necessrio e seus dados pessoais no banco de


dados. Como nome, salrio, comisso e cargo a desempenhar.
[RF 06] Excluir Funcionrio
O sistema dever possibilitar a excluso pelo nome do funcionrio, atualizando automaticamente
no banco de dados.
[RF 07] Pesquisar Funcionrio
O sistema possibilitar a pesquisa de um funcionrio j armazenado no banco de dados do
sistema e disponibilizar a informao para o usurio. Mostrando ao usurio do sistema os dados
pessoais do cadastro do funcionrio. A busca dever ser realizada pelo nome do funcionrio.
[RF 08 ] Alterar Funcionrio
O Sistema possibilitar ao usurio modificaes/alteraes nas informaes do cadastro pessoal
do funcionrio armazenadas na base de dados. Exceto seu cdigo identificador.
[RF 09 ] Cadastrar Usurio
O Sistema far o cadastro de novos usurios para o sistema, cada um com um login e senha
distinta. Havendo distino de privilgios de usurios como gerente e funcionrio geral.
[RF 10 ] Remover Usurio
O Sistema ir fazer a remoo de usurios do sistema, desabilitando-os de qualquer acesso ao
sistema.
[RF 11 ] Alterar Usurio
O Sistema dever possibilitar as alteraes na conta de usurios no sistema, modificando senha
ou login se necessrio.
[RF 12 ] Pesquisar Usurio
O Sistema possibilitar uma pesquisa sobre as contas de usurios do sistema existentes e
disponibilizar essas informaes, exceto senha. Sua busca ser feita pelo nome do usurio.
[RF - 13 ] Logar no Sistema
Todas as funcionalidades do sistema so acessveis aos usurios de acordo com seu nvel de
privilgio no sistema. Isto realizado atravs de um sistema de Login/Senha.
[RF - 14 ] Realizar Venda e Emisso de Nota Fiscal Eletrnica
Os funcionrios sero permitidos realizar uma venda, o sistema devera possibilitar a venda
atravs do usurio logado. A venda dos livros ou produtos disponveis na empresa, gerando uma
nota fiscal eletrnica, como ser de exigncia da Receita Federal, obrigando todas empresas a
emitir nota fiscal eletrnica (NFE). Anexo 1.
[RF - 15 ] Registrar Movimentao Caixa
O sistema registrar toda movimentao diria do caixa. Como entrada e sada de capital,
venda de produto, pagamento de contas, pagamento a fornecedor e recebido cliente.
[RF - 16] Lembrar Tarefas Dirias

O sistema dever lembrar o usurio de alguma tarefa agendada para a data atual. Essa
tarefa pode ser uma conta a pagar, ou qualquer compromisso armazenado.
[RF - 17] Preencher Horrio
O sistema ir conter uma tela aonde o funcionrio ir preencher o seu horrio de entrada e
sada, atravs de dois botes, que iro pegar o dia, ms, ano e hora do sistema e cadastrar na base
de dados.
[RF - 18] Gerar Relatrio
O sistema possuir um modulo de gerao de relatrios, aonde poder ser acessado por
um usurio gerente. O gerente ir escolher um relatrio, dentre uma lista, para que seja gerado e
posteriormente impresso. Os relatrios possuram as mais diferentes naturezas, como financeiros,
horrios cumpridos no ms por determinado funcionrio entre outros tipos de relatrios.
[RF - 19] Cadastrar Cliente
O sistema ir possuir um cadastro para os clientes, aonde o funcionrio ir cadastrar o
cliente com seus dados pessoais (Nome completo, CPF, RG, endereo), para facilitar futuras
compras desse mesmo cliente.
[RF - 20] Alterar Cliente
Caso o cliente tenha mudado alguma de suas informaes, o sistema permitira alterar
todos os seus atributos com exceo de CPF e RG. Essas alteraes sero feitas pelo funcionrio.
[RF - 21] Excluir Cliente
O sistema ir permitir a excluso do cliente do sistema, caso seja solicitado, aonde o
funcionrio ir realizar essa tarefa. O sistema ir apagar completamente as informaes daquele
cliente.
[RF - 22] Realizar Pedido Direto
O sistema permitira a realizao de um controle de pedidos de forma direta, aonde,
compra do fornecedor e efetua o pagamento no momento da compra.
[RF - 23] Realizar Pedido Consignado
O sistema permitira a realizao de um controle de pedidos de forma consignada, aonde,
compra do fornecedor e efetua o pagamento apenas dos produtos vendidos e devolve os demais.
[RF - 24] Controle de Caixa
O sistema permitira a realizao de um controle de caixa, de forma a gerar relatrios que
auxiliem no nesse controle.
6 REQUISITOS NO FUNCIONAIS
6.1 REQUISITOS DE PROCESSO
[RNF /PROC -01]
Sistema desenvolvido na linguagem Java de modo a ser compatvel com o sistema operacional
Windows, podendo ser estendido aos demais sistemas operacionais. Utilizando um sistema

10

gerenciador de banco de dados open source, porm de grande aceitao no mercado o PostGres
SQL.
[RNF /PROC -02]
Ser criado um documento contendo um diagrama de classes, diagrama de caso de uso e demais
diagramas, como tambm informaes sobre o cdigo fonte.
[RNF /PROC- 03]
Ser criado um cronograma detalhado para o processo de desenvolvimento no qual constem: as
atividades a serem desenvolvidas e em que perodo e com que recursos humanos e fsicos sero
desenvolvidos o sistema.
6.2 REQUISITOS DO PRODUTO
* SEGURANA
[RNF /SEG - 04]
Os usurios tero que ter permisso para utilizar algumas funcionalidades do sistema, dever
utilizar do login e senha para manipular estoque dos produtos, e gerencia dos funcionrios.
* USABILIDADE
[RNF /USAB - 05]
A interface do sistema ser agradvel, objetiva e trivial ao usurio. Suas funcionalidades e
informaes deveram estar bem visveis e disponveis.
[RNF /USAB - 06]
Comunicao sistema e usurio com mensagens simples, explicativas do erro gerado. Evitando
termos tcnicos.
[RNF /USAB - 07]
O Sistema disponibilizar ao usurio um menu "Ajuda", onde trar de forma objetiva
informaes sobre o sistema e suas demais funes e possveis duvidas.
* DESEMPENHO E CUSTO
[RNF /DES- 08]
O Sistema usar um banco de dados relacional gil e seguro, assim garantindo a segurana dos
dados, mas tambm agilizando desempenho do sistema. Este banco de dados ser o PostGres
SQL, por ser um software livre, haver uma considervel diminuio dos custos.
[RNF /DES - 09]
Para um melhor desempenho do sistema recomendada uma mquina razovel. Com os
seguintes requisitos mnimos.
Definimos Mquina Tipo_A possuindo no mnimo: Processador 1200MHz, 512Mb de Memria,
espao mnimo no HD de 1GB.
6.3 O GRAFO SIG (SOFTGOAL INTERDEPENDENCY GRAPHS)

11

Este permite uma viso vertical desde a estratgia de alto nvel at o detalhe. Cujo
principal objetivo demonstrar que os requisitos no-funcionais reorganizados proporcionam
uma viso mais realista do sistema. Atravs dele podemos verificar o que deve ser
operacionalizado para atender determinado requisito e como ele contribui (positivo ou
negativamente) para os demais.
Consideramos:

Interface personalizada: uma interface do sistema, adequada e proposta pelo usurio


final. Onde ele decide quais e onde os campos devem estar distribudos nas telas de viso
computador-usurio.

Linguagem simples: um sistema de fcil uso, com atalhos, e menus personalizados,


tirando todos os termos tcnicos.

Preciso nos dados: uso de criptografia para armazenamento de informaes pessoais,


validao dos dados antes do seu armazenamento no SGBD.

Tratamento de erros: mostrando ao usurio onde esta o erro, e se ele capaz de corrigilo sem necessitar de interveno dos programadores no cdigo.

12

Figura 2 O grafo SIG

13

7 MODELAGEM ORGANIZACIONAL i*
7.1 MODELO DE DEPENDNCIAS ESTRATGICAS
A partir de uma viso macro do modelo nota-se que composto de cinco atores, sendo
que a utilizao direta do sistema feita apenas pelos atores gerente e funcionrio, essa interao
especificada pelas dependncias destes com o ator sistema.

14

Figura 3: Modelo de Dependncias Estratgicas (SD)

15

O ator funcionrio interage com o ator sistema, realizando alguns objetivos como
gerenciar produtos e clientes, vendas, consultas. Todas estas operaes para no impor
dificuldade ao usurio na utilizao do sistema so necessrias que ele tenha uma boa
usabilidade. Por haver grande fluxo de informaes entre os atores, sendo que o funcionrio tem
uma dependncia de obter funcionalidades e resultados junto ao sistema, necessrio que esta
comunicao seja feita de forma segura e gil.
O ator gerente pode ser considerado um funcionrio especializado, sendo assim ele poder
executar todas as operaes de um funcionrio comum, para isto ele faz uso de um login/senha
diferenciado. Esta especializao denotada com a ligao ISA entre os atores.
Alm das operaes herdadas do ator funcionrio, ele se relaciona com o ator sistema
ao fazer uso das funes: gerenciar funcionrio, gerar relatrios, estas sendo essenciais ao
funcionamento da organizao.
Para que o sistema seja rpido, com dados ntegros e confiveis ele dependera da
qualidade do sistema gerenciador de banco de dados.
7.2 MODELO DE RAZES ESTRATGICAS
O modelo SR (figura 3) complementa o modelo SD de forma a compreender e modelar de
maneira mais detalhada as razes associadas com cada ator e suas dependncias.
Percebem-se pela expanso do ator sistema, as diversas tarefas por de trs do ator sistema, como
gerenciamento de produtos, clientes e funcionrios q se subdividem em cadastrar, alterar e
deletar, alm das razes de outras funcionalidades do sistema, que podem ser melhor entendidas
no modelo SR a seguir.

16

Figura 4: Modelo de Razes Estratgica (SR)

17

8 CASOS DE USO

Figura 5, Casos de Uso.

8.1 DESCRIO DOS CASOS DE USO


[Caso de uso 001] Cadastrar Produto
Descrio: O usurio dever fazer entrada dos dados referente a cada produto.
Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio dever estar logado no sistema. E nome ou cdigo de barras do produto
ainda no cadastrado.
Ps-Condies: Retorno mensagem de produto cadastrado.
Cenrio Principal de Sucesso:
1. O usurio deve ir ao cadastro do produto.
2. O usurio dever informar os dados do produto.
3. O usurio submete os dados necessrios para armazenamento no banco de dados.
4. O sistema validar os dados e retorna mensagem de sucesso.
Cenrio Secundrio:
4.1. O sistema aborta a validao dos dados e retorna mensagem de erro, e mostra quais dados
so necessrios para o cadastro do produto.

18

[Caso de uso 002] Alterar dados Produto


Descrio: O usurio dever fazer entrada dos dados referente busca do produto, como cdigo
identificador ou nome do produto.
Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio dever estar logado no sistema. E o usurio deve fornecer um dos dados
para encontrar o produto.
Ps-Condies: Retorno mensagem de alterao realizada com sucesso.
Cenrio Principal de Sucesso:
1. O usurio deve ir ao cadastro do produto.
2. O usurio dever informar os dados do produto referente busca.
3. O usurio ter os dados do produto, podendo alter-los conforme sua necessidade, exceto
cdigo identificador do produto.
4. O usurio submete a alterao e o sistema validar os dados.
5. O sistema retornar mensagem de sucesso.
Cenrio Secundrio:
4.1. O sistema aborta a validao dos dados e retorna mensagem de erro, e mostra quais dados
so necessrios para o cadastro do produto.
[Caso de uso 003] Excluir Produto
Descrio: O usurio dever fazer entrada dos dados referente a busca como seu cdigo
identificador ou nome do produto.
Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio dever estar logado no sistema. E o usurio deve fornecer um dos dados
para encontrar o produto.
Ps-Condies: Retorno mensagem de excluso realizada com sucesso.
Cenrio Principal de Sucesso:
1. O usurio deve ir ao cadastro do produto.
2. O usurio dever informar os dados do produto referente busca.
3. O sistema retornar os dados do cadastro do produto. O usurio ter a visualizao dos dados
do produto no sistema.
4. O usurio submete a ao para excluir o produto.
5. O sistema retornar mensagem de sucesso.
[Caso de uso 004] Consulta Livro Web
Descrio: Qualquer ator pode entrar na pgina web do sistema, e poder consultar a existncia
de algum livro.
Atores envolvidos: Todos.
Pr-condio: O usurio dever ter acesso internet e o endereo da home page da empresa.
Cenrio Principal de Sucesso:
1. O ator deve ir ao endereo da home page da empresa.
2. E passar ao sistema as informaes necessrias para a busca, como nome do livro ou autor.
3. O sistema retornar os registros da referente busca do usurio.
4. Sero listados pelo sistema todos os registros, mostrando se existe o produto no estoque.

19

5. O ator pode consultar a quantidade, o valor, e a disponibilidade do produto.


Cenrio Secundrio:
4.1. O sistema retorna mensagem de produto no encontrado.
[Caso de uso 005] Agendar Tarefa
Descrio: O Sistema agendar qualquer tarefa ou compromisso solicitado pelo usurio.
Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio devera estar logado no sistema. E o horrio solicitado estar vago.
Ps-Condies: Retorno da condio do agendamento, agendamento realizado com sucesso ou
erro.
Cenrio Principal de Sucesso:
1. O sistema apresenta todas as datas e horrios vagos.
2. O usurio dever selecionar o horrio para o possvel agendamento.
3. O usurio submete os dados necessrios para agendamento.
4. O sistema valida os dados e retorna mensagem de sucesso.
Cenrio Secundrio:
4.1. O sistema aborta a validade dos dados e retorna mensagem de erro, e volta tela de
compromissos.
[Caso de uso 006]: Controle Caixa
Descrio: O Sistema far o controle de todas as movimentaes dirias do caixa.
Atores envolvidos: Gerente.
Pr-condio: Apenas usurios com acesso privilegiado ao sistema podero controlar a
movimentao do caixa. Todas as movimentaes so registradas, para relatar ao gerente.
Ps-condio: Redireciona o Sistema a operao desejada.
Cenrio Principal de Sucesso:
1. O caso de uso iniciado quando o usurio entra com o login e senha.
2. O usurio escolhe a opo caixa.
3. O sistema apresentar ao usurio todas as movimentaes realizadas at o momento. Entrada e
sada do caixa. Podendo escolher visualizar o detalhamento dos movimentos, ou impresso do
relatrio, ou poder gerar alguma entrada ou sada de capital.
4. O usurio seleciona a opo fechar caixa. <<include>>
Cenrio Secundrio
3.1. Caso o usurio escolha a opo sada no passo 3, o sistema redireciona-o ao Caso de uso
Sada do Caixa <<extends>>.
3.2. Caso o usurio escolha a opo entrada do caixa no passo 3, o sistema remete ao Caso de uso
Entrada do Caixa <<extends>>.
4.1. Caso o usurio escolha a opo Fechar Caixa <<include>>, o sistema ser redirecionado ao
caso de uso Fechar Caixa.
[Caso de uso 007] Sada do Caixa
Descrio: Registrar e atualizar a retirada de capital do caixa.
Atores envolvidos: Usurios do sistema.
Pr-condio Usurio deve estar logado no sistema e ter realizado o Caso de Uso Controle Caixa

20

Cenrio Principal
1. O Sistema apresentar a descrio e valor da retirada.
2. O usurio confirma os dados.
3. O Sistema validar a retirada, e a movimentao do caixa ser registrada. O sistema exibir
uma mensagem de sucesso.
Cenrio Secundrio
2.1 Caso o usurio negue a confirmao, o sistema voltara ao Caso de Uso Controle Caixa.
[Caso de uso 008] Entrada do Caixa
Descrio: Registrar e atualizar a entrada de capital do caixa.
Atores envolvidos: Usurios do sistema.
Pr-condio Usurio deve estar logado no sistema e ter realizado o Caso de Uso Controle Caixa
Cenrio Principal
1. O Sistema apresentar a descrio, valor da entrada e o tipo (venda de produto ou entrada
capital).
2. O usurio confirma os dados.
3. O Sistema validar a entrada, e a movimentao do caixa ser registrada. O sistema exibir
uma mensagem de sucesso.
Cenrio Secundrio
2.1 Caso o usurio negue a confirmao, o sistema voltara ao Caso de Uso Controle Caixa.
[Caso de uso 009]: Contas a Pagar
Descrio: O Sistema exibir todas as contas a serem pagas em data determinada.
Atores envolvidos: Usurio do Sistema.
Pr-condio Usurio deve estar logado no sistema. E o caixa da empresa possuir capital.
Cenrio Principal de Sucesso:
1. O caso de uso iniciado quando o usurio solicita o lembrete das contas do dia.
2. O usurio poder visualizar todas as contas do dia.
3. O usurio seleciona a conta a ser paga, registrando a retirada do caixa.
Cenrio Secundrio:
3.1 O sistema valida a retirada do caixa, para pagar a conta, e ser remetido ao caso de uso Sada
Caixa<<extends>>.
[Caso de uso 010] Fechar Caixa
Descrio: O Sistema finalizar o caixa dirio, mostrando todas as movimentaes e saldo final.
Atores envolvidos: Gerente
Pr-condio: O usurio estar logado e com privilgios de gerente. O caixa dever estar aberto
no dia e houver alguma movimentao.
Cenrio Principal de Sucesso:
Cenrio Principal
1. O Sistema apresentar a descrio de todos os registros do caixa.
2. O usurio confirma os dados. E solicita fechamento.
3. O Sistema validar a entrada, e a movimentao do caixa ser registrada. O sistema exibir
uma mensagem de sucesso.

21

Cenrio Secundrio
2.1 Caso o usurio negue a confirmao, o sistema voltara ao Caso de Uso Controle Caixa.
[Caso de uso 011]: Logar no Sistema
Descrio: O usurio dever entrar com seus dados: login e senha. O Sistema dever permitir
acesso ao contedo do software se somente se os dados estiverem corretos.
Atores envolvidos: Gerente e Funcionrio.
Pr-condio O usurio j devera possuir seu cadastro no sistema.
Cenrio Principal de Sucesso:
1 O caso de uso iniciado com o login e senha do usurio.
2 O usurio dever entrar com seus dados.
3 O sistema busca no banco de dados se os dados esto corretos
4. O sistema retorna mensagem de login realizado com sucesso e ser iniciado, liberando as
funcionalidades de acordo com o privilegio do usurio.
Cenrio Secundrio:
4.1 O sistema retorna a mensagem de erro login invlido.
[Caso de uso 012]: Efetuar Venda
Descrio: O usurio entrara com alguns dados do cliente em seguida os cdigos e quantidades
dos produtos da venda.
Atores envolvidos: Gerente e Funcionrio
Pr-condio O usurio j devera estar logado no sistema, e o cliente ter um cadastro existente
no banco de dados do sistema.
Cenrio Principal de Sucesso:
1. O caso de uso iniciado com a solicitao de venda dos produtos.
2. O usurio devera entrar com os dados do cliente para busca como nome ou cdigo
identificador.
3. O usurio da inicio a venda, passando os cdigos identificadores dos produtos e a sua
respectiva quantidade de venda.
4. O sistema validar os dados e ir retornar a mensagem de sucesso.
Cenrio Secundrio:
4.1. O sistema internamente far um registro da venda, para a gerao de um relatrio de venda.
<<include>>.
4.2 O sistema emitir uma nota fiscal eletrnica <<extend>>, referente venda.
4.3 O sistema ir fazer a atualizao do estoque, sobre os produtos vendidos. <<include>>. Caso
de uso Controlar Estoque.
[Caso de uso 013]: Gerar Relatrio
Descrio: Ser solicitada a gerao de um relatrio especifico a uma operao.
Atores envolvidos: Usurio do sistema
Pr-condio O usurio j devera estar logado no sistema.
Cenrio Principal de Sucesso:
1. O caso de uso iniciado com a solicitao da gerao do relatrio.

22

2. O usurio aceitar a mensagem de confirmao.


3. O sistema gerar um documento com todos os registros do caixa, e a inscrio de novos
alunos, ou um relatrio referente a venda.
4. O sistema retorna esse documento para impresso.
Cenrio Secundrio:
2.1 Caso no confirme a mensagem de gerao do relatrio, o sistema ser redirecionado
a tela inicial.
[Caso de uso 014] Cadastrar Cliente
Descrio: O usurio dever fazer entrada dos dados pessoais de cada cliente.
Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio dever estar logado no sistema. E o nome do cliente ainda no estiver
cadastrado no banco de dados do sistema.
Ps-Condies: Retorno mensagem de produto cadastrado.
Cenrio Principal de Sucesso:
1. O usurio deve ir ao cadastro do cliente.
2. O usurio dever informar os dados pessoais do cliente.
3. O usurio submete os dados necessrios para armazenamento no banco de dados.
4. O sistema validar os dados e retorna mensagem de sucesso.
Cenrio Secundrio:
4.1. O sistema aborta a validao dos dados e retorna mensagem de erro, e mostra quais dados
so necessrios para o cadastro do cliente.
[Caso de uso 015] Alterar dados do Cliente
Descrio: O usurio dever fazer entrada dos dados referente a busca do cliente como cdigo
identificador ou nome de cada cliente.
Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio dever estar logado no sistema. E o usurio deve encontrar o registro do
cliente desejado.
Ps-Condies: Retorno mensagem de alterao realizada com sucesso.
Cenrio Principal de Sucesso:
1. O usurio deve ir ao cadastro do clietne.
2. O usurio dever informar os dados do cliente referente busca, como cdigo identificador ou
nome.
3. O usurio ter os dados do cliente, podendo alter-los conforme sua necessidade, exceto
cdigo identificador do mesmo.
4. O usurio submete a alterao e o sistema validar os dados.
5. O sistema retornar mensagem de sucesso.
Cenrio Secundrio:
4.1. O sistema aborta a validao dos dados e retorna mensagem de erro, e mostra quais dados
so necessrios para o cadastro do cliente.
[Caso de uso 016] Excluir Cliente
Descrio: O usurio dever fazer entrada dos dados referente busca do cliente como cdigo

23

identificador ou nome do cliente.


Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio dever estar logado no sistema. E o usurio deve encontrar o cliente
desejado.
Ps-Condies: Retorno mensagem de excluso realizada com sucesso.
Cenrio Principal de Sucesso:
1. O usurio deve ir ao cadastro do cliente.
2. O usurio dever informar os dados do cliente referente busca, como cdigo identificador ou
nome.
3. O usurio ter a visualizao dos dados do cliente no sistema.
4. O usurio submete a ao para excluir o cliente e o sistema retorna mensagem de sucesso.
[Caso de uso 017] Controlar Estoque
Descrio: O sistema ser responsvel por controlar o fluxo do estoque da empresa. Com todas
as movimentaes das vendas ou compras.
Atores envolvidos: Usurio do sistema.
Pr-condio: O usurio dever estar logado no sistema. O usurio dever encontrar o registro
do produto a ser alterado.
Ps-Condies: Retorno mensagem de sucesso.
Cenrio Principal de Sucesso:
1. O usurio deve ir at a opo de controlar estoque.
2. O usurio dever informar os dados do produto referente busca, como cdigo identificador
ou nome.
3. O usurio ter a visualizao dos dados do produto no sistema.
4. O usurio submete a ao para atualizar o estoque e o sistema retorna mensagem de sucesso.
Cenrio Secundrio de Sucesso:
1. O sistema internamente ser redirecionado aps uma venda ou uma compra de produtos, para o
controle de estoque.
2. O sistema far baixa ou atualizao do estoque referente a cada produto da operao.
3. O estoque do produto ser atualizado na base de dados.
4. Ser devolvida pelo sistema uma mensagem de sucesso.
Cenrio Secundrio Falha:
4.1 Caso o estoque do produto seja negativo, ou zerado, o sistema retornar uma mensagem de
estoque insuficiente para a realizao da venda.
[Caso de uso 018] Gerar NFe
Descrio: O sistema ser responsvel por gerar uma Nota Fiscal Eletrnica para cada venda
efetuada.
Atores envolvidos: Sistema.
Pr-condio: Ser necessrio a finalizao da venda, e todos os dados dos produtos, cliente e da
empresa forem validos.
Ps-Condies: Retorno mensagem de sucesso.
Cenrio Principal de Sucesso:
1. O Sistema aps a venda ser remetido a Emisso de NFe.
2. O sistema ir gerar o arquivo XML referente aos dados da venda.

24

3. O sistema emissor de NFe, ir pegar este arquivo e fazer a validao do mesmo juntamente
com a receita federal.
4. O sistema ir disponibilizar a Danfe em extenso PDF para impresso da NFe.
Cenrio Secundrio:
3.1 A validao dos dados do arquivo XML est inconsistente, a emisso da Danfe ser
temporariamente suspensa at a correo dos dados.
9 DIAGRAMAS DE CLASSES

Figura 5 Representao Diagrama de Classes

9.1 DESCRIO TEXTUAL DO DIAGRAMA DE CLASSES


No Diagrama de classe acima foi mostrado s classes do sistema separadas por camadas, onde a
camada de viso no teve seus atributos e operaes mostradas e tambm no ter sua descrio
textual mostrada, por motivo de no se achar necessrio j que foi utilizada a arquitetura MVC e
com isso a camada de viso s possui praticamente mtodos de interface pr prontos fornecidos
pela ferramenta de desenvolvimento NetBeans.
Utilizamos a documentao usando javadoc para complementar a descrio das classes via
cdigo do sistema.

25

Descrio
Atributos
Nome: String
Telefone: String
Tipo: String
Codigo: int
Endereco: String
Operaes
Pessoa()
getCodigo(): int
setCodigo(ID: int): void
setNome(nome: String):
void
getNome(): String
setTelefone (telefone:
String): void
getTelefone():String
setTipo(t: String): void
getTipo(): String

Descrio

Atributos
DataNascimento: Date
RG: String
CPF: String
Operaes
Pessoa()
getDataNascimento ():
date
setDataNascimento
(Data: date): void
setRG (RG: String): void
getRG(): String
setCPF(CPF: String):
void
get CPF ():String

Descrio

PessoaEmpresa
Classe responsvel por encapsular os atributos do objeto PessoaEmpresa e
pela criao das funes de manipulao das mesmas (camada modelo).
Responsvel pelo armazenamento de informao referente ao nome da pessoa
ou da empresa.
Responsvel pelo armazenamento de informao referente ao telefone da
pessoa ou da empresa.
Responsvel pelo armazenamento de informao referente ao tipo da pessoa
( gerente , funcionrio ou cliente) .
Responsvel pelo armazenamento de informao referente a identificao da
pessoa ou da empresa.
Responsvel pelo armazenamento de informao referente ao endereo da
pessoa ou da empresa.
Construtor Default
Retorna o valor da varivel referente ao identificador da pessoa.
Seta o Codigo (altera o valor da varivel referente a identificao da pessoa).
Seta o nome (altera o valor da varivel referente ao nome da pessoa).
Retorna o valor da varivel referente ao nome da pessoa
Seta o telefone (altera o valor da varivel telefone da pessoa).
Retorna o valor da varivel referente ao telefone da pessoa.
Seta a tipo de pessoa (altera o valor da varivel referente ao tipo de pessoa).
Retorna o valor da varivel referente ao tipo da pessoa (gerente, vendedor ou
cliente).
Cliente
Classe responsvel por encapsular os atributos do objeto Cliente e pela criao
das funes de manipulao das mesmas, herdando todos os atributos e
mtodos da classe PessoaEmpresa. (camada modelo).
Responsvel pelo armazenamento de informao referente a data de
nascimento do cliente.
Responsvel pelo armazenamento de informao referente ao RG do cliente.
Responsvel pelo armazenamento de informao referente ao CPF do cliente.
Construtor Default
Retorna o valor da varivel referente a data de nascimento do cliente.
Seta a Data de Nascimento (altera o valor da varivel referente a data de
nascimento do cliente).
Seta o RG (altera o valor da varivel referente ao RG do cliente).
Retorna o valor da varivel referente ao RG do cliente.
Seta o CPF (altera o valor da varivel CPF do cliente).
Retorna o valor da varivel referente ao CPF do cliente.
Funcionario
Classe responsvel por encapsular os atributos do objeto Funcionrio e pela

26

criao das funes de manipulao das mesmas, herdando os atributos e


mtodos da classe pessoasempresa (camada modelo).
Atributos
DataNascimento: Date
DataContratacao: Date
RG: String
CPF: String
Operaes
Funcionrio ()
getDataNascimento ():
date
setDataNascimento
(Data: date): void
getDataContratacao ():
date
setDataContratacao
(Data: date): void
setRG (RG: String): void
getRG(): String
setCPF(CPF: String):
void
get CPF ():String

Descrio

Atributos
CNPJ: String
Operaes
Fornecedor ()
set CNPJ (c: String):
void
get CNPJ (): String

Descrio
Atributos
Codigo: int
Login: String
Senha: String

Responsvel pelo armazenamento de informao referente a data de


nascimento do funcionrio.
Responsvel pelo armazenamento de informao referente a data de
contratao do funcionrio.
Responsvel pelo armazenamento de informao referente ao RG do
funcionrio.
Responsvel pelo armazenamento de informao referente ao CPF do
funcionrio.
Contrutor Default
Retorna o valor da varivel referente a data de nascimento do funcionrio.
Seta a Data de Nascimento (altera o valor da varivel referente a data de
nascimento do funcionrio).
Retorna o valor da varivel referente a data de contratao do funcionrio.
Seta a Data de Contratao (altera o valor da varivel referente a data de
contratao do funcionrio).
Seta o RG (altera o valor da varivel referente ao RG do funcionrio).
Retorna o valor da varivel referente ao RG do funcionrio.
Seta o CPF (altera o valor da varivel CPF do funcionrio).
Retorna o valor da varivel referente ao CPF do funcionrio.
Fornecedor
Classe responsvel por encapsular os atributos do objeto Funcionrio e pela
criao das funes de manipulao das mesmas, herdando os atributos e
mtodos da classe PessoaEmpresa (camada modelo).
Responsvel pelo armazenamento de informao referente ao CNPJ do
fornecedor.
Contrutor Default
Seta o CNPJ (altera o valor da varivel referente ao CNPJ do Funcionrio).
Retorna o valor da varivel referente ao CNPJ.
Usuario
Classe responsvel por encapsular os atributos do objeto Usuario e pela
criao das funes de manipulao das mesmas (camada modelo).
Responsvel pelo armazenamento de informao referente ao cdigo do
usurio.
Responsvel pelo armazenamento de informao referente ao login do
usurio.
Responsvel pelo armazenamento de informao referente a Senha do usurio.

27

Permisses: Permissoes
Operaes
Usuario()
getCodigo(): int
setCodigo(Codigo: int):
void
getLogin ():String
setLogin (Login: String):
void
getSenha ():String
setSenha (Senha:
String): void
getPermisses ():
Permissoes
setPermisses
(Permissao: Permissoes):
void

Descrio
Atributos
Nome: String
Descricao: String
Unidade: String
Marca: String
Codigo: int
Quantidade: double
Preco: double
Localizacao: double
Operaes
getNome(): String
setNome(n: string): void
getCodigo(): int
setCodigo(Cdigo: int):
void
getDescricao(): String
setDescricao(d:
String):void
getMarca(): String
setMarca(r: String): void
getQuantidade(): double
setQuantidade(q: double):

Responsvel pelo armazenamento de informaes referente as Permisses do


usurio.
Contrutor Default
Retorna o valor da varivel referente ao identificador do usurio.
Seta o Codigo (altera o valor da varivel referente ao identificao do
usurio).
Retorna o valor da varivel referente ao login do usurio.
Seta o Login (altera o valor da varivel referente ao login do usurio).
Retorna o valor da varivel referente a senha do usurio.
Seta o Senha (altera o valor da varivel referente a senha do usurio).
Retorna o valor da varivel referente as permisses do usurio.
Seta o Permissoes (altera o valor da varivel referente as permisses do
usurio).

Produto
Classe responsvel por encapsular os atributos do objeto Produto e pela
criao das funes de manipulao das mesmas( camada modelo).
Responsvel pelo armazenamento de informao referente ao nome do
produto.
Responsvel pelo armazenamento de informao referente a descrio do
produto
Responsvel pelo armazenamento de informao referente ao tipo de medida
do produto.
Responsvel pelo armazenamento de informao referente a marca do
produto.
Responsvel pelo armazenamento de informao referente ao numero de
identificao do produto.
Responsvel pelo armazenamento de informao referente a quantidade do
produto.
Responsvel pelo armazenamento de informao referente ao preo do
produto.
Responsvel pelo armazenamento de informao referente a localizao do
produto.
Retorna o valor do varivel referente ao nome do produto.
Seta o nome (altera o valor da varivel referente ao nome do Produto).
Retorna o valor da varivel referente ao identificador do Produto.
Seta o Codigo (altera o valor da varivel referente ao Cdigo do produto).
Retorna o valor da varivel referente a descrio do produto
Seta a descricao (altera o valor da varivel referente a descrio do produto).
Retorna o valor da varivel referente a marca do produto
Seta o marca (altera o valor da varivel referente a marca do produto).
Retorna o valor da varivel referente a quantidade do produto
Seta a quantidade (altera o valor da varivel referente a quantidade do

28

void
getLocalizacao(): double
setLocalizacao(q:
double): void
getValor(): double
setValor(q: double): void
getUnidade (): String
setUnidade (q: String):
void

Descrio

Atributos
Editora: String
NumeroPaginas: int
Autor: String
Resumo: String

produto).
Retorna o valor da varivel referente a localizao do produto.
Seta a localizaao (altera o valor da varivel referente a localizao do
produto).
Retorna o valor da varivel referente ao valor do produto.
Seta o preco (altera o valor da varivel referente ao valor do produto).
Retorna o valor da varivel referente a unidade de medida do produto.
Seta a medida (altera o valor da varivel referente a unidade de medida do
produto).
Livro
Classe responsvel por encapsular os atributos do objeto Livro e pela criao
das funes de manipulao das mesmas, herdando os atributos e mtodos da
classe Produto( camada modelo).
Responsvel pelo armazenamento de informao referente a editora do livro.
Responsvel pelo armazenamento de informao referente ao numero de
paginas do livro.
Responsvel pelo armazenamento de informao referente ao autor do livro.
Responsvel pelo armazenamento de informao referente ao resumo do
livro.

Operaes
getEditora(): String
setEditora(n: string): void
getNumeroPaginas(): int
setNumeroPaginas
(Cdigo: int): void
getAutor(): String
setAutor(d: String):void
getResumo(): String
setResumo(r: String):
void

Retorna o valor do varivel referente a editora do livro.


Seta o editora (altera o valor da varivel referente a editora do livro).
Retorna o valor da varivel referente ao numero de paginas do livro.
Seta o numero de paginas (altera o valor da varivel referente ao numero de
paginas do livro).
Retorna o valor da varivel referente ao autor do livro.
Seta a autor (altera o valor da varivel referente ao autor do livro).
Retorna o valor da varivel referente ao resumo do livro
Seta o resumo (altera o valor da varivel referente ao resumo do livro).

Descrio

CompraVenda
Classe responsvel por encapsular os atributos do objeto CompraVenda e
pela criao das funes de manipulao das mesmas(camada modelo).

Atributos
Codigo: int
Data: date
DataVencimento: date
ValorBase: double
ValorJuros: double
PercentMora: double
ValorDesconto: double

Responsvel pelo armazenamento de informao referente ao cdigo da


compra ou da venda.
Responsvel pelo armazenamento de informao referente a data da compra
ou da venda.
Responsvel pelo armazenamento de informao referente a data de
vencimento da compra ou da venda.
Responsvel pelo armazenamento de informao referente ao valor base da
compra ou da venda.
Responsvel pelo armazenamento de informao referente ao valor de juros
da compra ou da venda.
Responsvel pelo armazenamento de informao referente a porcentagem de
mora da compra ou da venda.
Responsvel pelo armazenamento de informao referente ao valor de

29

ValorTotal: double
Itens: Item
Situacao: String
Tipo: String
Operaes
getCodigo (): int
setCodigo (Codigo: int):
void
getData (): date
setData (data: date): void
getDataVencimento ():
date
setDataVencimento
(datavencimento: date):
void
get ValorBase (): doule
set ValorBase (valor:
double): void
get ValorJuros (): double
set ValorJuros (valor:
double): void
get PercentMora ():
double
set PercentMora
(porcentagem: double):
void
get ValorDesconto ():
double
set ValorDesconto (valor:
double): void
get ValorTotal (): String
set ValorTotal (n: string):
void
getItens (): item
setItens (item: item): void
get Situacao (): String
set Situacao (situacao:
String):void
get Tipo (): String
set Tipo(tipo: String):
void

Descrio

desconto da compra ou da venda.


Responsvel pelo armazenamento de informao referente ao valor total da
compra ou da venda.
Responsvel pelo armazenamento de informao referente aos itens da
compra ou da venda.
Responsvel pelo armazenamento de informao referente a situao da
compra ou da venda.
Responsvel pelo armazenamento de informao referente ao tipo da compra
ou da venda.
Retorna o valor do varivel referente ao codigo da compra ou da venda.
Seta o codigo (altera o valor da varivel referente ao codigo da compra ou da
venda).
Retorna o valor do varivel referente a data da compra ou da venda.
Seta a data (altera o valor da varivel referente a data da compra ou da
venda).
Retorna o valor do varivel referente a data de vencimento da compra ou da
venda.
Seta a data de vencimento(altera o valor da varivel referente a data de
vencimento da compra ou da venda).
Retorna o valor do varivel referente ao valor base da compra ou da venda.
Seta o valor base (altera o valor da varivel referente ao valor base da
compra ou da venda).
Retorna o valor do varivel referente ao valor dos juros da compra ou da
venda.
Seta o valor de juros (altera o valor da varivel referente ao valor de juros da
compra ou da venda).
Retorna o valor do varivel referente a porcentagem de mora da compra ou
da venda.
Seta a porcentagem de mora(altera o valor da varivel referente a
porcentagem da mora da compra ou da venda).
Retorna o valor do varivel referente ao valor de desconto da compra ou da
venda.
Seta o valor de desconto (altera o valor da varivel referente ao valor de
desconto da compra ou da venda).
Retorna o valor do varivel referente ao valor total da compra ou da venda.
Seta o valor total (altera o valor da varivel referente ao valor total da
compra ou da venda).
Retorna o valor da varivel referente aos itens da compra ou da venda.
Seta os itens(altera o valor da varivel referente aos itens da compra ou da
venda).
Retorna o valor da varivel referente a situacao da compra ou da venda.
Seta a situacao (altera o valor da varivel referente a situacao da compra ou
da venda).
Retorna o valor da varivel referente ao tipo da compra ou da venda.
Seta o tipo (altera o valor da varivel referente a tipo da compra ou da
venda).
DaoUsuario
Classe responsvel pelas operaes entre os dados do objeto Usuario e o
banco de dados e pela criao das funes de manipulao das mesmas

30

(camada controle).
Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Descrio

DaoFornecedor
Classe responsvel pelas operaes entre os dados do objeto fornecedor e
o banco de dados e pela criao das funes de manipulao das mesmas
(camada controle).

Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Descrio

DaoFuncionario
Classe responsvel pelas operaes entre os dados do objeto funcionario e
o banco de dados e pela criao das funes de manipulao das mesmas
(camada controle).

Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Descrio

DaoCliente
Classe responsvel pelas operaes entre os dados do objeto Cliente e o
banco de dados e pela criao das funes de manipulao das mesmas
(camada controle).

Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Descrio

DaoCompra
Classe responsvel pelas operaes entre os dados do objeto
CompraVenda, porem do tipo Compra e o banco de dados e pela criao
das funes de manipulao das mesmas (camada controle).

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

31

Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Descrio

DaoVenda
Classe responsvel pelas operaes entre os dados do objeto
CompraVenda, porem do tipo Venda e o banco de dados e pela criao
das funes de manipulao das mesmas (camada controle).

Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Descrio

DaoLivro
Classe responsvel pelas operaes entre os dados do objeto livro e o
banco de dados e pela criao das funes de manipulao das mesmas
(camada controle).

Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Descrio

DaoProduto
Classe responsvel pelas operaes entre os dados do objeto produto e o
banco de dados e pela criao das funes de manipulao das mesmas
(camada controle).

Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object

Insere o objeto no banco de dados.


Exclui o objeto no banco de dados .
Altera o objeto no banco de dados utilizando o identificador.

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

Localiza um objeto cadastrado no banco de dados utilizando o


identificador.

CONCLUSO
Este documento tem como meta fornecer uma modelagem para o sistema proposto
inicialmente: um sistema de apoio a empresa de livrarias e revistarias. Esta modelagem orientada
a objetos tornou o processo de desenvolvimento do software mais gil, prtico e de melhor

32

entendimento a todos os membros da equipe, pois todos os passos foram seguidos por dicas e
informaes do cliente.
Assim, com esta documentao foi esclarecido e objetivado todos os requisitos necessrios para a
satisfao da empresa-cliente.
Apndice A Coleta de Informaes
A coleta de informaes baseou-se em entrevistas com um dos membros da equipe que possui
experincia no ramo de revistarias. A partir do primeiro contato, ele explanou o funcionamento
bsico do ambiente organizacional da empresa, varias reunies com a equipe foram necessrias
tendo em vista o bom aproveitamento do sistema, priorizando uma boa usabilidade tanto para
gerentes como para funcionrios.
FORMULRIO DO RELATRIO DA EQUIPE
Nome
Hudson Joo Magalhes
Willian Dias Tamagi
Mauro Brischke

Contribuio
Assinatura
33%
_____________________________________
33%
_____________________________________
33%
_____________________________________

33

Anexo 1 Danfe NFe Demonstrativo

Você também pode gostar