UNISINOS. SOA e Web Services. Giovane Barcelos. giovanebarcelos@gmail.com



Documentos relacionados
2 Conceitos relativos a Web services e sua composição

Service Oriented Architecture SOA

Service Oriented Architecture (SOA)

Arquitetura Orientada a Serviços (SOA) Copyright e-core LTDA, Todos os direitos reservados.

UFG - Instituto de Informática

Web Services. (Introdução)

3 Serviços na Web (Web services)

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3

Integração Orientada a Serviços

Web Services. Integração de aplicações na Web. Sistemas Distribuídos

Fase 1: Engenharia de Produto

UNIVERSIDADE. Sistemas Distribuídos

Arquitetura Orientada a Serviço

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Arquiteturas SOA, WOA, e REST

Linha de Produto para BPM

Microsoft.NET. Desenvolvimento Baseado em Componentes

Introdução a Web Services

acoplamento Exprime o grau de conexão entre os módulos; os módulos de um software devemapresentar um baixo coeficiente de acoplamento.

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.

PROGRAMA DE MBA em Gestão e Engenharia do Produto. O Produto Internet e suas Aplicações

SOA na Prática Ricardo Limonta

REST. Caio Nakashima

REST Um Estilo de Arquitetura de Sistemas Distribuídos

SOA - Service Oriented Architecture. Marcelo Canevello Ferreira

Sistemas Distribuídos

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE. Kellen Kristine Perazzoli 1, Manassés Ribeiro 2 RESUMO

Abstraindo as Camadas de SOA & Aplicações Compostas

COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP

WS-BPEL Web Service Business Process Execution Language

Princípios de Sistemas Distribuídos. Tecnologias utilizadas em sistemas distribuídos Aula 5

SOA. Service Oriented Architecture. Maxmiliano Franco Braga

Prof. Ricardo J. Rabelo

SOA Introdução. SOA Visão Departamental das Organizações

CORBA. Common Object Request Broker Architecture. Unicamp. Centro de Computação Rubens Queiroz de Almeida

Trabalho de Sistemas Distribuídos

Web Services e SOAP. Alexandre Zua CaldeiraTecnologias de Middleware 2006/ Faculdade de Ciências da Universidade de Lisboa

DISTRIBUTED SYSTEMS ARCHITECTURES. Ian Sommerville, 8º edição Capítulo 12 Aula de Luiz Eduardo Guarino de Vasconcelos

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

Engenharia de Software Aula 7 (Versão )

BPM e SOA. Grinaldo Lopes de Oliveira (grinaldo@gmail.com) Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

Programação Cliente em Sistemas Web

Universidade Federal de Juiz de Fora Ciência da Computação Sistemas Distribuídos Professor Ciro Barbosa

Serviços Web: Introdução

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V

Serviços Web: Arquitetura

Padrões Abertos, Componentização e SOA A chave para a evolução e criação de uma nova geração de sistemas de gestão comercial

Sistemas Distribuídos Arquiteturas Middlewares

Ambientes Visuais. Ambientes Visuais

11/20/10. Resoluções: Teste de Áudio. Não suporto esses malucos de TI. Só inventam despesas. Não acredito que teremos que pagar por mais softwares.

Obtendo Qualidade com SOA

Anexo VI Edital nº 03361/2008. Projeto de Integração das informações de Identificação Civil. 1. Definições de interoperabilidade adotadas pela SENASP

Programação para Internet Avançada. 4. Web Services. Nuno Miguel Gil Fonseca

Estruturação da Arquitetura Estadual de Sistemas de Informação por Meio da Orientação a Serviços

Arquiteturas Orientadas a Serviços ESB. Enterprise Service Bus. Prof. Ricardo J. Rabelo DAS5316 Integração de Sistemas Corporativos

RestFull WebServices. Rafael Nunes Arquiteto de Software / Instrutor Globalcode. Globalcode Open4Education

Integração de sistemas utilizando Web Services do tipo REST

Combinação de serviços já existentes para criar um novo serviço. cin.ufpe.br. cin.ufpe.br. Composição de Serviços Com WS-BPEL

Web Services. Tópicos. Motivação. Tecnologias Web Service. Passo a passo Business Web Conclusão. Integração de aplicações SOAP, WSDL, UDDI, WSFL

Web Services. Autor: Rômulo Rosa Furtado

MADALENA PEREIRA DA SILVA SLA Sociedade Lageana de Educação DCET Departamento de Ciências Exatas e Tecnológica

Arquiteturas, Padrões e Serviços para Geoprocessamento. Lúbia Vinhas 13/05/2008

PROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Adriano Reine Bueno Rafael Barros Silva

FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE CURSO SUPERIOR DE TECNOLOGIA em Gestão da Tecnologia da Informação

SOA Service Oriented Architecture. Fabiano Oss

Sistemas Multimédia. Arquitectura Protocolar Simples Modelo OSI TCP/IP. Francisco Maia Redes e Comunicações

Arquitetura de Software: Uma Central para Gestão da execução de serviços

Padrões Arquiteturais. Sistemas Distribuídos: Broker

: : Interoperabilidade entre Sistemas de Informação baseados na WEB - uma abordagem Multicanal

SINS: um Ambiente para Geração de Aplicações baseadas em Serviços

UFG - Instituto de Informática

SOA. Fabio Perez Marzullo. Inovando seu negócio por meio de soluções orientadas a serviços. Novatec

INE Sistemas Distribuídos

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow

Introdução a Arquiteturas ESB I N S T I T U T O D E G E S TÃ O E M T E C N OLOGIA D A I N F OR M A Ç Ã O

Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes

Sistemas Distribuídos

PROCESSOS DE NEGÓCIOS: UMA VISÃO GERAL

Sistemas Distribuídos

BPMN (Exemplos e Exercícios) e UDDI

Transações no Mundo SOA. Luciano Oliveira Solution Consultant

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

EMML Enterprise Mashup Markup Language. Jesús Martín Talavera Portocarrero

Service Oriented Architecture SOA

Sistemas Distribuídos. Web Services. Edeyson Andrade Gomes.

Modelagem de Sistemas Web. Ferramentas e metodologias para projeto de sistemas web

18/04/2006 Micropagamento F2b Web Services Web rev 00

WORKFLOW. Mapeamento de Processos de Negócio 26/11/2009. Tadeu Cruz, Prof. M.Sc. TODOS OS DIREITOS RESERVADOS

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

PHP Profissional. Alexandre Altair de Melo Mauricio G. F. Nascimento

SINS: Um ambiente para geração de aplicações baseadas em serviços

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão

Transcrição:

UNISINOS SOA e Web Services Giovane Barcelos giovanebarcelos@gmail.com São Leopoldo, Maio de 2010

Roteiro Introdução SOA Serviços Web Services Composição de Serviços Implementação InSOA Conclusão Publicado em: http://ubuntuone.com/p/3ds/ 2

Introdução Porque precisamos de? Integração e Composição de Sistemas e Processos 3

Introdução Porque integrar? Vamos reescrever tudo de novo!!! Existem situações em que isto é praticamente impossível: Por falta de tempo Recursos financeiros Problemas técnicos 4

Introdução Porque precisamos de? Alinhar TI com o Negócio Automatizar e Integrar Processos de Negócios Gerenciar Fluxo de Processos (Workflow) Compor e Integrar Processos 5

SOA Mas afinal, o que é SOA? SOA (Service-Oriented Architecture) SOA é um estilo de arquitetura de software onde as aplicações devem ser disponibilizadas na forma de serviços SOA NÃO É: uma tecnologia web services estratégia de integração de sistemas 6

SOA Exemplo típico de SOA Ordem de Compra Contabilidade Estoque Barramento de Serviços Fornecedor NF de Entrada Contas a Pagar 7

SOA O que SOA requer? Modelagem e simulação de processos (BPMN, BPEL) Orquestração dos processos de negócio como serviços Componentização e reuso de serviços (SCA, WS-*) Integrações de aplicações (WS-*, JNI, JMS) Gerenciamento de processos em servidores de processos Monitoração dos processos de negócio (BAM) 8

SOA Quais os princípios da arquitetura? 1/2 Encapsulamento Baixa Acoplagem Contrato Abstração Reusabilidade 9

