A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Serviços Web e a Computação em Nuvem: Definições e Desafios

Apresentações semelhantes


Apresentação em tema: "Serviços Web e a Computação em Nuvem: Definições e Desafios"— Transcrição da apresentação:

1 Serviços Web e a Computação em Nuvem: Definições e Desafios
Grupo de Pesquisa FORMAS – Formalsmos e Aplcações Semântticas LABORATÓRIO DE SISTEMAS DISTRIBUÍDOS – LASID DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO - DCC UNIVERSIDADE FEDERAL DA BAHIA - UFBA Profa. Dra. Daniela Barreiro Claro e Fabricio de Oliveira Alves São Bento do Sul / Santa Catarina

2 Apresentação Daniela Barreiro Claro Professora Adjunta da UFBA
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Apresentação Daniela Barreiro Claro Professora Adjunta da UFBA Depto de Ciência da Computação da UFBA Fabricio de Oliveira Alves – Graduando em CC/UFBA FORMAS (Formalismos e Aplicações Semânticas) Laboratório de Sistemas Distribuídos (LaSiD) Pesquisa OWL-S Composer: plugin para composição semântica de WS Composições Confiáveis de Serviços Web Semânticos Composições Autonômicas de Serviços Web Verificação e Validação Formal em Composições Semânticas Extraçao da Informação Daniela Barreiro Claro Serviços Web 2

3 Agenda Visão geral e mudanças de paradigmas Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Agenda Visão geral e mudanças de paradigmas Computação em Nuvem e SOA Imprementação dos Serviços Web Tecnologias básicas: XML, SOAP, WSDL e UDDI Web Semântica Breve histórico e principais características da OWL Serviços Web semânticos e suas composições Principais linguagens: OWL-S, WSMO, SAWSDL Ciclo de Vida de uma composição de SWS Descoberta SWS Composição Semântica Execução Grandes Desafios da Computação em Nuvem e dos Serviços Web Daniela Barreiro Claro Serviços Web 3

4 Nuvem SAWSDL UDDI-S FT-SOAP WS-Security WS-Transaction OWL WSDL-S WS
SOA e as Tecnologias Básicas Web semântica e SWS Composição Semântica e seu Ciclo de Vida Grandes Desafios Apresentação Agenda Introdução Mundo nas nuvens... SAWSDL UDDI-S FT-SOAP WS-Security WS-Transaction OWL WSDL-S Nuvem WS SWS UDDI WS-Replication WS-BPEL SOAP Elasticidade OWL-S WSC EC2 ... Daniela Barreiro Claro Serviços Web 4

5 Visão Geral Antigamente, tudo dentro de uma empresa era dissociado...
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Visão Geral Antigamente, tudo dentro de uma empresa era dissociado... Departamento de marketing não se comunicava com depto comercial, com recursos humanos,... Diversos aplicativos eram construídos isoladamente Muitas funcionalidades redundantes eram desenvolvidas... ... e os esforços e as despesas necessárias para construir estas funcionalidades. Daniela Barreiro Claro Serviços Web 5 5

6 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Visão Geral 29% 16% 17% 18% Aplicativo C Aplicativo D Aplicativo A Aplicativo B Diferentes aplicativos desenvolvidos independentemente podem resultar em muitas funcionalidades redundantes Hospedagem complexa de numerosos aplicativos desenvolvidos através de diferentes tecnologias Desafio para a evolução de uma empresa e expansão da infra-estrutura tecnológica Daniela Barreiro Claro Serviços Web 6 6

7 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Visão Geral Aplicativos para a automação de processos de negócios específicos Desafio da integração “Colcha de retalhos ponto a ponto” Tradução: Java p/ dotNET Aplicativo A Aplicativo B Aplicativo C Aplicativo D Daniela Barreiro Claro Serviços Web 7 7

8 Computação em Nuvem + SOA
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Visão Geral Diversas aplicações e negócios são agregadas às empresas, muitas vezes pela compra de novos negócios Ex. Oracle que comprou a Sun, bancos que sao comprados Há a necessidade de uma infraestrutura com escalabilidade dinâmica Ampliação da Internet como meio de realização de negócios Necessidade de criar ambientes tolerantes a falhas e redundância. Computação em Nuvem + SOA Daniela Barreiro Claro Serviços Web 8 8

9 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições Maiores mudanças propostas pela Computação em Nuvem Armazenamento de informações Execução das aplicações Sai do desktop -> tudo para Nuvem As aplicaçoes e os documentos podem ser acessados de qualquer lugar no mundo. Facilidades Libera dos limites do desktop Maximiza a colaboração entre grupos de diferentes localidades Daniela Barreiro Claro Serviços Web 9 9

10 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições Desktop-centric notion is bound to fall to the universal access Acesso universal provido pela Computação em Nuvem 24/7 confiabilidade Colaboração pervasiva Tradicionalmente – perspectiva desktop Executa copias de aplicativos em cada computador Documentos sao armazenados nos computadores que são criados Embora documentos possam ser acessados por outros computadores na mesma rede, eles não podem ser acessados por computadores fora da rede. Daniela Barreiro Claro Serviços Web 1010 10

11 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições O que Computação em Nuvem NÃO É: Computação em Rede (networking computing) Em computação em rede, aplicações e documentos são armazenados em servidores e acessados por uma rede Acesso limitado à rede de computadores dentro da empresa Externalização dos dados (Outsourcing) Serviços, dados e aplicações de uma empresa alocados em outras empresas Somente acessiveis pelos empregados via a rede da empresa locadora Daniela Barreiro Claro Serviços Web 1111 11

12 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições O que Computação em Nuvem NÃO É: Grid Computing Especifico na resolução de problemas pontuais. Podem dividir uma aplicação em pedaços e ser executados por milhares de computadores. Grid Computing X Computação em Nuvem GC: Grande projeto é dividido em multiplos computadores para fazer uso dos seus recursos CC: Permite que pequenas aplicações rodem ao mesmo tempo Virtualization Ë relevante pois é a maneira de se acessar cloud services. Daniela Barreiro Claro Serviços Web 1212 12

13 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições O que Computação em Nuvem NÃO É: Há a full virtualization e a paravirtualization Full Virtualization Compartilhamento de um sistema por vários usuários Isolamento entre os usuarios e entre o programa gerenciador Emulsão de hardware em outra máquina Paravirtualization Multiplos Sistemas operacionais executando em uma maquina ao mesmo tempo utilizando os recursos de maneira mais eficiente. Daniela Barreiro Claro Serviços Web 13 13

14 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições O que Computação em Nuvem NÃO É: full virtualization e a paravirtualization Daniela Barreiro Claro Serviços Web 14 14

15 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições Nuvem pode ser : Um grande grupo de computadores interligados Computadores pessoais ou servidores em rede Publicos ou privados Computação em Nuvem ultrapassa os limites da empresa Aplicações em uma nuvem estão disponiveis para um grande grupo de usuários, cross-enterprise e cross-plataforma Acesso à nuvem pela Internet Tecnologia para o usuário é transparente Daniela Barreiro Claro Serviços Web 1515 15

