• Nenhum resultado encontrado

tecnologia SOA

N/A
N/A
Protected

Academic year: 2021

Share "tecnologia SOA"

Copied!
17
0
0

Texto

(1)

1º SEMESTRE 2009

Apresentação da Tecnologia:

SOA

Service-oriented Architecture

JEDSON ZENDRON FIGUEIREDO

Programa de Pós-Graduação

em Engenharia Eletrônica e Computação

na Área de Informática – PG/EEC-I

(2)

Índice

Introdução

Serviço

Processos

Tecnologia

Definição de SOA

Conclusão

Referências Bibliográficas

(3)

SOA

• Service-oriented Architecture, pode ser traduzido como

Arquitetura Orientada a Serviços.

• É um estilo de arquitetura de software cujo princípio fundamental preconiza que as funcionalidades implementadas pelas aplicações devem ser disponibilizadas na forma de serviços.

• Os serviços são organizados através de um “barramento de serviços” que disponibiliza interfaces, ou contratos, acessíveis através de Web Services.

• SOA é baseado nos princípios da Computação Distribuída que utiliza o paradigma request/reply para comunicação entre Sistemas Cliente e Sistemas que implementam os Serviços.

(4)

SOA

• Além da perspectiva estritamente técnica, essa arquitetura também se relaciona com determinadas políticas e conjuntos de "boas práticas" que pretendem criar um processo para facilitar a tarefa de encontrar, definir e gerenciar os serviços disponibilizados.

• E se insere em um processo de reorganização dos departamentos de tecnologia da informação das organizações, permitindo um melhor relacionamento entre as áreas que dão suporte tecnológico à empresa e as áreas responsáveis pelo negócio propriamente dito, graças a maior agilidade na implementação de novos serviços e reutilização dos ativos existentes.

(5)

Serviço

• Um serviço, do ponto de vista da arquitetura SOA, é uma função de um sistema computacional que é disponibilizado para outro sistema.

• Um serviço deve funcionar de forma independente do estado de outros serviços, exceto nos casos de serviços compostos (composite services), e deve possuir uma interface bem definida.

• Normalmente, a comunicação entre o sistema cliente e aquele que disponibiliza o serviço é realizada através de web services.

(6)

Processos

Segundo a empresa de consultoria Gartner Group, “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”.

• A aquitetura SOA pode ser bem representada pelo processo chamado “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 planejamento, a execução, o

monitoramento, e a tomada de ação pró ativa para a melhoria da qualidade.

(7)

Processo find-bind-execute paradigm

• O processo preconiza que os provedores de

serviços registrem

informações em um

registro central, com

suas características,

indicadores, e aspectos relevantes às tomadas de decisões.

• O registro é utilizado pelo cliente (Usuário do Serviço) 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 enderece este serviço.

Provedor de Serviço Usuário do Serviço Registro / Registry

(8)

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.

(9)

Definição SOA

• O SOA coloca a prestação de serviço como eixo de todo o negócio, dando destaque à gestão de serviços e ao cliente.

• Destacam-se os seguintes termos:

– Serviço; – Orquestração; – Stateless; – Provedor; – Consumidor; – Descoberta; e – Binding.

(10)

Definição SOA à Serviço e Orquestração

• Serviço:

É uma função independente, sem estado (stateless) que aceita uma ou mais requisições e devolve 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, e 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 seqüenciar serviços e prover uma lógica adicional para processar dados. Não inclui uma representação de dados.

(11)

Definição SOA à 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.

(12)

Definição SOA à Provedor e Consumidor

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.

(13)

Definição SOA à Descoberta e Binding

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.

(14)

Conclusão

• SOA é uma ótima opção na elaboração de uma arquitetura robusta e distribuída;

• Essa arquitetura propicia uma coleção de serviços que se comunicam entre si.

• É uma força motriz para a futura utilização funcional dentro das organizações.

• Funcional reutilização para o principal meio de garantir que as organizações podem responder de maneira rápida e eficaz para a dinâmica do mercado.

(15)

Referência Bibliográficas