SOA Quais os princípios da arquitetura? 2/2 Composição Autonomia Otimização Descoberta Relevância 10

SOA Quais são os elementos? SOA Aplicação Frontend Contrato/ Definição Serviço Repositório de Serviços Implementação Lógica de Negócios Barramento de Serviços Interface Banco de Dados 11

Servicos SOA e os Serviços Implementações SOA utilizam Serviços Web e geralmente SOA utiliza WS Serviços são aplicações disponíveis na Web Principais padrões de serviços: RPC CORBA DCOM Web Services REST DDS WCF Exemplo WS: http://www.webservicex.net/wcf/servicedetails.as px?sid=19 12

Serviços RPC RPC (Remote Procedure Call) 13

Serviços CORBA - OMG CORBA (Common Object Request Broker Architecture) 14

Serviços DCOM - Microsoft DCOM (Dynamic Component Object Model) 15

Web Services Afinal de contas, o que são WS? WS (Web Services) Serviços Web Web Services fornecem um padrão de interoperabilidade entre aplicações diferentes, rodando sobre plataformas e/ou frameworks distintos Especificação W3C (w3c.org): XML, XPath, XQuery,... Mensagens (SOAP, WS-Addressing,...) Metadados de trocas (WSDL, UDDI, WS-Policies, ) Segurança e Confiabilidade (WS-Security, WS-Trust, ) Privacidade (P3P) Recursos (WS-Resource, WS-Transfer, ) Interoperabilidade (WS-Basic Profile, ) Processos de Negócios (WS-BPEL, WS-CDL,..) Transações (WS-Transaction, WS-Coordination, ) Gerenciamento (WS-Management, WSDM,...) 16

Web Services Arquitetura Serviços como Web-Services (WS) Usuário ou aplicação Troca de mensagens (SOAP) Lógica e dados encapsulados Cliente Web-Services Serviço Web-Services SOAP: Simple Object Access Protocol Arquitetura Web-Services (WS) SOAP Troca Mensagens WSDL WSDL Servidor Publicação SOAP: Simple Object Access Protocol UDDI: Universal Description, Discovery and Integration Diretório de Serviços (UDDI) Cliente Pesquisa e Descoberta 17

Web Services Pilha Pilha de Tecnologias Pilha de Soluções Descoberta UDDI Descrição WSDL Empacotamento SOAP Transporte HTTP (Web) Rede TCP / IP (Internet) 18

Web Services O que é XML? extensible Markup Language: padrão W3C Maneira de representar informação Não é uma linguagem específica Não define vocabulário de comandos Não define uma gramática, apenas regras mínimas 19

Web Services XML versus HTML 20

Web Services Exemplo WSDL 1/2 21

Web Services Exemplo WSDL 2/2 22

Web Services SOAP Formato Genérico SOAP Envelope SOAP Cabeçalho (Header) SOAP Corpo (Body) 23

Web Services Exemplo SOAP Pedido SOAP Resposta SOAP 24

Web Services O que é REST? REST significa REpresentational State Transfer É um estilo de arquitetura de serviços e WS Trabalha essencialmente com o protocolo HTTP Proposto por Roy Fielding (Tese) autor da especificação HTTP 25

Web Services REST versus WS-*? WS-* - Modelo OSI e W3C Formalidade e overhead de protocolos Muitas especificações antes de implementar Modelo Waterfall / Cascata REST TCP/IP Simplicidade e flexibilidade Especificações junto com implementação Modelo incremental 26

Web Services Comandos REST GET PUT CLIENTE RECURSO POST DELETE CLIENTE INVOKE Atividade 1 INVOKE Atividade 2 INVOKE Atividade 3 27

Web Services SOAP x REST = Declarativo x Imperativo SOAP <soap:envelope> <soap:body> <globo:getbook> <id>soap123</id> Operação e parâmetros </globo:getbook> </soap:body> </soap:envelope> REST URI do recurso Método HTTP GET /getbook/soap123 Como O quê 28

Web Services REST e SOAP Itens Importantes Recursos URI (Uniform Resource Identifier) Formatos e tipos disponíveis Métodos Retorno Tags e identificadores 29

Composição Serviços O que significa compor serviços? Composição de Serviços com SOA (Service Oriented Architecture) WS1 SO integração de múltiplas plataformas AP WS2 Usuário ou aplicação UI SOAP Cliente Web-Services WS3 SO Servidor de composição de Web-Services responsável pela Orquestração WS AP Linguagens BPEL4WS e OWL-S Abordagens distintas Escritas com auxílio de ferramentas gráficas 30

Composição de Serviços O que é Orquestração? Um processo central controle os serviços 1. Inicia 2. Executa 5. Retorno 4. Executa 3. Executa 31 31

Composição de Serviços O que é Coreografia? Não depende de um coordenador central 5. Executa 1. Inicia 3. Retorno 2. Executa 4. Executa 32 32

Composição de Serviços Design Patterns e Linguagens de Composição Para compor serviços Linguagem de Composição são essenciais Principais patterns de composição: Controle de fluxo básico (5) Marcação de sincronização avançados (4) Estruturais (2) Múltiplas instâncias (4) Baseados em estado (3) Cancelamento (2) Tratamento de Erros (1) Design Patterns ou Padrões de Projeto: Descrevem um problema que acontece repetidas vezes Foco em reutilização e documentação de soluções Úteis para analisar e comparar aplicações Seguem Patterns: BPEL4WS, XLANG, WSFL, XPDL e OWL-S 33

Composição de Serviços Linguagens: BPEL4WS e OWL-S BPEL4WS (Business Process Execution Language for WS): Originária das especificações WSFL (Web Services Flow Language) da IBM e da XLANG da Microsoft 4 partes: partnerlinks, variables, faulthandler e sequence Característica de execução procedural OWL-S (Ontology Web Language for Services) Predecessor é a linguagem DAML (DARPA Agent Markup Language) utilizada para criação de ontologias 4 partes: service, profile, process e grounding Descoberta, Invocação e Composição automática Característica de definição de Ontologias de Domínios 34

Composição de Serviços Análise Comparativa Design Patterns OWL-S: Vantagens devido ao suporte a XSLT (Extensible Stylesheet Language Transformations) BPEL: Vantagem em itens muito importantes (19 e 20) - tratamento de exceções e compensação 35

Implementação Típico roteiro de implementação SOA Processos de Negócios Integração Aplicações Segurança Centralização dos Dados Básicos / Mestres 36

Implementação Estratégias de Integração Projeto centralizado ou descentralizado de integração de sistemas Definição da arquitetura a ser utilizada Hub and Spoke ESB (Transporte, Transformação e Roteamento) 37

Implementação APIs de Integração 38

Implementação Integração SOA ESB Enterprise Service Bus 39

