Buscar

Shopping Virtual para Pequenas e Médias Empresas

Prévia do material em texto

UNISALESIANO 
Centro Universitário Católico Salesiano Auxilium 
Curso de Tecnologia em Sistemas para Internet 
 
 
 
 
 
 
Bruno Allan Prado Regattieri 
Leandro Pavoni Alexandre de Oliveira 
 
 
 
 
 
 
Shopping Virtual – Cooperativa Digital para 
Pequenas e Médias Empresas 
 
 
 
 
 
 
 
 
 
 
 
LINS – SP 
2010 
 
BRUNO ALLAN PRADO REGATTIERI 
LEANDRO PAVONI ALEXANDRE DE OLIVEIRA 
 
 
 
 
 
SHOPPING VIRTUAL – COOPERATIVA DIGITAL PARA PEQUENAS E 
MÉDIAS EMPRESAS 
 
 
 
 
Trabalho de Conclusão de Curso 
apresentado à Banca Examinadora do 
Centro Universitário Católico Salesiano 
Auxilium, curso de Tecnologia em 
Sistemas para Internet, sob a orientação 
do(a) Prof. (ª) M.Sc Anderson Pazin 
 
 
 
 
 
 
 
 
 
 
LINS – SP 
2010 
 
 
 
 
 
Regattieri, Bruno Allan Prado; Oliveira, Leandro Pavoni Alexandre de 
Shopping Virtual – Cooperativa digital para pequenas e médias 
empresas / Bruno Allan Prado Regattieri; Leandro Pavoni Alexandre de 
Oliveira. – – Lins, 2010. 
79p. il. 31cm. 
 
Monografia apresentada ao Centro Universitário Católico Salesiano 
Auxilium – UNISALESIANO, Lins-SP, para graduação em Tecnologia 
em Sistemas para Internet, 2010. 
Orientador: Anderson Pazin 
 
1. Comércio eletrônico. 2. Java. 3. Vendas. 4. Internet. I Título. 
 
CDU 004 
R258s 
 
 
 
BRUNO ALLAN PRADO REGATTIERI 
LEANDRO PAVONI ALEXANDRE DE OLIVEIRA 
 
 
 
SHOPPING VIRTUAL – COOPERATIVA DIGITAL PARA PEQUENAS E 
MÉDIAS EMPRESAS 
 
Monografia apresentada ao Centro Universitário Católico Salesiano Auxilium, 
para obtenção do título de Tecnólogo em Sistemas para Internet. 
 
 
Aprovada em: _____/______/_____ 
 
Banca Examinadora: 
 
Prof(a) Orientador(a): _____________________________________________ 
Titulação: ______________________________________________________ 
 _______________________________________________________________ 
Assinatura: _________________________________ 
 
1º Prof(a): ______________________________________________________ 
Titulação: ______________________________________________________ 
 _______________________________________________________________ 
Assinatura: _________________________________ 
 
2º Prof(a): ______________________________________________________ 
Titulação: ______________________________________________________ 
 _______________________________________________________________ 
Assinatura: _________________________________ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
I have a dream... 
(Eu tenho um sonho) 
Martin Luther King 
 
 
 
 
DEDICATÓRIA 
 
 
Dedico este trabalho primeiramente a Deus. 
A minha família, em especial a minha mãe, Eliane, que em 
nenhum momento deixou de estar ao meu lado. 
Ao meu irmão, André, pelo companheirismo e amizade. 
Aos amigos de classe, em especial, Murillo, Maria e Pedro por 
cada palavra de incentivo, cada ajuda e cada minuto ao meu lado. 
Ao meu companheiro neste trabalho, Leandro, pela confiança em 
mim depositada. 
Finalmente, aos meus professores que não mediram esforços 
para nos passar todo o seu conhecimento. 
 
Bruno Regattieri 
 
Dedico este trabalho a Deus que me deu forças para conseguir 
finalizá-lo. 
Aos meus pais, João Paulo e Irene, pelo apoio, dedicação, 
esforço e ensinamentos dedicados a mim desde a minha infância. 
A minha família, em especial a minha esposa Vanessa e meu 
enteado Igor, pela paciência e apoio imprescindíveis nesta fase 
de minha vida. 
A meus tios Edenei e Sandra, que me deram a oportunidade de 
trabalho, dando-me a possibilidade de cursar uma faculdade. 
Aos meus colegas de curso, Murillo, Pedro e Maria Eliza, pela 
ajuda e companheirismo, no decorrer do curso. 
Ao meu parceiro Bruno, pela sua colaboração para a realização 
deste trabalho. 
A todos os professores, em especial ao orientador deste trabalho 
Prof. M. Sc Anderson Pazin, pela ajuda e esforço em nos 
transmitir o conhecimento necessário para a realização deste 
trabalho. 
 
Leandro Pavoni 
 
 
 
 
 
 
 
 
 
 
AGRADECIMENTOS 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Agradecemos a todos que de alguma maneira colaboraram para o 
desenvolvimento deste trabalho. 
 
Bruno e Leandro
 
RESUMO 
 
O presente trabalho tem como objetivo desenvolver um sistema de 
comércio eletrônico voltado a empresas de pequeno e médio porte que 
desejam, por meio da internet, ampliar seu campo de atuação no mercado. 
Cresce a cada dia o número de pessoas que têm acesso à rede mundial de 
computadores, e com isso, a possibilidade de se efetuar compras por este tipo 
de software. O tema voltado ao comércio eletrônico tem por razão a atual 
ascendência no mercado de transações de produtos feitas a partir de sites. O 
sistema proposto neste trabalho simula um shopping ou uma cooperativa de 
lojas virtuais, oferecendo um conjunto de recursos administrativos aos lojistas e 
diversas ferramentas aos clientes. Com este sistema, os usuários podem 
utilizar-se das ferramentas de busca para localizar produtos ou mercadorias 
desejadas; fazer uma análise das descrições e ou especificações; optarem pela 
forma de pagamento que lhes convier; e assim, efetivar sua compra apenas por 
meio da internet. Essas compras que só serão finalizadas após cadastro do 
cliente no site. Para os lojistas, a utilização deste sistema propiciará diminuição 
de seus custos, uma vez que poderá beneficiar-se de não dispor de um 
estabelecimento para exposição física das mercadorias. Em suma, o processo 
de compra e venda por meio da internet é muito benéfico, pois produz 
economia a ambas as partes o que eleva consideravelmente o poder de 
compra por parte do cliente e investimento por parte dos fornecedores. 
 
Palavras-chave: Comércio Eletrônico, Java, Vendas, Internet. 
 
ABSTRACT 
 
 
The present work aims to develop an e-commerce system aimed at small 
and medium-sized businesses that desire, through the Internet, open your 
business or expand its field of activity in the market. Grows every day the 
number of people who have access to the worldwide computer network, and 
thereby the ability to make purchases by such software. The topic turned to 
electronic commerce is why the current ascendancy of the market transactions 
of products made from sites. Hereby, we present a system capable of 
performing sales from a list of registered tenants and thus generate these 
reports in order to provide greater control and credibility. With this system, users 
can use up the search engines to locate desired products or goods, may make 
an analysis of the descriptions and specifications or, opt for a payment method 
that suits them, and thus effecting their purchase only through the Internet. 
Purchases that can only be finalized after registration of a client site. And yet, 
for suppliers, the use of this system will facilitate reduction of its costs, since it 
may benefit from not having a physical facility to display the good. In short, the 
process of buying and selling through the Internet is very beneficial because it 
produces savings to both parties which will increase considerably the 
purchasing power of the client and investment by suppliers. 
 
Keywords: E-Commerce. Java. Sales. Internet. 
 
LISTA DE FIGURAS 
 
 
Figura 1. Exemplo de diagrama de pacotes .................................................. 17 
Figura 2. Representação gráfica de uma classe ........................................... 18 
Figura 3. Exemplo de relacionamento de associação ...................................18 
Figura 4. Exemplo de diagrama de classes .................................................. 19 
Figura 5. Diagrama de classes para acordos de vendas de assentos .......... 19 
Figura 6. Diagrama de objetos para confirmação do diagrama da ............... 20 
Figura 7. Representação de uma classe no diagrama de estrutura de 
composição ....................................................................................................... 21 
Figura 8. Diagrama de componentes ............................................................ 21 
Figura 9. Exemplo de diagrama de implantação ........................................... 22 
Figura 10. Diagrama combinado de Componentes/Implantação .................... 23 
Figura 11. Exemplo de diagrama de casos de uso ......................................... 24 
Figura 12. Diagrama de atividade ................................................................... 25 
Figura 13. Exemplo de diagrama de seqüencia .............................................. 26 
Figura 14. Diagrama de máquina de estados ................................................. 26 
Figura 15. Diagrama de máquina de estados do protocolo ............................ 27 
Figura 16. Tela inicial do site Mercado Livre ................................................... 37 
Figura 17. Tela de cadastro do site Mercado Livre ......................................... 37 
Figura 18. Página inicial do site Submarino .................................................... 38 
Figura 19. Diagrama de Use Case 1 – Cadastrar Usuário .............................. 44 
Figura 20. Diagrama de Use Case 2 – Efetuar Login ..................................... 45 
Figura 21. Diagrama de Use Case 3 – Cadastrar Produto ............................. 46 
Figura 22. Diagrama de Use Case 4 – Relatório de Produtos por Loja .......... 47 
Figura 23. Diagrama de Use Case 5 – Relatório de entrega .......................... 47 
Figura 24. Diagrama Use Case 6 – Cliente Realiza Pedido............................ 48 
Figura 25. Diagrama de Use Case 7 – Relatório de Pedidos .......................... 50 
Figura 26. Diagrama de Use Case 8 – Relatório de Produtos Vendidos por 
Loja. .................................................................................................................. 51 
Figura 27. Diagrama de Use Case 9 – Relatório de Produtos por subcategoria
 .......................................................................................................................... 52 
 
 
 
