Arquitetura "SOA" em sistemas de "ERP"
14 de setembro de 2006

Muito tem se falado sobre a arquitetura "SOA" (Service-Oriented Architecture) e WebServices, mas afinal, o que é "SOA" e o que esta arquitetura pode ser útil para os ERPs?
Para facilitar a explicação e os exemplos, vamos expor o seguinte cenário real:

O Virto ERP é um sistema de gestão totalmente baseado na arquitetura SOA, e utiliza uma camada de WebServices para efetuar qualquer transação com o banco de dados.
 
Quando um cliente precisa ser inserido, em vez de o ERP inserir diretamente no banco de dados este cliente, ele aciona um WebService que faz todas as validações das regras de negócio que a empresa possui e, em seguida, insere o cliente no banco de dados, retornando para o Virto ERP o resultado da execução.
 
Assim, quem fez todas as validações e a comunicação com o banco de dados foi o WebService e não o Virto ERP diretamente.

Mas afinal, qual a vantagem dessa camada de WebServices?

É importante entender que um WebService é um padrão aberto de comunicação entre sistemas de tecnologias diferentes, e os WebServices são implantados sobre um padrão de comunicação chamado XML (que é um padrão aberto e não proprietário).

A primeira vantagem é que a inclusão deste cliente poderia ter sido feita por qualquer outro sistema da empresa e não somente pelo Virto ERP.

Outra vantagem é que este outro aplicativo que a empresa possui para fazer a inclusão de clientes poderia ser escrito em qualquer linguagem com capacidade de acionar WebServices (atualmente, quase todas as linguagens modernas são compatíveis). E o mais importante é que as regras de negócio da empresa continuam sendo validadas pelo WebService, evitando que inconsistências ocorram, bem como, reduzindo o desenvolvimento de validações que estes outros aplicativos precisariam fazer.

Esta aplicação poderia ser, por exemplo, o próprio site de sua empresa, que precisa inserir no ERP os clientes que visitaram seu site e pediram para receber a newsletter periódica. Neste exemplo, seu site pode estar hospedado em um provedor fora do Brasil, enquanto o ERP está instalado em sua Matriz em São Paulo. Esta "conversa" entre seu site e o WebService que insere o cliente no ERP será transparente, pois WebServices foram feitos para funcionarem pela Internet de forma segura, ágil e multi-plataforma.

No segmento de automação de indústrias é muito comum precisarmos que sensores, balanças eletrônicas e robôs se comuniquem com o ERP para reportarem pesos, números de lote, números de série e mudança de status no fluxo de produção. Isso torna-se muito fácil de implementar quando o ERP é baseado na arquitetura SOA (que utiliza WebServices), pois vários "mini-aplicativos" precisam ser desenvolvidos em linguagens de programação diversas, para compreender os sinais eletrônicos dessas balanças, sensores e robôs, e todos precisam informar ao ERP estas informações. Como os webservices usam o padrão XML (que é aberto), isto se torna muito mais simples, rápido, seguro e íntegro.

Este artigo foi escrito por Erick Vils, diretor de tecnologia da WebSoftware (fábrica do Virto ERP).

Você pode entrar em contato com Erick Vils pelo e-mail erick@websoftware.com.br  e esclarecer suas dúvidas sobre a arquitetura SOA ou sistemas ERP.

 
 
Publicada em: 14/09/2006
às 00:00 Seção: Artigos e Opiniões 
 

[14/06/2006]