Web Services: a Nova Ordem dos Negócios

Definitivamente a forma de fazer negócios tem mudado radicalmente nos últimos anos. Essa mudança ocorreu de forma profunda e rápida demais, o que ocasionou a falência de muitas empresas que demoraram a assimilar a evolução. Foi-se o tempo em que os únicos concorrentes de uma empresa partilhavam a mesma região geográfica ou o mesmo nicho de mercado. Definitivamente a forma de fazer negócios tem mudado radicalmente nos últimos anos. Essa mudança ocorreu de forma profunda e rápida demais, o que ocasionou a falência de muitas empresas que demoraram a assimilar a evolução. Foi-se o tempo em que os únicos concorrentes de uma empresa partilhavam a mesma região geográfica ou o mesmo nicho de mercado.

Hoje temos empresas no mundo inteiro competindo e cooperando entre si, inclusive de setores diferentes. Quem poderia imaginar, duas décadas atrás, que carrinhos de lanches nas ruas poderiam ameaçar uma grande cadeia mundial de lanchonetes como o McDonald?s? Estamos vendo esse cenário em todos os cantos do mundo: os concorrentes estão cada vez mais competitivos e os clientes, cada vez mais exigentes. Os espaços diminuem e a obsessão por diferenciação passa a ser cada vez maior.

Os clientes que se contentavam com qualidade e bons preços já não existem mais. Essas características são premissa fundamental em qualquer negócio; os clientes querem algo a mais. Querem ser entendidos, respeitados, encantados de maneira pessoal. Querem fugir da massificação, sentir-se importante, querem agilidade e comodidade nos serviços que consomem.

A velocidade com que as mudanças ocorreram forçou as empresas a serem mais competitivas e a buscarem novas soluções para atingir uma vantagem sobre seus concorrentes. Nesse momento, a tecnologia passou a ter importância visceral, porque se tornou o meio mais eficaz de proporcionar competitividade. No fundo, o avanço tecnológico que vivenciamos foi demandado pelo mercado, os negócios.

A primeira necessidade das empresas, surgida a mais de 50 anos, foi por controle, frente ao seu crescimento fruto da produção de massa. Com isso, as grandes empresas deixaram seus imensos armários de arquivos e embarcaram no mundo da computação. Utilizavam o computador para efetuar trabalhos repetitivos que consumiam muito tempo da organização, tornando o controle mais eficiente e barato. Sistemas como fluxo de caixa, folha de pagamento e emissão de notas fiscais foram ficando cada vez mais automatizados.

Com a grande mudança no âmbito do mercado nas últimas décadas, as companhias viram-se obrigadas a oferecerem o que cliente demandava. Entramos na Era do Cliente-Rei. Com o objetivo de pavimentar os processos e fluxos a fim de satisfazer essas necessidades, surgiram os sistemas de gestão empresariais (ERPs), nos anos 70/80. Com sua implantação, o efeito positivo no gerenciamento dos processos e fluxos foi bastante perceptível, mas seu impacto no cliente quase nulo. ERP é um mega workflow interno. E ponto.

Os sistemas de gerenciamento de relacionamento com os clientes (CRMs) vieram para tornar possível a tarefa de conhecer melhor o cliente, tentando torna-lo o mais fiel possível a uma empresa, a uma marca. Muitos projetos modelados, muito poucos implementados com sucesso. Ao contrário do ERP, que muda a forma de as pessoas fazerem as coisas, o CRM parte da necessidade de uma mudança na forma das pessoas serem. E isso é muito mais difícil.

Com o advento da Internet, tornou-se, ao mesmo tempo, mais fácil e mais difícil manter a fidelidade dos clientes. Mais fácil porque a Internet permite riqueza e velocidade de interação muito maiores entre a empresa e o cliente. Mais difícil porque os clientes passam a ter acesso a diversos outros concorrentes, com um mesmo grau de interação potencial com todos.

Porém, rapidamente as empresas perceberam que aumentar o nível de interação com seus clientes não era suficiente. Para garantir sua satisfação, tinha de entregar experiências agradáveis, positivas, personalizadas. Para tal, foram criados os sistemas de personalização e gerenciamento de conteúdo e serviços, desenhados especificamente para atender às necessidades dos clientes no ambiente Internet (Website, por exemplo).

