Arquitetura SOA: Princípios, Web Services e Estratégias

Classificado em Tecnologia

Escrito em em português com um tamanho de 3,42 KB.

SOA é um estilo arquitetural:

  • Em que o serviço é a unidade fundamental
  • Que não surgiu “do nada”
  • Que exige visão de negócios, disciplina de engenharia e governança, investimento em arquitetura de TI e uma estrutura organizacional que o suporte
  • SOA’s atuais são em sua maioria implementadas por meio da tecnologia de Web Services
  • Web Services originaram o “Modelo Inicial” de SOA

Web Services:

  • Originaram o “Modelo Inicial” de SOA
  • SOAP: protocolo de comunicação, independente de plataforma, baseado em XML, pode ser transmitido sobre HTTP
  • WSDL: interface escrita em XML, descreve operações, mensagens, localização dos Web Services, e permite a geração automática de clientes
  • UDDI: registry para serviços

Orientação a Serviços

  • Orientação a serviços: realizado por meio de serviços
  • Interface Service layer: encapsula lógica das camadas de aplicação e de negócio
  • Conceito fundamental: composição de serviços
  • Princípios de Orientação a Serviço: princípios para implementação da orientação a serviço
  • Service Layers: camadas da Interface Service Layer: auxiliam na análise e design de serviços

Princípios de Orientação a Serviços

  • Serviços devem ser reusáveis
  • Serviços têm um contrato definido padronizado
  • Serviços devem ter baixo acoplamento (pouca dependência)
  • Serviços devem abstrair sua lógica interna
  • Serviços são componíveis
  • Serviços devem buscar autonomia
  • Serviços devem ser stateless
  • Serviços devem ser visíveis

Buscar autonomia, ter baixo acoplamento, abstração e contrato definido e padronizado são base para os demais

SOA: Estratégias de Delivery

  • Estratégia “Meet-in-the-middle” (“Ágil”) é mais indicada para implementação de projetos SOA
  • Além do processo, outros aspectos devem ser levados em consideração para implantação de uma SOA (como governança e tecnologia utilizada)
  • A grande diferença dos processos tradicionais para o processo SOA está nas fases de Análise e Design
  • Ênfase do curso: Análise Orientada a Serviço

Estratégia “Meet-in-the-middle”

  • Combina estratégias Top-Down e Bottow-Up (Meet-in-the Middle) ou “Ágil”
  • Análise feita “on-going”
  • Melhor que as duas estratégias anteriores, porém aumenta esforço de análise, desenvolvimento, revisão e controle

Não confundir com métodos de desenvolvimento ágil (como XP, SCRUM, etc..)

Análise Orientada a Serviços: 12 passos (em resumo)

  • Definir um conjunto preliminar de serviços candidatos.
  • Agrupar as operações candidatas em contextos lógicos, que também representam serviços candidatos.
  • Definir limites dessa lista de serviços candidatos, de modo que eles não se sobrepõem a quaisquer serviços existentes ou previstos.
  • Identificar a potencial de reutilização dos serviços candidatos, avaliando se o sua lógica faz parte do contexto em questão
  • Identificar possíveis composições de serviços

Entradas relacionadas: