Escolar Documentos
Profissional Documentos
Cultura Documentos
Especificação de Requisitos e Modelagem
Especificação de Requisitos e Modelagem
Paran
CENTRO DE CINCIAS EXATAS E TECNOLGICAS
Colegiado de Cincias da Computao
Curso de Bacharelado em Cincias da Computao
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
5,d
13/06/2011
17/06/2011
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
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:
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:
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
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
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
17
8 CASOS DE USO
18
19
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
23
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
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
Descrio
Atributos
CNPJ: String
Operaes
Fornecedor ()
set CNPJ (c: String):
void
get CNPJ (): String
Descrio
Atributos
Codigo: int
Login: String
Senha: String
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):
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
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
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
30
(camada controle).
Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object
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
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
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
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).
31
Operaes
Inserir(o: Object): String
Excluir(o: Object): String
Alterar(id: Int, o: Object):
String
Localizar( id: Int): Object
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
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
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
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