Atualmente podemos identificar algumas tendências que prometem tornar-se, em pouco tempo, tão importantes quanto as tecnologias já utilizadas. Dentre essas tendências, existem algumas que são mais urgentes. Entre essas podemos destacar: BI (Business Intelligence), KM (Knowledge Management), Wireless, Grid Computing e Web Services.

Uma das poucas certezas que temos hoje em dia, no que diz respeito ao desenvolvimento de aplicações na Internet, são os Web Services. Apoiado pelas maiores empresas de software do mundo, os Web Services prometem um novo nível de compatibilidade entre plataformas tecnológicas.

Dentro de pouco tempo, os desenvolvedores construirão aplicativos apenas reunindo diversos componentes de software distribuídos pela Internet e facilmente acessíveis a todos. Esses componentes de software – Web Services – pretendem causar uma grande evolução no desenvolvimento de software, fazendo com que os profissionais priorizem a modelagem da aplicação e partam para a busca dos componentes para sua montagem, diminuindo sensivelmente o tempo de desenvolvimento e, conseqüentemente, o time-to-market da aplicação.

A idéia não é nova. Surgiu por volta de 1976, quando um grupo de teóricos iniciou seus estudos no que se tornaria o paradigma da Orientação a Objetos. Essa nova metodologia serviria basicamente ao propósito de facilitar o desenvolvimento de software, reutilizando código já disponível, na forma de componentes, a fim de construir uma nova aplicação. Entretanto, esse paradigma previa apenas a interoperabilidade entre softwares escritos em uma mesma plataforma, fortemente dependentes dos sistemas operacionais para os quais foram projetados.

O problema da incompatibilidade entre plataformas começou a ser resolvido com a introdução do EDI (Eletronic Data Exchange). Desenvolvido pela DISA (Data Interchange Standard Association), o EDI utiliza um padrão conhecido como X12 e cada mensagem, partindo de uma aplicação no cliente para uma aplicação no servidor ou vice-versa e conta com uma série de caracteres contendo dados a serem trocados entre essas aplicações. O problema da compatibilidade entre plataformas foi resolvido, já que os dados trafegados encontravam-se em um formato aceito por todas as plataformas, mas um outro problema foi criado: as aplicações que se comunicavam via EDI ainda tinham que ser previamente identificadas como clientes e servidoras, impossibilitando a dinamicidade do processo.

Com o advento da Internet e seu ambiente aberto, caótico e multifacetado, nasceu a necessidade de se desenvolver uma maneira de distribuir software que fosse mais adequada a esse ambiente. Surgiu então uma modalidade conhecida como ASP (Application Service Provider) que consiste em distribuir software utilizando a Internet como veículo, em um regime muito semelhante ao de aluguel, no qual se paga o software à medida que se utiliza.

Os Web Services são, no fundo, a soma de todas essas idéias. Como toda evolução, várias deficiências dessas etapas anteriores foram eliminadas. A principal mudança foi relativa à incompatibilidade entre componentes. Através dos mecanismos disponibilizados pela plataforma que contém os Web Services é possível identificar os Web Services armazenados em um determinado servidor, assim como o formato e função de cada um, a fim de determinar qual será mais apropriado para aplicação em questão.

A interoperabilidade de componentes, garantindo compatibilidade, independente da plataforma na qual o Web Service está hospedado e da plataforma onde o ?client? está sendo executado, é possível graças ao método de transferência de dados, feito através da linguagem XML (eXtensible Markup Language).

O fato é que através dos Web Services podemos disponibilizar, na Internet, componentes que executem uma determinada tarefa e retornem algum dado para a aplicação que solicitou seu serviço. Podemos, também, desenvolver um serviço que não retorne dado algum, mas, execute uma operação na máquina onde está hospedado, ou em outra, na Internet, a qual tenha acesso.

