Desenvolvimento - ASP

Curso Básico de ASP 3.0 – Módulo 01 – Lição 01

Neste módulo veremos um pouco sobre esta evolução da Internet. Passaremos pelas diversas fases, desde a criação de sites com conteúdo estático, até os aplicativos de n-camadas atuais. Também veremos como a tecnologia ASP, contribui para a criação de Sites dinâmicos. Com isso você verá em que situações é indicada a utilização de páginas ASP.

por Júlio Cesar Fabris Battisti



Nota: Esta lição faz parte do curso "Criando Sites Dinâmicos com ASP 3.0". Você pode adquirir o conteúdo completo deste curso, com 732 páginas de conteúdo, no formato de arquivo .PDF, por apenas R$ 20,00 para o envio via download ou R$ 30,00 para o envio via CD. Para maiores detalhes sobre como adquirir o arquivo .PDF, com todo o conteúdo do Curso: Criando Sites Dinâmicos com ASP 3.0, para ter acesso ao conteúdo completo do curso, com permissão de impressão, sem estar conectado à Internet, acesse o seguinte endereço: http://www.juliobattisti.com.br/ebooksdoautor.

Módulo 1 - Uma introdução a tecnologia ASP

Introdução

A Internet faz parte da vida de um número cada vez maior de pessoas. Fazer compras, sem sair de casa, receber, diretamente no seu computador, as últimas notícias, comprar e vender ações pela Internet, procurar emprego pela rede, são exemplos de facilidades oferecidas pela Internet. Talvez seja mais simples enunciar o que não é possível de se fazer pela rede, do que listar todas as possibilidades de coisas que são possíveis de realizar pela Internet. Mas nem sempre foi assim. Para chegar ao nível que nos encontramos hoje, com a disponibilização dos mais variados serviços via Internet, muita evolução foi necessária. Desde os tempos de conteúdo meramente informativo, estático, até a possibilidade de escutar rádio e fazer compras pela rede, muitas tecnologias novas tiveram que ser criadas, testadas e melhoradas. E o ritmo da evolução não para, pelo contrário, parece acelerar cada vez mais.

Neste módulo veremos um pouco sobre esta evolução da Internet. Passaremos pelas diversas fases, desde a criação de sites com conteúdo estático, até os aplicativos de n-camadas atuais. Também veremos como a tecnologia ASP, contribui para a criação de Sites dinâmicos. Com isso você verá em que situações é indicada a utilização de páginas ASP.

Era uma vez uma Internet com conteúdo estático

Neste tópico veremos um pouco sobre o história de Internet e alguns conceitos básicos sobre a rede. Aprenderemos sobre os diversos elementos envolvidos quando um usuário acessa conteúdo da Internet. Também veremos as limitações e problemas dos sites pioneiros que criavam conteúdo estático.

Um começo quase sem querer

Poderíamos dizer que a origem da Internet foi casual e despretensiosa. Inicialmente, foi criada uma rede conhecida como ARPANET, a qual era utilizada pelo Departamento de Defesa norte-americano. Também utilizavam a rede, alguns fornecedores e pesquisadores ligados ao Departamento de Defesa. Como a ARPANET mostrou-se de grande utilidade, facilitando a troca de informações, acabou expandindo-se de uma maneira muito rápida e até mesmo inesperada. Neste ponto a idéia de uma rede de computadores para a troca de informações estava lançada.

Mais tarde, foi criada uma rede baseada nas mesmas tecnologias da ARPANET, porém com uma abrangência maior (tanto geográfica, quanto de objetivos). A idéia era trazer os benefícios demonstrados pela ARPANET, para um número maior de pessoas e empresas. Eis que nascia a Internet. No final da década de 80, a Internet já era bastante conhecida nos meios acadêmicos do mundo inteiro. Nesta época, porém, ainda tínhamos a Internet sem a interface gráfica. Normalmente a troca de informações era feita por ftp, alguns aplicativos baseados em telnet, ou o popular "gopher", que tornou-se bastante conhecido nos primeiros anos da década de 90. O gopher, basicamente, era um sistema baseado em opções de menus de texto (digite 1 para tal coisa, 2 para outra coisa e assim por diante), para divulgação e pesquisa de informações.