Implementação ESB e SOA Open Source MULE (http://mule.codehaus.org) - DEMO APACHE (http://incubator.apache.org/servicemix e tuscany) ECLIPSE (http://www.eclipse.org/stp/ ) 40

Implementação ESB e SOA Suites (Real-Wold Labs) 41

Implementação Métodos de transporte ESB Software BEA CAPE Clear Florano WebSphere Oracle AG Sonic TIBCO Servidor J2EE J2EE J2EE OS Nativo J2EE J2EE J2EE OS Nativo Barramento JMS HTTP JMS Definido HTTP JMS Sonic MQ TIBCO Metadados Outro BPEL Outro Outro BPEL Outro Outro Outro 42

InSOA Cenário de Convergência e Evolução Arquiteturas Centralizadas Arquiteturas Distribuídas Web Services (WS) SOA (Service Oriented Architecture) Business Process Management SOA Linguagens de Composição de Serviços Computador Pessoal Dispositivos Móveis Dispositivos Móveis Clientes Dispositivos Móveis Servidores Linguagens Compiladas Linguagens interpretadas e declarativas Embutidas e leves 43

InSOA Características desejadas Soluções atuais devem: Ser distribuídas Orientadas a serviços Compor serviços Adequadas a dispositivos móveis Prover serviços e uso destes Tendência para linguagens declarativas [Aho 2006] Possibilidade de ser embutida e leves 44

insoa Questão de Pesquisa Como criar composições de serviços em dispositivos móveis utilizando uma linguagem de composição declarativa? 45

Linguagem insoa Projeto U-SOA insoa faz parte do Projeto U-SOA U-SOA significa Ubiquitous ServiceOriented Architecture É uma pilha de tecnologias separada em camadas É uma arquitetura para desenvolvimento de aplicações colaborativas ubíquas 46

insoa Características (1/2) insoa (invoke SOA) é uma linguagem declarativa de composição de serviços com foco em dispositivos móveis Insensível a capitalização Possui declaração flexível Faz validação de padrões (URI RFC 3986 e XPath 2.0) Comandos são opcionais, com exceção do invoke 47

insoa Características (2/2) Suporte a tratamento de falhas Orquestração de WS Organiza invocações de forma otimizada em objetos Gera saída customizável com StringTemplate Pode ser embutida Leve e não exige software de autoria 48

insoa Exemplo -- Exemplo insoa /* Data: 19/02/2009 */ invoke http://usoa.insoa/ws1.operationa as a if way!= 1, http://usoa.insoa/ws2.operationb as b input way type Number default 0 into / as waypipe, / as waypipea set a.field := way, b.field := waypipea/result/text() where waypipe/result/tag/text() == 'Valid' return waypipe/result/field/text() type String name Result fail a: invoke http://usoa.insoa/ws2.operation as c set c.field := 'Rollback', c.way := way id Identification tags Example; 49

insoa Gramática Diagrama da sintaxe 50

insoa Design Patterns Implementados B P E L O W L S in S O A B P E L O W L S in S O A 1. Sequence 12. Multiple Instances Without Synchronization 2. Parallel Split 13. Multiple Instances With a Priori Design Time Knowledge 3. Synchronization 14. Multiple Instances With a Priori Runtime Knowledge - - 4. Exclusive Choice 15. Multiple Instances Without a Priori Runtime Knowledge - 5. Simple Merge 16. Deferred Choice 6. Multi-choice 17. Interleaved Parallel - - 7. Synchronizing Merge 18. Milestone - - - 8. Multi-merge - - 19. Cancel Activity 9. Discriminator - - 20. Cancel Case 10. Arbitrary Cycles - - 21. Exception Handling - 11. Implicit Termination Pattern Pattern 51

insoa Protótipo Funcional 52

InSOA Estudo de Caso 2 Cenários: Consulta de Viagem (4 níveis, 10 WS, 10 Composições insoa) Consulta de Livros (5 níveis, 8 WS, 12 Composições insoa) Processo integrado de teste: 53

insoa Cenário 1: Consulta de Viagem 4 níveis 10 Composições insoa 10 WS 10 Emuladores 54

insoa Comparação com os Paradigmas Atuais # Característica BPEL OWL-S insoa a Insensível a capitalização NÃO NÃO SIM b Declaração Flexível NÃO NÃO SIM c Validação de Padrões NÃO NÃO SIM d Tratamento XML Externo Externo Interno e Opcionalidade NÃO NÃO SIM f Tratamento de Erros SIM SIM SIM g Orquestração SIM SIM SIM h Saída Customizável NÃO NÃO SIM i Invocação Otimizada NÃO NÃO SIM j Embutida NÃO NÃO SIM k Leve NÃO NÃO SIM l Abordagem Funcional Orientada para Objetos Declarativa XML XML m Baseada Texto 55

insoa Patterns Implementados/Testados no Estudo de Caso Pattern I? T? Pattern I? T? 1. Sequence Sim Sim 12. Multiple Instances Without Synchronization Sim Não 2. Parallel Split Sim Sim 13. Multiple Instances With a Priori Design Time Knowledge Sim Não 3. Synchronization Sim Sim 14. Multiple Instances With a Priori Runtime Knowledge Sim Não 4. Exclusive Choice Sim Não 15. Multiple Instances Without a Priori Runtime Knowledge Sim Não 5. Simple Merge Sim Sim 16. Deferred Choice Sim Não 6. Multi-choice Sim Não 17. Interleaved Parallel Sim Não 7. Synchronizing Merge Sim Sim 18. Milestone Não Não 8. Multi-merge Sim Sim 19. Cancel Activity Sim Sim 9. Discriminator Sim Não 20. Cancel Case Sim Sim 10. Arbitrary Cycles Sim Não 21. Exception Handling Sim Não 11. Implicit Termination Sim Sim Legenda: I? = Implementado? e T? = Testado 56

insoa Comparação BPEL4WS, OWL-S e insoa Linguagem Motivação Componentes Paradigma Tratamento Retorno XML BPEL4WS OWL-S insoa WSFL e XLANG partnerlinks, Procedural Externo variables, faulthandler e sequence DAML POO Externo service, profile, process e grounding Declarativa Invoke, input, Declarativo Interno into, set, where, return, fail, id e tags 57

Introdução Críticas SOA SOA é apenas uma nova palavra para WS Dependência de SOA à tecnologia WS Altos custos e riscos ocasionados pela constante evolução dos padrões ligados a SOA Serviços SOA com estado (stateful) criam alto grau de acoplamento e reduz escalabilidade SOA é só uma evolução e não um novo conceito Rigidez nas interfaces gera impacto negativo nas alterações dos serviços 58

Conclusão Integrar é preciso Quem não se comunica se trumbica SOA é um conceito e não tecnologia WS é a tecnologia mais utilizada na atualidade 59

Referências Bibliográficas Parcial [Aalst 2003] Aalst, W.M.P van der; Dumas, M. e Hofstede, A.H.M. Ter. Web service composition languages: old wine in New bottles?. Euromicro Conference. IEEE. ISBN: 0-7695-1996-2. 2003. [Aho 2006] Aho, Alfred V.; Lam, Monica S.; Sethi, Ravi e Ullman, Jeffrey D. Compilers: Principles, Techniques, & Tools. Pearson Addison Wesley. 1000 Pág. ISBN: 978-0321486813. 2006. [Erl 2005] Erl, Thomas. Service-Oriented Architecture: Concepts, Technology, and Design. Prentice Hall PTR. 792 Pág. ISBN: 978-0131858589. 2005. [Haseman 2008] Haseman, Chris. Android Essentials. Apress. 166 Pág. ISBN: 978-1430210641. 2008. [Martin 2004] Martin, D. at al. OWL-S: Semantic Markup for Web Services. W3C. http://www.w3.org/submission/owl-s/. 2004. [Parr 2007] Parr, Terence. The Definitive Antlr Reference: Building DomainSpecific Languages. Pragmatic Bookshelf. 376 pag. ISBN: 978-0978739256. 2007. [Staab 2003] Staab, S.; van der Aalst, W.; Benjamins, V.R.; Sheth, A.; Miller, J.A.; Bussler, C.; Maedche, A.; Fensel, D. e Gannon, D.. Web services: been there, done that?. IEEE, DOI: 10.1109/MIS.2003.1179197. 2003. [Will 2003] Will, van der Aalst. Don't go with the flow: Web services 60 composition standards exposed. IEEE Intelligent Systems. 2003.

Referências Bibliográficas Parcial [1] W3C, Web Services Architecture, 2004, disponível em: http://www.w3.org/tr/ws-arch/#introduction, acessado em: 23/05/08. [2] M. Nakamura, H. Igaki,, H. Tamada, K. Matsumoto, Implementing Integrated Services of Networked Home Appliances using service oriented Architecture, In: 2nd International Conference on Service Oriented Computing, Novembro, 2004 [3] M. Hu, Web Services Composition, Partition, and Quality of Service in Distributed System Integration and Re-engineering, 2003, XML Conference & Exposition 2003 [4] J. Shen, Y. Yang, C. Zhu e C. Wan, From BPEL4WS to OWL-S: Integrating E-Business Process Descriptions, Services Computing, 2005 IEEE International Conference. [5] W.M.P van der Aalst, M. Dumas e A.H.M. ter Hofstede, Web service composition languages: old wine in New bottles?, 2003, IEEE. [6] E. Gamma, R. Helm, R. Johnson e J.M. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, 1994, AddisonWesley. [7] W.M.P. van der Aalst, A.H.M. ter Hofstede, B. Kiepuszewski, e A.P. Barros, Workflow Patterns, 2000 61

Agradecimentos Perguntas OBRIGADO! 62