Imaginemos o seguinte cenário: uma loja virtual trabalha com delivery de produtos para vários estados do Brasil, utilizando um provedor de serviços de entrega em cada estado. Além disso, aceita pagamento via Transferência Eletrônica de Fundos (TEF) dos maiores bancos do país e cartão de crédito de todas as administradoras. Ao fechar a compra, o sistema da loja, já tendo identificado qual estado e, portanto, qual entregadora utilizará, dispara uma requisição ao Web Service dessa entregadora, responsável pelo cálculo do frete. Ao mesmo tempo solicita ao Web Service do banco a aprovação da compra e a conseqüente transferência dos fundos ou, no caso de pagamento por cartão, a confirmação da compra junto ao Web Service da administradora.

Com toda a convergência que a Internet provê, a acessibilidade desses componentes é garantida de qualquer plataforma para qualquer plataforma. Pode-se acessar um Web Service escrito em Java, hospedado em um servidor WebSphere, a partir de um Site escrito em C#, hospedado em um servidor .Net e vice-versa, ou por um Site 3G, acessível por dispositivos móveis.

Um exemplo desse tipo de aplicação seria um Web Service de previsão do tempo. Poderíamos disponibilizar um serviço meteorológico que, a partir da localização atual ou futura do usuário, retornaria dados como: temperatura, possibilidade de chuva, umidade relativa do ar, etc. Os clientes poderiam acessar esse serviço através de um Site ou de um dispositivo móvel, conectado à Internet.

Uma preocupação constante das empresas é quanto à segurança de seus dados sensíveis. Essa segurança pode parecer ameaçada, à primeira vista, quando falamos de Web Services – afinal os dados retornados pelos Web Services estão disponíveis na Internet para quem quiser ver. Entretanto, não basta apenas querer ver. Os Web Services podem ser protegidos contra acessos não autorizados, utilizando diversas modalidades de segurança, desde a criptografia dos dados enviados e recebidos, até a autenticação e encriptação via SSL (Security Socket Layer).

Os Web Services ocasionarão a diminuição do tempo de desenvolvimento de soluções, desde sua especificação até seu lançamento, passando pela implementação, visto que o desenvolvimento do software levará muito menos tempo com a utilização desse recurso. Com isso o custo total do desenvolvimento das aplicações também será sensivelmente minimizado.

A novidade que mais chama a atenção nesse novo modo de desenvolver software é a mudança na maneira de pensar em desenvolvimento distribuído. Com os Web Services, o foco muda, passando dos códigos executáveis localizados em computadores remotos para a organização e descrição de serviços, possibilitando a integração automática e dinâmica de componentes através da Internet, a fim de solucionar um problema específico, gerar uma aplicação customizada ou montar uma arquitetura de serviços dinâmica.

Acreditamos que os Web Services mudarão para sempre a forma com que os softwares são desenvolvidos, diminuindo, em pouco tempo, a importância do programador, limitado apenas a escrever código de acordo com as especificações. Por outro lado, o arquiteto de sistemas, capaz de entender o problema do cliente e indicar qual a melhor solução, estará cada vez mais em evidência, apenas juntando peças de software já desenvolvidos, como um LEGO. Mais importante que isso, os Web Services irão minimizar as intermináveis filas de desenvolvimento de aplicativos nos departamentos de TI das empresas.

Em suma, como principal reviravolta causada pela lógica dos Web Services, apontamos a transferência do poder da modelagem e especificação da regra de negócios dos sistemas e aplicativos, atualmente com os desenvolvedores de software, para os usuários. Com isso, o pessoal da contabilidade, do financeiro, do RH, do marketing, de produtos, etc, terá a capacidade independente de montar, de maneira personalizada, seus relatórios, simulações, serviços, dentre outros. Isso muda tudo, pois dá liberdade ao usuário e, com ela, a responsabilidade intrínseca de suas vontades. Muda também o perfil do desenvolvedor, que de programador de códigos, terá de aprender arquitetura e lógica de processos e negócios. Por focar mais no objetivo do que nos processos de produção dos aplicativos, esperamos que os Web Services acabem funcionando como um grande ?esperanto? capaz de proporcionar entendimento mútuo de culturas, motivações e linguagens entre os mundos da tecnologia e dos negócios.

Conteúdos Relacionados

Show must go on

Show must go on

Hoje ia escrever sobre a morte do vendedor B2B, change management e a mudança brutal que vem forçando equipes de vendas a se adaptarem. Mas,

Continuar lendo

Pin It on Pinterest

Rolar para cima