SIS Virtual Móveis
Sistema Virtual de Venda de Móveis
Grupo : Alexandre Botta Danilo Gomes Felipe Alves Gleydson Mendonça Guilherme Almeida Reginaldo Adão
Escopo
O projeto tem como objetivo o desenvolvimento de um sistema web para venda online de móveis.
O sistema abrange o controle de venda on-line, estoque de móveis, gestão de clientes e usuários.
Requisitos de Negócio
[RN001] O sistema deve possuir níveis de segurança, para que somente pessoas autorizadas usem o mesmo;
[RN002] O cliente poderá comprar mercadorias pela internet através do sistema e somente após o pagamento a mercadoria poderá ser liberada;
[RN003] Os produtos não disponíveis em estoque deverão aparecer nas consultas do sistema, pois o cliente pode solicitar um aviso por e-mail quando determinado produto estiver disponível;
[RN004] Para manter um bom relacionamento com os clientes o sistema deverá dispor de uma funcionalidade que informe o status do(s) pedido(s) efetuado(s).
Requisitos de Negócio
[RN005] A forma de pagamento permitida será somente à vista e via deposito bancário. O responsável em verificar se os pagamentos foram realizados será do Sistema de Pagamento.
[RN006] Relatórios com informações sobre percentual de vendas por produto no mês, ano deverão ser emitidos para apoio em tomada de decisões;
[RN007] O operador do sistema locado na loja será o responsável em manter os produtos no sistema: cadastrar, alterar, excluir.
Requisitos Funcionais
[RF001] Administrar usuário[RF002] Manter produto[RF003] Consultar produto[RF004] Consultar estoque[RF005] Solicitar aviso de disponibilidade de produto[RF006] Efetuar compra[RF007] Enviar compra para sistema de pagamento[RF008] Confirma pagamento[RF009] Autorizar entrega[RF010] Consultar status do pedido[RF011] Emitir relatórios
Os requisitos funcionais serão priorizados e distribuídos ao longo dos ciclos de desenvolvimento previstos no projeto. A especificação de requisitos funcionais está pautada em Casos de Uso, de acordo com as recomendações técnicas do projeto.
Requisitos Não Funcionais
[RnF001] Disponibilidade
[RnF002] Segurança
[RnF003] Escalabilidade
[RnF004] Usabilidade
[RnF005] Portabilidade
Os requisitos não funcionais são características que o sistema deverá atender, porém não são traduzidos para funcionalidades. Estas características deverão sempre ser respeitadas, pois as mesmas são vitais para o funcionamento do sistema.
Relação de Atoresuc Actors
Administrador do SistemaOperador
Cliente Sistema de Pagamento Sistema de Entrega
Diagrama de Caso de Usouc Use Cases
SIS_Virtual_Moveis
Administrador do Sistema
[UC001] - Administrar Usuario
[UC002] - Manter Produtos
[UC006] - Efetuar Compra
[UC005] - Av isar Disponibilidade de
Produto - email
[UC011] - Emitir Relatórios
[UC003] - Consultar Produto
Cliente
Operador
SIS Virtual Móveis - Sistema Virtual de Venda de Móveis
[UC004] - Consultar Estoque
Sistema de Pagamento
[UC007] - Env iar Compra Sistema de
Pagamento
[UC009] - Autorizar Entrega
[UC008] - Confirma Pagamento
[UC010] - Cosultar Status do Pedido
Sistema de Entrega
«extend»
«include»
Visões Arquitetônicas do Sistema
As visões arquitetônicas produzidas e validadas tecnicamente, ao longo da fase de elaboração, objetivam orientar o design do software, criando, ao longo do processo, um padrão de desenvolvimento para a realização dos casos de uso de forma incremental.
O SIS Virtual Móveis é apresentado a partir de três visões distintas :
• Visão Lógica• Visão de Implementação • Visão Topológica
Visão Lógica
A visão lógica de arquitetura corresponde, principalmente, ao modelo de classe do projeto. Inicialmente, o modelo de classe representa o Modelo de Domínio do Sistema.
O Modelo de Classe de Domínio é o primeiro artefato do workflow de Análise e é refinado ao longo do design à medida que se realizam os casos de uso.
Modelo de Domínio class System
Operador
- ativo: boolean- login: String- senha: String
Perfil
- ativo: boolean- descricao: String- id: Integer- nome: String
Funcionalidade
- ativo: boolean- descricao: String- id: Integer- nome: String
Funcionario
- cargo: String- cpf: Integer- dataNascimento: Date- id: Integer- nome: String
Produto
- dataFrabricacao: Date- descricao: String- id: Integer- quantidade: int- valorCusto: double- valorVenda: double
Compra
- id: Integer- quantidade: int- valor: double- valorDesconto: double
Cliente
- cpf: int- id: Integer- nome: String
SIS Virtual Móveis - Sistema Virtual de Venda de Móveis
Endereco
- bairro: String- cep: Integer- complemento: String- estado: String- id: Integer- logradouro: String- municipio: String- numero: Integer
Cargo
- descricao: String- id: Integer- nome: String
Estoque
- decricao: String- id: Integer
EntregaServ iceLocator
- dataDeEntrega: Date- id: Integer
EnderecoEntrega
- bairro: String- cep: Integer- complemento: String- estado: String- id: Integer- logradouro: String- municipio: String- numero: Integer
PagamentoServ iceLocator
- dataPagamento: Date- formaPagamento: String- id: Integer
0..*
1
1..* 1..*
0..1 1..*10..*
1
1
11
1
0..*
1..*
1
1
0..*
1
1
Visão de Implementação
A visão de implementação funciona como um blueprint do sistema, e reflete seu design arquitetônico.
Componentes Arquitetônicos
• Pacote Model • Pacote View• Pacote Controler• Pacote Persistence
Modelo de Componentecmp Modelo de Componentes
7582
Model
Controler
Action ActionForm
View
JSTL
Persistence
DAO Hibernate
Banco de Dados
1433
Browser
ControleAcessoFilterAcess
JSP
StrutsTagsCompraBusiness
EmailBusiness
ProdutoBusiness
SistemaPagamentoServ iceLocator
LoginBusiness EntregaServ iceLocator
«use»
«dependency»
«use»
«delegate»
«send»
«use»
Visão Topológicadeployment Modelo Topologico
Serv idor de Banco de DadosServ idor de Aplicação
Serv idor de Backup
SIS Virtual MoveisSGBD - MySql 5.0
Servidor de Banco de Dados
Processador1 processador Quad-Core 64-bit Intel® Xeon® com 2x4MB L2 cache até 2.66GHz
Memória4GB de memória SDRAM
Armazenamento300 GB SATA de Armazenamento Interno
Sistema OperacionalLinux Red Hat 3.7 - Kernel 2.6
Servidor de Aplicação
Processador1 processador Duo Core Intel® Xeon® 2.66GHz
Memória4GB de memória SDRAM
Armazenamento160 GB SATA de Armazenamento Interno
Sistema OperacionalLinux Red Hat 3.7 - Kernel 2.6
SIS Virtual Moveis SGBD - MySql 5.0
Servidor de Backup
Processador1 processador Duo-Core Intel® 2.66GHz
Memória4GB de memória SDRAM
Armazenamento400 GB SATA de Armazenamento Interno
Sistema OperacionalLinux Red Hat 3.7 - Kernel 2.6
Terminal Intranet
Browser
Cliente Intranet
Processador minimo : Pentium II 350MhzMemoria minima : 128MBAdaptador de rede 100MbitsConectado e Autenticado na rede Intranet
«device»Switch
«device»FireWall
«TCP/IP 1Gb»«TCP/IP 100Mb»
«TCP/IP 1Gb»
«TCP/IP 1Gb»
«TCP/IP 1Gb» «TCP/IP 1Gb»
Tecnologias
Ferramentas CASEModelagem de Sistema
Enterprise Architect 7.1Modelagem de Banco
DBDesigner 4
Banco de DadosMySQL 5.0
FrameworksHibernateStruts
Tecnologias
IDEEclipse 3.3
JDK 1.5
ServerJBoss 4.05
Controlador de VersãoSubVersion – SVN 1.4.3
Tecnologias
RelatóriosDisplaytag 1.1Jasper Report 1.2
TesteJUnit 4.0Jmeter 2.2
Ajax
FIM
uc Use Cases
SIS_Virtual_Moveis
Administrador do Sistema
[UC001] - Administrar Usuario
[UC002] - Manter Produtos
[UC006] - Efetuar Compra
[UC005] - Av isar Disponibilidade de
Produto - email
[UC011] - Emitir Relatórios
[UC003] - Consultar Produto
Cliente
Operador
SIS Virtual Móveis - Sistema Virtual de Venda de Móveis
[UC004] - Consultar Estoque
Sistema de Pagamento
[UC007] - Env iar Compra Sistema de
Pagamento
[UC009] - Autorizar Entrega
[UC008] - Confirma Pagamento
[UC010] - Cosultar Status do Pedido
Sistema de Entrega
«extend»
«include»
cmp Modelo de Componentes
7582
Model
Controler
Action ActionForm
View
JSTL
Persistence
DAO Hibernate
Banco de Dados
1433
Browser
ControleAcessoFilterAcess
JSP
StrutsTagsCompraBusiness
EmailBusiness
ProdutoBusiness
SistemaPagamentoServ iceLocator
LoginBusiness EntregaServ iceLocator
«use»
«dependency»
«use»
«delegate»
«send»
«use»
deployment Modelo Topologico
Serv idor de Banco de DadosServ idor de Aplicação
Serv idor de Backup
SIS Virtual Mov eisSGBD - MySql 5.0
Servidor de Banco de Dados
Processador1 processador Quad-Core 64-bit Intel® Xeon® com 2x4MB L2 cache até 2.66GHz
Memória4GB de memória SDRAM
Armazenamento300 GB SATA de Armazenamento Interno
Sistema OperacionalLinux Red Hat 3.7 - Kernel 2.6
Servidor de Aplicação
Processador1 processador Duo Core Intel® Xeon® 2.66GHz
Memória4GB de memória SDRAM
Armazenamento160 GB SATA de Armazenamento Interno
Sistema OperacionalLinux Red Hat 3.7 - Kernel 2.6
SIS Virtual Mov eis SGBD - MySql 5.0
Servidor de Backup
Processador1 processador Duo-Core Intel® 2.66GHz
Memória4GB de memória SDRAM
Armazenamento400 GB SATA de Armazenamento Interno
Sistema OperacionalLinux Red Hat 3.7 - Kernel 2.6
Terminal Intranet
Browser
Cliente Intranet
Processador minimo : Pentium II 350MhzMemoria minima : 128MBAdaptador de rede 100MbitsConectado e Autenticado na rede Intranet
«device»Switch
«device»FireWall
«TCP/IP 1Gb»«TCP/IP 100Mb»
«TCP/IP 1Gb»
«TCP/IP 1Gb»
«TCP/IP 1Gb» «TCP/IP 1Gb»
class System
Operador
- ativo: boolean- login: String- senha: String
Perfil
- ativo: boolean- descricao: String- id: Integer- nome: String
Funcionalidade
- ativo: boolean- descricao: String- id: Integer- nome: String
Funcionario
- cargo: String- cpf: Integer- dataNascimento: Date- id: Integer- nome: String
Produto
- dataFrabricacao: Date- descricao: String- id: Integer- quantidade: int- valorCusto: double- valorVenda: double
Compra
- id: Integer- quantidade: int- valor: double- valorDesconto: double
Cliente
- cpf: int- id: Integer- nome: String
SIS Virtual Móveis - Sistema Virtual de Venda de Móveis
Endereco
- bairro: String- cep: Integer- complemento: String- estado: String- id: Integer- logradouro: String- municipio: String- numero: Integer
Cargo
- descricao: String- id: Integer- nome: String
Estoque
- decricao: String- id: Integer
EntregaServ iceLocator
- dataDeEntrega: Date- id: Integer
EnderecoEntrega
- bairro: String- cep: Integer- complemento: String- estado: String- id: Integer- logradouro: String- municipio: String- numero: Integer
PagamentoServ iceLocator
- dataPagamento: Date- formaPagamento: String- id: Integer
0..*
1
1..* 1..*
0..1 1..*10..*
1
1
11
1
0..*
1..*
1
1
0..*
1
1