Figura 28. Diagrama de Use Case 10 - Relatório de Produtos por nome....... 52 
Figura 29. Diagrama de Seqüência 1 – Cadastrar Usuário ............................ 54 
Figura 30. Diagrama de Sequência 2 – Efetuar Login .................................... 55 
Figura 31. Diagrama de Sequência 3 – Cadastrar Produto ............................ 56 
Figura 32. Diagrama de Sequência 4 – Relatório de Produtos por Loja ......... 57 
Figura 33. Diagrama de Sequência 5 – Relatório de Entrega ........................ 57 
Figura 34. Diagrama de Sequência 6 – Realizar Pedido ................................ 58 
Figura 35. Diagrama de Sequência 7 – Relatório de Pedidos ........................ 59 
Figura 36. Diagrama de Sequência 8 – Relatório de Produtos Vendidos por 
Loja ................................................................................................................... 60 
Figura 37. Diagrama de Sequência 9 – Relatório de Produtos por 
Subcategoria ..................................................................................................... 61 
Figura 38. Diagrama de Seqüência 10 – Relatório de Produtos por Nome .... 61 
Figura 39. Diagrama de Classes .................................................................... 62 
Figura 40. Tela inicial do sistema ................................................................... 68 
Figura 41. Tela de cadastro de pessoa física ................................................. 69 
Figura 42. Tela de cadastro de pessoa jurídica .............................................. 70 
Figura 43. Tela de busca por produtos pelo nome ......................................... 70 
Figura 44. Tela de carrinho de compras ......................................................... 71 
Figura 45. Tela de cadastro de produtos ........................................................ 71 
Figura 46. Tela de inserção de imagem do produto ....................................... 72 
Figura 47. Tela inicial do perfil dos lojistas ..................................................... 73 
Figura 48. Apresenta a tela de cadastro de produtos ..................................... 73 
Figura 49. Tela de alteração de cadastro de pessoa jurídica ......................... 74 
Figura 50. Tela de cliente logado ................................................................... 74 
Figura 51. Tela de carrinho de compras vazio. ............................................... 75 
Figura 52. Tela de pesquisa de produtos realizada ........................................ 75 
Figura 53. Tela de alteração de cadastro de cliente ....................................... 76 
 
 
 
 
 
 
 
LISTA DE QUADROS 
 
 
Quadro 1. Lista de Casos de Uso ................................................................. 43 
Quadro 2. Tabela Categoria de Produtos ..................................................... 63 
Quadro 3. Tabela Sub Categoria de Produtos .............................................. 63 
Quadro 4. Tabela Produtos .......................................................................... 64 
Quadro 5. Tabela Lojas ................................................................................ 64 
Quadro 6. Regras de validação de campo da tabela Lojas .......................... 64 
Quadro 7. Tabela Usuários ........................................................................... 65 
Quadro 8. Tabela Clientes ............................................................................ 65 
Quadro 9. Tabela Pedido. ............................................................................. 66 
Quadro 10. Tabela Forma de Pagamento ...................................................... 66 
Quadro 11. Tabela Itens Pedidos ................................................................... 66 
Quadro 12. Tabela Entrega ............................................................................ 67 
 
 
LISTA DE TABELAS 
 
 
Tabela 1. Previsão de crescimento na internet no Brasil. .............................. 36 
 
 
LISTA DE SIGLAS OU ABREVIATURAS 
 
 
AJAX: Asynchronous JavaScript and XML (JavaScript e XML Assíncronos) 
API: Application Programming Interfaces (Interfaces de Programação de 
Aplicativos) 
B2C: Business to Consumer (Negócios para Consumidores) 
 
 
 
CSS: Cascading Style Sheets (Folhas de Estilo em Cascata) 
DOM: Document Object Model (Documento de Modelo de Objeto) 
EL: Expression Language (Expressões de Linguagem) 
HTML: HiperText Markup Language (Linguagem de Marcação de Hipertexto) 
JSP: Java Server Pages (Servidor de Páginas Java) 
JSTL: Java Standard Tag Library (Biblioteca de Tags Padrão Java) 
JVM: Java Virtual Machine (Máquina Virtual Java) 
PDA: Personal Digital Assistant (Assistente Pessoal Digital) 
POO: Programação Orientada a Objetos 
SGBD: Sistema Gerenciador de Banco de Dados 
SQL: Structed Query Language (Linguagem de Consulta Estruturada) 
UML: Unified Modeling Language (Linguagem de Modelagem Unificada) 
XHTML: Extensible Hipertext Markup Language (Linguagem Extensível de 
Marcação de Hipertexto) 
XML: Extensible Markup Language (Linguagem de Marcação Extensível) 
XSLT: Extensible Style Sheet Language Transformation (Linguagem de 
Transformação de Folha de Estilos Extensiva) 
 
 
 
SUMÁRIO 
INTRODUÇÃO ...........................................................................................................14 
1 FUNDAMENTOS CONCEITUAIS .......................................................................... 16 
1.1 UML – UNIFIED MODELING LANGUAGE .................................................................. 16 
1.2 PLATAFORMAS TECNOLÓGICAS ............................................................................. 27 
1.2.1 JAVA ................................................................................................................. 27 
1.2.2 SISTEMA GERENCIADOR DE BANCO DE DADOS .................................................... 31 
1.2.3 AJAX (ASYNCHRONOUS JAVASCRIPT AND XML) ................................................. 33 
2 LEVANTAMENTO DE REQUISITOS .................................................................... 36 
2.1 ANÁLISE DE MERCADO .......................................................................................... 36 
2.2 DOCUMENTOS DE REQUISITOS .............................................................................. 38 
2.2.1 A – VISÃO GERAL DO SISTEMA ..................................................................... 38 
2.2.2 REQUISITOS FUNCIONAIS ............................................................................ 39 
2.2.3 REQUISITOS NÃO FUNCIONAIS .................................................................... 42 
3 ANÁLISE ORIENTADA A OBJETOS ..................................................................... 43 
3.1 LISTA DE CASOS DE USO ...................................................................................... 43 
3.2 DIAGRAMA DE CASOS DE USO ............................................................................... 44 
3.2.1 CADASTRAR USUÁRIO ........................................................................................ 44 
3.2.2 EFETUAR LOGIN ................................................................................................ 45 
3.2.3 CADASTRAR PRODUTO ....................................................................................... 46 
3.2.4 RELATÓRIO DE PRODUTOS POR LOJA.................................................................. 47 
3.2.5 RELATÓRIO DE ENTREGA .................................................................................... 47 
3.2.6 REALIZAR PEDIDO .............................................................................................. 48 
3.2.7 RELATÓRIO DE PEDIDOS .................................................................................... 50 
3.2.8 RELATÓRIO DE PRODUTOS VENDIDOS POR LOJA ................................................. 51 
3.2.9 RELATÓRIO DE PRODUTOS POR SUBCATEGORIA .................................................. 52 
3.2.10 RELATÓRIO DE PRODUTOS POR NOME ............................................................... 52 
3.3 DIAGRAMAS DE SEQUÊNCIA .................................................................................. 54 
3.3.1 CADASTRAR USUÁRIO ........................................................................................ 54 
3.3.2 EFETUAR LOGIN ................................................................................................ 55 
 
 
 
3.3.3 CADASTRAR PRODUTO ....................................................................................... 56 
3.3.4 RELATÓRIO DE PRODUTOS POR LOJA.................................................................. 57 
3.3.5 RELATÓRIO DE ENTREGA ................................................................................... 57 
3.3.6 REALIZAR PEDIDO .............................................................................................. 58 
3.3.7 RELATÓRIO DE PEDIDOS .................................................................................... 59 
3.3.8 RELATÓRIO DE PRODUTOS VENDIDOS POR LOJA ................................................. 60 
3.3.9 RELATÓRIO DE PRODUTOS POR SUBCATEGORIA .................................................. 61 
3.3.10 RELATÓRIO DE PRODUTOS POR NOME .............................................................. 61 
3.4 DIAGRAMA DE CLASSES ........................................................................................ 62 
4 PROJETO DE BANCO DE DADOS ...................................................................... 63 
4.1 TABELAS .............................................................................................................. 63 
5 IMPLEMENTAÇÃO ORIENTADA A OBJETOS ..................................................... 68 
5.1 LAYOUT DE TELAS ................................................................................................ 68 
CONCLUSÃO ............................................................................................................. 77 
REFERÊNCIAS .......................................................................................................... 78 
 
 
 14 
 
INTRODUÇÃO 
 
Comércio eletrônico, e-commerce ou comércio virtual, define-se como 
qualquer tipo de transação comercial, feita por meios eletrônicos. Estes meios 
eletrônicos podem ser: computador, telefone fixo, celular, ou qualquer outro 
aparelho que possibilite transferências de dados em uma rede (COMÉRCIO 
ELETRÔNICO, 2009). 
Existem várias formas de aplicação do comércio eletrônico, não sendo 
este restrito as vendas via internet, embora esta seja a maneira mais popular 
deste tipo de comércio, e tema deste trabalho. O comércio eletrônico facilita e 
baixa os custos das vendas, deve-se a isso a cada vez maior popularização e 
aceitação desta “nova“ maneira de se comercializar produtos e serviços 
(COMÉRCIO ELETRÔNICO, 2009). 
O uso de páginas da internet para comercializar produtos e serviços está 
ganhando cada vez mais espaço no cenário econômico mundial e nacional. No 
Brasil, as vendas no varejo pela internet movimentaram em 2008 cerca de R$ 
8,2 bilhões, um aumento de 28% em referência ao volume de vendas do ano 
anterior, a tendência é que este volume aumente a cada ano. O aumento do 
número de usuários de sites de vendas pela internet é notório, no Brasil são 
cerca de 13,2 milhões de consumidores. Número este que só vem aumentando 
nos últimos anos, se levarmos em consideração que em 2001 havia cerca de 
1,1 milhões de usuários, um número 12 vezes menor do que o apresentado 
acima (E-COMMERCE, 2009). 
Com todas estas afirmações acima, este trabalho tem por objetivo 
desenvolver um sistema de comércio eletrônico, denominado “Shopping virtual 
– cooperativa digital para pequenas e médias empresas”. 
Neste sistema, somente as lojas cadastradas poderão disponibilizar 
produtos. Também através deste, é possível disponibilizar a venda de produtos 
pela internet para estas empresas, onde os usuários em geral visualizam os 
produtos das lojas, realizam buscas e escolhem os produtos de sua 
preferência. Desta forma, facilitando e aumentando as transações comerciais 
entre empresa e consumidor. 
 A elaboração deste trabalho tem por justificativa a atual ascendência do 
