Upload
fabio-leal
View
10.456
Download
0
Embed Size (px)
DESCRIPTION
Slides apresentando os principais conceitos conceitos e tecnologias sobre Web Services.
Citation preview
Agenda
• Introdução
• Principais Tecnologias
• Exemplo de Aplicação
• Composição de Web Services
2
• Composição de Web Services
• Semantic Web Services
• Conclusão
• Referências
Introdução
3
Introdução
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Contexto
• Na época do “Boom” da Web, vários processosmanuais passaram a ser realizados online.
• Fazia-se necessária a criação de um arcabouço
4
• Fazia-se necessária a criação de um arcabouçode ferramentas que automatizasse processos.
• Tais ferramentas precisavam ser interoperáveise escaláveis para promover o reuso dos sistemasjá utilizados remotamente.
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web ServicesSemantic Web Services Conclusão Referências
Contexto
• Algumas possíveis antecessoras dos Web Services:CORBA, DCOM, URPC, RMI.
• Essas tecnologias ainda existem hoje,mas o formatoXML, da W3C se mantém líder nos Web Services.
5Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
XML, da W3C se mantém líder nos Web Services.
• “ It was XML's invention that really paved the way for Web
services. As a widely heralded, platform-independent standard
for data description that could also be used to describe message-
passing protocols, XML was a logical choice for the job of
standardized application-to-application communication.” (JasonLevitt)
O que é um Web Service?
• “A Web Service is a piece of business logic, located somewhere on the
internet, that is accessible through standard-based Internet protocols,
such as HTTP or SMTP. Using a web service could be as simple as
logging into a site or as complex as facilitating a multiorganization
business negotiation.”
(David Chappel, Java Web Services)
6Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
• Padrões fechados não são aceitos como soluções para um Web Service.
Características de um WebService
• XML-Based: Evita que protocolos fechados prejudiquem ainteroperabilidade do Web Service.
• Baixo acoplamento: O Web Service pode mudar sem que
7Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
• Baixo acoplamento: O Web Service pode mudar sem queseus clientes mudem suas aplicações.
• Síncrono/Assíncrono: Web Services devem disponibilizaros dois tipos de transmissão, para que suas aplicaçõespossam escolher qual o melhor para as mesmas.
Características de um Web Service
• Suporte a chamadas RPC: Web Services devem suportarchamadas remotas de procedimentos, funções e métodos.
• Suporte a diferentes tipos de documentos: Como sãobaseados em XML, Web Services devem ser flexíveis
8Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
baseados em XML, Web Services devem ser flexíveisquanto aos tipos de documentos que manipulam.
Principais Tecnologias
9
Principais Tecnologias
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Principais Tecnologias
• SOAP: Estrutura de empacotamento padrãopara transportardocumentos XML através de protocolos de Internet (HTTP, SMTP,FTP).
• WSDL: Tecnologiaquepadronizaa descriçãoda interfacede um web
10
• WSDL: Tecnologiaquepadronizaa descriçãoda interfacede um webservice. Descreve propriedades comoparâmetros de entrada/saídapara umachamada externa, estrutura de uma funçãoe o protocoloque é utilizado no mesmo.
• UDDI: Repositóriomundial de Web Services. Útil para publicar e/oudescobrir serviços que já foram criados e utilizar os já existentes.
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Principais Tecnologias
11Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Imagem 1 -Funcionamento Básico de um Web Service
SOAP – Simple Object Access
Protocol
• Protocolo para trocar informações pela
em um ambiente distribuído.
• Codificação de objetos para transporte
pela rede, criando um “envelope”.
12
• De simples implementação.
• Defasado em relação à sua segurança
e confiabilidade.
• Mais “simples” que seus antecessores.
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
HTTP SMTP
MIME
SOAP – Simple Object Access
Protocol
Configurações
13Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Envelope
WSDL – Web Services Description
Language
• Descreve a interface paraalguém que utilizará oserviço:
• Operações (input e output);
14
• Operações (input e output);
• Acesso (Protocolo decomunicação);
• Endpoint (Localização doserviço);
• XML-Based;
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
UDDI – Universal Description,
Discovery and Integration.
• Protocolo avançado para publicação edescoberta de Web Services.
• Padrão proposto pela fundação OASIS,que é formada por empresas como aMicrosoft, IBM e Sun e visa apadronização de alguns elementos da
15Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Web.
• Conceito de “Páginas Amarelas”,similar às de listas telefônicas.
• Define Registros para Web Services:
• Provedor.
• Informações do serviço.
• Acesso técnico.
Exemplo de Aplicação
16
Exemplo de Aplicação
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Portal Business-to-Consumer (B2C)
• Empresa que lida com passagens de vendas aéreas.
• Novas parcerias com outras empresas vão surgindo.
17Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
• Não poderíamos oferecer serviços de locação de carrosaos compradores de passagens aéreas em nosso própriosite? O sistema é “flexível” o bastante?
• Novas parcerias podem surgir.
• Solução: Web Service!
Indústria de Saúde
• Um médico com um Smartphone ou Handheld poderiaacessar seus históricos de saúde, assim como os de seusfamiliares.
• Prescrições eletrônicas tornariam-se possíveis, epoderiam ser enviados para a farmácia da qual você é
18Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
poderiam ser enviados para a farmácia da qual você écliente.
• Classe de medicamentos utilizada pelo paciente tambémdisponível (genéricos, marcas preferidas, alergias).
• Padronização no envio das prescrições seria possível viaWeb Service.
Amazon.com
• Infraestrutura de T.I como Web Service.
• Terceirização da rede de uma empresa.
• Pay as-you-go.
• Computação altamente escalável.
• Simple Storage Service (3S).
19Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
• Simple Storage Service (3S).
Exemplo de Aplicação
• Existem sites que armazenam pequenos Web Services.
• Aplicações pequenas, tais como enviar SMS’s ou ummapeamento de IP ao seu país.
20Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
www.xmethods.com
Web Services + NetBeans“Hello, World!”
Hands-On!!!
21Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Hands-On!!!
Composição de Web
Services
22
Services
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Problemas em Web Services
• Apesar de ser uma boa ferramenta a ser utilizada, os Webservices ainda têm problemas:
o As descrições dos serviços são realizadasmanualmente.
o Todas as tarefas associadas a esses ligação desses
23Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
o Todas as tarefas associadas a esses ligação dessesserviços têm que ser desempenhadas por humanos.
o Lentidão.
o Escalabilidade?!
“Utopia” de Web Services
• Interação dinâmica em uma comunidade de negóciosaberta é vista como o “Santo Graal” dos Web Services.
• Clientes automatizados fariam o browsing de registrosUDDI, descobririam os serviços adequados, como interagir
24Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
UDDI, descobririam os serviços adequados, como interagircom os serviços e, finalmente, invocariam os serviços,tudo automaticamente.
• No entanto... UDDI não é tão utilizado atualmente, e ficadifícil chegar a esse estado.
Composição de Web Services• Agregação de Web Services.
• Amplamente utilizado em Service Oriented Architecture.
25Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services & Semantic Web Services Conclusão Referências
• Composição, de início, manual.
• Reunir diversos serviços pequenos pode ser mais viáveldo que construir um grande que resolva tudo.
• Reuso de Código.
Semantic Web Services
26Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Um pouco de Semantic Web
• Integração de dados!
• Tornar dados independentes de sua representação.
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
• Fazer união dos resultados obtidos, unindo-os em umasó base de dados.
• Fazer pesquisas no “todo” ao invés de pesquisar empartes (datasets) separadas.
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database A
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database A - Grafo
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database F
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database F - Grafo
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database A + F – Grafo Desconexo
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database A + F – Merge Possível
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database A + F – Merge (de ID) realizado
Exemplo
• Consultas agora podem ser realizadas tanto como:
• “Give me the title of the original”
• “Donnes-moi le titre de l’original ”
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
• A informação, apesar de não constar na base de dadosutilizada pelo usuário, pode ser obtida através de junções.
• No entanto, mais informações podem ser obtidas com asimples adição de mais algumas tags especificando osatributos.
Exemplo
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Database A + F – Merge de autor e de ID realizado
Resultados Obtidos
• Mais coesão nas queries.
• Novos dados, como informações pessoais do autor podemser reveladas a partir desse processo.
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
• Fazer a introdução de mais três tags e a junção dediferentes bases de dados possibilitou novas descobertas.
• Um usuário que procura um livro pelo nome do seu autor,pode ter, agora, mais informações sobre as demais obrasdo mesmo.
Mas… o que fizemos?• Fizemos algo que humanos fazem com certa facilidade.
• Unimos diferentes bases de dados que
o Estão em locais diferentes da Web.
o São de diferentes formatos.
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
o São de diferentes formatos.
o Têm diferentes nomes para seus atributos.
• Isso pode ser melhorado através de:
o Ontologias
o Regras Extras
o RDF, OWL!
Visão Geral – Semantic WS
Dinâmica
Estática
Sintaxe Semântica
Sintaxe!Sintaxe!
Falta semântica nas definições de Web Services Tradicionais!
Tecnologia da Web Semântica
Semantic Web Services
Dados legíveis para a máquinaOntologias como modelos de dados
Tecnologia dos Web ServicesDescoberta automática, seleção e composição
Execução de serviços baseados na Web
• Semantic Web Services são uma solução integrada da novageração da Web.
Composição & Semantic Web Services• Composição automática de Serviços.
• Surgiu com a idéia da Web Semântica.
42Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services & Semantic Web Services Conclusão Referências
• A definição semântica definida por WSDL não é umatarefa trivial para a máquina.
• Criação de várias linguagens de marcação para agregarsemântica aos dados.
• OWL; OWL-S; DAML+OIL; DAML-L; DAML-S; WSMO;
OWL-SSemantic Markup for Web Services
• Uma ontologia de OWL para descrever Web Services.
• Não é uma tecnologia que tenta substituir os padrõesatuais para Web Services.
o Tenta dar um suporte à semântica dos Web Services.
43Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services & Semantic Web Services Conclusão Referências
o Tenta dar um suporte à semântica dos Web Services.
o Depende de WSDL para fazer as invocações de WS.
o Estende UDDI para a descoberta de novos WS’s.
• Objetivos
o Descoberta automática de Web Services.
o Chamada automática de Web Services.
o Composição automática de Web Services einteroperabilidade.
Web Service Modeling Ontology - WSMO
• Uma ontologia e framework conceitual para descrever WebServices e aspectos relacionados.
• É descrito em Semantic Web Services Language (SWSL).
• Baseado no Web Service Modeling Framework (WSMF).
44Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services & Semantic Web Services Conclusão Referências
ModeloConceitualpara SWS
Linguagem formal para WSMO
Ambiente de execução para
WSMO
Conclusão
45
Conclusão
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Conclusão
• Tecnologia promissora.
• A parte de Semantic Web Services ainda não estátotalmente consolidada, e novas padronizações estãosurgindo.
46Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
surgindo.
• Independência de linguagem e de plataforma!
• Pontos como segurança, escalabilidade e confiabilidadesão de grande importância na implementação de um WS.
Conclusão
47Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Referências
48
Referências
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Livros
49Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências
Referências
http://soa.sys-con.com/node/439687 - A Performance Comparison of Popular Open Source Web Services Engines
http://www.informationweek.com/news/software/development/showArticle.jhtml?articleID=6506480
http://uddi.xml.org/uddi-101
http://www.w3c.org.au/presentations/2003-08-21-web-services-interop/msm-ws.html#id2628715
Implementation Issues of A Cloud Computing Platform PAPER
http://pt.wikibooks.org/wiki/Sistemas_de_Informa%C3%A7%C3%A3o_Distribu%C3%ADdos/Interopera%C3%A7%C3%A3o/Web_Services/Linhas_de_pesquisa#Composi.C3.A7.C3.A3o_de_Web_services
50
http://homepages.di.fc.ul.pt/~ler/docencia/tm0405/slides/HenriqueMoniz.pdf
http://www.scientificamerican.com/article.cfm?id=the-semantic-web
axel.deri.ie/~axepol/.../20050316-BITSeminar-Bolzano.ppt
www.w3.org/2009/Talks/1030-Philadelphia-IH/Tutorial.ppt
http://www.slideshare.net/bpedro/web-services-in-portuguese
http://www.slideshare.net/ioannis.baltopoulos/introduction-to-web-services
http://www.wsmo.org/papers/publications/wsmf.paper.pdf
____
Slides de amanhã:
(SOAP + Proximo).
Introdução Principais Tecnologias Exemplo de Aplicação Composição de Web Services Semantic Web Services Conclusão Referências