• [1] SOA Working Group of The Open Group. Definition of SOA. Disponível em:

http://opengroup.org/projects/soa/doc.tpl?gdid=10632 Página visitada em 9 de abril de 2009.

• [2] Boris Lublinsky. Defining SOA as an architectural style. Disponível em:

http://www.ibm.com/developerworks/library/ar-soastyle/. Página visitada em 9 de abril de 2009.

[3] Dirk Krafzig, Karl Banke, Dirk Slama. Enterprise SOA: Service-Oriented Architecture Best Practices. 1.ed. Estados

Unidos da América: Prentice Hall, 2004.

• [4] Martin Keen, Susan Bishop, Alan Hopkins, Sven Milinski, Chris Nott, Rick Robinson, Jonathan Adams, Paul

Verschueren, Amit Acharya. Patterns: Implementing an SOA using an Enterprise Service Bus. Disponível em: http://www.redbooks.ibm.com/redbooks/pdfs/sg246346.pdf. Página visitada em 9 de abril de 2009.

[5] Raghu R. Kodali. What is service-oriented architecture? Disponível em:

http://www.javaworld.com/javaworld/jw-06-2005/jw-0613-soa.html. Página visitada em 9 de abril de 2009.

[6] Bobby Woolf. Introduction to SOA governance . Disponível em:

http://www.ibm.com/developerworks/library/ar-servgov/. Página visitada em 9 de Abril de 2009.

• [7] OASIS. Reference Model for Service Oriented Architecture 1.0 . Disponível em:

http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf. Página visitada em 9 de abril de 2009.

[8] Chris Harding, The Open Group. Achieving Business Agility through Model-Driven SOA. Disponível em:

http://www.ebizq.net/topics/soa/features/6639.html. Página visitada em 9 de abril de 2009.

[9] Rich Rogers. Reuse engineering for SOA. Disponível em: http://www.ibm.com/developerworks/webservices/

(16)

Questões

Questão 1: O que é SOA?

É um modelo de negócios conceitual que visa organizar recursos de software (serviços) de forma que, orquestradamente, possam compor os processos de negócios, atendendo as necessidades da empresa. “Serviços”, em SOA, são módulos de negócio ou funcionalidades de aplicações com interfaces expostas que são invocados por mensagens.

• Questão 2: Qual o processo que representa uma arquitetura SOA? E qual o significado do mesmo?

A aquitetura SOA pode ser bem representada pelo processo chamado “find-bind-execute paradigm”, o que significa, aproximadamente, paradigma de “procura-consolida-executa”.

(17)

Questões

Questão 3: O que são utilizados na maior parte as implementações de SOA?

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.

Referências

Documentos relacionados

Neste trabalho avaliamos as respostas de duas espécies de aranhas errantes do gênero Ctenus às pistas químicas de presas e predadores e ao tipo de solo (arenoso ou

Os estudos originais encontrados entre janeiro de 2007 e dezembro de 2017 foram selecionados de acordo com os seguintes critérios de inclusão: obtenção de valores de

A seleção portuguesa feminina de andebol de sub-20 perdeu hoje 21-20 com a Hungria, na terceira jornada do Grupo C do Mundial da categoria, a decorrer em Koprivnica, na

No 8º dia após o último comprimido de DELLAX 20 e DELLAX 30 (ou seja, após os 7 dias da semana de intervalo), inicie a fita seguinte, mesmo que a hemorragia não tenha parado.

Foto premiada em um dos maiores concursos mundiais de fotografia de casamento - FearLess Foto escolhida como uma das TOP 40 fotos de casamento...

A segunda contribuição é explicitar que a aplicação desse método, mesmo que tratando de um recorte específico no processo histórico de formação para o trabalho simples e

Nessa premissa, os homens são seres do trabalho, como asseveram Marx e Engels (2007), sujeitos que transformam e são transformados pelo trabalho, pode-se compreender, portanto, que

O período durante o qual os cidadãos(Que estejam empregados) que são segurados pelo Seguro Nacional de Saúde(Kokumin Kenko Hoken) ou Sistema de Assistência Médica para