16 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições Perspectiva do Google, as propriedades da Cloud Computing é: User-centric Uma vez que um usuário esteja conectado na Cloud, ele tem acesso a tudo que está armazenado, como documentos, mensagens, imagens, aplicações, etc Task-centric Ao invés do foco estar na aplicação e no que ela faz; o focus está na tarefa que se precisa desenvolver e como a aplicação pode fazer isso; Planilhas, Processadores de texto estão cada vez menos importantes do que os documentos em si. Daniela Barreiro Claro Serviços Web 1616 16

17 Computação em Nuvem - Definições
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Definições As propriedades da Cloud Computing é (cont): Powerful Conexão de milhares de computadores em uma nuvem amplia o poder computacional Accessible Não limitado a uma única fonte de dados como um desktop Dados são armazenados em múltiplos repositórios Intelligent Muitos dados armazenados em computadores nas nuvens Mineração de dados e análise é necessário para o acesso a informação Programmable Automação das tarefas nas Nuvens Dados devem ser automatizados; replicados Daniela Barreiro Claro Serviços Web 1717 17

18 Computação em Nuvem - Aplicações
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Aplicações Aplicações mais populares em Nuvem Google Docs & spreadsheets Google Calendar Gmail Picasa Todas estas aplicações são acessíveis através de uma conexão Internet e podem ser usadas por grupos compartilhados em qualquer lugar no mundo. Assim, computação em nuvem permite uma mudança: Computador -> usuário Aplicação -> tarefa Dado isolado -> dado compartilhado Daniela Barreiro Claro Serviços Web 1818 18

19 Computação em Nuvem - Histórico
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Histórico Antecedentes em computação Cliente/Servidor , Peer-to-Peer e Computação Distribuída Aplicações e Armazenamento Centralizado O poder de processamento é limitado Usuários acessam o mainframe quando com permissões definidas Acesso nao é imediato e nem dois usuarios não podem acessar o mesmo dado no mesmo tempo Dados não podem ser modificados, somente se há permissão para tal, ou seja, não se pode customizar um relatório que já tenha sido pré-definido Modelo C/S difere de Nuvem visto que nao é user-centric Daniela Barreiro Claro Serviços Web 1919 19

20 Computação em Nuvem - Histórico
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Histórico Computação Peer-to-Peer Define uma arquitetura em rede onde cada computador tem capacidades e responsabilidades equivalentes Todos são clientes e servidores P2P é um conceito descentralizado. Controle é descentralizado e o conteudo é disperso em varios pontos (peer) entre computadores. Computação Distribuída Computador pessoal rodando 24/7 tem uma capacidade de processamento grande Porém, a maioria não usa o computador este tempo, então ele fica muito tempo ocioso Computação distribuída vem utilizar estes recursos ociosos. Daniela Barreiro Claro Serviços Web 2020 20

21 Computação em Nuvem - Histórico
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Histórico Computação Colaborativa Trabalhar no mesmo projeto de forma colaborativa Usuários podem compartilhar arquivos, video/audio, etc A maioria das atividades colaborativas sao desenvolvidas dentro da rede da empresa Computação em Nuvem é um grande ambiente colaborativo Usuários de muitas localizações distintas podem colaborar com projetos cross-companies e sem limites geográficos. Para isso os projetos devem ser hospedados em nuvem com acesso via Internet Daniela Barreiro Claro Serviços Web 2121 21

22 Computação em Nuvem - Funcionamento
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Funcionamento Segundo a SUN: “The network is the computer” “The Cloud is a collection of computers and servers that are publicly accessible via the Internet.” Qualquer aplicação ou serviço oferecido via uma nuvem é denominado cloud service A aplicação roda na nuvem via Internet tipicamente através de um Web browser A aplicação se comporta e opera como uma aplicação de desktop padrão. A principal diferença é que ambos a aplicação e o documento continuam localizados na nuvem. Daniela Barreiro Claro Serviços Web 2222 22

23 Computação em Nuvem – Prós e Contra
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem – Prós e Contra Vantagens Financeira Alto poder computacional com baixo custo; Varios computadores envolvidos Nao há gastos com licenças para softwares Melhoria do Desempenho Poucos programas rodando pois a maioria está em nuvem Pouco custo em infraestrutura Poder computacional nas nuvens Pouca necessidade de comprar equipamentos para lidar com os picos de grandes processamentos Daniela Barreiro Claro Serviços Web 2323 23

24 Computação em Nuvem – Prós e Contra
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem – Prós e Contra Vantagens Pouca manutenção Pouco hardware (poucos servidores), baixo custo de manutenção Baixo custo com software Economia na instalação de software nos desktops Atualização de software Usuários não se preocupam mais com software obsoleto ou ultra upgrades. Daniela Barreiro Claro Serviços Web 2424 24

25 Computação em Nuvem – Prós e Contra
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem – Prós e Contra Vantagens Aumento do poder computacional Nao há mais limite dentro de um desktop, mas o poder computacional é baseado na capacidade da nuvem Segurança dos dados Dados ficam nas nuvens; caso o computador falhe ou HD tenha problema, os dados estão salvos. Dados nas nuvens são duplicados Ampliação das compatibilidades entre SO distintos Nas nuvens não interessa o SO Pode compartilhar documentos independente de S.O. Daniela Barreiro Claro Serviços Web 2525 25

26 Computação em Nuvem – Prós e Contra
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem – Prós e Contra Vantagens Compatibilidade do formato dos documentos Não há incompatibilidades entre formatos quando todos compartilham documentos na nuvem Colaboração em Grupos Colaboração de documentos e projetos Acesso Universal aos documentos Não há mais documentos que serão esquecidos no escritório. Documentos estao nas nuvens Daniela Barreiro Claro Serviços Web 2626 26

27 Computação em Nuvem – Prós e Contra
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem – Prós e Contra Desvantagens Necessita de uma conexão à Internet constante Não funciona bem com conexões com baixa velocidade, tipo dial-up Mesmo em uma conexão rapida, aplicações web podem ficar lentas Tudo é enviado do computador e para o computador As aplicações web ainda não são full-features como o PowerPoint As informações básicas são similares; mas características específicas são ainda diferenciadas Dados armazenados podem não são seguros Quem garante que os dados guardados de forma confiáveis? Daniela Barreiro Claro Serviços Web 2727 27

28 Computação em Nuvem - Empresas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação em Nuvem - Empresas Grandes empresas estão envolvidas com a revolução da Computação em Nuvem Google Amazon Microsoft IBM HP, etc Daniela Barreiro Claro Serviços Web 2828 28

29 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Cloud Services Servicos nas Nuvens permitem que o negócio seja publicado e disponibilizado independente do host. Ideal para pequenas empresas, evitando custos excessivos. Desenvolvimento orientado a Cloud tem sido uma das mais promissoras formas de desenvolver aplicações Web Nuvem tem a característica de Elasticidade Onde pode expandir sem a necessidade de grandes investimentos em software e nem em hardware Daniela Barreiro Claro Serviços Web 2929 29

30 Cloud Services – Prós e Contra
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Cloud Services – Prós e Contra Vantagens para desenvolver orientado à nuvem Escalabilidade automática Economia com escalabilidade na incorporação de novos serviços Uma aplicação pode fazer uso de todos os recursos de uma Cloud Aplicações em Nuvem são “alugadas” Departamentos isolados de manutenção ou departamentos técnicos não são mais necessários Desvantagens A principal desvantagem é a segurança Muitos preferem manter seus dados, aplicações e operações técnicas sob controle interno na empresa Nuvem ficar offline Amazon Ec2 ficou por 8 horas em 2008 Daniela Barreiro Claro Serviços Web 3030 30

31 Tipos de Cloud Services
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Tipos de Cloud Services Há principalmente 3 as a Service atualmente IaaS – Infrastructure as a Service PaaS – Platform as a Service SaaS – Service as a Service Há também hardware HaaS – Hardware as a Service Ainda há Composições as a Service (CaaS) Permitem as composições de serviços Daniela Barreiro Claro Serviços Web 3131 31

32 Tipos de Cloud Services
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Tipos de Cloud Services Infrastructure as a Service Utilização de um servidor virtual e publica serviços neste ambiente Provê recurso computacional e os clientes podem executar os seus serviços dentro deste ambiente Principais Amazon Elastic Cloud Computing (EC2) GoGrid GoGrid foi uma das primeiras IaaS Daniela Barreiro Claro Serviços Web 3232 32

33 Tipos de Cloud Services
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Tipos de Cloud Services Platform as a Service É uma forma de construir aplicações e publicá-las na nuvem Constroi aplicações como pequenos pedaços (legos) Há várias plataformas RightScale Google Salesforce.com Daniela Barreiro Claro Serviços Web 3333 33

34 Tipos de Cloud Services
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Tipos de Cloud Services Service as a Service Ao invés de prover uma plataforma, já provê uma aplicação pronta para uso PaaS prove mecanismos para que desenvolver aplicacoes proprias SaaS já provê a aplicação em si Consumidores nao pagam pela propriedade do software, mas pelo seu uso Cada empresa é denominada de tenant e este tipo de organização é denominada multitenant architecture Visao Consumidor: SaaS não requer investimentos em servidores e nem em licença. Visao Desenvolvedor: Somente 1 aplicacao para dar manutenção Daniela Barreiro Claro Serviços Web 3434 34

35 Cloud e SOA 35 Computação em Nuvem e SOA Apresentação
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Cloud e SOA Daniela Barreiro Claro Serviços Web 3535 35

36 Computação Orientada a Serviços
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação Orientada a Serviços Computação Orientada a Serviços Evolução da Computação Distribuída Características da Orientação a Serviços Maior consistência na representação das funcionalidades de dados Menor dependência entre unidades de lógica (serviço) Menor preocupação com os detalhes de implementação Mais oportunidade de reutilizar a unidade de lógica para diversas aplicações Mais oportunidade de combinação de unidades de lógicas Maior capacidade de previsão comportamental Unidade de lógica é reduzida porque a mesma é compartilhada e reutilizada para automatizar diversos processos de negocios. Daniela Barreiro Claro Serviços Web 3636 36

37 Computação Orientada a Serviços
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação Orientada a Serviços Principais objetivos da Computação Orientada a Serviços Maior interoperabilidade Compartilhamento de dados Mais interoperáveis, mais facilmente trocarão informações Aplicações não interoperáveis precisam ser integradas Maior federação Recursos e aplicativos unidos mas mantém a autonomia individual Necessidade de padronização Serviços não pertencem a uma aplicação especifica Dissolve-se os limites dos aplicativos Daniela Barreiro Claro Serviços Web 3737 37

38 Computação Orientada a Serviços
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Computação Orientada a Serviços Principais objetivos da Computação Orientada a Serviços Diversificação de fornecedores Amplia possibilidade de inovações tecnológicas Opção de diversificação estimulada pela concorrência Maior agilidade organizacional Ser capaz de adaptar-se mais rapidamente a modificações do mercado Superar estrategicamente os concorrentes Depto de TI as vezes é um gargalo Daniela Barreiro Claro Serviços Web 38 38

39 SOA – Service Oriented Architecture
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução SOA – Service Oriented Architecture Modelo arquitetônico Objetivo Aprimorar a eficiência, a agilidade e a produtividade de uma empresa Elementos da SOA A lógica na SOA é implementada como serviços e composições de serviços Uma composição de serviços é composta por serviços montados a fim de fornecer as funcionalidades requeridas para automatizar uma tarefa Uma coleção de serviços padronizados pode formar a base para um repositório de serviços ou inventario de serviços Daniela Barreiro Claro Serviços Web 39 39

40 SOA – Service Oriented Architecture
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução SOA – Service Oriented Architecture Interoperabilidade nativa Federação Agilidade Organizacional Diversificação de fornecedor Menor carga de trabalho Principais objetivos da Orientação a Objetos Flexibilidade Reuso e produtividade Atendimento aos requisitos do negocio Extensibilidade Robustez Principais objetivos da Orientação a Serviços: herda os objetivos da OO e aumenta o seu escopo Daniela Barreiro Claro Serviços Web 40 40

41 SOA – Service Oriented Architecture
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução SOA – Service Oriented Architecture Orientação a Serviços X Orientação a Objetos Classe X Serviços Classes podem definir uma combinação de acesso publico e implementação privada Serviços expressam informações publicas Métodos e Atributos Serviços utilizam a nomenclatura de operação Não é recomendada a definição de atributos dentro de um serviço, devido a independência de estados Objeto Fatura getNumero() Serviço Fatura numero: int getNumero():int Daniela Barreiro Claro Serviços Web 41 41

42 Orientação a Serviços X Orientação a Objetos
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Orientação a Serviços X Orientação a Objetos Troca de Mensagens Serviços podem trocar msg síncronas ou assíncronas São estruturadas em XML Schema Interface Pode ser considerado um Serviço Ponto de entrada oficial para funcionalidades de serviços publicados; Abstrai detalhes do serviço Encapsulamento Pode ser visto como a abstração do serviço Herança Baixo acoplamento entre serviços, a herança é desestimulada na SOA Não ha relacionamentos “é-um” Daniela Barreiro Claro Serviços Web 42 42

43 Grandes Desafios da SOA
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Grandes Desafios da SOA Ênfase constante no reuso aumenta a complexidade do projeto do serviço Maior exigência de desempenho destes serviços Confiabilidade destes serviços Disponibilidade destes serviços Falhas Pontos únicos de falhas introduzido pelo reuso Criação do repositório de serviços Demandas excessivas ao repositório Otimização na utilização destes serviços etc Daniela Barreiro Claro Serviços Web 43 43

44 Web Services Implementação da SOA Atualmente... 44
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Implementação da SOA Web Services Atualmente... Daniela Barreiro Claro Serviços Web 44 44

45 O que é Web Services (Serviços Web)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução O que é Web Services (Serviços Web) “Self-contained, modular business applications, Internet oriented, standard-based interfaces” UDDI Consortium “A software application identified by a URI, whose interfaces and bindings are capable of being defined, described and discovered as XML artifacts” W3C Uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes. Wikipedia “Uma maneira de expor as funcionalidades de um sistema de informação e torná-las disponível através de tecnologias padronizadas da Web”Alonso et al.1 1.Alonso G., Casati F., Kuno H., Michiraju V. Web services: Concepts, Architectures and Applications, Springer, 2004. Daniela Barreiro Claro Serviços Web 45

46 O que NÃO é Web Service... Uma aplicação desktop, Java, Delphi, VB
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução O que NÃO é Web Service... Uma aplicação desktop, Java, Delphi, VB Um plugin do Eclipse nem de nenhuma outra IDE Uma aplicação Web Um funcionalidade na Web Uma página ASP, PHP e nem JSP Uma arquitetura CORBA Um EJB (Enterprise JavaBeans) Daniela Barreiro Claro Serviços Web 46

47 Vantagens dos Web Services
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Vantagens dos Web Services Arquitetura SOA (Service Oriented Architecture) Requisitando e chamando um serviço. Independente de aplicação Interoperabilidade Protocolos Soluções para ambientes distribuídos Simples e de fácil manipulação Padronização A padronização não é um benefício, é uma necessidade. Utilização da linguagem XML Daniela Barreiro Claro Serviços Web 47

48 Onde estão localizados os WS...
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Onde estão localizados os WS... Arquitetura n-tier Client Tier Web Tier Business Tier DataTier Web Server EJB Container Browser JSP, Servlets, XML,... EJB, JMS, JTA, JDBC, ... HTML, XML Web Services Web Services Daniela Barreiro Claro Serviços Web 48

49 Principais Tecnologias da SOA
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Principais Tecnologias da SOA Provedor do Serviço Solicitante do Serviço Repositorio do Serviço Publicar Ligar Localizar 1 3 2 Daniela Barreiro Claro Serviços Web 49 49

50 Principais Tecnologias
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Principais Tecnologias Linguagem de comunicação padrão XML – eXtended Markup Language Linguagem de descrição WSDL – Web Services Description Language Protocolo de Transporte SOAP – Simple Object Access Protocol Repositório de Interfaces – Dinâmico UDDI – Universal Description, Discovery and Integration Daniela Barreiro Claro Serviços Web 50

51 XML – eXtended Markup Language
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução XML – eXtended Markup Language As tecnologias básicas utilizam XML Descendente do SGML (Standard Generalized Markup Language) Possui vários níveis de flexibilidade Não há full-feature parser, um parser compatível com todas as funcionalidades. XML é um subconjunto da SGML É baseado em tags, como o HTML Toda tag de início deve ter uma tag de fim. Daniela Barreiro Claro Serviços Web 51

52 XML – eXtended Markup Language
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução XML – eXtended Markup Language <?xml version=“1.0” encoding=“UTF-8”> <Biblioteca> <Livro> <Titulo> SQL 3 – The Foundation </Titulo> <Autor> James Fortier </Autor> </Livro> CORBA - Fundamentals Jonh Currier </Biblioteca> Versão do XML usado no documento Elemento raiz do XML Nodos internos Daniela Barreiro Claro Serviços Web 52

53 SOAP – Simple Object Access Protocol
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução SOAP – Simple Object Access Protocol Muito simples Não contém muitas características de Sistemas Distribuídos Exemplo Não contém um Distributed Garbage Collector como o RMI que gerencia os objetos Se um cliente SOAP criar um objeto no servidor e este cliente desaparecer, o SOAP não informa o que deve ser feito. O SOAP Message utiliza XML Todos os tipos de dados devem ser codificados em XML Schema Daniela Barreiro Claro Serviços Web 53

54 SOAP – Simple Object Access Protocol
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução SOAP – Simple Object Access Protocol Client Program Client Program SOAP Document Layer SOAP Document Layer XML Document Layer XML Document Layer FIREWALL Character Document Layer Character Document Layer Internet layer (HTTP) Daniela Barreiro Claro Serviços Web 54

55 SOAP – Simple Object Access Protocol
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução SOAP – Simple Object Access Protocol SOAP Envelope SOAP Header - opcional SOAP Body SOAP Fault Daniela Barreiro Claro Serviços Web 55

56 WSDL – Web Service Description Language
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução WSDL – Web Service Description Language Não havia um padrão para acessar as descrições dos serviços Web Existiam soluções independentes Microsoft – SCL (SOAP Contract Language) IBM – NASSL (Network Accessible Service Specification Language) WSDL padronizou a descrição Representa a interface externa do serviço Web É equivalente à IDL do CORBA Contém a localização física do serviço Daniela Barreiro Claro Serviços Web 56

57 WSDL – Web Service Description Language
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução WSDL – Web Service Description Language <definition> </definition> <types> Tipos de Dados </types> <message> Descrição da mensagem </message> <portTypes> </portType> <operation>Assinatura </operation> <binding> Descrição do protocolo </binding> <service> </service> <port> Referência local serviço</port> Elemento raiz do WSDL Tipos dos dados trocados entre serviços Métodos Variáveis trocadas Onde a informação está localizada Contém o protocolo e o endereço do WS Local do serviço Daniela Barreiro Claro Serviços Web 57

58 UDDI – Universal Description, Discovery and Integration
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução UDDI – Universal Description, Discovery and Integration Foi criado por grandes empresas Ariba, IBM, Microsoft, Intel e SAP Criou-se uma comunidade para dar suporte e discutir as especificações, além de criar padrões UDDI.ORG (www.uddi.org) Necessidade de publicar o serviço que se está oferecendo e procurar outros serviços fornecidos por outras pessoas e que pode ser utilizado. É uma pesquisa dinâmica baseada no serviço Padrão OASIS, atualmente na sua versão 3.0 Daniela Barreiro Claro Serviços Web 58

59 UDDI – Universal Description, Discovery and Integration
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução UDDI – Universal Description, Discovery and Integration Estrutura do UDDI Info da empresa que publica o WS. Nome, end, contato Publisher Assertion Business Entity Business Service Binding Template tModel Informações de como interagir com o WS Descreve as relações entre duas empresas Descreve os tipos diferentes de WS oferecidos pela Empresa Informações técnicas sobre o WS Daniela Barreiro Claro Serviços Web 59

60 UDDI – Universal Description, Discovery and Integration
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução UDDI – Universal Description, Discovery and Integration SOAP e WSDL são padrões W3C UDDI é um padrão OASIS UDDI tem uma série de dificuldades Não provê descobertas semânticas Concentrado em empresas e não em domínios de aplicações Muito ambicioso para agrupar tudo em um único registro centralizado Daniela Barreiro Claro Serviços Web 60

61 UDDI – Universal Description, Discovery and Integration
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução UDDI – Universal Description, Discovery and Integration Novas opções para o registro de Web Services Vinculados a uma ontologia (semântica) Tratam de domínios específicos São internos a uma empresa ou publicados UDDI-S, OPS, ontology, etc ... muita coisa ainda está sendo discutida ... Daniela Barreiro Claro Serviços Web 61

62 Principais Tecnologias
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Apresentação Agenda Introdução Principais Tecnologias Empresa Cliente Repositório UDDI SOAP WSDL 1 3 2 Daniela Barreiro Claro Serviços Web 62

63 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é Web Semântica? Maneira de organizar, classificar e fazer inferências nos dados que estão disponíveis na Internet. Com a semântica, pode-se manipular informações via um agente, ou seja, uma máquina ou uma pessoa HTML é limitado a uma apresentação visual e processado diretamente por humanos Motores de busca atuais, se baseiam na busca sintática, não considerando o significado das informações. Daniela Barreiro Claro Serviços Web 63

64 Este é o principal objetivo da Web semântica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é Web Semântica? Uma maneira de permitir uma interpretação machine-to-machine é tornar os recursos da Web mais acessíveis Maneira que computadores possam entender Este é o principal objetivo da Web semântica “The semantic Web is not a separate Web but an extension of the current one, in which information is given well-defined meaning, better enabling computers and people to work in cooperation” Tim Berners-Lee and James Hendler Daniela Barreiro Claro Serviços Web 64

65 Exemplos de utilização da Web Semântica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL Exemplos de utilização da Web Semântica Atualmente, se procurarmos o preço de um produto na Internet: Utilizamos o Motor de busca através da palavra preço Os sites que utilizam a palavra custo não serão contemplados pelos motores de busca. Nem sites em XML resolvem o problema <preco> </preco> <custo> </custo> É simples para um ser humano verificar que são iguais; mas é impossível para uma máquina fazer esta associação Web Semântica propõe maior facilidade na recuperação da informação automática por programas e máquinas. Daniela Barreiro Claro Serviços Web 65

66 Arquitetura da Web Semântica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL Arquitetura da Web Semântica Fonte: Berners-Lee T., Hendler J. et al.The Semantic Web. Scientific Ameriican, May, 2001. Daniela Barreiro Claro Serviços Web 66

67 O que é uma ontologia? Palavra grega: McGuinness (2004)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Palavra grega: Ontos (ser) e logia (estudo) “Estudo do ser enquanto um ser” Primeira estrutura de classificação Árvore de Porphyres, proposta por Aristóteles McGuinness (2004) “documento onde as aplicações podem compreender o seu conteúdo” É uma das formas de representação do conhecimento utilizada na Web Semântica Daniela Barreiro Claro Serviços Web 67

68 Através de uma ontologia é possível:
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Através de uma ontologia é possível: Inferir em bases de conhecimento Ter um raciocínio dedutível Classificar automaticamente conceitos Buscar informações Garantir a interoperabilidade entre vários sistemas Composta principalmente por: Conceitos, relações, axiomas e indivíduos Daniela Barreiro Claro Serviços Web 68

69 Inclui também as regras e os axiomas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Conceitos Princípios, idéias, categorias de objetos Relações Relacionamento entre conceitos Incluem geralmente uma organização hierárquica de conceitos e de relações que existem entre estes conceitos. Inclui também as regras e os axiomas Daniela Barreiro Claro Serviços Web 69

70 Uma ontologia tem a intenção de:
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Uma ontologia tem a intenção de: Organizar, estruturar e restringir para representar os conceitos do mundo Exemplo Carro é forçadamente um Veículo Mas nem todo veículo é um carro Normalmente, se organiza uma ontologia em uma taxonomia ou hierarquia de conceitos Porque a categorização de conceitos é uma inferência elementar no dia-a-dia Daniela Barreiro Claro Serviços Web 70

71 ─ Você conhece um restaurante aqui perto?
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Segue o diálogo ─ Você conhece um restaurante aqui perto? ─ Tem uma pizzaria na esquina Primeiro, generaliza-se (restaurante) E logo em seguida se categoriza: Pizzaria é um restaurante Assim, em um sistema de informática, um simples conhecimento de hierarquização já melhora consideravelmente a capacidade das máquinas. Daniela Barreiro Claro Serviços Web 71

72 Ontologia X Taxonomias
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Ontologia X Taxonomias O conhecimento ontológico ultrapassa o conhecimento taxonômico Pode-se encontrar em uma ontologia: Composições, como categorias (categoria de elementos químicos, categorias anatômicas) Definições completas: condição necessária e suficiente Uma pessoa é um diretor si e somente si existe uma organização que é dirigida por esta pessoa. Restrições de integridade Um livro é editado a um e somente um ISBN; um pai não pode ser mais jovem que seus filhos Daniela Barreiro Claro Serviços Web 72

73 Ontologia X Taxonomias
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Ontologia X Taxonomias Pode-se encontrar em uma ontologia: Funções de cálculo Ritmo cardíaco aconselhado por uma pessoa fazendo um esforço cardio-vascular é (220-idade)*0.65 Propriedades algébricas A relação <é casado com > é simétrica Conhecimento default Por default, um carro tem quatro rodas Relações inversas <faz parte de> e <contém>: porta faz parte de um carro, e um carro contém uma porta Daniela Barreiro Claro Serviços Web 73

74 Inicialmente, dois grupos trabalharam com ontologias separadamente
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Inicialmente, dois grupos trabalharam com ontologias separadamente OIL (Ontology Inference Layer) Grupo europeu É uma evolução do RDF e RDF-S Descreve as classes utilizando frames e uma lista de slots (propriedades) Mais fácil fazer inferências DAML (DARPA Agent Markup Language) Grupo dos Estados Unidos Extensão do RDF Daniela Barreiro Claro Serviços Web 74

75 Unindo forças, os dois grupos deram origem OWL (Web Ontology Language)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL O que é uma ontologia? Unindo forças, os dois grupos deram origem DAML+OIL = OWL OWL (Web Ontology Language) Mais atributos e características e também facilitar a pesquisa automática Deve ser interpretado por máquinas Faz parte das recomendações W3C Permite escrever as classes, as relações aumentando assim o vocabulário e as propriedades em relação à RDF. Daniela Barreiro Claro Serviços Web 75

76 Partes de uma OWL OWL Os elementos da OWL
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conceitos Básicos Arquitetura Ontologias OWL Partes de uma OWL OWL Dividida em três sublinguagens OWL-Lite, OWL-DL, OWL-Full Cada uma das sublinguagens é uma extensão da anterior. Os elementos da OWL A maioria são classes, propriedades, instâncias de classes e relações Daniela Barreiro Claro Serviços Web 76

77 Web Semântica e os Web Services
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL Web Semântica e os Web Services SWS (Semantic Web Services) Propõem características semânticas aos WS As três principais linguagens semânticas OWL-S (Ontology Web Language for Services) Mais próximo do OWL está a OWL-S WSMO Web Service Modelling Ontology SAWSDL Semantic Annotations for WSDL Daniela Barreiro Claro Serviços Web 77

78 OWL-S (Web Ontology Language for Services)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S (Web Ontology Language for Services) Deriva da OWL e se baseia na WSDL Utiliza a WSDL como comunicação entre os Web services Possui a possibilidade de descrever o processo de composição de serviços Constituída por três ontologias: Profile Model Grounding Daniela Barreiro Claro Serviços Web 78

79 OWL-S (Web Ontology Language for Services)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S (Web Ontology Language for Services) Daniela Barreiro Claro Serviços Web 79 79

80 OWL-S (Web Ontology Language for Services)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S (Web Ontology Language for Services) De um modo geral, as ontologias representam respectivamente: Ontologia Profile Descreve os serviços oferecidos por um provedor e que vão ser solicitados por um cliente. Ontologia Model Representa o comportamento de um serviço Ontologia Grounding Representa o acesso ao serviço publicado Daniela Barreiro Claro Serviços Web 80

81 OWL-S (Web Ontology Language for Services)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S (Web Ontology Language for Services) Profile Pode ser separado em três categorias: a organização que fornece o serviço; a função calculada pelo serviço; as características de um serviço É no profile que se define o IOPE Daniela Barreiro Claro Serviços Web 81

82 OWL-S (Web Ontology Language for Services)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S (Web Ontology Language for Services) Model Esta ontologia contém uma classe PROCESS que determina a utilização de um serviço como um processo Determina os IOPE Tipos de processo existem em três categorias: Atomic, Single e Composite Controles de construção Sequence, split (paralelo), etc Daniela Barreiro Claro Serviços Web 82

83 OWL-S (Web Ontology Language for Services)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S (Web Ontology Language for Services) Grounding Esta ontologia permite acessar efetivamente o serviço concreto Tem que haver uma combinação entre o grounding e o WSDL Daniela Barreiro Claro Serviços Web 83

84 WSMO (Web Services Modelling Ontology)1
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL WSMO (Web Services Modelling Ontology)1 Framework para SWS Consiste de 4 conceitos fundamentais: Ontologies Goals Web Services Mediators 1.http://www.wsmo.org/ Daniela Barreiro Claro Serviços Web 84

85 WSMO (Web Services Modelling Ontology)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL WSMO (Web Services Modelling Ontology) Ontologies No WSMO, os conceitos básicos são: conceitos, relações, funções, instâncias e axiomas Ontologias servem para definir o domínio de aplicação Exemplo de um conceito WSMO simplificado: concept bank_account accountNumber ofType validAccountNumber owner ofType customer overLimit ofType currency Daniela Barreiro Claro Serviços Web 85

86 WSMO (Web Services Modelling Ontology)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL WSMO (Web Services Modelling Ontology) Goals Uma requisição utiliza Goals para representar o tipo de serviço que se está procurando. O que o serviço oferece, a tarefa que ele desempenha. São descritos utilizando uma ontologia Habilidade de modelar os Goals e os Web Services permite separar conceitualmente os requisitantes dos provedores do serviço. WSMO tem a responsabilidade de fazer as correspondências (matching) entre o serviço requisitado e a descrição do serviço. Daniela Barreiro Claro Serviços Web 86

87 WSMO (Web Services Modelling Ontology)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL WSMO (Web Services Modelling Ontology) Web Services No WSMO, o conceito de Web service não está diretamente relacionado à WSDL, SOAP e UDDI É uma descrição formal que permite o processamento automático dos Web services. Aspectos funcionais são descritos no Capability Aspectos comportamentais são descritos na Interface do serviço que contém: Choreography Orchestration O Capability contém IOPE Daniela Barreiro Claro Serviços Web 87

88 WSMO (Web Services Modelling Ontology)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL WSMO (Web Services Modelling Ontology) Mediators Sistemas flexíveis que lidam com problemas de heterogeneidade que normalmente ocorrem entre ontologies, goals e Web services. Em WSMO há 4 classes de mediators: ooMediators – ontology-to-ontology ggMediators – goal-to-goal wgMediators – web service-to-goal wwMediators – web service-to-web service Daniela Barreiro Claro Serviços Web 88

89 SAWSDL (Semantic Annotations for WSDL)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL SAWSDL (Semantic Annotations for WSDL) W3C Recommendation August/2007 Define como adicionar anotações semânticas em várias partes do documento WSDL Nas mensagens de input e output, interfaces e operações Define mecanismos para mapear os tipos XML Schemas para uma ontologia Mecanismo de anotação é independente da linguagem utilizada na ontologia Daniela Barreiro Claro Serviços Web 89

90 SAWSDL (Semantic Annotations for WSDL)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL SAWSDL (Semantic Annotations for WSDL) Semantic Annotations são atributos XML adicionados a um WSDL. modelReference Associa um componente WSDL ou XML Schema com um conceito em um modelo semântico liftingSchemaMapping e loweringSchemaMapping Mapeamentos entre dados semânticos e XML Lifting – from XML to semantic data Lowering – from semantic data to XML Daniela Barreiro Claro Serviços Web 90

91 OWL-S x WSMO x SAWSDL Relação entre as linguagens OWL e WSML 91
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S x WSMO x SAWSDL Relação entre as linguagens OWL e WSML Oliveira, D., Menegazzo C., Claro D.B. In IADIS CIAWI 2009 Daniela Barreiro Claro Serviços Web 91 91

92 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S x WSMO x SAWSDL Objetivos dos elementos das linguagens de descrição semântica Objetivos OWL-S WSMO SAWSDL O que faz Profile Ontologias Modelo de Referência Metas Como trabalha Process Mediadores Mapeamento de Schemas Serviços Web Como acessá-lo Grounding WSDL Oliveira, D., Menegazzo C., Claro D.B. In IADIS CIAWI 2009 Daniela Barreiro Claro Serviços Web 92 92

93 OWL-S x WSMO x SAWSDL Analise das linguagens semânticas OWL-S WSMO
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S x WSMO x SAWSDL Analise das linguagens semânticas OWL-S WSMO SAWSDL IOPE Process/ Profile Serviço Web/ Goals Inputs/ Outputs/ Modelos de referência DESCOBERTA Profile Goals/ Elementos não funcionais Modelos de referência COMPOSIÇÃO Process Coreografia/ Orquestração Não utiliza elementos da linguagem MEDIAÇÃO DE DADOS Não há um elemento para especificar este critério, porém há controle dos dados. Mediadores Lifting/Lowering Schema Mapping INVOCAÇÃO Grounding WSMO Oliveira, D., Menegazzo C., Claro D.B. In IADIS CIAWI 2009 Daniela Barreiro Claro Serviços Web 93 93

94 OWL-S x WSMO x SAWSDL Relação entre as linguagens semânticas 94
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Introdução OWL-S WSMO SAWSDL OWL-S x WSMO x SAWSDL Relação entre as linguagens semânticas Oliveira, D., Menegazzo C., Claro D.B. In IADIS CIAWI 2009 Daniela Barreiro Claro Serviços Web 94 94

95 Composição de Serviços Web
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Composição de Serviços Web O que é? Para que serve? Como funciona? Qual tecnologia utiliza? Daniela Barreiro Claro Serviços Web 95

96 É a combinação de serviços Web a fim de atender a uma solicitação
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias O que é uma composição? É a combinação de serviços Web a fim de atender a uma solicitação Um serviço Web é composto por outros serviços Web, formando assim um serviço Web composto Daniela Barreiro Claro Serviços Web 96

