PORTAL COMERCIAL UTILIZANDO CONCEITOS DE WEB 2.0 BERNARDO MARONGIU HOFFMANN PÁDUA 1 Aluno do Curso de Ciência da Computação do Centro Universitário de Vila Velha. E-mail: [email protected] . HENRIQUE PETERLE MIRANDA 1 Aluno do Curso de Ciência da Computação do Centro Universitário de Vila Velha. E-mail: [email protected] . RAPHAEL LUGON CAMPO DALL’ORTO 1 Aluno do Curso de Ciência da Computação do Centro Universitário de Vila Velha. E-mail: [email protected] . OTACÍLIO JOSÉ PEREIRA 1 Mestre em Informática e Engenheiro de Computação pela UFES. E-mail: [email protected] RESUMO A proposta deste trabalho é a criação de um portal web que visa facilitar a comunicação entre lojistas e clientes de um pólo comercial, além de agilizar o processo de compra para os clientes, que poderão interagir através de perguntas e comentários, e obter informações sobre as lojas e os produtos, disponibilizadas e atualizadas pelos próprios lojistas. Ferramentas da web 2.0, dentre elas AJAX, RSS e Mashups serão utilizadas na construção do portal. Palavras-Chave: Portal, web 2.0, AJAX, RSS, Mashups ABSTRACT The proposal of this work is to create a Web portal designed to facilitate communication between merchants and customers of a commercial center, in addition to expedite the process of buying for clients, which may interact with questions, comments and information about the stores and products, available and updated by the merchants. Web 2.0 tools, such as AJAX, RSS and Mashups will be used in the construction of the portal. Keywords: Portal, web 2.0, AJAX, RSS, Mashups 1. INTRODUÇÃO Com a globalização, surgiu a necessidade de as empresas expandirem seus negócios, de divulgarem mais amplamente seus produtos. A internet é um elo entre as empresas e o mundo. Com a rede mundial de computadores, surgiram serviços para auxiliar o usuário na navegação. Um deles é denominado portal. Um portal é um agrupador de informações, um website que normalmente oferece diversos tipos de serviços no mesmo local. Usados a princípio como agregadores de notícias, os portais evoluíram gradativamente para a forma atual, na qual fornecem serviços de email, notícias, entretenimento, entre outras coisas. Há, no entanto, websites que se caracterizam como portais somente por sua grande extensão, embora sejam provedores de apenas um tipo de serviço. Exemplos são o Youtube, o MySpace e o del.icio.us. É neste sentido mais estrito que o presente trabalho usa o conceito do portal. A idéia de um portal na internet de um pólo comercial é muito mais limitada do que os exemplos citados anteriormente. Porém, é um mercado promissor. Não é possível estimar o potencial que um site como esse possa alcançar. Um exemplo é o Pólo de Confecções da Glória, que possui mais de 500 lojas, espalhadas por várias ruas. Muitas vezes é difícil para um cliente percorrer todas as lojas, analisar todas as promoções e fechar o melhor negócio. Um espaço na web completamente automático, onde os donos de lojas, através de um login, mantêm um cadastro de seus produtos e informações que ficam disponíveis para o acesso do público facilitaria os negócios dos comerciantes e dos clientes. Desta forma, um cliente pode pesquisar produtos pela descrição, por loja, por tamanho e comparar preços antes de se dirigir ao pólo, além de obter a localização geográfica das lojas em um mapa. O tempo gasto por um cliente para fazer compras será reduzido e é esperado um aumento das vendas nas lojas. O portal funcionará como uma ferramenta de marketing – e, portanto, não oferecerá um serviço de vendas online. A idéia de agilizar o processo de compras é um ponto importante do portal. Para construir um portal ágil, que possa interagir e fornecer localizações geográficas para o cliente serão utilizadas as ferramentas da web 2.0. Mas o que é web 2.0? Muito se discute sobre o significado do termo web 2.0. Há quem diga que seja um marco na história da World Wide Web - o começo de uma segunda geração da web. Mas há também aqueles que acreditam ser apenas uma buzzword (tendência, conceito novo) que define apenas uma nova fase da evolução natural da internet. Após a introdução, será apresentado no tópico 2 um panorama geral do tema abordado. No tópico 3, a concepção do sistema será apresentada. Ao final, as conclusões sobre esta etapa do trabalho serão apresentadas e um planejamento das atividades futuras será delineado. 2. REVISÃO LITERÁRIA Neste tópico serão apresentados os conceitos empregados e as tecnologias usadas no trabalho. Dentre elas estão web 2.0, AJAX, RSS e Mashups. 2.1. WEB 2.0 O termo "web 2.0" é comumente usado para designar a era atual das tecnologias da internet. A web 2.0, em contraste com a primeira geração da internet, seria uma nova fase de interatividade da rede. Em vez de páginas estáticas, que predominavam anteriormente, a web 2.0 caracteriza-se por páginas dinâmicas. Muito do que se utiliza na web 2.0, como ferramentas e linguagens para web, já existia antes de se começar a falar sobre o termo. Assim, a web 2.0 é uma segunda geração, ou apenas uma evolução natural da internet? Do ponto de vista das tecnologias usadas no desenvolvimento das aplicações web, não podemos dizer que houve tal mudança a ponto de podermos falar em uma nova geração. Porém, do ponto de vista dos usuários e dos desenvolvedores, a web 2.0 é uma forma completamente nova de se usar a internet. Páginas mais dinâmicas e ágeis, que não precisam de atualização completa a cada ação, além de conteúdos disponibilizados e compartilhados pelos próprios usuários, são fatores que fazem com que o usuário sinta esta grande diferença entre a antiga e a nova web. Uma das diferenças que podem ser notadas é o crescimento de sites que prestam serviços a usuários, que são pagos mensalmente. Um negócio muito mais lucrativo do que o velho conceito de vender pacotes de sistemas. É claro que as características que marcam a web 2.0 não foram “inventadas” a partir do momento que o termo “web 2.0” começou a ser utilizado. Esses recursos vinham sendo desenvolvidos há algum tempo, antes que alguém, dadas as mudanças que haviam acontecido até então e o que mais havia por vir, sentisse a necessidade de denominar esta nova fase da internet. O termo foi criado por Tim O’Reilly e usado oficialmente pela primeira vez em 2003. Segundo ele as transformações através das novas tecnologias justificam essa nova fase a fase de interação com usuário. Pode-se dizer, no entanto, que não há nenhuma grande inovação tecnológica na web 2.0. Trata-se, sobretudo, da utilização de velhas tecnologias com um novo enfoque. 2.2. VISÃO GERAL DAS TECNOLOGIAS A seguir serão apresentadas algumas das principais tecnologias da web 2.0 e que serão empregadas no desenvolvimento do projeto. São eles: AJAX, Mashups e RSS. 2.2.1. AJAX (Asynchronous Javascript and XML) A web clássica baseia-se na requisição HTTP (Hypertext Markup Language) – isto é, ela requer que o usuário aguarde pelo recebimento de dados, que chegam na forma de HTML e CSS (Cascading Style Sheets). Os navegadores, portanto, funcionam como terminais burros, uma vez que não executam qualquer processamento de informação, tarefa que fica delegada exclusivamente ao servidor, como ilustra a figura 1. Figura 1. Modelo tradicional de aplicações web [Garrett, 2005]. Há sérias limitações ao uso da web de acordo com esse modelo convencional. É necessário, por exemplo, carregar novamente as páginas toda vez que se fizer qualquer solicitação, por mínima que seja. Para tornar mais eficiente a interação com o usuário, surgiu o AJAX. Segundo Garret [2005], o AJAX não é uma nova tecnologia, mas um conceito mais amplo que abriga outras tecnologias. De fato, o AJAX constitui-se de quatro partes principais, a saber: • o XHTML (Extensible Hypertext Markup Language) ou HTML, e o CSS, que apresentam visualmente a informação para o usuário; • o DOM (Document Object Model), que confere interatividade e dinamismo à apresentação; • o XML e o XSLT (Extensible Markup Language e Extensible Stylesheet Language Transformations, respectivamente), que permitem o intercâmbio e a manipulação de dados; • o XHL (XMLHttpRequest), para a o envio e recebimento de dados de modo assíncrono; • Javascript, que une todas as tecnologias citadas. O AJAX possibilitou que não seja mais necessário recarregar toda a página a cada solicitação do usuário. Isto é possível através do emprego assíncrono do Javascript e do XML, o que permitiu a atualização de campos específicos das páginas. Com isso, a troca de dados entre o servidor e o navegador diminui consideravelmente. Isso ocorre porque as aplicações AJAX requisitam dados ao servidor indiretamente, por meio do motor AJAX. Esse motor é uma camada de aplicação; ele serve para requisitar dados assim que necessário. Toda vez que o cliente faz uma requisição, ele a solicita para o motor AJAX, e o motor faz a solicitação ao servidor. Uma vez que apenas os dados são atualizados – e não toda a página –, o fluxo de informações entre a rede e o servidor diminui e as requisições ficam muito mais rápidas, como ilustra a figura 2. Figura 2. Modelo AJAX de aplicações web [Garrett, 2005]. Uma pequena comparação entre o funcionamento clássico da web e o funcionamento do modelo AJAX pode ser instrutiva. No modelo clássico, para cada requisição ao servidor, o cliente deve esperar sua resposta individual. Isso acontece porque a transmissão de dados é síncrona, ou seja, não é possível requisitar múltiplas tarefas simultaneamente. No modelo AJAX, para cada requisição Javascript, o motor AJAX tenta realizar o processamento individualmente. Durante a requisição, o usuário pode continuar a utilizar a aplicação e até mesmo fazer outras requisições ao servidor. O que não pode ser processado pelo motor AJAX é solicitado por meio de uma requisição HTTP. Estes dados devolvidos servidor ao motor AJAX voltam na forma de dados XML, os quais, por sua vez, atendem as requisições. O funcionamento de ambos os modelos (síncrono e assíncrono, respectivamente) é melhor ilustrado na figura 3. Figura 3. Comparação da Interação síncrona de aplicativos web tradicionais. (esquerda) com a interação assíncrona de aplicativos Ajax (direita) [Garrett, 2005]. 2.2.2. MASHUPS O termo ”Mashup” (normalmente aplicado a músicas criadas a partir de outras músicas, conhecido por “mix”) na web surgiu para designar aplicações compostas. Segundo Cleuton Sampaio, autor do livro WEB 2.0 e Mashups, Mashup é uma derivação do conceito de aplicação composta ou composite application - um padrão de projeto (project pattern) que utiliza a mesma ideologia -, que é uma aplicação que consome informação disponibilizada através de Web Services. Uma aplicação que utiliza este conceito pode se tornar muito poderosa e versátil, visto que em um único ambiente integrado podemos agrupar vários tipos de componentes e acessar várias fontes de dados, tratando e apresentando ao usuário como se fossem provenientes de uma única fonte. Utilizando as técnicas e API’s (Application Programming Interface) existentes, é possível desenvolver sites poderosos e flexíveis contando com recursos atrativos como blogs, agendas, notícias e mapas. Atualmente temos exemplos bem sucedidos de uso de Mashups na web. A própria Google já integrou o serviço de mensagens instantâneas com e-mail e busca, e o site de relacionamentos Orkut, com vídeos, SMS e comentários em fotos (serviço oferecido por sites como Fotolog). Podemos citar também o WalkJogRun, que permite aos corredores americanos, trocarem experiências e informações sobre rotas e distâncias. O Locate Me, que de acordo com seu endereço IP fornece sua localização no mapa, também é usada a API HostIP.info, e WeatherBonk, que fornecem informações climáticas com o auxílio de imagens de webcams dos próprios usuários. Todos estes exemplos combinam o uso da API do Google Maps com outras para prestar serviços para um público específico. A API do Google Maps é uma poderosa ferramenta para construir aplicações que necessitam de localização geográfica ao redor do mundo. A figura 4 ilustra a utilização de Mashups tomando como exemplo o site WalkJogRun citado acima. É possível observar a integração entre duas fontes de dados distintas (Google Maps e o banco de dados do próprio site). Figura 4. Exemplo de Mashups. [www.walkjogrun.net]. É possível ver várias características da web 2.0 interagindo nos exemplos citados acima, tais como: a colaboração dos usuários com o conteúdo, a rápida interação com o usuário com códigos rodando no servidor e no cliente para tornar a navegação mais ágil e o próprio Mashups que rege a integração entre as diversas partes que compõem estas aplicações. 2.2.3. RSS (Really Simple Syndication) Os usuários que necessitam estar conectados o tempo todo com informações provenientes de diversos sites, sabem que é fatigante visitar cada um para verificar se há alguma novidade. Durante as visitas, sensações de frustração pela perda de conteúdo ou por não haver nada de novo para se ver são freqüentes. Para eliminar esse problema, muitos sites vêm adotando o RSS (também chamado de feed). O padrão RSS facilita a vida dos usuários que querem saber das novidades assim que elas vão para o ar, sem ter que visitar sites periodicamente. Com ele podemos reunir informações (normalmente, resumos de conteúdo juntamente com os links para as versões completas deste conteúdo) de vários sites em uma única tela, sem a necessidade de acessar cada um dos sites responsáveis por elas. De uma maneira geral, o RSS permite o recebimento de informações, sincronizadas com os respectivos fornecedores de conteúdo de forma rápida, uma vez que o formato dos dados se restringe a texto simples. As atualizações são feitas consultando o banco de dados, ou seja, quando for cadastrado um novo produto ou uma nova notícia, por exemplo, o RSS vai buscar esse novo “item” cadastrado e adicionar no feed. O funcionamento da assinatura de um RSS é análogo ao de uma revista: ao invés de se deslocar para ir até a banca e comprar a nova edição, você consegue fazer com que a revista seja entregue na sua casa quando sair. O mesmo acontece com o RSS: a informação chega a você e não o contrário. Normalmente este ícone está associado a links para páginas dinâmicas ou para arquivos RSS diretamente. A maioria dos sites de notícias e blogs já possuem conteúdo disponibilizado como RSS. Existem duas maneiras de fazer o uso de RSS: usar um programa cliente, também denominado de agregador, onde são incluídos os RSS que o usuário deseja acompanhar ou fazer um cadastramento em sites específicos, agregadores via navegador ou browser, e neles incluir os RSS que deseja acompanhar. O interessante de usar um site agregador como o Google Reader, por exemplo, é que podemos acessar de qualquer computador: de casa, do trabalho, da lan-house, o que é bem mais conveniente. A figura 5 ilustra um exemplo da utilização de um RSS. Figura 5. Exemplo de RSS [www.globo.com] 3. ANÁLISE Nesta parte será apresentada a concepção do projeto contemplando o diagrama de casos de uso, a descrição e as especificação dos casos de uso, alguns diagramas de seqüência e o diagrama de classes da aplicação. 3.1. DIAGRAMA DE CASOS DE USO A figura 5 ilustra o diagrama de Casos de Uso, com uma visão geral das funcionalidades do projeto. Figura 6. Diagrama de Casos de Uso 3.2. ESPECIFICAÇÃO DE CASOS DE USO Um caso de uso define um conjunto de passos, no qual cada passo é uma seqüência de ações realizada por um sistema que produz um resultado de valor observável para determinado ator. Será apresentada a especificação de alguns casos de uso que representam as tecnologias utilizadas e que foram prototipados. A especificação será mais aprofundada para as funcionalidades em que foram aplicadas as tecnologias web 2.0, foco deste trabalho. Estas funcionalidades são: • Pesquisar Produto, Cadastrar Lojista, Cadastrar Usuário entre outros casos de uso que representam bem a tecnologia AJAX através de seus formulários dinâmicos. • Cadastrar Localização e Obter Localização, onde foi aplicado o conceito de Mashups interagindo com os dados provenientes do Google Maps • Ler RSS, que ilustra o uso da tecnologia RSS, disponibilizando contudo através de arquivos xml no formato padrão RSS. 3.4.1 Caso de Uso – Pesquisar Produtos Este caso de uso possibilita ao ator Pesquisar por lojas e por produtos cadastrados por qualquer lojista. Nome Pesquisar Produtos Sub-sistema Visitante Atores Visitante. Descrição O Ator digita uma ou mais palavras-chave no campo de pesquisa e confirma. Os produtos e as lojas devem estar cadastrados para que possam ser encontrados pela pesquisa. Retorna a página principal. Pré-condição Pós-condição Fluxo normal Ator Sistema 1. O ator responsável inicia o caso de uso 2. O Sistema fornece possíveis palavras- quando altera o conteúdo do campo de chave. Iniciar pesquisa. 3. O ator responsável pode escolher uma 4. O sistema exibe os produtos e lojas das alternativas ou digitar uma ou mais que tenham relação com a(s) palavra(s)- palavras-chave no campo de pesquisa e chave fornecida(s). confirma. Exibir 5. O ator responsável seleciona um item 6. Se for um produto, o sistema fornece para exibir detalhes sobre o mesmo. todas as informações disponíveis sobre o produto, uma opção para ver mais produtos da mesma loja, e uma para Obter Localização da loja. As informações apresentadas serão: Descrição do Produto, Tipo de produto, Preço, Nome da Loja, Tamanho e Disponibilidade. 7. O sistema exibe informações sobre a empresa responsável pelo produto: Nome, Endereço, Categoria e Telefone além de informações sobre suas unidades tais como Endereço e Telefones para contato. Além disso, o sistema disponibiliza uma forma de se acessar o mapa de localização. Ver mais produtos da mesma Loja 8. O ator responsável seleciona a opção 9. O sistema ativa o filtro nome da loja, o “Ver mais produtos da mesma loja” define com o nome da loja correspondente a um produto encontrado correspondente ao produto selecionado e a partir da pesquisa de produtos. faz uma pesquisa. Fluxos alternativos: Na ação 7: O usuário pode chamar a visualização do mapa, estendendo para o caso de uso: Obter Localização. Cenários de Exceção: Na ação 4: Podem não existir produtos cadastrados no banco de dados relacionados às palavras-chave digitadas pelo usuário, então o sistema não retornará nenhum produto. 3.4.2 Caso de Uso – Obter Localização Este caso de uso possibilita ao ator a Obter a Localização Geográfica de lojas por produtos e lojas cadastrados por qualquer lojista. Nome Obter Localização Sub-sistema Visitante Atores Usuário e Visitante. Descrição O Ator requisita a localização de uma loja e o sistema fornece um mapa com o local da loja assinalado. As Lojas devem cadastrar corretamente seus endereços para que possam ser localizadas. Retorna a página anterior. Pré-condição Pós-condição Fluxo normal Ator Sistema 1. O ator responsável inicia o caso de uso 2. O sistema exibe um mapa e de acordo a partir do caso de uso “”Pesquisar com a empresa escolhida, assinala no Produtos”. mapa as localizações de suas unidades. 3. O Usuário passa o Mouse sobre a 4. O sistema exibe informações da unidade no mapa. unidade dentro do mapa. Iniciar 3.4.3 Caso de Uso – Ler RSS Este caso de uso possibilita ao ator ler o conteúdo RSS disponibilizado pelo portal.. Nome Ler RSS Sub-sistema Visitante Atores Visitante Descrição Pré-condição O Ator tem acesso às últimas atualizações de produtos de acordo com a categoria escolhida. - Pós-condição Retorna a pagina principal Fluxo normal Ator Sistema Iniciar 1. O ator responsável ativa o caso de uso 2. O sistema exibe uma tela com opções a partir da tela inicial. de categorias de produtos, as quais o ator pode escolher de qual delas deseja receber notificações. 3. O ator escolhe a categoria desejada 4. O sistema exibe uma mensagem de .Lembrando que o ator pode selecionar confirmação e exibe para o usuário o receber notificações relacionadas a todas conteúdo em um arquivo XML para o as categorias. usuário no padrão RSS. 3.4.4 Caso de Uso – Solicitar Conta de Lojista Este caso de uso possibilita ao ator solicitar uma conta de lojista no sistema. Nome Solicitar conta de lojista Sub-sistema Lojista Ator Visitante Descrição O Ator faz uma solicitação ao sistema para receber uma conta de lojista. - Pré-condição Pós-condição O Ator recebe um e-mail com um login e uma senha para validação posterior. Fluxo normal Ator Sistema Iniciar 1. O ator responsável ativa o caso de uso 2. O sistema solicita informações através da função de cadastro de lojista. pessoais: (Nome, Telefone, Celular e CPF), informações de acesso: (Login, Senha e E-mail), informações sobre a Empresa: (Razão Social, Nome Fantasia, CNPJ e Categoria), informações sobre as unidades da empresa: (Telefone, Fax, CEP, Logradouro, Complemento, Número, Bairro e Cidade). 3. Em seguida o ator responsável chama 4. O sistema ativa o caso de uso o caso de uso Cadastrar Localização “Cadastrar Localização”. <Include Cadastrar Localização> 5. O ator preenche os campos e 6. O Sistema ativa o caso de Uso Validar seleciona no mapa a localização das conta de Lojista. unidades de sua empresa e confirma, estendendo para o caso de uso Validar conta Lojista. 3.4.5 Caso de Uso – Cadastrar Localização Este caso de uso possibilita ao ator a Cadastrar a Localização Geográfica de unidades pertencentes à sua empresa.. Nome Cadastrar Localização Sub-sistema Lojista Atores Lojista. Descrição O Ator posiciona no mapa a localização das unidades de sua empresa. O Ator deve estar logado e já informou quantas unidades sua empresa possui. Retorna a página anterior. Pré-condição Pós-condição Fluxo normal Ator Sistema Iniciar 1. O ator responsável inicia o caso de uso 2. O sistema exibe um mapa e a partir do caso de uso Manter disponibiliza no mesmo um marcador informações da Empresa. para cada unidade da empresa. 3. O Usuário posiciona as unidades de 4. O sistema salva a localização das acordo com seus respectivos endereços unidades no Banco de Dados. e Confirma. 3.3. DIAGRAMA DE SEQUÊNCIA Será apresentado o diagrama de sequência dos casos de uso especificados acima 3.3.1. Diagrama de Seqüência – Obter Localização A figura 7 ilustra o Diagrama de Seqüência do Caso de uso Obter Localização. Figura 7. Diagrama de Seqüência do Caso de uso Obter Localização. 3.3.2. Diagrama de Seqüência – Assinar RSS A figura 8 ilustra o Diagrama de Seqüência do Caso de uso Assinar RSS. Figura 8. Diagrama de Seqüência do Caso de uso Assinar RSS. 3.3.3. Diagrama de Seqüência – Solicitar Conta de Lojista A figura 9 ilustra o Diagrama de Seqüência do Caso de uso Solicitar Conta de Lojista. Figura 9. Diagrama de Seqüência do Caso de uso Solicitar Conta de Lojista. 3.4. MODELO DE CLASSES DA ANÁLISE A figura 10 ilustra o Diagrama de Classes do Projeto. Figura 10. Diagrama de Classes. 3.5. TECNOLOGIAS EMPREGADAS O projeto abordará, além dos conceitos já citados, o Ambiente de desenvolvimento Visual Studio, as linguagens Asp.Net, Javascript e XML e o Banco de Dados Microsoft SQL Server. AJAX – Será usado para transformar o portal em um site leve, fazendo dos menus principais fixos, sem a necessidade de recarregar a cada nova chamada do site, será utilizado também na parte de buscas, filtrando o conteúdo a ser buscado. Na parte de cadastro será utilizado para chamadas de endereço utilizando como entrada o CEP. Mashups - Será usado para receber os dados do Google Earth e do banco de dados (BD), integrá-los e apresentá-los para o usuário como ser fosse uma única fonte de dados. Combina as funcionalidade de localização com as funcionalidades do acesso ao BD do portal RSS – O conceito será utilizado para mostrar as últimas inclusões ou atualizações de novos produtos, ou ainda de alguma novidade ou notícia sobre a loja. O usuário tem a opção de assinar ou não o RSS. Compatibilidade com os programas Firefox 2.0 e Internet Explorer 7. 4. PROJETO Na fase de projeto é executado o detalhamento de cada um dos casos de usos definidos na fase de análise. Nesta fase é incorporada a tecnologia (rede, linguagens, banco de dados, entre outros) que deverá ser implementada nos diversos casos de usos. Também são definidas as entradas e saídas (telas, relatórios, layouts) e o Modelo Lógico e Físico de Dados. Apesar do projeto envolver diversas funcionalidades, este capítulo de projeto enfatizará as partes do módulo do lojista, pois refletem melhor as tecnologias web 2.0 empregadas como foco deste trabalho. 4.1 Diagrama de Pacotes Geral O objetivo desse diagrama é separar o projeto em pacotes, e mostrar os relacionamentos entre cada pacote. A figura 11 retoma uma visão geral dos pacotes do sistema através do Diagrama de Pacotes Geral. Figura 11. Diagrama de Pacotes Geral A seguir, será apresentado o módulo de lojista que aborda a maioria destas funcionalidades focadas no desenvolvimento. 4.2 Diagrama de Pacotes Lojista A figura 12 ilustra o Diagrama de Pacotes Lojista. Figura 12. Diagrama de Pacotes Lojista 4.3 Diagrama de Classes da Camada de Apresentação dos Módulos de Lojista e Visitante O diagrama de classes é uma representação visual da estrutura e relações das classes que servem de modelo para objetos. A figura 13 ilustra o Diagrama de Classes da Camada de Apresentação do Módulo Lojista e do Módulo Visitante. Figura 13. Diagrama de Classes do Módulo Lojista e Visitante da camada de Apresentação 5. PROTÓTIPO 5.1 Visão Geral do WebSite A seguir, a figura 14 apresenta uma visão geral do website. Observa-se à esquerda logo abaixo do banner o painel de login, onde os usuários e lojistas cadastrados podem efetuar autenticação. Abaixo há um menu de categorias, com o intuito de agilizar buscas direcionadas de visitantes. À direita há um link para acessar o conteúdo RSS do site e a barra de busca inteligente. Logo abaixo, o local onde aparecem os produtos e suas informações. Figura 14. Visão Geral do WebSite 6. CONCLUSÃO Várias críticas podem ser levantadas ao modelo de negócios empregado atualmente pelo Pólo de Confecções da Glória. O modelo comercial do pólo pode ser substancialmente melhorado com um investimento relativamente baixo em um website para a internet. Um portal que apresentasse rapidamente os produtos das mais de quinhentas lojas, com preços, promoções, etc., facilitaria os negócios tanto de lojistas quanto de consumidores. Os consumidores poderiam encontrar rapidamente as melhores ofertas sem ter que se submeter a uma fatigante pesquisa física, na qual teriam que percorrer centenas de lojas em busca dos preços mais baixos. Os lojistas poupariam custos por não precisarem apresentar suas mercadorias a tantos consumidores em pesquisa. Os gastos em publicidade poderiam diminuir e o seu alcance aumentaria. Pode-se até mesmo vislumbrar um fortalecimento das relações entre os lojistas do Pólo graças às facilidades que a internet oferece. Certamente há muitos clientes que prefeririam continuar a dedicar várias horas entre lojas, vendo os produtos e os vendedores de perto. Porém, é inegável também que há um tipo de consumidor que preza mais pela agilidade e o conforto, que precisa de respostas rápidas às suas necessidades, e este é o público-alvo do portal do Pólo de Confecções da Glória. O diferencial do Pólo de Confecções são seus baixos preços e sua variedade de produtos em relação às outras lojas. No entanto, ainda é possível adicionar mais um diferencial a ele. E esse diferencial é a agilidade que somente um portal na internet pode proporcionar. 7. REFERÊNCIAS BIBLIOGRÁFICAS [1] NIEDERAUER, J. Web interativa com ajax e php. [2] FOCUSNETWORKS.Web 2.0. guia rápido para uma estrutura web 2.0 de sucesso. [3] KONDO, R. T. Acelerando com ajax a biblioteca digital de testes e dissertações da usp. [4] CRANE, D. AJAX EM AÇÃO. [S.l.]: PRENTICE HALL, 2007. [5] SAMPAIO, C. 2.0 e MASHUPS REINVENTANDO A INTERNET. [S.l.]: BRASPORT, 2008. [6] SILVA, R. P. UML 2 EM MODELAGEM ORIENTADA A OBJETOS. [S.l.]: VISUAL BOOKS, 2007. [7] LOTAR, A. Como programas com ASP.NET e C#. [S.l.]: Novatec, 2007. [8] WAHLIN, D. Profissional ASP.NET AJAX. [S.l.]: Alta Books, 2008. [9] EVANS, K. A. XML e ASP.NET. [S.l.]: Ciência Moderna, 2003. [10] CARDOSO, C. UML na Pratica: do Problema ao Sistema. [S.l.]: Ciência Moderna, 2003. [11] LARMAN, C. Utilizando UML e Padrões. [S.l.]: Bookman, 2007. [12] PILONE, D. UML 2: Rápido e Prático. [S.l.]: Alta Books, 2006. [13] MARTIN, R. Projetando e Administrando Banco de Dados SQL Server 2000. [S.l.]: Alta Books, 2002. [14] SOUSA, R. F. M. Aprenda ASP.NET AJAX em 15 passos. [S.l.]: Érica, 2007. [15] BEZERRA, E. PRINCIPIOS DE ANALISE E PROJETO DE SISTEMAS COM UML. [S.l.]: ELSEVIER EDITORA LTDA, 2006.