Porém até 1991 era proibido o tráfego de qualquer informação comercial pela Internet. Esta proibição era mantida pela "National Science Fundation", entidade que financiou grande parte do desenvolvimento da Internet nos EUA, até este momento. Com a liberação, as empresas puderam pensar em fazer uso da Internet para fins comerciais. Desde então a rede expandiu-se enormemente, atingindo, hoje, milhões de pessoas em todo o mundo.

A popularização definitiva da rede, veio com a criação de uma interface. Com a criação da linguagem HTML, servidores HTTP, e programas para acessar as páginas HTML armazenadas nos servidores (também conhecidos como Browser ou Navegador), a Internet tornou-se mais popular do que nunca. Este foi o momento do surgimento da WWW - World Wide Web. Talvez a melhor tradução para World Wide Web seja: "Teia de Alcance Mundial". Esta é a idéia que temos de Internet. Uma rede (teia) que conecta computadores do mundo inteiro (alcance mundial), proporcionando a troca de informações e uma infinidade de serviços e facilidades para as empresas e para o cidadão comum.

Com certeza, os criadores da ARPANET, e depois da Internet não imaginaram uma expansão e popularização tão rápida da rede. Hoje vemos anúncios de sites na televisão, durante o Telejornal e durante a transmissão de partidas de futebol. A maioria dos jornais possui um caderno de informática, quase que totalmente dedicado a assuntos relacionados com a Internet. Vemos reportagens sobre a Internet em todas as revistas, não somente nas especializadas em Informática, sendo que estas dedicam quase que a totalidade de suas matérias a assuntos da Internet. Enfim, a Internet faz parte do nosso dia-a-dia. Veio para ficar e facilitar a nossa vida.

Agora vamos conhecer um pouco mais sobre a Internet e os diversos elementos que a compõem. Uma visão geral da Internet e de seus elementos

Encontrar uma definição precisa e unânime para a Internet é uma tarefa complexa. Vamos ver os elementos que a compõem, sem nos preocuparmos com definições formais. Por exemplo, o que é preciso para que o usuário doméstico possa acessar a Internet. Onde fica e por onde circula a informação que esta sendo acessada.

Antes de continuar com as explicações, considere o diagrama indicado na Figura 1.1.


Figura 1.1 Uma visão geral da Internet, com conteúdo estático.

Nesta figura, temos representados os elementos mais comuns da Internet, conforme descrito abaixo:

  • Usuário: Neste caso, representamos um usuário residencial. Normalmente este tipo de usuário faz a conexão através da linha telefônica comum ou de conexões ADSL de velocidade de 256 Kbps. Para isso é preciso a utilização de um Provedor de acesso. O Provedor de acessa é que fornece a conexão com a Internet. O Usuário utiliza um programa conhecido como Navegador (Browser), para acessar o conteúdo da Internet. Os dois navegadores mais conhecidos são o Internet Explorer da Microsoft, e o Netscape Navigator da Netscape. Quando o usuário acessa um determinado conteúdo, dizemos que ele está acessando um site, também encontramos o uso da palavra "página", ao invés de site. Por exemplo, quando o usuário acessa o endereço http://www.microsoft.com/brasil, dizemos que ele está acessando a página, ou o site, da Microsoft Brasil. Quando o usuário acessa o endereço http://wwww.microsoft.com/vbasic, dizemos que o usuário está acessando a página do Visual Basic, no site da Microsoft. Durante este livro, utilizarei a palavra página, no sentido de que o usuário está acessando um determinado conteúdo na Internet, ou na Intranet da empresa.

  • Internet: Pelo fato de ser formada por um grande número de equipamentos - servidores, hubs, switch, linhas de comunicação, satélites, etc -, representamos a Internet como uma nuvem. Esta é a representação que você encontrará na maioria dos livros.

  • O Servidor Web: Neste caso é o servidor que contém a informação solicitada pelo usuário. Por exemplo, ao digitar www.axcel.com.br, no campo endereço do Navegador, o usuário está solicitando que seja carregado o conteúdo da página inicial do site da Editora Axcel Books. Observe que o servidor também está conectado à Internet, isto é, faz parte da Internet. As páginas armazenadas no servidor são desenvolvidas utilizando-se a linguagem HTML - Hypertext Markup Language. Você pode encontrar muita informação sobre HTML na própria Internet. O órgão responsável pela padronização da linguagem HTML é o w3. No site www.w3.org, você pode encontrar um grande volume de informações sobre HTML.