97 Serviço Web pode ser composto de serviços atômicos e compostos
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Tipos de serviços Serviço Atômico É um serviço que só contém uma funcionalidade Serviço composto Contém varias funcionalidades Serviço Web pode ser composto de serviços atômicos e compostos Daniela Barreiro Claro Serviços Web 97

98 Para que serve? Problema
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Para que serve? Problema Suponha que deseja comprar o livro Semantic Web Services mais barato pela Internet O que você faz? Pesquisa os preços nos sites da livraria Saraiva, Civilização e SBS Compra o livro na SBS pois foi o mais barato e manda entregar em casa Daniela Barreiro Claro Serviços Web 98

99 Você acabou de utilizar uma composição de serviços manual
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Para que serve? Você acabou de utilizar uma composição de serviços manual compraLivro SBS Correio SEDEX Saraiva pesquisaPreço Cliente Civilização entregaProduto Daniela Barreiro Claro Serviços Web 99

100 Exemplo classico de Composição
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Exemplo classico de Composição Daniela Barreiro Claro Serviços Web 100 100

101 Porém esta integração de serviços não é feita de maneira física
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Para que serve? Em uma composição você pode agregar complexidade a sua composição, agregando novos serviços. Porém esta integração de serviços não é feita de maneira física WS não são bibliotecas que devem ser compiladas e integradas na aplicação Web services são interfaces que podem ser invocadas. Daniela Barreiro Claro Serviços Web 101

102 Exemplos de linguagens para composição
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Como funciona? Composições de serviços podem ser descritas através de linguagens de composições Exemplos de linguagens para composição WS-BPEL, OWL-S, WSMO, SAWSDL Estas linguagens possuem o modelo de como a composição dos serviços deve ser feita Seqüencial, paralela, etc Daniela Barreiro Claro Serviços Web 102

103 Problemas de composição
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Problemas de composição Pode dividir a composição em dois principais problemas: Orquestração (orchestration) Controla os serviços envolvidos na composição Coreografia (choreography) Controla a maneira como estes serviços são interligados na composição Daniela Barreiro Claro Serviços Web 103

104 Problemas de composição
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Problemas de composição Orchestration Pode ser uma orquestração automática AI Planning muito utilizada Redes de Petri, statecharts Manual Composição estática de serviços Choreography Trata dos matching problems na comunicação de serviços dentro de uma composição Algoritmos semânticos Problemas de Descoberta e Seleção Daniela Barreiro Claro Serviços Web 104

105 Composições não-semânticas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Composições não-semânticas WS-BPEL Web Services Business Process Execution Language Define papéis utilizando a noção de processos abstratos Determina a seqüência de interação dos serviços Web Gerencia falhas e compensações nos serviços caso ocorra uma falha no processo Define atividades que podem ser: <invoke>, <reply>, <receive>, <assign>, etc Daniela Barreiro Claro Serviços Web 105

106 Composições semânticas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Composições semânticas OWL-S Permite uma composição automática dos serviços WSMO Ainda não muito desenvolvido Começando a utilizar Abstract State Machine SAWSDL Orchestration ainda ignorado pelo SAWSDL. Daniela Barreiro Claro Serviços Web 106

107 Estas linguagens possuem seus “engines”
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Engines de execução Estas linguagens possuem seus “engines” Run-time environment (ambiente de execução) que executa a lógica de negócio da composição invocando os serviços OWLSAPI, ActiveBPEL, BPEL4J, Apache ODE... Composições de serviços têm muitas semelhanças com workflow Daniela Barreiro Claro Serviços Web 107

108 Frameworks Linguagens para descrever composições de serviços
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Definição Características Linguagens Tecnologias Frameworks Linguagens para descrever composições de serviços OWL-S, WS-BPEL, SAWSDL, WSMO Engines para executar a composição (invocar serviços) OWLS API, ActiveBPEL, BPEL4J, Apache ODE Diversos frameworks estão sendo propostos para compor serviços Web SPOC – Semantic-based Planning Optimized Framework SAREK – Versão confiável de SPOC METEOR-S IRS-III OWL-S Composer Daniela Barreiro Claro Serviços Web 108

109 Fases de uma composição
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Fases de uma composição Descoberta Composição Execução Monitoração Descoberta Composição Execução Monitoração Daniela Barreiro Claro Serviços Web 109 109

110 Análise de Similaridade Semântica Clássica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Análise de Similaridade Semântica Clássica É realizada através dos elementos de uma ontologia Estes elementos são analisados de acordo com a sua posiçao na hierarquia Daniela Barreiro Claro Serviços Web 110 110

111 Análise de Similaridade Semântica Clássica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Análise de Similaridade Semântica Clássica O que é mais similar a um virus? plant bacteria Análise baseada na distância distancia(A,B): Número mínimo de nodos separando A e B Daniela Barreiro Claro Serviços Web 111 111

112 Análise de Similaridade Semântica Clássica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Análise de Similaridade Semântica Clássica O que é mais similar a um virus? plant bacteria Daniela Barreiro Claro Serviços Web 112 112

113 Análise de Similaridade Semântica Clássica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Análise de Similaridade Semântica Clássica O que é mais similar ao tobacco mosaic virus? variola major virus plant Daniela Barreiro Claro Serviços Web 113 113

114 Análise de Similaridade Semântica Clássica
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Análise de Similaridade Semântica Clássica O que é mais similar ao tobacco mosaic virus? variola major virus plant (?) Daniela Barreiro Claro Serviços Web 114 114

115 Fases de uma composição
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Fases de uma composição Descoberta Semântica (OWL-S Discovery) Amorim, R; Claro D.B. et al Daniela Barreiro Claro Serviços Web 115 115

116 Fases de uma composição
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Fases de uma composição Descoberta Semântica (OWL-S Discovery) Amorim, R; Claro D.B. et al Daniela Barreiro Claro Serviços Web 116 116

117 Descoberta Semântica (OWL-S Discovery)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Descoberta Semântica (OWL-S Discovery) Filtros Semânticos Exact > Plug-In > Subsumes > Sibling > Fail Amorim, R; Claro D.B. et al Daniela Barreiro Claro Serviços Web Daniela Barreiro Claro Serviços Web Semânticos 117 117

118 Composição Semântica (OWL-S Composer 2.0)
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Composição Semântica (OWL-S Composer 2.0) Busca por cada serviço através do OWL-S Discovery Lista de serviços ordenados pelo grau de similaridade Os serviços são combinados em novas composições O grau de similaridade da composição é o menor dos graus dos serviços Sena, V., Claro D.B. 2009 Daniela Barreiro Claro Serviços Web 118 118

119 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer Execução Uma API deve ser utilizada para executar a composição semântica do serviço OWL-S Composer 2.0 Daniela Barreiro Claro Serviços Web 119 119

120 OWL-S Composer 2.0 Objetivos
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 2.0 Objetivos Compor serviços Web manualmente utilizando elementos da linguagem OWL-S. (+ Compreensibilidade, + Usabilidade)‏ Gerar o código OWL-S referente à composição. (+ Produtividade)‏ Ser um plugin da plataforma Eclipse, integrado ao plugin Web Tools Platform (WTP). Daniela Barreiro Claro Serviços Web 120 120

