SOA
Origem: Wikipédia, a enciclopédia livre.
Do inglês, "Service Oriented Architecture", ou Arquitetura Orientada a Serviços, esta nova palavra originada do acrônimo se tornou uma sigla da moda, por volta da primeira década do terceiro milênio. Neste período a Tecnologia da Informação sofreu várias modificações, impulsionada pela necessidade de melhoria no relacionamento que existia entre as áreas que suportavam tecnologicamente os negócios e os negócios propriamente ditos. Seus gestores se deram conta da necessidade e da conveniência do enfoque nos serviços, como um fim, sendo vitais para os negócios em um futuro que já se tornava atualidade. A SOA trouxe à tona a necessidade de fortalecer o enfoque no cliente e tornar a gestão de serviços como uma atividade produtiva, que gerasse valor à empresa. Como tal, essa atividade é fortemente dependente das pessoas e a caminhada rumo a SOA é árdua, exigindo um forte investimento na evolução organizacional, na conscientização da necessidade de evoluir e mudar, no estabelecimento de um gerenciamento de pessoas eficaz, orientado a conhecer a potencialidade, objetivos e desejos das pessoas em detrimento dos objetivos da organização, orientando a gerência de serviços em acordo com o desempenho individual exigido por cada stakeholder do projeto. Tornar os desafios da organização aderentes as pessoas e as pessoas, aderentes a eles é um dos maiores desafios da Gestão da mudança organizacional.
Índice |
[editar] Serviço
O serviço, no ponto de vista da arquitetura SOA, é uma função de um sistema computacional que é disponibilizado para outro sistema na forma de um serviço. Um serviço deve funcionar de forma independente do estado de outros serviços e deve possuir interface bem definida. Normalmente, a comunicação entre o sistema cliente e aquele que disponibiliza o serviço é realizada através de web services.
[editar] Processos
Mais do que uma tecnologia, SOA também influencia regras e processos de negócios, além de muitas vezes implicar reengenharia de software simultaneamente. - Gartner Group
A Arquitetura Orientada a Serviços pode ser bem representada a partir do seguinte processo, chamado de "find-bind-execute paradigm" o que significa aproximadamente paradigma de "procura-consolida-executa". Tal conceito é análogo a "Ciclo de Deming" aplicado aos serviços, que define o ciclo que envolve o planejameto, a execução, o monitoramento e a tomada de ação proativa para a melhoria da qualidade.
Tecnicamente falando, o processo preconisa que os provedores de serviços registrem informações em um registro central, com suas características, indicadores, e aspectos relevantes as tomadas de decisões. O registro é utilizado pelo cliente para determinar as características dos serviços necessários, e se o mesmo estiver disponível no registro central, como por exemplo por um catálogo de serviços, o cliente poderá utilizá-lo, sendo este oficializado através de um contrato que enderesse este serviço.
[editar] Tecnologia
O termo "Service-Oriented Architecture" (SOA) ou Arquitetura Orientada a Serviços expressa um conceito onde aplicativos ou rotinas são disponibilizadas como serviços em uma rede de computadores (Internet ou Intranets) de forma independente e se comunicando através de padrões abertos. A maior parte das implementações de SOA se utilizam de Web services ( SOAP , REST e WSDL). Entretanto, uma implementação de SOA pode se utilizar de qualquer tecnologia padronizada baseada em web.
[editar] Definições de SOA
Termo | Definição / Comentário |
---|---|
Serviço | É uma função independente, sem estado (stateless) que aceita uma ou mais requisições e retorna uma ou mais respostas através de uma interface padronizada e bem definida. Serviços podem também realizar partes discretas de um processo tal como editar ou processar uma transação. Serviços não devem depender do estado de outras funções ou processos. A tecnologia utilizada para prover o serviço, tal como uma linguagem de programação, não pode fazer parte da definição do serviço. |
Orquestração | Processo de sequenciar serviços e prover uma lógica adicional para processar dados. Não inclui uma representação de dados. |
Stateless | Não depende de nenhuma condição pré-existente. Os serviços não devem depender de condições de outros serviços. Eles recebem todas as informações necessárias para prover uma resposta consistente. O objetivo de buscar a característica de stateless dos serviços é possibilitar que o consumidor do serviço possa sequenciá-lo, ou seja, orquestrá-los em vários fluxos (algumas vezes chamados de pipelines) para executar a lógica de uma aplicação. |
Provedor | O recurso que executa o serviço em resposta a uma requisição de um consumidor. |
Consumidor | É quem consome ou pede o resultado de um serviço fornecido por um provedor. |
Descoberta | SOA se baseia na capacidade de identificar serviços e suas características. Conseqüentemente, esta arquitetura depende de um diretório que descreva quais os serviços disponíveis dentro de um domínio. |
Binding | A relação entre os serviços do provedor e do consumidor deve ser idealmente dinâmica; ela é estabelecida em tempo de execução através de um mecanismo de binding. |
[editar] Ver também
- Arquitetura de softwares
- Arquitetura de computadores
- Arquitetura da informação
- ITIL
- Orquestração e Coreografia