Objetos Distribuídos - Um caso de sucesso
As novas tecnologias que surgem no mercado geralmente não são aplicadas de imediato pela maioria dos seus usuários potenciais. Muitos preferem aguardar o amadurecimento dessas tecnologias antes de investir nelas. Uma boa maneira de observar esse processo de amadurecimento é conhecer as experiências das empresas mais arrojadas, sejam elas bem ou mal sucedidas. Descrições de experiências envolvendo objetos distribuídos podem ser encontradas em livros [1] e sites Internet [2]. Apresentaremos neste artigo o caso do Wells Fargo Bank, uma das 8 experiências descritas no livro 3-Tier Client/Server At Work [1]. Um dos motivos que levou o Wells Fargo Bank a tornar-se líder em tecnologia bancária foi o uso pioneiro da tecnologia de objetos distribuídos [1]. Essa tecnologia ajudou a companhia a atingir diversos objetivos de negócio, entre eles, mudar o perfil do atendimento que era focado em contas e passou a ser focado no cliente. No final da década de 80 uma tendência crescente era o extrato composto de transações bancárias (compound statement banking), onde os clientes esperavam receber apenas um extrato unificado listando os saldos e as transações de todas as suas contas, incluindo conta corrente e poupança, hipotecas, cartões de crédito, corretagem e aposentadoria. Os clientes queriam que suas atividades bancárias fossem estruturadas em função da sua relação completa com o banco ao invés das suas contas individuais. Usando o ORB da BEA, ObjectBroker, o sistema CRS (Customer Relationship System) atingiu exatamente esse objetivo. Agora, quando um cliente que possui diversas contas chama o banco ele não precisa mais informar diversos números de contas, ele precisa fornecer apenas seu número de seguro social (SSN – Social Security Number), ou seu número de identificação de empregador (EIN – Employer Identification Number) no caso de conta de empresa. Atualmente, os procedimentos necessários para obter o perfil das contas de um cliente através do CRS são os seguintes: o agente de serviço informa apenas o SSN correspondente; em seguida, o aplicativo interroga diversos sistemas de armazenamento, incluindo aplicações que rodam em ambiente IBM MVS/CICS, Digital VAX/VMS, e UNIX; finalmente, o sistema retorna ao usuário uma visão organizada do relacionamento do cliente com o banco, a qual é apresentada por meio de interface gráfica. Assim como na maioria dos bancos, o sistema computacional do Wells Fargo era otimizado para processamento de contas ao invés de oferecer uma visão integrada dos dados do cliente. Contas de depósito direto eram gerenciadas por mainframe; fundos comuns (mutual funds) eram rastreados por um sistema Digital VAX/VMS; o processamento de contas de corretagem (brokerage) era terceirizado para um vendedor que usava um sistema Tandem. O resultado disso é que os empregados do banco necessitavam logar em diversos computadores diferentes para obter uma visão completa da situação do cliente. Uma simples pergunta como: "Quanto eu tenho em todas as minhas contas combinadas?" poderia exigir que o atendente navegasse por três ou mais sistemas, dentre os quais nenhum oferecia interface gráfica. O sistema CRS foi a primeira aplicação do Wells Fargo baseada em tecnologia ORB. Em virtude do seu sucesso surgiram novos projetos utilizando ObjectBroker, com o objetivo de oferecer inovações aos clientes do banco. Entre as novas aplicações estão as seguintes:
O Wells Fargo precisou desenvolver uma técnica de integração entre aplicações baseadas em mainframe e aplicações baseadas em CORBA porque não existia ORB para mainframe em 1993. Objetos CORBA se comunicavam com aplicações mainframe através de mecanismos não-CORBA. A figura a seguir [1] apresenta a arquitetura 3-camadas do Wells Fargo.
A semântica de comunicação entre os clientes Windows e o servidor de objetos HP-UX baseia-se em definições de interface CORBA. As aplicações de mainframe não foram forçadas a mudar sua semântica para se adequar à nova definição de interface dos objetos, ou seja, elas funcionam baseadas na semântica do seu projeto original. Inconsistências e disparidades entre as aplicações mainframe são escondidas pelo servidor da camada intermediária. Em teoria, os sistemas de armazenamento podem ser completamente reestruturados e até mesmo reimplementados em diferentes plataformas sem a necessidade de modificar ou recompilar as aplicações cliente. Para viabilizar aplicações missão-crítica nesse ambiente, o sistema precisava ser gerenciado e controlado. Aqui estão algumas das características que deveriam ser suportadas:
O Cushing Group, grupo consultor do projeto, avaliou os ORBs comerciais com base nesses requisitos e, naquele momento, (1993), nenhum deles oferecia todas as características necessárias. Conseqüentemente, o Wells Fargo projetou seu próprio sistema de gerenciamento (OSM – ORB System Management), que era uma aplicação distribuída baseada na implementação CORBA ObjectBroker. Resumidamente os marcos do projeto foram os seguintes. Em outubro de 1993 a Digital, o Wells Fargo e o Cushing Group se reuniram para iniciar o projeto da aplicação CRS. No final de dezembro de 1993 um piloto do CRS começou a funcionar. Em janeiro de 1994 o CRS entrou totalmente em produção. Em março de 1995 iniciou-se a solução de Internet Banking [3] e em maio do mesmo ano ela entrou em produção. Um fator chave para o sucesso desse projeto foi a preparação da organização. O Wells Fargo fez os seguintes investimentos:
No verão de 1997 o serviço de Internet Banking já havia ultrapassado 400.000 clientes e na mesma época já estavam disponíveis outras aplicações. Os servidores ObjectBroker estavam processando cerca de 900.000 invocações de objetos de negócio por dia em ambiente de produção. Isto significa, na realidade, mais de 3.000.000 de invocações de métodos CORBA por dia, pois cada transação de negócio consiste de diversas interações entre objetos. REFERÊNCIAS BIBLIOGRÁFICAS
|