13
Disciplina Modelagem e Simulação Disciplina Modelagem e Simulação Mestrado em Mestrado em Computação Computação Aplicada Aplicada Disciplina de Projetos de Sistema de Disciplina de Projetos de Sistema de Software na Internet Software na Internet Mestrado em Mestrado em Computação Computação Aplicada Aplicada Universidade do Vale do Rio dos Sinos – Unisinos Mestrado em Computação Aplicada - PIPCA Disciplina de Projetos de Sistema de Software na Internet Prof. D.Sc. Sérgio Crespo Artigo de Juan Fang e Yanhui Liu Por: Daniel de Souza Martins e Marco Andrei Lampert Novembro, 2010 Research of Dynamic SOA Research of Dynamic SOA Collaboration Architecture Collaboration Architecture

Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Embed Size (px)

Citation preview

Page 1: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina Modelagem e SimulaçãoDisciplina Modelagem e SimulaçãoMestrado emMestrado emComputação AplicadaComputação Aplicada Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na

InternetInternetMestrado emMestrado emComputação AplicadaComputação Aplicada

Universidade do Vale do Rio dos Sinos – UnisinosMestrado em Computação Aplicada - PIPCA

Disciplina de Projetos de Sistema de Software na InternetProf. D.Sc. Sérgio Crespo

Artigo de Juan Fang e Yanhui Liu

Por: Daniel de Souza Martins e Marco Andrei LampertNovembro, 2010

Research of Dynamic SOA Collaboration Research of Dynamic SOA Collaboration ArchitectureArchitecture

Page 2: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

2

Assuntos

• 1 – Introdução

• 2 - Classificação das Arquiteturas SOA

• 3 – Arquiteturas com Aplicações SOA Atuais

• 4 – Arquitetura Baseada em SOA para Colaboração

• 5 – Conclusão

Page 3: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Introdução

• No SOA (Service-Oriented Architecture) diferentes serviços colaboram em conjunto para realizar uma tarefa complexa.

• O desenvolvimento SOA possui três elementos chave: - prestador de serviços- agente de serviços e- atendimento ao consumidor

Page 4: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Introdução

• O prestador de serviços desenvolve um conjunto de serviços que são disponibilizados pelo agente de serviços

• Quando um novo serviço é necessário o atendimento ao consumidor pesquisa no agente de serviços aqueles que podem atender as necessidades

• Uma vez achado, agrupa-os, liga-os e disponibiliza como uma nova aplicação

COLABORAÇÃO SOA TRADICIONAL

Page 5: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Introdução

• Mudanças no fluxo de colaboração exigem compor um novo serviço

• SOA tradicional fica ineficiente • Colaboração SOA dinâmica se propões a resolver este

problema• O fluxo de colaboração e o serviço são determinados em

tempo de execução

Page 6: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Classificação das Arquiteturas SOA• Baseada em 2 parâmetros:

- capacidade de reprojetar o fluxo de trabalho: - estática / pré-definida (S)- dinâmica / tempo de execução (D)

- capacidade de recompor em tempo de execução- estática / pré-definida (N)- dinâmica / tempo de execução (R)

• Quatro combinações-

(S,N) - nenhuma mudança ocorre em tempo de execução

- (S,R) – colaboração SOA tradicional

- (D,N) - na prática não existe

- (D,R) – colaboração SOA tradicional

Page 7: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Arquitetura de Aplicações SOA

• IBM SOA Foundation Architecture;– Arquitetura do tipo S/R;

• FERA Reference Architecture;– Arquitetura do tipo S/N.

Page 8: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

IBM SOA Foundation Architecture

Page 9: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

FERA Reference Architecture

Page 10: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Arquitetura Colaborativa para SOA

• Proposta de arquitetura que permite a mudança dos serviços e fluxos colaborativos em tempo de execução.

Page 11: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Arquitetura Colaborativa para SOA• Passo 1- O Application Runtime analisa a especificação da aplicação e define uma

especificação de restrições;• Passo 2- O Procces Controller primeiro analisa a especificação do processo e gera a

especificação do fluxo colaborativo e a especificação dos serviços;• Passo 3- O Service Broker procura no Service Pool serviços que satisfaçam os

requisitos descritos na especificação dos serviços, e os envia ao Procces Controller;• Passo 4- Depois dos serviços trocar seus CPPs e criarem um CPA, o Procces

Controller organiza os serviços de acordo com a especificação do processo;• Passo 5- O Application Runtime fornece um ambiente de execução para estes

serviços organizados, e esses serviços serão executados sob o controlo do Policy Enforcement. O Policy Enforcement usa diversas políticas, como CPPs e CPA, para conduzir esse processo de controle;

• Passo 6- Enquanto a aplicação estiver sendo executada os serviços colaborativos devem obedecer as politicas de restrições, como CPPs e CPA;

• Passo 7- Durante a execução de um aplicativo, o Aplication Runtime monitora o estado da aplicação para verificar a necessidade de mudança no fluxo colaborativo. Uma vez que algo precise ser alterado, o processo de construção de uma nova aplicação é disparado, assim que esta fique pronta ela irá substituir a antiga. Tudo isso ocorre de forma automatizada.

Page 12: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Conclusões

• A forma como as arquitetura SOAS podem ser classificadas é bastante útil, pois deixa claro até, e em que ponto a arquitetura é adaptativa;

• A construção de aplicações SOA colaborativas e adaptativas não é algo trivial.

Page 13: Disciplina Modelagem e Simulação Mestrado em Computação Aplicada Disciplina de Projetos de Sistema de Software na Internet Mestrado em Computação Aplicada

Disciplina de Projetos de Sistema de Software na Disciplina de Projetos de Sistema de Software na InternetInternet

Mestrado emMestrado emComputação AplicadaComputação Aplicada

Referência Bibliográficas• [1] OASIS: ebXML: http://www.ebxml.org/• [2] Tsai WT, Huang Q, Xiao B, Chen Y,“Collaboration policy generation in dynamic

collaborative SOA”, ISADS 2007.• [3] Tsai WT, Fan C, Chen Y, Paul R, and Chung J “Architecture Classification for SOA-

Based Applications”, Proceedings of the Ninth IEEE international Symposium on Object and Component-Oriented Real-Time Distributed Computing, IEEE Computer Society, Washington, DC, April, 2006,p. 295-302.

• [4] Rob High, Jr., Stephen Kinder, and Steve Graham, “IBM SOA Foundation: An Architectural Introduction and Overview, Version 1.0”, 2005.

• [5] OASIS, “Run-time Service Oriented Architecture (SOA) V0.1”, July 2005• [6] Fang, Juan, and Liu, Yanhui. “Research of Dynamic SOA Collaboration

Architecture”, WASE 2009.