15 
 
 
comércio eletrônico no país, além da necessidade de diversas empresas em 
estender seu campo de atuação perante seus clientes. O comércio eletrônico é 
hoje muito mais que uma aposta. (WEBARTIGOS, 2009). 
O sucesso do comércio eletrônico se dá por três fortes motivos: o 
primeiro, pela redução de custos com funcionários que as empresas têm; o 
segundo dá-se pelo fato de que tal modalidade de comércio incentiva a lei da 
oferta e procura o que acaba tornando os produtos mais acessíveis aos 
clientes; e o terceiro é a comodidade e facilidade por parte dos clientes na 
busca dos produtos. Enfim, tanto as empresas quanto os consumidores se 
beneficiam com a prática do comércio eletrônico, este último, fruto do 
desenvolvimento dos programadores e arquitetos de tecnologia da informação. 
(WEBARTIGOS, 2009) 
O sistema foi criado com base no perfil B2C (Business-to-Consumer), 
onde o vendedor atua entre fabricantes e clientes,estabelecendo uma relação 
individual. Durante o ano de 2001, cerca de 75 milhões de usuários individuais 
da Internet participaram de algum tipo de compra on-line. As receitas mundiais 
do B2C chegaram a cerca de 240 bilhões de dólares. (TURBAN; EFRAIN, 
KING; DAVID, 2004) 
 
16 
 
 
1 FUNDAMENTOS CONCEITUAIS 
1.1 UML – Unified Modeling Language 
A UML – Unified Modeling Language, ou linguagem de modelagem 
unificada, é uma linguagem gráfica que possibilita ao desenvolvedor visualizar 
e analisar, de uma maneira geral, o desenho do software e a comunicação 
entre os objetos do mesmo. Esta forma de padronização de projetos foi 
elaborada a fim de auxiliar no processo de desenvolvimento de software, e 
mais ainda, para que algum outro analista/programador futuramente possa 
administrar e modificar o sistema desenvolvido anteriormente. A UML é um 
passo indispensável no processo de criação de sistemas computacionais. 
(DEITEL; DEITEL, 2005) 
 
As linguagens gráficas existem há muito tempo na indústria do 
software. O propulsor fundamental por trás de todas elas é que as 
linguagens de programação não estão em um nível de abstração 
suficientemente alto para facilitar as discussões sobre projeto. 
(FOWLER, 2005, p.25) 
As pesquisas nesta área começaram no final da década de 1960, com o 
pesquisador Ivar Jacobson, sendo este e sua equipe os responsáveis pelo 
desenvolvimento do primeiro projeto para desenvolvimento de sistemas 
computacionais. Este projeto foi feito para modelar um sistema de 
telecomunicações para a empresa Ericsson, empresa para qual Jacobson 
trabalhava, este utilizava o conceito de camadas de “blocos” - estes se 
aproximam do que conhecemos hoje como componentes, onde as camadas 
inferiores serviam de base para as camadas superiores. A equipe construiu os 
blocos de baixo nível com o que chamou de casos de tráfego – chamados de 
casos de uso na UML. Assim surgiram os primeiros conceitos de modelagem. 
(SCOTT, 2003) 
A ascensão das linguagens de modelagem se deu em meados da 
década de 1980, quando várias empresas começaram a utilizar programação 
orientada a objetos (POO) (DEITEL; DEITEL, 2005). Havia problemas em 
relação ao desenvolvimento de uma ferramenta para modelagem de sistemas, 
pois cada empresa foi criando sua própria ferramenta de modelagem, a partir 
deste ponto surgiu à necessidade de se criar uma ferramenta padrão. Esta foi 
17 
 
 
desenvolvida pela equipe da empresa Rational Software Corporation, e 
liderada pelos pesquisadores Ivar Jacobson, Grady Booch e Jim Rumbaugh. 
Estes lançaram em junho de 1996 a versão 0.9 da UML, no mesmo ano no 
mês de outubro foi lançada a versão 0.91. (MARCORATTI, 2009) 
Um grupo de empresas denominado UML Partners, formado pela 
Rational, HP, Oracle, IBM, Microsoft, entre outras, produziu a versão 1.0 da 
UML, em setembro de 1997. Lançaram a versão 1.1 e a ofereceram como 
padrão para o OMG (Object Management Group – Grupo de gestão de 
objetos), que a aceitou, e a partir desta assumiu a responsabilidade de 
manutenção e revisão constante da UML. Em março de 2003, foi lançada a 
versão 1.5. Atualmente a versão usa pelos desenvolvedores de sistemas 
orientados a objetos é UML 2.0, que marca a primeira revisão importante desde 
a versão 1.1. (DEITEL; DEITEL, 2005) 
 
A UML faz uso de notação de diagramas, podendo estes, representarem 
partes do sistema, ou funcionalidades do mesmo. Estes diagramas são 
agrupados, segundo suas funcionalidades, sendo assim representados: 
diagramas de gerenciamento de modelos, diagramas estruturais e diagramas 
comportamentais. (PENDER, 2004) 
 
Fonte: Elaborado pelos autores, 2009 
Figura 1. Exemplo de diagrama de pacotes 
Os diagramas de gerenciamento de modelos usam os diagramas de 
pacotes, que são utilizados para exemplificar graficamente diferentes partes de 
um sistema, podendo identificar as relações entre as partes do sistema, estas 
partes podem ser subsistemas de um sistema mais complexo. Os pacotes, 
18 
 
 
neste diagrama são representados graficamente, com um ícone de pasta. 
(PENDER, 2004). A Figura 1 apresenta esse diagrama, podendo-se observar a 
interação entre os pacotes do sistema. 
No segundo grupo de diagramas, denominado diagramas estruturais, 
encontram-se os seguintes diagramas: de classes, de objetos, de estrutura e 
composição, de componentes, de implantação e combinado de 
componentes/implantação (PENDER, 2004) 
 
 
Fonte: Elaborado pelos autores, 2009 
Figura 2. Representação gráfica de uma classe 
Os diagramas de classes são usados para modelar as classes do 
sistema e seus relacionamentos. Entende-se por classe como um molde para o 
objeto, estando à classe dividida, graficamente, em três partes, vide exemplo 
de classe na Figura 2, na parte superior é onde se encontra o nome da mesma, 
na parte mediana estão todas as características, atributos, do objeto e, por fim, 
na parte inferior desta estão as ações, métodos, do objeto. (PENDER, 2004) 
 
 
Fonte: PENDER, 2004, p.135 
Figura 3. Exemplo de relacionamento de associação 
No diagrama de classes, representado na Figura 3 pode se perceber os 
relacionamentos entre as classes do sistema, podendo ser estes, 
relacionamentos de associação, agregação, composição e de herança. Todos 
estes elementos, classes e relacionamentos, compõem um diagrama de 
classes completo. (PENDER, 2004). 
19 
 
 
 
Fonte: NETO, 2009b 
Figura 4. Exemplo de diagrama de classes 
 
Na Figura 4 se tem a visualização de um diagrama de classes, onde as 
figuras retangulares representam as classes, as linhas retas as associações e 
as setas representam os relacionamentos de herança. (NETO, 2009) 
 
Fonte: PENDER, 2004, p. 177. 
Figura 5. Diagrama de classes para acordos de vendas de assentos 
 
Os diagramas de objeto são parecidos com os diagramas de classes, 
mas diferenciam-se da seguinte maneira, os diagramas de classes 
representam as classes genericamente, sem atribuir valores a seus atributos, já 
no diagrama de objetos acontece o contrário. Este diagrama visa exemplificar 
20 
 
 
as regras de negócio do sistema, inserindo valores aos atributos, pois através 
dele consegue-se enxergar alguns requisitos a mais para integrar o sistema. 
(PENDER, 2004) 
Na Figura 5 está exemplificado um diagrama de Classes simples para 
gerenciar as vendas de assentos e os respectivos acordos destas vendas. A 
classe “AcordoVendas”, tem como atributos a data inicial do acordo e também 
para registrar a data final. Na classe “Assento”, estão os atributos “id” e 
“proximaID”, e a operação “obterProximaID”, que retorna o valor do atributo 
proximaID, sendo que este retorno é guardado no atributo id. (PENDER, 2004) 
 
 
Fonte: PENDER, 2004, p. 177 
Figura 6. Diagrama de objetos para confirmação do diagrama da 
 
A Figura 6 mostra o diagrama de objetos, onde foi criado um acordo de 
vendas e foi dado a este o número 6475, tendo a data inicial em 01/03/2003 e a 
data final em 31/03/2003. Este acordo de vendas atribui dois assentos, 
respectivamente, 2875 e 2876. Este tipo de diagrama é utilizado para testar 
diagramas de classes, como acima citado. (PENDER, 2004) 
O diagrama de estrutura de composição é novo na UML 2.0, pois este 
utiliza conceitos do antigo diagrama contexto de composição das versões 
anteriores. Este diagrama visa modelar as partes de uma classe, componente 
ou colaboração, ou como estes são compostos. Existem também neste 
diagrama os pontos de interação chamados portas e conectores, utilizados 
para acessar recursos da estrutura. (PENDER, 2004) 
A Figura 7 representa uma classe “Carro” (retângulo maior, com seu 
respectivo nome na parte superior deste), e algumas de suas peças e como 
estas se relacionam para fazer o carro andar. As peças apresentadas, motor, 
transmissão e bombade combustível, são modeladas por retângulos internos, 
chamados partes, da classe carro. Os relacionamentos estão descritos através 
21 
 
 
das linhas entre as partes, e pelos pequenos quadrados nas extremidades 
destas, que são as portas. (PENDER, 2004) 
 
Fonte: PENDER, 2004, p. 182 
Figura 7. Representação de uma classe no diagrama de 
estrutura de composição 
 
Para uma melhor implementação do sistema, foi criado o diagrama de 
componentes, onde o sistema se divide em partes (componentes), mas não 
como no diagrama de pacotes, que modela a parte lógica do sistema, neste 
diagrama é modelada a implementação do sistema. Por exemplo, uma classe 
“pedido” pode ser gerada como um componente JavaBean, ao passo que uma 
classe “entrada de pedido” pode ser gerada como uma página HTML. 
(PENDER, 2004) 
 
Fonte: PENDER, 2004, p. 45 
Figura 8. Diagrama de componentes 
Na figura 8 é representado um diagrama de componentes que modela 
alguma aplicação para internet. Os componentes do sistema são 
representados pelos retângulos, e as linhas tracejadas representam as 
22 
 
 
dependências. O sistema modelado na Figura 8 mostra que alguma máquina 
cliente possui um navegador web tradicional, ou um navegador web sem fio, 
ambas para visualizarem o conteúdo disponibilizado pelo sistema, dependem 
de páginas JSP com conteúdo HTML, para o navegador tradicional, e WML, 
para o navegador sem fios, e estas dependem de classes JavaBeans, que 
podem conter as regras de negócios. (PENDER, 2004). 
O diagrama de implantação modela a parte física onde o sistema será 
implementado, visando uma melhor adaptação do software ao hardware. Esse 
tipo de diagrama é importante para se identificar a plataforma na qual será 
instalado o software e os recursos físicos, auxiliando na configuração do 
mesmo. (PENDER, 2004) 
A Figura 9 modela a parte física de um sistema desenvolvido para 
internet. Neste diagrama os retângulos representam os nós de implantação, 
partes físicas, do sistema e as linhas entre estes, representam as associações. 
(PENDER, 2004) 
 
 
Fonte: PENDER, 2004, p.47 
Figura 9. Exemplo de diagrama de implantação 
 
É mais comum de ser utilizado o diagrama combinado de 
componentes/implantação. Este diagrama mostra os componentes, partes do 
sistema, inseridos dentro dos nós da parte de implantação, parte física. Esta 
conotação auxilia no entendimento de como estão armazenados fisicamente os 
componentes do sistema. (PENDER, 2004) 
23 
 
 
Conforme descrito acima, a Figura 10 representa os diagramas de 
componentes e de implantação combinados em um único diagrama. Os 
elementos em alto relevo – nós – representam a parte física do sistema, os 
elementos retangulares, ligados por setas tracejadas, representam os 
componentes dentro dos nós. (PENDER, 2004) 
 
 
Fonte: PENDER, 2004, p. 46 
Figura 10. Diagrama combinado de Componentes/Implantação 
 
Outro conjunto de diagramas são os diagramas comportamentais, que 
se subdividem em diagrama de: casos de uso, atividades, interação, máquina 
de estados e o maquina de estados do protocolo. Esses diagramas visam 
descrever como os recursos modelados nos diagramas estruturais interagem e 
como são executadas suas atividades. 
O primeiro diagrama abordado é o de casos de uso (use case) que 
modela a interação dos usuários com o sistema, estes são chamados de 
atores. Em um diagrama de casos de uso, admitem-se relacionamentos entre 
casos de uso, não somente entre atores e casos de uso, este relacionamento é 
indicado por meio de setas de dependência. Este diagrama tem por objetivo 
identificar as expectativas do cliente para o sistema e os recursos oferecidos 
por este aos clientes. A seguir um exemplo de diagrama de casos de uso. 
(PENDER, 2004) 
Este diagrama representado na Figura 11 mostra o caso de uso de um 
sistema de uma clínica. Neste tipo de diagrama existem os atores, 
representados pela figura dos bonecos, os casos de uso, que são as ações que 
24 
 
 
os atores podem realizar no sistema, representados pelos círculos com suas 
respectivas ações descritas no seu interior, e as ligações entre os elementos 
do diagrama. (NETO, 2009) 
 
 
Fonte: NETO, 2009a 
Figura 11. Exemplo de diagrama de casos de uso 
 
No diagrama de atividades é modelada a lógica de qualquer parte do 
sistema. Este diagrama usa a notação de fluxograma para definir as ações que 
podem ser feitas no sistema através do fluxo de setas que passam por 
decisões e loops até chegar ao final do fluxo, identificando cada passo e cada 
etapa lógica do processo, como demonstrado na Figura 12. (PENDER, 2004) 
O próximo tipo de diagrama é um conjunto de diagramas, denominado 
diagrama de interação, que visa descrever a comunicação entre os objetos 
para realização de uma tarefa. Os diagramas inclusos nesta forma de 
diagramas são diagrama de seqüência, comunicação, visão geral de interação 
25 
 
 
e diagrama de tempo, esta lista de diagramas foi inserida nos diagramas de 
interação na atualização da UML 1.4 para UML 2.0, uma vez que, 
anteriormente só constavam desta os diagramas de seqüencia e colaboração. 
Segue abaixo um exemplo de diagrama de seqüencia. (PENDER, 2004) 
 
 
Fonte: PENDER, 2004 
Figura 12. Diagrama de atividade 
 
Neste diagrama, exemplificado na Figura 13, são identificadas 
interações entre os objetos com o tempo, podendo visualizar as mensagens 
trocadas entre os objetos no decorrer de uma ação. A troca de mensagens é 
mostrada no diagrama através das setas, que seguem uma linha temporal. 
(PENDER, 2004) 
O diagrama de máquina de estados visa representar os possíveis 
26 
 
 
estados de algum determinado objeto, durante seu tempo de vida. No diagrama 
de máquina de estados de protocolo é como o diagrama acima citado e possui 
notação gráfica parecida. A diferença entre estes é que no primeiro caso é 
mostrado um evento que causa uma alteração no estado do objeto, já no 
segundo caso é mostrado quando tal evento tem permissão para fazê-lo, a 
máquina de estados define o que é possível, a máquina de estados do 
protocolo define o que é válido, respectivamente representado na Figura 14, e 
Figura 15. (PENDER, 2004) 
 
Fonte: Elaborada pelos autores, 2009 
Figura 13. Exemplo de diagrama de seqüencia 
 
 
Fonte: PENDER, 2004, p.53 
Figura 14. Diagrama de máquina de estados 
27 
 
 
 
Fonte: PENDER, 2004, p. 54 
Figura 15. Diagrama de máquina de estados do protocolo 
 
Para um melhor e mais rápido desenvolvimento de um sistema, é 
indispensável que sejam estudados todos os itens acima descritos, desde a 
identificação de requisitos, até a modelagem total do sistema, pois uma análise 
bem feita de um sistema pode eliminar possíveis falhas, reduzir o retrabalho, 
ganho de tempo. Por fim assume-se que a UML é essencial para o 
desenvolvimento de sistemas orientados a objetos. 
1.2 Plataformas Tecnológicas 
1.2.1 Java 
Java é uma linguagem de programação orientada a objetos, que conta 
atualmente com mais de 6,5 milhões de desenvolvedores, em todo o mundo. É 
uma das principais linguagens utilizadas em todos os segmentos do mercado, 
desde a indústria, até, e principalmente, na internet. (JAVA (LINGUAGEM), 
2009b) 
A linguagem Java foi criada em 1991, por uma equipe de pesquisadores 
da empresa Sun Microsystems, chefiados por James Gosling. A pesquisa, de 
codinome Green, que resultou na criação do Java, não tinha por objetivo 
desenvolver uma linguagem de programação, mas sim de prever o que seria 
tendência no mercado digital mundial, os pesquisadores acreditavam que, em 
um futuro próximo, qualquer tipo de dispositivo poderia ser controlado 
digitalmente. (JAVA (LINGUAGEM), 2009b) 
Para chegar a esse resultado foi preciso criar uma linguagem que 
28pudesse ser interpretada por outros dispositivos além do computador. (DEITEL; 
DEITEL, 2005) 
Inicialmente a linguagem Java enfrentou algumas dificuldades, pois o 
conceito de portabilidade do Java, não era o que o mercado almejava em 
termos de programação. Por isso diz-se que a linguagem Java era a idéia certa 
na época errada. Mas com a disseminação da internet, em 1993, a Sun decidiu 
adaptar a linguagem Java para esta plataforma, para inserir conteúdo dinâmico 
nas páginas da internet, uma vez que estas eram desenvolvidas com HTML 
estático. Após esta adaptação foi anunciado o lançamento oficial do Java em 
maio de 1995. (DEITEL; DEITEL, 2005) 
 
A grande vantagem do Java é o fato de esta ser uma linguagem 
independente de plataforma, utilizando-se do conceito “write once, run 
anywhere”, que significa escreva apenas, execute em qualquer lugar. Esta 
portabilidade se dá porque o Java não é uma linguagem compilada e sim uma 
linguagem interpretada, através da JVM (Java Virtual Machine, que traduzido 
significa máquina virtual Java), que dá a possibilidade de que um código Java 
escrito no sistema operacional Windows funcione da mesma maneira em 
qualquer outra plataforma, desde que esteja instalada a JVM específica desta 
plataforma. Sendo assim, os códigos Java são independentes de plataforma, 
mas as JVM’s não. (JAVA, 2009a) 
O processo de execução de um aplicativo Java se dá da seguinte 
maneira: inicialmente é criado o código-Fonte em qualquer editor de texto 
simples, e salvo com extensão “java”, feito isto este código passa pelo 
compilador que cria um arquivo de extensão “.class”, denominado bytecode, 
que será interpretado pela JVM, que faz o trabalho de traduzi-lo para uma 
linguagem que o computador possa entender, e dessa maneira é executado o 
programa. (JAVA, 2009a) 
A linguagem Java oferece a seus desenvolvedores, extensas bibliotecas 
de classes prontas, elaboradas para agilizar e facilitar o processo de 
desenvolvimento de software. Essas bibliotecas são conhecidas como Java 
API’s (Application Programming Interfaces, que traduzido significa, Interfaces 
de Programação de Aplicativos) (DEITEL; DEITEL, 2005). A cada versão do 
Java a sua API vai aumentando, disponibilizando uma quantidade maior de 
bibliotecas de classes. (SIERRA; BATES, 2007) 
29 
 
 
Segundo Souza (2009), o Java divide-se em três plataformas básicas, 
que estão listadas a seguir: 
a) Java Standard Edition: plataforma Java voltada para aplicações 
cliente, sendo que na máquina, onde for executada, deve se ter um 
bom poder de processamento e memória. 
b) Java Enterprise Edition: plataforma Java voltadas para o 
desenvolvimento de aplicações servidoras, robustas, que suportam 
um grande número de usuários, como as aplicações web. 
c) Java Micro Edition: plataforma Java voltada para o desenvolvimento 
de aplicações para dispositivos com baixa capacidade de 
processamento e memória. 
 
1.2.1.1 Servlets e JSP (Java Server Pages) 
 
Os servlets são classes Java que trabalham do lado servidor auxiliando-
o e aumentando suas funcionalidades. Estes são responsáveis pelo controle 
das requisições, do usuário (cliente), que vão para o servidor, e também são 
responsáveis pelas respostas que partem do servidor para o cliente. (DEITEL; 
DEITEL, 2005) 
Existem dois métodos de se enviar dados de um formulário contido em 
uma página na internet, o método “get”, e o método “post”. Estes métodos são 
declarados na tag de abertura do formulário (<form>) no atributo de tag 
“method”, contendo o valor “get” ou “post”. Para tratar estas requisições do 
usuário, os servlets utilizam os métodos “doGet” e “doPost”, onde cada um 
trata de um tipo de requisição. 
A diferença entre, enviar dados de um formulário web para o servidor, 
utilizando o método get, ou através do método post, está na forma de envio 
destes dados. Utilizando o método get, os dados são enviados em conjunto 
com a url, estando estes visíveis para o usuário. No caso do envio ser realizado 
através do método post os dados são enviados, de maneira escondida do link, 
ou seja, o usuário não terá acesso aos dados. (GSMFANS, 2009) 
A tecnologia dos servlets auxilia no controle dos envios e recebimentos 
de dados no lado servidor da aplicação, mas tratando-se das respostas do 
servidor para o cliente, na internet, estas podem ser páginas web ou arquivos 
30 
 
 
que estejam no servidor. Quando, estas respostas se tratarem de páginas web, 
a plataforma Java oferece a tecnologia JSP, que consiste em páginas web que 
disponibilizam algum conteúdo dinamicamente na internet. Isso se dá porque o 
JSP permite trabalhar com código Java em conjunto com tags HTML. (DEITEL; 
DEITEL, 2005) 
A tecnologia de páginas JSP foi desenvolvida pela Sun Mycrosystems, 
através da percepção de uma dificuldade de se desenvolver páginas HTML, 
utilizando os servlets. Diante do desenvolvimento desta tecnologia separou-se 
a criação de páginas web, dos sevlets, que ficaram responsáveis pela 
administração das requisições e respostas. O JSP oferece maior flexibilidade 
para se trabalhar com HTML, e criar páginas com melhor apresentação visual, 
do que os servlets. (GONÇALVES, 2007) 
A exibição das páginas JSP, até que esta chegue ao browser, se dá da 
seguinte forma: o arquivo da página é compilado no servidor de páginas, que 
possa interpretar a linguagem Java, e este servidor interpreta os comandos 
Java inseridos juntos com as tags do HTML, e retorna para o browser apenas 
marcações HTML. (GONÇALVES, 2007) 
Para se utilizar a linguagem Java nas páginas JSP, utiliza-se os sriptlets, 
que consistem em código Java inserido este no interior das tags <% e %>. 
Segundo Gonçalves (2007), existem outras formas de se utilizar esta tag, 
segue alguns exemplos de como fazê-lo: 
 
a) Comentários: comentário de uma linha:<%-- comentário --%>, 
comentário em bloco, com mais de uma linha: <%/* ... */%> 
b) Declaração de atributos ou métodos: <%! %> 
c) Impressão de resultado em tela: <%= %> 
d) Tags personalizadas: <%@ taglib %>, esta é uma diretiva que 
permite que seja importada uma biblioteca de tags para o ambiente 
JSP. 
A tecnologia JSP, foi desenvolvida para separar a camada de 
programação Java da camada de apresentação do sistema. Isso se deu porque 
em várias situações, os sistemas para a internet são desenvolvidos por equipes 
de programadores e web designers, onde cada um destes tem 
31 
 
 
responsabilidades distintas, sendo que os responsáveis pela criação de 
páginas para internet, nem sempre conhecem a linguagem Java. Para isso a 
tecnologia JSP oferece as Expression Language, expressões de linguagem 
(EL), e a especificação Java Server Pages Standard Tag Library, JSP 
biblioteca de tag padrão (JSTL). (GONÇALVES, 2007) 
As EL são declarações que servem para executar algumas ações que os 
scripts JSP realizam, mas com uma sintaxe mais simples. Desta maneira o 
desenvolvimento do layout se torna mais fácil para os web designers. A sintaxe 
consiste em se usar as expressões entre colchetes precedidas de um cifrão ou 
sinal de sustenido, a sintaxe é representada da seguinte maneira ${expressao}, 
ou #{expresso}. Havendo estas duas formas de expressões, não é 
recomendável utilizá-las em conjunto. (GONÇALVES, 2007). 
 
1.2.2 Sistema Gerenciador de Banco de Dados 
 
Atualmente, há uma necessidade cada vez maior em se “digitalizar” 
fatos, de onde se extraem informações sobre os mesmos. Para que estas 
informações sejam úteis futuramente, é necessário armazená-las de alguma 
maneira. O armazenamento destas informações (dados) hoje é fundamental 
para qualquer tipo de organização, dispondo de sistemas computacionais que 
irão realizar o acondicionamento destes dados, são estes os SGBD’s (Sistemas 
Gerenciadores de Banco de Dados). (DATE, 2004). 
Os SGBD’s são softwares, que permitema definição de estruturas de 
armazenamento e que ofereçam meios para manipular dados. Dependendo da 
necessidade da empresa, esta pode optar por não usar um SGBD, utilizando-
se de sistemas mais simples e de baixo custo, porém isto pode implicar em 
alguns problemas citados abaixo: 
 
a) Controle de redundância 
b) Compartilhamento 
c) Controle de acesso 
d) Controle de integridade 
e) Backup e tolerância às falhas 
32 
 
 
f) Integração de dados 
g) Múltiplas Interfaces 
Segundo Date (2004), “Um banco de dados é uma coleção de dados 
persistentes, usada pelos sistemas de aplicação de um determinado grupo”. O 
sistema de banco de dados nada mais é que um sistema computadorizado no 
qual se pode manipular registros (dados). Já o banco de dados é aquele que, 
efetivamente, irá guardar estes dados. A partir disto, clientes ou usuários 
poderão realizar diversas operações com os arquivos como: inserir novos 
arquivos e alterá-los quando for preciso, realizar buscas simples ou complexas 
nestes dados e até excluí-los caso queira. (DATE, 2004) 
Quando se diz que os dados em um banco de dados são persistentes, 
quer dizer que depois que estes são aceitos pelo SGBD (Sistema Gerenciador 
de Banco de Dados), eles só serão removidos após uma requisição explícita ao 
SGBD. (DATE, 2004). 
O sistema de gerenciamento de banco de dados (SGBD) é um programa 
que realiza todo o acesso aos dados contidos no banco de dados. Usualmente 
um usuário faz uma requisição de acesso usando SQL. Após isso o SGBD irá 
receber esta requisição e analisar todo o esquema de dados que está 
armazenado. Só depois o SGBD realiza as operações sobre os dados. (DATE, 
2004) 
Oracle é um dos líderes de mercado no seguimento de SGBDs. Surgiu 
no final dos anos 70, quando Larry Ellison começou a estudar mais o conceito 
que começava a surgir de banco de dados relacional. (C. J. DATE, 2004) 
A Oracle criou a linguagem PL/SQL, que é a extensão da linguagem 
SQL, usada para aperfeiçoar e acelerar a relação Banco de Dados/Servidor. 
(ORACLE, 2009) 
Além de dividir as versões de seus programas, a Oracle também separa 
seus produtos em edições, para um melhor controle de licenças. Seguem 
algumas dessas edições: (ORACLE, 2009) 
 
a) Enterprise Edition (EE): esta versão não possui limite de memória, 
possui mais funcionalidades que a Standard Edition que é 
comumente licenciada na base de núcleos de processamento, com 
quatro ou mais microprocessadores. 
33 
 
 
b) Standard Edition (SE): é a versão mais básica para banco de 
dados. Normalmente licenciada para usuários com até quatro 
microprocessadores. Se esse número exceder a quatro, o cliente 
terá de licenciar a edição Enterprise. 
c) Express Edition (XE): introduzida no mercado em 2005, é 
totalmente livre para distribuição nas plataformas Windows e Linux. 
Armazena até 4GB de dados do usuário. 
1.2.3 AJAX (Asynchronous JavaScript and XML) 
 
AJAX acrônimo da língua inglesa para Asynchronous JavaScript and 
XML, que traduzido significa JavaScript e XML Assíncronos. Como o próprio 
nome diz Ajax não é uma tecnologia única, e sim um conjunto de tecnologias 
utilizadas para garantir uma maior interatividade do usuário com os sistemas 
web. Para tal interatividade ocorrer, o AJAX trabalha principalmente com 
JavaScript e XML (extensible Markup Luanguage, traduzido, Linguagem 
extensível de marcação), em conjunto com outras tecnologias, tais como: 
XHTML (Extensible Hipertext Markup Language, Linguagem extensível de 
marcação de hipertexto), CSS (Cascading Style Sheets, Folha de estilos em 
cascata), DOM (Document Object Model, Documento de modelo de objeto), 
XSLT (Extensible Stylesheet Language Transformation, Linguagem de 
transformação de folha de estilos extensiva), e o objeto XMLHttpRequest, todas 
estas tecnologias serão explicadas posteriormente. (GONÇALVES, 2006) 
O termo AJAX foi utilizado pela primeira vez em fevereiro de 2005, por 
Jesse James Garret, em um artigo on-line intitulado “Ajax: A New Approach to 
Web Applications”, que traduzido significa, Ajax: uma nova abordagem para 
aplicações web. Na realidade, as tecnologias que compõem o AJAX não são 
uma novidade no desenvolvimento de sistemas para internet, porém esta é 
uma nova maneira de se trabalhar com o conjunto de tecnologias citadas 
acima, haja vista que estas já eram utilizadas anteriormente ao termo AJAX, 
somente não lhes foi atribuído um nome. (GONÇALVES, 2006) 
As principais tecnologias que compõem o AJAX são descritas 
brevemente a seguir: 
34 
 
 
a) JavaScript: linguagem de scripts desenvolvida pela empresa 
Netscape, para ser inserida internamente nos aplicativos web. Esta 
linguagem auxilia nas validações de formulários HTML, oferece 
maior interatividade com o usuário, é o ponto central do AJAX, uma 
vez que é através do JavaScript que se relacionam todas as 
tecnologias que compõem o AJAX. (CRANE, PASCARELLO, 
JAMES, 2007) 
b) XML: linguagem de marcação que utiliza tags, “etiquetas”, que 
referenciam os elementos e atributos da mesma forma como 
acontece no HTML. Mas apesar destas semelhanças as duas 
tecnologias têm finalidades distintas, uma vez que o HTML tem 
função de apresentação de algum conteúdo, o XML tem por 
objetivo organizar o conteúdo, oferecendo a flexibilidade da criação 
de tags próprias, mas com regras muito mais rígidas do que o 
HTML, sendo que não é permitido o uso de tags desordenadas. 
(GONÇALVES, 2006) 
c) XHTML: é uma revisão do HTML, baseada no XML, combinando os 
elementos do HTML, com regras do XML. O objetivo desta revisão 
é o de possibilitar a acessibilidade das páginas desenvolvidas 
neste padrão, em diversos dispositivos, sendo totalmente 
independente de plataforma. (XHTML, 2009) 
d) CSS: uma linguagem para definir a aparência das páginas XHTML. 
A primeira versão foi lançada no mercado em 1996 (CSS 1), e dois 
anos depois, em 1998, fora lançada a segunda versão (CSS 2). As 
principais vantagens do CSS são: a reutilização de estilos, 
simplificação do código HTML, inovação para a definição da 
aparência das páginas, uma vez que esta tecnologia oferece 
maiores possibilidades visuais do que a linguagem HTML. 
(GONÇALVES, 2006) 
 
e) DOM: Uma tecnologia que visa organizar de forma estruturada os 
elementos de uma página HTML. O DOM disponibiliza esta 
estrutura para um mecanismo JavaScript manipulá-la. Com o 
JavaScript pode-se adicionar elementos à pagina, ou remove-los, 
alterar suas propriedades dinamicamente, sem a necessidade de 
35 
 
 
se carregar novamente a página. O DOM armazena os elementos 
da página em uma estrutura de árvore onde a raiz é o nó 
“document” – cada nó representa um elemento no DOM, pois todos 
os outros nós encontram-se dentro de document. (CRANE; 
PASCARELLO; JAMES, 2007). 
 36 
 
2 LEVANTAMENTO DE REQUISITOS 
 
2.1 Análise de Mercado 
O cenário do comércio eletrônico ainda é muito novo, sobretudo no 
Brasil. Muita desconfiança com relação à segurança ainda paira sobre os 
usuários de internet. Ainda sim, devido o crescente número de pessoas que a 
cada dia passam a usar a internet, este meio virtual tem evoluído muito. Hoje 
mais do que apostar, as empresas têm o dever de se adentrar na internet para 
obter maiores lucros com vendas. A tabela 1 apresenta uma prospecção do 
crescimento de usuários na internet aqui no Brasil: (E-Commerce, 2009) 
 
(em milhões) 
 Pessimista 
Cresc. anual 12% 
 Intermediário 
Cresc. anual 16% 
Otimista 
Cresc. Anual 20% 
 Total % % % 
Ano População Internautas Pop Internautas Pop Internautas Pop 
2001 172,3 12.0 6,9% 12.0 6,9% 12.0 7,0% 
2011 199,9 37.2 18,7% 52.9 26,5% 74.3 37,2% 
Fonte: Felipini, 2002 
Tabela 1. Previsão de crescimento na internet no Brasil. 
 
Segundo E-Commerce(2009), atualmente o Brasil possui cerca de 50 
milhões de usuários de internet. Algumas pesquisas apontam que dentro de 5 
anos este número possa chegar ao 75 milhões, devido a facilidade cada vez 
maior de acesso a internet. Com base nisto, pode-se afirmar que serviços 
como o de venda de produtos ou prestação de serviços pela internet será cada 
vez mais comum. (E-Commerce, 2009). 
Quando se cria uma loja virtual, deve-se ter em mente que esta não 
possuirá vendedores. Portanto, todos os argumentos que realmente importam 
têm de ser colocados da forma mais simples possível para o usuário. Outro 
ponto extremamente importante é transmitir confiança ao usuário para finalizar 
a transação. (E-Commerce, 2009). 
Na maioria das lojas existentes, o usuário tem livre acesso pelo site e 
pesquisar os produtos, não sendo necessário nenhum tipo de cadastro para 
37 
 
 
poder navegar. Na página inicial são dispostas as imagens e os preços de 
algumas mercadorias. No menu são exibidas as categorias dos produtos 
cadastrados. Conforme Figura 16. 
 
 
Fonte: Mercado Livre, 2009. 
Figura 16. Tela inicial do site Mercado Livre 
 
Caso queira realizar a compra, este usuário deve preencher um cadastro 
com seus principais dados, tais como nome e sobrenome, estado, cidade, país, 
apelido (nome de usuário no site) e e-mail. A Figura 17 refere-se à página de 
cadastro de usuários no site: 
 
 
Fonte: Mercado Livre, 2009. 
Figura 17. Tela de cadastro do site Mercado Livre 
38 
 
 
No Mercado Livre as compras funcionam em um sistema muito parecido 
com um leilão, onde os usuários interessados podem fazer perguntas e dar 
lances no produto. O lance que mais agradar ao usuário que está vendendo 
será o escolhido. Só após todo este processo o e-mail do usuário que vendeu o 
produto será liberado para o comprador. (MERCADO LIVRE, 2009). 
 
Outro exemplo é o site Submarino, que surgiu em 1996 e contava com 
apenas três seguimentos de produtos (Livros, Cd’s e Brinquedos), hoje depois 
de se fundir com o site Americanas.com é líder no ramos de vendas virtuais no 
Brasil. (SUBMARINO, 2009). A Figura 18 mostra como é a interface do site 
hoje. 
 
 
Fonte: Submarino, 2009. 
Figura 18. Página inicial do site Submarino 
2.2 Documentos de Requisitos 
2.2.1 A – VISÃO GERAL DO SISTEMA 
O sistema de comércio eletrônico Shopping Virtual – Cooperativa Digital 
para Pequenas e Médias Empresas funciona como um Shopping Center 
Virtual, onde várias lojas podem ser cadastradas no sistema, permitindo a 
estas vender seus produtos pela internet. Cada loja poderá gerenciar os seus 
produtos com suas respectivas categorias. A categorização dos produtos serve 
39 
 
 
para facilitar a busca do cliente por determinado produto. Esse sistema 
gerencia também toda a transação de venda, desde a escolha dos diversos 
produtos, sendo colocados em um carrinho de compras virtual, até o processo 
do seu pagamento. 
2.2.2 REQUISITOS FUNCIONAIS 
2.2.2.1 – Lançamentos diversos 
O sistema Shopping Virtual é dividido em perfis, sendo estes, o perfil 
público, administrativo, de pessoa física (Clientes) e de pessoa jurídica 
(Lojista). Cada perfil deve disponibilizar um conjunto de recursos específicos a 
seus usuários, descritos abaixo. 
As seguintes características são apresentadas aos usuários que 
pertençam ao perfil público: 
 
a) O sistema deve permitir a inclusão, alteração e remoção de 
usuários, podendo estes serem clientes ou lojas, com os seguintes 
atributos: código do usuário, login, nome, senha, data de cadastro 
do usuário, rua, número da casa, bairro, cep, cidade, estado, 
telefone, email. No caso dos clientes incluem-se os atributos CPF, 
RG. No caso de lojas incluem-se os atributos nome fantasia, razão 
social, CNPJ, inscrição estadual, reputação e disponibilidade de 
entrega. A partir do momento em que é realizado o cadastro de 
usuário, este é redirecionado para seu correspondente perfil. 
b) O sistema deve apresentar, para o usuário, uma relação de 
produtos contendo os nove itens mais baratos cadastrados no 
shopping, assim que este acesse o sistema, contendo a imagem do 
produto, o seu respectivo nome, preço e um link para o usuário 
visualizar os detalhes do produto. 
c) O sistema deve permitir ao usuário visualizar os detalhes dos 
produtos disponibilizados a venda, contendo os seguintes dados do 
produto selecionado, nome, código, marca, preço, descrição e 
reputação da Loja e um botão para adicionar o produto a um 
carrinho de compras, possibilitando ao usuário, mesmo sem efetuar 
40 
 
 
o login, simular situações de compra. Mas a compra só poderá ser 
concretizada após o usuário estar logado e este ser um cliente. 
d) O sistema deve possibilitar a busca de produtos por subcategoria, 
através de um menu, onde o usuário selecionará. 
e) O sistema deve permitir a impressão de um relatório de produtos 
por subcategoria, que será exibido quando o usuário selecionar 
uma subcategoria de produtos, contendo a imagem, nome e o 
preço dos produtos da categoria escolhida, como também um 
botão para visualização dos detalhes do produto. Também haverá 
um menu de paginação do resultado da pesquisa, caso haja mais 
de cinco produtos relacionados. 
f) O sistema deve possuir um mecanismo onde o usuário informe o 
nome de algum produto para que seja realizada uma busca no 
sistema, podendo o usuário informar se a busca deve ser feita em 
todo o sistema, ou em uma sub categoria específica de produtos. 
Sendo efetuada a busca, será exibida uma listagem de produtos, 
contendo as mesmas características da resposta do relatório de 
produtos por categoria, acima citado. 
g) O sistema deve oferecer ao usuário do perfil público um ambiente 
de login, onde este possa informar seu login e senha a fim de 
efetuar o login. 
 
As seguintes características são apresentadas aos usuários que 
pertençam ao perfil administrativo: 
 
h) O sistema deve permitir a inclusão, alteração e remoção de 
categorias de produtos, com os seguintes atributos: código da 
categoria e nome da categoria. 
i) O sistema deve permitir a inclusão, alteração e remoção de 
subcategorias de produtos, com os seguintes atributos: código da 
subcategoria, (código da categoria a qual pertence a subcategoria), 
nome. 
j) O sistema deve permitir a inserção alteração e remoção das formas 
de pagamento, com os seguintes atributos: código da forma de 
41 
 
 
pagamento, tipo da forma de pagamento, podendo ser de 1X no 
cartão, até 12X no cartão. 
 