121 OWL-S Composer 2.0 121 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 2.0 Sena, V. 2008 Daniela Barreiro Claro Serviços Web 121 121

122 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 2.0 EMF (Eclipse Modeling Framework Project) [EMF, 2009] Abordagem de desenvolvimento MDA. Visa gerar ferramentas e outras aplicações baseadas em modelos de classes simples. Metamodelos podem ser descritos através de documento XML, código Java ou documento Ecore. GEF (Graphical Editing Framework) [GEF, 2009] GMF (Graphical Modeling Framework) [GMF, 2009] JET (Java Emitter Templates) [JET, 2009] JAX-SA [BABIK, 2008] OWL-S API [MINDSWAP, 2007] OWL-S Discovery [Amorim, 2009] Sena, V. 2008 Daniela Barreiro Claro Serviços Web 122 122

123 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 2.0 Requisitos mínimos para uma ferramenta de composição de serviços semânticos: Funcionalidade - suportar todo o ciclo de vida de um serviço web; Interface - interface simples e funcional; Usabilidade - acessar todas as funcionalidades de forma intuitiva; Integração - integração com o ambiente de desenvolvimento; Corretude - código OWL-S legível e correto; Grau de similaridade - opções quanto ao grau de similaridade. Sena, V. 2008 Daniela Barreiro Claro Serviços Web 123 123

124 OWL-S Composer 2.0 124 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 2.0 Daniela Barreiro Claro Serviços Web 124 124

125 Monitoramento deve detectar problemas na execução de serviços Web
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 3.0 Monitoramento Monitoramento deve detectar problemas na execução de serviços Web Falha na execução, um novo serviço semanticamente similar deve ser descoberto Sena, V. 2008 Daniela Barreiro Claro Serviços Web 125 125

126 OWL-S Composer 3.0 126 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 3.0 Sena, V. 2008 Daniela Barreiro Claro Serviços Web 126 126

127 Inclusão de composição com serviços em nuvem
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 4.0 Inclusão de composição com serviços em nuvem Sena, V. 2008 Daniela Barreiro Claro Serviços Web 127 127

128 Aspectos Temporais e validacao formal
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Descoberta Composição Execução e Monitoração OWL-S Composer OWL-S Composer 5.0 Aspectos Temporais e validacao formal Sena, V. 2008 Daniela Barreiro Claro Serviços Web 128 128

129 Quais são as tendências e os desafios...
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Quais são as tendências e os desafios... Composições Autonômicas Análise da Computação Autonômica Jacob et al., 2004 Daniela Barreiro Claro Serviços Web 129

130 Composições Autonômicas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Composições Autonômicas 4 atributos: self-* Self-configuring : adaptar-se às mudanças no ambiente. Manter os objetivos estabelecidos em políticas de alto nível. Por exemplo, quando um novo componente é inserido no sistema, os outros componentes existentes necessitam serem alterados para a adaptação desse novo estado. Self-healing: recuperar-se de erros detectados. Detecta, diagnostica e realiza a reparação de problemas originados de defeitos em hardware e software Self-optimazing: melhorias no uso de recursos do sistema. Ajuste de parâmetros; desempenho seja otimizado. Monitorar, experimentar e ajustar parâmetros de modo a otimizar o comportamento do sistema Self-protecting: detecção de intrusos, no intuito de prever invasões e saná-las. Daniela Barreiro Claro Serviços Web 130 130

131 Composições Autonômicas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Composições Autonômicas Self-healing nas composições semânticas Monitoração Diagnostico Recuperação Ferreira, M., Claro D.B. 2010 Daniela Barreiro Claro Serviços Web 131 131

132 Confiabilidade nas Composições Semânticas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios O que ainda falta... Confiabilidade nas Composições Semânticas Verificação e Validação das composições semânticas Segurança nos Serviços Web Semânticos Serviços Web stateful Análise de desempenho Auto-* para as composições Meta serviços semânticos Daniela Barreiro Claro Serviços Web 132 132

133 Comercializar e socializar cada vez mais os Serviços Web Semânticos
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios ...e principalmente Comercializar e socializar cada vez mais os Serviços Web Semânticos Daniela Barreiro Claro Serviços Web 133

134 Conclusão Overview Computação em Nuvem SOA Tecnologias Básicas
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conclusão Equipe Conclusão Overview Computação em Nuvem SOA Tecnologias Básicas Web semântica Serviços Web Semânticos Composição Semântica Ciclo de Vida Grandes Desafios Daniela Barreiro Claro Serviços Web 134

135 Conclusão Serviços cada vez mais sendo utilizados Conclusão
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conclusão Equipe Conclusão Serviços cada vez mais sendo utilizados Daniela Barreiro Claro Serviços Web 135

136 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conclusão Equipe Conclusão Hoje, ainda há uma grande necessidade de tecnologias adicionais para estes Cloud Services como: Segurança Transações Confiabilidade Validação e Verificação Qualidade de Serviço Estes mecanismos existem nos ambientes de computação distribuída e precisam ser incorporados na Cloud+SOA Daniela Barreiro Claro Serviços Web 136

137 Quais os principais rumos
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conclusão Equipe Conclusão Quais os principais rumos Novo paradigma ??? Cloud services, data services, etc??? Light services x Heavy services Linked Data -> linked service E a Web 3.0??? E o que mais... ...a história continua! Daniela Barreiro Claro Serviços Web 137

138 Computação em Nuvem e SOA
Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Conclusão Equipe Pessoas envolvidas... Fabricio Alves – OWLS-Composer 4.0 +Computação em Nuvem Efraim Machado – OWLS-Discovery 3.0 – Aspectos Temporais Anderson Carvalho – Simulador de Composições Lorena Erdens– OWL-S Discovery+Precondição e Efeitos Rodrigo Amorim – OWL-S Discovery Manuele Ferreira – Self-healing nas Composições Semânticas Manuele Ferreira – OWL-S Composer 3.0 Vanessa Aline Sena – OWL-S Composer 2.0 Roberto Figueiredo – Self-* nas Composições Semânticas Douglas Oliveira e Cinara Menegazzo – Comparativo de Ling Semânticas Késia Vieira e Cinara Menegazzo – Modelo Formal p/ SAWSDL André Amorim – OWL-S Composer 1.0 Igor Nogueira – Replicação Passiva no Axis 2 - WS Stateful Marcelo Luz – Replicação Ativa no Axis 2 - WS Stateful Daniela Barreiro Claro Serviços Web 138 138

139 Profª. Daniela Barreiro Claro dclaro@ufba.br
Computação em Nuvem e SOA Serviços Web e Web Semântica Composições Semânticas e Ciclos de Vida Grandes Desafios Muito obrigada! Profª. Daniela Barreiro Claro Fabricio de Oliveira Alves FORMAS/LaSiD/DCC/UFBA Daniela Barreiro Claro Serviços Web 139


Carregar ppt "Serviços Web e a Computação em Nuvem: Definições e Desafios"

Apresentações semelhantes


Anúncios Google