DGERT   APCER
Relações de compromisso

Porquê SOA?


Para qualquer organização é um luxo desperdiçar oportunidades de negócio, optimização de rendimentos e redução de custos. Tendencialmente, o mercado caminha para o contexto empresarial ideal, onde se manipulam conceitos como a satisfação do cliente, o controlo da empresa, a optimização da produtividade, a flexibilização do negócio? Muitos destes conceitos já circulam pelos corredores da sua empresa. Existem muitas razões para que uma organização implemente uma arquitectura SOA (Service-Oriented Architecture) e, mais especificamente, uma arquitectura SOA baseada em webservices. Neste texto falamos das mais importante.

SOA

Reutilização. O que leva a migrar para a SOA é a reutilização de serviços de negócio e, desta forma, conseguir maior flexibilização dos processos de negócio e redução de custos de manutenção e de desenvolvimento. Os programadores, dentro e fora da organização (particularmente em parceiros de negócio), podem alavancar o código desenvolvido pelas aplicações existentes, expondo este código como um webservice e reutilizá-lo para satisfazer novos requisitos de negócio. A reutilização de funcionalidades que já existem na própria organização, ou no exterior, pode resultar numa redução significativa do esforço de desenvolvimento aplicacional. Os benefícios de reutilização crescem dramaticamente à medida que mais serviços de negócio são construídos e incorporados nas diferentes aplicações.

Interoperabilidade. A abordagem SOA das interacções entre os pedidos dos clientes e os serviços "loosely-coupled" traduz-se tão somente num conceito: interoperabilidade vasta e abrangente. Por outras palavras, pretende-se que os clientes e os serviços possam comunicar e "compreender-se" mutuamente, independentemente da plataforma que os suporta. Este objectivo apenas será tangível se, tanto os clientes, como os serviços, fizerem uso de uma forma standard e bem definida de comunicarem entre si - uma forma consistente, definida e transparente que seja reconhecida através das plataformas, sistemas e linguagens actuais. De facto, os webservices são os "suportes" que permitem exactamente isto. Os webservices providenciam um conjunto robusto e consistente de protocolos, regras e tecnologias que são completamente independentes das plataformas, sistemas ou linguagens de programação.

Flexibilidade. Os serviços "loosely-coupled" são tipicamente muito mais flexíveis do que as aplicações baseadas nas arquitecturas distribuídas actuais. Os componentes deste tipo de aplicações estão intrinsecamente ligados entre si, combinando semânticas, utilizando bibliotecas comuns e partilhando até estados de execução. Este facto torna difícil e pesado todo o trabalho de evolução e adaptação destas aplicações às constantes mutações do negócio, das suas regras e das suas necessidades e requisitos. Em contraponto, temos as arquitecturas SOA, que utilizando serviços de natureza "loosely-coupled", "document-based" e assíncronos, possibilitando às aplicações grande flexibilidade e facilidade de evolução, bem como uma rápida adaptação às constantes mutações do negócio, das suas regras e requisitos.

Eficiência de custos. Outros tipos de abordagens conseguem também integrar os vários recursos de negócio, como sistemas legados, aplicações de parceiros, ou aplicações departamentais específicas, sendo no entanto os seus custos superiores (ver texto "Frameworks SOA"). Estes tipos de soluções apresentam elevados custos de implementação, pois requerem uma análise aprofundada dos vários sistemas e um substancial tempo e esforço de desenvolvimento. São também tipicamente dispendiosas, quer ao nível da manutenção ou evolução, pois sendo as mesmas altamente dependentes, uma pequena alteração num só dos seus componentes implica invariavelmente a readaptação dos restantes módulos. Sendo os serviços na arquitectura SOA independentes do contexto, facilmente se depreende que as aplicações que fazem uso destes serviços apresentam por inerência custos e esforço de manutenção/evolução bastante mais baixos do que as aplicações tradicionais. Podemos ainda acrescentar que existe um vasto leque de infra-estruturas de rede baseadas em arquitectura SOA e webservices, que se encontram já implementadas em variadíssimas empresas, comprovando desde já a sua eficácia, e limitando o risco e custo de exploração deste tipo de arquitectura.

Produzido em 2006

Topo
Pesquisa
Agenda
Destaques