As seguintes características são apresentadas aos usuários que 
pertençam ao perfil de pessoas físicas (Clientes): 
 
k) O sistema deve permitir a inclusão de pedidos, com os seguintes 
atributos: número do pedido, código do cliente que realizou o 
pedido, forma de pagamento, data da realização do pedido, valor 
total da venda, valor do frete, uma lista de itens pedidos e uma lista 
de entrega de produtos. A cada vez que seja realizado um pedido, 
o sistema deve alterar a quantidade em estoque dos produtos 
contidos neste. 
 
l) O sistema deve permitir a inserção, alteração e remoção dos itens 
pedidos, com os seguintes atributos: número do pedido, código do 
produto, quantidade pedida, valor unitário do produto, e o valor da 
venda do produto que é o resultado da multiplicação da quantidade 
pedida pelo valor unitário do item pedido. 
m) O sistema deve permitir o processamento das entregas de 
produtos, com os seguintes atributos: código da entrega, número 
do pedido, data do pagamento, data de despacho das mercadorias, 
CEP do cliente, rua do cliente, número da casa do cliente, cidade 
onde o cliente reside, e status da entrega. 
n) O sistema deve permitir a impressão de um relatório de pedidos 
realizados por cliente, contendo o número do pedido, data da 
compra,valor total do pedido, e forma de pagamento. Neste 
relatório deve haver um link, em cada item do relatório, para que o 
cliente possa visualizar a listagem dos produtos adquiridos, valores 
unitários dos produtos. 
o) O sistema deve permitir a impressão de um relatório de entrega de 
produtos para os clientes, contendo o número do pedido, relação 
de produtos adquiridos, com o valor unitário de cada um, valor total 
do pedido, data da compra, data da efetuação do pagamento e 
data do despacho das mercadorias. 
42 
 
 
As seguintes características são apresentadas aos usuários que 
pertençam ao perfil de pessoas jurídicas (Lojas): 
p) O sistema deve permitir a inclusão, alteração e remoção de 
produtos, com os seguintes atributos: código do produto, nome do 
produto, código da subcategoria (a qual pertence o produto), 
descrição, quantidade em estoque, preço, especificação do 
caminho onde a imagem do produto está guardada, marca e 
situação (disponível, indisponível, fora de estoque, bloqueado). 
q) O sistema deve permitir a impressão de uma listagem dos produtos 
cadastrados de cada loja, contendo o código do produto, nome, 
preço, e quantidade em estoque, marca e as opções de excluir ou 
alterar o cadastro de produtos. 
r) O sistema deve permitir a impressão de um relatório de produtos 
vendidos por loja, em determinado mês, dando a opção ao lojista 
de selecionar, o ano e o mês para visualização das vendas, entre 
os meses em que este faça parte do sistema. Este relatório deve 
conter o número do pedido, relação dos produtos a entregar, data 
máxima da entrega, segundo a disponibilidade de entrega 
informada no cadastro da loja, e a opção do lojista visualizar dados 
da entrega de cada produto. 
s) O sistema deve permitir a impressão dos detalhes da entrega de 
produtos contidos nos relatórios de produtos vendidos, contendo o 
número e data do pedido, nome e endereço do cliente que efetuou 
o pedido, código, nome e quantidade pedida do produto em 
questão, assim como, à data da entrega do produto. 
 
2.2.3 REQUISITOS NÃO FUNCIONAIS 
 
2.2.3.1 Confiabilidade 
 
t) O sistema deve fornecer facilidades para a realização de backups 
dos arquivos do sistema. 
u) O sistema deve ser compatível com diferentes navegadores web, 
tais como: Internet Explorer 7 ou superior, Mozilla Firefox 3. 
43 
 
 
v) O sistema deve possuir senhas de acesso e identificação para 
diferentes tipos de usuários: funcionários das lojas e clientes que 
têm acesso ao sistema no shopping. 
Apesar de serem descritas acima, as características do perfil 
administrativo, as quais não constam na lista de casos de uso porque o 
ambiente administrativo ficou como um trabalho futuro. 
 
3 ANÁLISE ORIENTADA A OBJETOS 
3.1 Lista de Casos de Uso 
 
Nº Descrição do Evento Evento Use Case Resposta 
01 Usuário solicita Cadastro Dados Usuário 
Cadastrar 
Usuário Msg01 
02 Usuário efetua login Dados Usuário Logar Msg02 
03 Lojista cadastra Produto Dados Produto 
Cadastrar 
Produto Msg03 
04 
Lojista solicita 
Relatório de produtos 
cadastrados 
Dados Relatório 
Produtos/Loja 
Relatório 
Produtos por 
Loja 
Rel01 
05 
Cliente solicita 
Relatório de entrega 
de produtos 
Dados Relatório 
Entrega 
Relatório 
Entrega Rel02 
06 Cliente realiza pedido Dados Pedido Realizar Pedido Msg04 
07 
Cliente solicita 
Relatório de pedidos 
realizados 
Dados Relatório 
Pedido 
Relatório 
Pedido Rel03 
08 Lojista solicita relatório de produtos vendidos 
Dados Relatório 
Produtos 
vendidos por 
Loja 
Relatório 
Produtos 
Vendidos 
por Loja 
Rel04 
09 
Usuário solicita 
relatório de produtos 
por subcategoria 
Dados Relatório 
Produtos por 
subcategoria 
Relatório 
Produtos por 
subcategoria 
Rel05 
10 
Usuário solicita 
relatório de Produtos 
informando nome do 
Produto 
Dados Relatório 
Produtos/nome 
Relatório 
Produtos por 
nome 
Rel06 
Fonte: Elaborado pelos autores, 2010 
Quadro 1. Lista de Casos de Uso 
44 
 
 
3.2 Diagrama de Casos de Uso 
3.2.1 Cadastrar Usuário 
 
Fonte: Elaborado pelos autores, 2010 
Figura 19. Diagrama de Use Case 1 – Cadastrar Usuário 
 
CURSO NORMAL: 
1- Usuário solicita cadastro; 
2- Sistema exibe tela de cadastro de usuários com as opções de cadastro de 
pessoa física (Clientes), ou pessoa jurídica (Lojas); 
3- Usuário solicita cadastro de pessoa física; 
4- Sistema exibe tela de cadastro de pessoa física; 
5- Usuário informa seus dados; 
6- Sistema verifica se usuário já está cadastrado; 
7- Caso o usuário não esteja cadastrado; 
8- Usuário informa demais dados e confirma cadastro; 
9- Sistema cria instância de usuário e clientes 
10- Sistema redireciona para página de Clientes; 
 
CURSO ALTERNATIVO 1 - USUÁRIO SOLICITA CADASTRO DE PESSOA 
JURÍDICA 
3.1- Sistema exibe tela de cadastro de pessoa jurídica; 
3.2- Usuário informa seus dados; 
3.3- Sistema verifica se usuário já está cadastrado; 
3.4- Caso usuário não esteja cadastrado; 
3.5- Usuário informa demais dados e confirma o Cadastro; 
3.6- Sistema cria instancia de cliente redireciona para página de Lojistas; 
45 
 
 
CURSO ALTERNATIVO 2 - CLIENTE JÁ CADASTRADO NO SISTEMA 
7.1- Caso o usuário esteja cadastrado; 
7.2- Sistema envia Msg01 "CPF já cadastrado"; 
 
CURSO ALTERNATIVO 3 – LOJISTA JÁ CADASTRADO NO SISTEMA 
3.4.1- Caso usuário já esteja cadastrado; 
3.4.2- Sistema exibe Msg01 "CNPJ já cadastrado"; 
3.2.2 Efetuar Login 
 
Fonte: Elaborado pelos autores, 2010 
Figura 20. Diagrama de Use Case 2 – Efetuar Login 
 
CURSO NORMAL: 
1- Usuário informa login e senha para logar; 
2- Sistema verifica se existe usuário relacionado ao login informado; 
3- Caso exista usuário sistema verifica se a senha informada está correta; 
4- se a senha estiver correta, sistema verifica se usuário é pessoa física 
(Cliente), ou jurídica (Loja); 
5- Caso usuário seja cliente, sistema registra instancias de usuário e de 
clientes na sessão; 
6- Sistema exibe Msg02 "Olá [nome do Usuário]"; 
 
CURSO ALTERNATIVO 1 - CASO NÃO EXISTA USUÁRIO COM O LOGIN 
INFORMADO OU SENHA ESTEJA INCORRETA 
3.1- Sistema exibe Msg02 "Usuário ou senha incorretos"; 
 
CURSO ALTERNATIVO 3 - CASO USUÁRIO SEJA LOJA 
5.1- Sistema direciona para página de Lojas, e registra loja na sessão; 
5.2- Sistema exibe Msg02 "Olá [nome do Usuário]"; 
46 
 
 
3.2.3 Cadastrar Produto 
 
Fonte: Elaborado pelos autores, 2010 
Figura 21. Diagrama de Use Case 3 – Cadastrar Produto 
 
CURSO NORMAL: 
1- Lojista solicita tela de cadastro de produtos; 
2- Sistema busca Categorias de Produtos cadastradas; 
3- Sistema mostra tela de cadastro; 
4- Lojista informa categoria escolhida; 
5- Sistema busca subcategorias de produto associadas a categoria informada; 
6- Sistema exibe listagem de subcategorias; 
7- Lojista informa subcategoria e demais dados do produto; 
8- Lojista informa se deseja adicionar uma imagem do produto e confirma 
cadastro; 
9- Caso Lojista decida adicionar imagem, sistema exibe tela de upload de 
imagem; 
10- Lojista informa o arquivo para upload; 
11- Sistema efetua upload; 
12- Sistema cria instancia de produto; 
13- Sistema envia Msg03 "Produto Cadastrado"; 
 
CURSO ALTERNATIVO 1 - LOJISTA ESCOLHE NÃO ADICIONAR IMAGEM 
AO PRODUTO 
9.1- Sistema cria instância de produto, definindo uma imagem padrão para o 
mesmo e envia Msg03 "Produto Cadastrado"; 
47 
 
 
3.2.4 Relatório de Produtos por Loja 
 
