Interoperabilidade e Comunicação na plataforma Microsoft.

Olá pessoal, tudo certo?

A semana passada foi bem corrida, com uma série de reuniões de projetos em diferentes empresas. Um dos tópicos interessantes que vi foi um mapa sobre os diferentes níveis de interoperabilidade na plataforma Microsoft.

Podemos pensar em 3 níveis básicos de complexidade:

  • Interop in the Framework
  • Interop in the Box
  • Interop in the Cloud

A figura abaixo faz um resumo desse mapa de interoperabilidades:

image

O chamado "Interop in the Framework" envolve a integração customizada, através de sua principal ferramenta, o WCF - Windows Communication Foundation. Através do WCF podemos construir arquiteturas de serviços com interfaces específicas para cada necessidade de negócio envolvida. Veja que a customização possível do WCF envolve a escolha dos melhores bindings, protocolos de entrega, formatação de dados, etc. Assim, suportamos de forma especializada padrões como ASMX, WSE, .NET Remoting, MSMQ, formatos como POX, REST, JSON, ATOM, além de mecanismos de roteamento, transação, coordenação, entre outros padrões do WS-I. Veja sobre cenários de WCF aqui.

Porém, existem cenários onde podemos aproveitar recursos de EAI - Enterprise Application Intergation ou mensageria, que envolvem tipicamente a transformação de mensagens, roteamento e principalmente atividades de tradução entre diferentes ambientes e tecnologias. Nesse caso, o chamado "Interop in the Box" apresenta uma caixa pronta, através do BizTalk Server na plataforma Microsoft. Na verdade, o BizTalk Server oferece um conjunto de recursos que podem ser configurados ou extendidos, permitindo a integração direta entre diferentes sistemas através de adaptadores, para SAP, Siebel, JD Edwards, etc, além do atendimento de protocolos de troca de dados como XML, EDI, EDIFACT, AS2, SWIFT, etc. Finalmente, é muito comum a integração de cenários "in the Framework" com cenários "in the Box", pois nossa TI sempre possui características mistas de composição de negócios e serviços.

Por último e mais recentemente, podemos pensar na composição de cenários entre múltiplas empresas, que implementam internamente suas integrações nos níveis "in the Box" e "in the Framework" através da nuvem. Usando elementos de escalabilidade e processamento massivo de um datacenter externo, fazemos a integração de diferentes cenários de negócio e suas necessidades, usando um ambiente de hardware provisionável por demandad. Temos assim o chamado "Interop in the Cloud". Nesse tipo de ambiente, identidade, conectividade e workflow ou orquestração de negócios na nuvem são elementos básicos para o projeto. Seu maior representando no Windows Azure é o .NET Services, sendo o principal mecanismo para a construção de uma integração "in the cloud". Como exemplo, a Microsoft está desenvolvendo um projeto conhecido como MEBA - Multi-Enterprise Business Application, usando a nuvem como ponto de integração entre empresas. Veja um pouco mais sobre MEBA aqui.

MEBA - Multi-Enterprise Business Application

image

Interoperabilidade é um dos temas principais de arquitetura, assim como a Comunicação entre diferentes ambientes. Na plataforma Microsoft, quando pensamos em comunicação citamos 4 caixas específicas:

  • Microsoft® BizTalk® Server (BTS)
  • Microsoft Host Integration Server (HIS)
  • Microsoft Message Queuing (MSMQ)
  • Microsoft Enterprise Service Bus (ESB) Guidance

Vamos falar um pouco mais dessas soluções em posts futuros.

Por enquanto é só! Até o próximo post :)

Waldemir.