Na Figura 1.1, foi representada a primeira geração de conteúdo da Internet. Conforme indicado pela seta maior, a informação, basicamente, trafegava em um único sentido. O Usuário solicita um determinado conteúdo, e este conteúdo é entregue e exibido no Navegador do usuário. Observe que o usuário não tem a possibilidade de enviar informações para o servidor.

Além disso, nesta primeira fase o conteúdo das páginas é estático. Uma vez criada a página (através da utilização do HTML), esta não é modificada. Cada vez que o usuário conectar com a página, verá o mesmo conteúdo. A única maneira de alterar o conteúdo, é alterando o código HTML. Com isso, da próxima vez que o usuário conectar com a página, verá a nova versão da página. Porém esta metodologia de modificação de páginas é trabalhosa e pouco produtiva. Imagine que você esteja publicando um catálogo de produtos, com informações diversas sobre vários produtos, tais como: Código do produto, descrição e preço. Uma das maneiras de criar este catálogo é através da utilização do código HTML, para criar uma página, com uma tabela com informações sobre os diversos produtos. Porém cada vez que houver uma modificação em um dos produtos, você terá que editar a página e salvar a nova versão. Convenhamos que é um processo bastante trabalhoso.

Embora trabalhoso, era assim que funcionavam os primeiros sites (e por incrível que pareça, ainda funcionam muitos sites, hoje em dia), no início da era WWW. O Conteúdo era estático, ou seja, alterações nas páginas, implicavam em alterações, diretamente no código HTML. Imagine o trabalho para a manutenção de grandes sites, com diversas áreas de informações, onde o número de páginas pode facilmente chegar na casa de milhares. Com isso a evolução para a criação de conteúdo mais dinâmico, foi um avanço natural e necessário. Conteúdo dinâmico na Internet

Com o crescimento da Internet e a necessidade de constantes alterações no conteúdo das páginas, surge uma segunda geração de sites na Internet; capazes de entregar conteúdo mais atualizado, além de permitir que o usuário interagisse com as páginas Web, enviando informações e não apenas recebendo. Nesta fase surge a possibilidade de ligação das páginas HTML com o conteúdo de Bancos de dados. Observe o diagrama indicado na Figura 1.2:


Figura 1.2 Conectando páginas HTML com Bancos de dados.

Pelo diagrama, podemos ver a possibilidade do usuário enviar informações para a Internet, e não apenas receber informações. Isto possibilitou o desenvolvimento de uma série de serviços, simplesmente impossíveis de criar, apenas com a utilização de páginas criadas somente com HTML estático.

Para enviar informações, o usuário preenche os campos de um formulário (o qual é criado com a utilização de HTML) e, ao clicar em um botão Enviar, os dados são enviados para o site da Web. Ao chegar no servidor Web, estes dados precisam ser "recebidos" por um programa capaz de entender o formato dos dados e armazená-los em um Banco de dados.

Os primeiros programas, capazes de realizar esta tarefa, seguiam a especificação conhecida como CGI - Common Gateway Interface. Muitas aplicações Web foram desenvolvidas, utilizando-se a especificação CGI, sendo que várias ainda continuam sendo utilizadas. A utilização de Scripts desenvolvidos na linguagem Perl, é um exemplo de utilização de CGI. O Script recebe os dados enviados pelo formulário, decodifica estes dados e armazena o resultado em um Banco de dados. Embora bastante funcional, a utilização de CGI começou a apresentar alguns problemas, com isso novas alternativas foram surgindo. Esta fora do escopo deste livro, discutir os problemas da utilização de CGI.

Dentre as várias alternativas que surgiram para a geração de conteúdo dinâmico, podemos citar a tecnologia de Active Server Pages, a qual faz parte do servidor Web IIS (Internet Information Services), da Microsoft, conforme descrito na Introdução deste curso. Podemos criar uma página ASP, capaz de receber os dados enviados por um formulário e armazenar estes dados em um Banco de Dados, como por exemplo o Microsoft Access ou o Microsoft SQL Server. Aprenderemos a criar este tipo de página ASP, no Módulo 4. Neste módulo veremos alguns exemplos simples da utilização de ASP, porém sem conexão com Bancos de dados.

Com a conexão de páginas com Bancos de dados, uma série de possibilidades foram abertas, como por exemplo:

  • Criação de páginas para pesquisa em Banco de dados.

  • Cadastro de usuários que acessam o site, bem como a entrega de conteúdo personalizado, de acordo com as preferências do usuário. Por exemplo, ao entrar no site, o usuário informa um nome de usuário e senha, com o qual ele foi previamente cadastrado. Com isso é aberta uma página com opções e conteúdo personalizados, de acordo com preferências especificadas pelo usuário.

  • Desenvolvimento de aplicações residentes em servidores Web e acessíveis através do Navegador. Devemos observar que estas aplicações ainda eram limitadas e não possuíam todas as funcionalidades das aplicações convencionais, desenvolvidas para o ambiente Windows.

Apesar das suas limitações, um novo panorama desenhava-se na Internet, com a possibilidade da criação de sites mais dinâmicos, através da conexão com Bancos de dados. Apenas para exemplificar o funcionamento de uma pesquisa em Banco de dados, através da Internet, observe a Figura 1-3.


Figura 1.3 Pesquisa em um Banco de dados, através da Internet. Vamos analisar os passos executados, desde o momento que o usuário preenche o critério de pesquisa, até o momento em que o resultado da consulta é retornado:

1. O usuário acessa a página onde temos um formulário para a digitação de um ou mais critérios de pesquisa. Por exemplo, pode ser uma consulta a uma base dos CEP"s de todo o Brasil. O Usuário poderia digitar o nome da Cidade, selecionar um Estado e digitar o nome ou parte do nome da Rua, conforme exemplo indicado pela Figura 1.4:


Figura 1.4 Digitando os critérios de pesquisa em um formulário criado com HTML.

2. Após preencher o(s) critério(s) de pesquisa, o usuário clica em um botão Enviar ou Pesquisar. Os dados digitados no formulário são enviados para o servidor.

3. Um Script CGI, ou uma página ASP, no servidor, recebe os dados enviados pelo usuário. Com estes dados, é montado um comando (normalmente uma String SQL - Structured Query Language), o qual vai efetuar a consulta no banco de dados. Após montado o comando, este é enviado para o Servidor de Banco de Dados (o qual pode ser uma máquina separada, ou pode estar instalado no próprio servidor Web).

4. O Servidor de Banco de dados, recebe o comando de pesquisa, localiza um ou mais registros que atendam o(s) critério(s) de pesquisa e retorna o resultado para o Script CGI, ou para a Página ASP.

5. Com o resultado retornado pelo Servidor de Banco de dados, o Script CGI, ou a Página ASP, monta uma página HTML, normalmente no formato de uma tabela, e envia esta página HTML de volta para o Navegador do cliente, conforme indicado na Figura 1.5. Caso não seja encontrado nenhum registro que atenda o(s) critério(s) especificado(s), é retornada uma página com uma mensagem de que não foi encontrado nenhum registro.


Figura 1.5 Resultados obtidos a partir de um Banco de dados do CEP.

Veja que ao mesmo tempo em que aumentaram as possibilidades de desenvolvimento, também aumentaram as complexidades a serem gerenciadas, tanto na criação de páginas, quanto no gerenciamento dos sites. Observe que ainda nem falamos de questões tais como segurança, proteção do Banco de dados contra acessos não autorizados, ou até mesmo ataques de Hackers tentando roubar informação ou corromper a informação do Banco de dados.

Além das novas complexidades, novas questões ainda precisavam (sendo que algumas ainda hoje não estão completamente solucionadas) ser resolvidas. Por exemplo, para vender pela Internet, as questões de segurança precisavam ser bem resolvidas. Quem arriscaria a colocar o número do Cartão de Crédito em um site de Comércio eletrônico, sem a garantia de que o site é seguro. Além disso, existe a necessidade de troca de informações entre as diversas empresas, via Web.

Por exemplo, quando você vai fazer uma compra pela Internet, você digita o número do seu Cartão de crédito. Antes de finalizar o pedido, a empresa que está vendendo, precisa verificar, junta a Operadora do cartão, se o número fornecido é válido, se não é um cartão vencido, se não é um cartão que foi roubado, etc. Todas estas informações precisam ser verificadas rapidamente, em tempo real. O usuário, não está a fim de aguardar muito tempo em frente ao computador.

Note que um número grande de fatores começam a surgir, principalmente com o início do Comércio eletrônico. Para resolver tantos problemas, a simples conexão de páginas com Bancos de dados, embora necessária, não era mais suficiente.

No próximo item veremos um pouco mais sobre esta nova geração de sites Web, os quais fazem uso de diversas tecnologias. Sendo que a cada dia novidades estão surgindo. A era do Comércio Eletrônico

Estamos vivendo um nova era, a qual é marcada pelo Comércio eletrônico, ou o chamado e-business. Todas as revistas especializadas e meios de comunicação, apresentam matérias, diariamente, sobre Comércio eletrônico. As possibilidades são inúmeras, tanto para as empresas, para os usuários, quanto para os profissionais envolvidos. O Comércio eletrônico deixou de ser apenas uma previsão em livros e revistas, e passou a ser uma realidade, presente no dia-a-dia de todos nós. Com isso uma nova geração de sites está sendo criada, muito mais complexa do que as anteriores, necessitando de ferramentas de desenvolvimento e gerenciamento, cada vez mais sofisticadas.

Grande parte do orçamento de informática das empresas, está direcionado para atividades ligadas ao comércio eletrônico. Novas tecnologias surgem todos os dias, prometendo facilitar a criação de sites para Comércio eletrônico e outras atividades envolvidas. Neste tópico veremos quais as tecnologias necessárias para criação destes sites, bem como as complexidades envolvidas.

O Comércio eletrônico pode acontecer de duas maneiras distintas:

  • B2B - Business to Business: Acontece quando são feitas transações comerciais entre duas empresas. Pode ser uma montadora de automóveis comprando peças de um fornecedor, ou uma livraria encomendando livros de uma editora. Em termos de volume financeiro, o B2B é responsável por um grande percentual do que é comercializado via Internet.

  • B2C - Business to Consumer: É um cliente come eu ou você, comprando um livro ou um CD através da Internet. É o cliente comprando através de uma loja virtual na Internet. Hoje existem sites de comércio eletrônico que vendem uma série de coisas: Livros, revistas, cosméticos, CD"s, roupa e até remédios e carros.

A medida que aumentam o número de sites de Comércio eletrônico, aumenta, também a concorrência. Com isso conquistar e manter clientes, tem sido o grande desafio. Não basta colocar um catálogo de produtos, garantir a segurança e entregar a mercadoria no local correto e no prazo estipulado. Embora estas sejam questões fundamentais, não são mais suficientes para garantir a fidelidade do cliente, pois diferentemente do comércio tradicional, no Comércio eletrônico, o concorrente está à apenas um clique de mouse.

Hoje um dos grandes desafios, é conhecer o Cliente, saber identificar os seus hábitos e armazenar o maior número de informações sobre o cliente, tal como o histórico de compras e pesquisas realizadas no catálogo de produtos. De posse destas informações, o site deve ser capaz de fazer ofertas personalizadas para o cliente. Posso citar o meu caso como exemplo. Há tempos que compro livros importados no site da Amazon - www.amazon.com. Ao acessar o site, após me identificar, aparece um link: "Sugestões para o Júlio". Vejam que até o link já vem personalizado, isso atrai o cliente, é como ao entrar no mercadinho da esquina e o seu Manoel vai dizendo: "Olá seu Júlio, aquele queijo colonial que o Sr. gosta, chegou." Ao clicar no link de sugestões, recebo uma listagem de livros. O mais interessante é que na listagem , realmente estão os livros nos quais estou interessado. Que milagre é este ? Não é milagre nenhum, acontece que desde a primeira compra, o site vem armazenando informações sobre as minhas compras, bem como sobre as pesquisas que faço no catálogo de livros. Com isso, foi possível identificar minhas preferências e elaborar uma lista de sugestões mais personalizada. Quanto maior a quantidade de informações, mais precisa é a lista de sugestões.

Vejam que os sites de Comércio eletrônico, estão tentando fazer o que o seu Manoel do mercadinho da esquina, faz há muitos anos. Estão tentando dar um tratamento personalizado para os seus clientes, com o objetivo de mantê-los satisfeitos. Clientes satisfeitos significa vendas e lucros para a empresa.

Conhecer as preferências do cliente, é apenas um dos exemplos de aplicação a partir de dados obtidos pelo site. Uma vez formada uma base de dados grande e confiável, muitas aplicações podem ser construídas sobre os dados obtidos. Por isso que, a maioria dos sites, mesmo os que fornecem serviços gratuitos, exigem que você preencha um cadastro, antes de disponibilizar o acesso a serviços e informações. Com os dados obtidos através do cadastro, a empresa está tentando montar a sua base de dados.

Vejam que os dados precisam ser obtidos e armazenados em um Banco de dados. Depois a segurança dos dados precisa ser garantida. Já pensou se alguém consegue invadir o site de uma empresa e obter uma listagem de números de cartões de crédito dos clientes?? Seria péssimo para a imagem e para as vendas desta empresa. Além da segurança, novas aplicações estão sendo construídas para fazer uso destes dados, com o objetivo não só de melhorar as vendas, mas também de melhorar as relações da empresa com os clientes. Não basta que a empresa seja capaz de vender, para sobreviver, ela precisa continuar vendendo para o cliente. Para continuar vendendo, isto é, para fidelizar o cliente, a área de atendimento ao cliente é de fundamental importância. Se você compra, por exemplo, um CD e este é entregue fora do prazo, você reclama. Se a sua reclamação não for satisfatoriamente atendida, você simplesmente deixa de comprar desta empresa e procura outra empresa. Afinal na Internet, o concorrente está a um clique de mouse, conforme descrevemos antes.

Um dos assuntos que mais é discutido no momento, é representado pela sigla CRM - Customer Relationship Management. Traduzindo teríamos: Gerenciamento das Relações com o Cliente. CRM representa um conjunto de soluções - de Hardware e Software, capazes de melhorar a relação das empresas com os clientes, principalmente no atendimento a questões do cliente, quer seja suporte técnico, dúvidas sobre novos produtos, etc.

Quem já não ligou para uma Central de atendimento, e teve que contar a mesma história uma dezena de vezes. Você liga alguém atende. Você descreve o seu problema, a pessoa diz que não é com ela e passa para um outro setor. Um novo atendente e a mesma história, você é passado para um outro setor. Depois da décima transferência (contando que você é uma pessoa paciente, senão na terceira você já desliga o telefone), você desliga irritado, sem ter solucionado o problema. Muito provavelmente, esta empresa acaba de perder mais um cliente.

Melhorar o atendimento ao Cliente, ou de uma maneira mais genérica, a Relação dos clientes com a empresa, é o objetivo do CRM. Ao ligar para uma central de atendimento, o cliente identifica-se através do seu código de cliente, o sistema de CRM, busca em uma Base de dados consolidada, todas as informações sobre o cliente. O Cliente descreve o problema. O problema é inserido no sistema. Caso o atendente não seja capaz de solucioná-lo, a chamada é transferida diretamente para a pessoa capaz de solucionar o problema. Porém toda a descrição do problema, também está acessível para a pessoa que irá atender o Cliente (os dados foram passados pelo sistema de CRM, quando da transferência do chamado), com isso o Cliente não precisa repetir toda a história, várias e várias vezes. O Cliente é atendido, soluciona o seu problema e fica satisfeito. Cliente satisfeito continua comprando.

A descrição do parágrafo anterior representa uma situação ideal, é claro que os sistemas de CRM ainda não são perfeitos. Porém novas técnicas estão sendo introduzidas, com a possibilidade de atendimentos através da Internet, acessando o site da empresa. Com a melhoria dos sistemas de telecomunicações, poderemos tornar realidade um atendimento de alta qualidade e conclusividade, através da Internet. Por exemplo, o cliente está pesquisando o catálogo de produtos. Na página com os dados do produto, existe um link "Outras dúvidas". Ao clicar neste link, o cliente entra numa seção de bate-papo com um atendente da empresa. O cliente pode colocar as suas dúvidas, as quais serão solucionadas em tempo real. Com as dúvidas solucionadas, a probabilidade de que o pedido seja feito, é bem maior. Além disso as dúvidas do cliente podem ser armazenadas no banco de dados. Quando uma determinada dúvida começar aparecer com uma determinada freqüência, os dados que solucionam a dúvida podem ser disponibilizados no site, em uma seção de Dúvidas Freqüentes. Com isso os próximos clientes que tiverem a mesma dúvida, não precisarão do atendimento de um atendente. Vejam que novamente estamos em um processo de aquisição de informações, através do próprio site, e utilização destas informações para melhorar a qualidade dos serviços e produtos oferecidos.

No B2B também existem muitas questões a serem gerenciadas. Para entendermos a complexidade destas situações imagine o seguinte exemplo, ilustrado pela Figura 1.6:


Figura 1.6 A complexidade das questões envolvidas no B2B.

Temos uma rede de Concessionárias que prestam serviços de manutenção para uma determinada marca de automóveis. O objetivo é ter um controle automatizado de estoque, nas lojas autorizadas da marca. Cada peça catalogada, possui um nível mínimo de unidades em estoque. Quando este nível mínimo é atingido, automaticamente, o Banco de dados deve lançar um pedido para este item. O Funcionamento do sistema é o seguinte:

O Cliente vai na concessionária para comprar uma determinada peça. O atendente efetua a venda. Ao efetuar a venda, o estoque é atualizado. Se a peça atingir o nível mínimo, previamente estabelecido, um pedido deve ser, automaticamente gerado. Este pedido contém informações sobre a concessionária, bem como sobre as peças que estão sendo encomendadas.

As informações sobre o pedido são criptografadas, para garantir a segurança, e o pedido é enviado, através da Internet, para o fornecedor da peça. Dentro de um prazo preestabelecido, a peça é entregue, evitando que esta falte no estoque.

Observe que neste caso, existe uma troca de informações entre as Concessionárias e os Fornecedores. Para que possa haver esta troca de informações, os sistemas das duas empresas devem ser capazes de trocar dados em um formato comum. Com isso as empresas serão capazes de fazer negócios através da Internet.

Poderíamos introduzir mais algumas questões, que complicariam um pouco mais a infra-estrutura necessária para a realização do B2B. Por exemplo, ao invés de comprar uma determinada peça, sempre do mesmo fornecedor, pode ser que o sistema deva ser capaz de enviar o pedido para vários fornecedores, e selecionar aquele que for capaz de fazer a melhor oferta, tanto em termos de preço quanto de prazo de entrega. Neste caso, a concessionária lança o pedido no seu site e aguarda as propostas dos fornecedores. Após recebidas as respostas, uma delas é selecionada. Este parece ser um sistema de leilão ao contrário, ou seja, o comprador anuncia que está precisando de um determinado produto, e os fornecedores esforçam-se para fazer a melhor oferta. Esta forma de fazer compras é conhecida como e-procurement. Em determinados casos, a lista de propostas está disponível para todos os fornecedores, isto é, se um fornecedor A fez uma proposta, depois ao consultar a lista, viu que um fornecedor B fez uma proposta melhor do que a sua, o fornecedor A, pode alterar a sua proposta, dentro de um período de tempo estipulado pelo comprador, no nosso caso, a Concessionária.

Vejam que mesmo no sistema de B2B, a lógica tem sido revertida em favor do Cliente, isto é, os fornecedores é que disputam o cliente, através de boas ofertas, preços competitivos e prazos adequados de entrega.

Porém a criação de sistemas deste tipo é uma tarefa complexa. A todo o momento temos acesso a informações de Bancos de dados, questões de segurança no acesso às informações, além de uma lógica bastante complexa. Em diversos pontos do processo, podemos fazer uso da tecnologia ASP, para criar soluções bastante interessantes. O uso de páginas ASP, juntamente com outras tecnologias, possibilita a criação de soluções complexas como as exemplificadas nesta lição.

Vamos introduzir mais alguns detalhes no nosso exemplo. Pode ser que além de fazer o pedido, a concessionária, uma vez aprovada a compra, deva fazer o pagamento, através de uma transação on-line. O pagamento pode ser feito, por exemplo, através de uma transferência a conta corrente da concessionária, para a conta corrente do fornecedor. Neste ponto, precisamos introduzir o conceito de transação, o qual será bastante detalhado no Módulo 10 - Conceitos Avançados: Transações e o Microsoft Transaction Services.

Uma transação, de uma maneira bastante simples, é um conjunto de ações que deve acontecer com um todo, ou seja, todas as ações contidas na transação devem ser finalizadas com sucesso, ou nenhuma delas deve ser realizada. Caso uma das ações, contidas na transação, venha a falhar, as ações ainda pendentes devem ser canceladas; e as ações já realizadas devem ser revertidas. Com isso garantimos que a transação acontece como um todo, ou que nenhuma das suas ações será realizada.

Para entender, na prática, o conceito de transações, vamos voltar ao exemplo anterior. Ao efetuar um pagamento, o sistema deve transferir valores da conta corrente da concessionária, para a conta corrente do fornecedor. Estas duas ações, deve acontecer no contexto de uma transação, conforme indicado abaixo:


   Início da Transação
   
         Ação 1: Debita o valor da conta corrente da Concessionária.
         Ação 2: Credita o valor na conta corrente do Fornecedor.
   
   Final da Transação.

A primeira ação efetua o débito na conta corrente da Concessionária. Vamos supor que a Ação 1 ocorra com sucesso, porém na hora de fazer o crédito na conta corrente do Fornecedor, ocorra um problema, o que devemos fazer ? O valor deve ser estornado para a conta da Concessionária, ou seja, a Ação 1 deve ser cancelada, uma vez que nem todas as ações dentro da transação puderem ser concluídas com êxito. Vejam a importância do conceito de transação, pois neste caso, se não usássemos transação, o valor seria debitado da conta corrente da Concessionária, porém sem ter sido creditado na conta corrente do fornecedor.

Conclusão

Poderíamos entrar em níveis de detalhes cada vez maiores, sobre os aspectos tecnológicos necessários a realização do comércio eletrônico. Porém estas questões fogem ao escopo deste curso, quem sabe em um trabalho futuro. Neste curso estaremos aprendendo a utilizar a tecnologia ASP para abordar alguns destes aspectos, através da utilização de exemplos práticos e detalhadamente explicados.

Então mãos a obra, vamos aprender ASP 3.0. Mas isso já é assunto para as próximas lições e para os próximos módulos.

Júlio Cesar Fabris Battisti

Júlio Cesar Fabris Battisti