Fonte: Elaborado pelos autores, 2010 
Figura 22. Diagrama de Use Case 4 – Relatório de Produtos por Loja 
CURSO NORMAL: 
1- Lojista solicita relatório de produtos cadastrados; 
2- Sistema verifica se existe produtos associados a Loja; 
3- Caso existam produtos associados à Loja; 
4- Sistema enviaRel01, contendo, no máximo, 10 produtos organizados por 
ordem alfabética de seus respectivos nomes, e um menu de navegação para 
visualização dos demais produtos, caso existam; 
 
CURSO ALTERNATIVO 1- NÃO EXISTE PRODUTO ASSOCIADO A LOJA 
3.1- Sistema exibe Rel01 "Sua Loja não possui produtos cadastrados"; 
3.2.5 Relatório de entrega 
 
Fonte: Elaborada pelos autores, 2010 
Figura 23. Diagrama de Use Case 5 – Relatório de entrega 
CURSO NORMAL: 
1- Cliente solicita relatório de entrega e informa o número do pedido; 
2- Sistema busca itens associados ao pedido; 
3- Sistema busca cada produto associado a item no pedido; 
48 
 
 
4- Sistema busca dados de entrega associada ao item; 
5- Sistema envia Rel02; 
3.2.6 Realizar Pedido 
 
Fonte: Elaborada pelos autores, 2010 
Figura 24. Diagrama Use Case 6 – Cliente Realiza Pedido 
 
CURSO NORMAL: 
1- Usuário solicita Visualizar Carrinho; 
2- Sistema verifica se existe pedido registrado na sessão; 
3- Se sim, sistema busca itens associados ao pedido; 
4- Sistema busca produtos associados a itens; 
5- Sistema busca formas de pagamentos possíveis de acordo com o valor do 
pedido; 
6- Sistema exibe tela de carrinho de compras; 
7- Usuário seleciona forma de pagamento; 
8- Usuário solicita finalizar compra; 
9- Sistema verifica se usuário está registrado na sessão (logado); 
10- Se sim, Sistema busca dados do cliente; 
11- Sistema registra dados de cliente no pedido; 
12- Sistema cria instância de pedido; 
13- Sistema cria instâncias de entregas de itens; 
14- Sistema cria instância de itens pedidos; 
15-Sistema envia msg05 "Compra finalizada". 
49 
 
 
CURSO ALTERNATIVO 1 – USUÁRIO NÃO ESTÁ LOGADO 
9.1- Sistema redireciona para página de login; 
9.2- Usuário efetua login; 
9.3- Sistema finaliza compra e envia Msg05 “Compra Finalizada”; 
CURSO ALTERNATIVO 2 - NÃO EXISTE INSTANCIA DE PEDIDO NA 
SESSÃO 
3.1- Sistema exibe Msg05 "Seu Carrinho se encontra vazio", seguida de um 
botão que redireciona para a página principal. 
 
CURSO ALTERNATIVO 3 - USUÁRIO SELECIONA PRODUTOS 
2.1- Cliente seleciona produto; 
2.2- Sistema exibe tela de detalhes do produto; 
 
CURSO ALTERNATIVO 4 - USUÁRIO ADICIONA PRODUTO AO CARRINHO 
3.1- Usuário solicita adicionar produto ao carrinho; 
3.2- Sistema verifica se o produto já está adicionado a lista de itens do pedido; 
3.3- Caso o produto não esteja adicionado, sistema adiciona produto a lista de 
itens pedidos; 
3.4- Sistema exibe tela do carrinho de compras; 
 
CURSO ALTERNATIVO 5 - PRODUTO JÁ ESTÁ ADICIONADO A LISTA DE 
ITENS DO PEDIDO 
3.1.1- Sistema exibe Msg05 "Este produto já está no carrinho! Deseja adicionar 
um item a quantidade pedida", dando as opções de escolha "SIM", ou 
"NÃO"; 
3.1.2- Caso o usuário escolha "SIM", sistema altera quantidade pedida do item; 
3.1.3- Sistema exibe tela do carrinho de compras com os valores atualizados; 
 
CURSO ALTERNATIVO 6 – USUÁRIO ESCOLHE NÃO ALTERAR A 
QUANTIDADE PEDIDA DO PRODUTO SELECIONADO 
3.1.2.1- Caso o cliente escolha "NÃO", nenhuma ação será efetuada; 
 
CURSO ALTERNATIVO 7 - USUÁRIO SOLICITA ALTERAR QUANTIDADE 
PEDIDA DE PRODUTO 
4.1- Usuário solicita alterar quantidade pedida de produto; 
50 
 
 
4.2- Sistema altera quantidade pedida do item a ser alterado; 
4.3- Sistema atualiza valores subtotal e total do pedido; 
4.4- Sistema exibe tela do carrinho de compras com os valores atualizados; 
 
CURSO ALTERNATIVO 8 - USUÁRIO RETIRA PRODUTO DO CARRINHO 
5.1- Usuário solicita retirar produto do carrinho de compras; 
5.2- Sistema remove o item da lista de itens pedidos; 
5.3- Sistema exibe tela do carrinho de compras; 
 
CURSO ALTERNATIVO 9 - USUÁRIO NÃO SELECIONOU FORMA DE 
PAGAMENTO E SOLICITOU FINALIZAR COMPRA 
6.1- Sistema exibe Msg05 "Selecione uma forma de pagamento"; 
3.2.7 Relatório de Pedidos 
 
Fonte: Elaborada pelo autor, 2010 
Figura 25. Diagrama de Use Case 7 – Relatório de Pedidos 
 
CURSO NORMAL: 
1- Cliente solicita relatório de pedidos; 
2- Sistema verifica se existem pedidos associados ao Cliente; 
3- Se sim, sistema busca forma de pagamento associada a cada pedido 
realizado. 
4- Sistema envia Rel03; 
 
CURSO ALTERNATIVO 1 - NÃO EXISTE PEDIDO ASSOCIADO AO CLIENTE 
3.1- Sistema envia Rel03 "Nenhum pedido foi realizado por você"; 
 
CURSO ALTERNATIVO 2 - CLIENTE SOLICITA DETALHAR PEDIDO 
2.1- Cliente solicita detalhar pedido e informa o código do pedido; 
51 
 
 
2.2- Sistema busca itens associados a pedido; 
2.3- Sistema busca cada produto associado a item no pedido; 
2.4- Sistema exibe tela de detalhes do pedido; 
3.2.8 Relatório de Produtos Vendidos por Loja 
 
Fonte: Elaborado pelos autores, 2010 
Figura 26. Diagrama de Use Case 8 – Relatório de Produtos Vendidos por Loja. 
 
CURSO NORMAL: 
1- Lojista solicita relatório de produtos vendidos, e informa o período em que se 
deseja visualizar as vendas; 
2- Sistema busca produtos associados à Loja; 
3- Sistema verifica se produtos estão relacionados a itens pedidos; 
4- se sim, sistema busca pedidos relacionados a cada instância de itens 
pedidos, e que ocorreram no período informado; 
5- Caso produtos estejam relacionados a itens pedidos, sistema envia Rel04; 
 
CURSO ALTERNATIVO 1 - CASO PRODUTOS NÃO ESTEJAM 
RELACIONADOS A ITENS PEDIDOS 
4.1- Sistema exibe Rel04 "Nenhuma venda registrada para esta Loja, neste 
período"; 
 
CURSO ALTERNATIVO 2 - LOJISTA SOLICITA DETALHAR ENTREGA DE 
PRODUTO 
2.1- Sistema busca dados relacionados ao produto vendido e seu respectivo 
pedido; 
52 
 
 
2.2- Sistema busca dados do cliente que comprou o produto; 
2.3- Sistema busca data da entrega do produto; 
2.4- Sistema exibe tela de detalhes da entrega; 
3.2.9 Relatório de Produtos por subcategoria 
 
Fonte: Elaborada pelos autores, 2010 
Figura 27. Diagrama de Use Case 9 – Relatório de Produtos por 
subcategoria 
 
CURSO NORMAL: 
 
1- Usuário solicita relatório de produtos por subcategoria e informa o código da 
subcategoria de produtos; 
2- Sistema busca subcategoria associada ao código informado; 
3- Sistema verifica se existem produtos associados a subcategoria; 
4- Caso existam produtos associados ao código, Sistema envia Rel05; 
 
CURSO ALTERNATIVO 1 - CASO NÃO EXISTAM PRODUTOS ASSOCIADOS 
AO CÓDIGO 
4.1- Sistema envia Rel05 "Esta categoria não contém produtos"; 
3.2.10 Relatório de Produtos por nome 
 
Fonte: Elaborada pelos autores, 2010 
Figura 28. Diagrama de Use Case 10 - Relatório de Produtos por 
nome 
53 
 
 
CURSO NORMAL: 
1- Usuário solicita relatório de produtos informando o nome completo, ou 
apenas uma parte do nome, do produto; 
2- Caso usuário informe a subcategoria em que será realizada a busca pelos 
produtos com o nome informado; 
3- Sistema verifica se existem produtos associados a categoria e que seus 
nomes contenham o nome informado; 
4- Caso sejam encontrados produtos, sistema envia Rel06 
 
CURSO ALTERNATIVO 1 - USUÁRIO NÃO INFORMA SUBCATEGORIA 
PARA BUSCA DE PRODUTOS 
2.1- Sistema verifica se existem produtos cujos nomes contenham o nome 
informado em quaisquer subcategorias 
2.2- Caso sejam encontrados produtos, sistema envia Rel06 
 
CURSO ALTERNATIVO 2 - CASO NÃO SEJAM ENCONTRADOS 
PRODUTOS 
4.1- Sistema envia Rel06 "Não existem produtos com este nome". 
54 
 
 
3.3 Diagramas de Sequência 
3.3.1 Cadastrar Usuário 
 
Fonte: Elaborado pelos autores, 2010 
Figura 29. Diagrama de Seqüência 1 – Cadastrar Usuário 
55 
 
 
3.3.2 Efetuar Login 
 
Fonte: Elaborado pelos autores, 2010 
Figura 30. Diagrama de Sequência 2 – Efetuar Login 
56 
 
 
3.3.3 Cadastrar produto 
 
Fonte: Elaborada pelos autores, 2010 
Figura 31. Diagrama de Sequência 3 – Cadastrar Produto 
57

Continue navegando