terça-feira, 24 de novembro de 2009

Camadas de Abstração

Há um grande número de frameworks que dividem a arquitetura em camadas de abstração. SOA traz um pequeno número de novas considerações e artefatos arquiteturais que devem ser adicionados aos frameworks existentes.

SOA é divido em 5 camadas de abstração:


  • Camada Corporativa: Na camada corporativa são definidos os modelos de negócios da empresa (enterprise business model), como quais são seus principais processos baseados em seu objetivo e mercado.
  • Camada de Processos: Na camada de processos, os processos do modelo de negócios são identificados. Cada processo é único para cada área funcional de negócio e pode ser composto por vários sub-processos. A camada de processos é muito importante dentro da arquitetura SOA, porque muitos processos podem ser modelados e executados como serviços. É comum a confusão entre as terminologias de “serviços” e “processos”. Processos são definidos uma única vez e usados dentro de um único contexto, já serviços também são definidos uma única vez, mas este pode ser reutilizado (reuso) em diferentes “processos”.
  • Camada de Serviços: A camada de serviços é caracterizada por um número de serviços que realizam funções individuais de um negócio. Dentro da arquitetura SOA, esta camada fornece uma ponte entre as camadas de alto (camada corporativa e de processos) e baixo nível (camada de componentes e objetos). Usualmente, é nesta camada que as funções críticas necessárias para o negócio são identificadas, visto que é nela que usualmente são identificadas e expostas as funções para suportar o negócio.
  • Camada de Componentes: Na camada de componentes são identificados e caracterizados os componentes que podem ser mapeados como serviços. Normalmente através de técnicas “bottom-up” (análise das aplicações e identificação de funções que podem ser serviços, por terem um potencial de reaproveitamento em vários sistemas).
  • Camada de Objetos: A camada de objetos, estão as classes, atributos e relacionamentos de um objeto. Na arquitetura SOA há um reaproveitamento dos conceitos de orientação a objeto, porem com o desacoplamento dos objetos, transformando em serviços reutilizáveis.

Nenhum comentário: