Web 2.0
                                              Software como um Serviço (SaaS)




                                ...
Web 2.0
3   Web 2.0 e SAAS   November 2008
Aplicações Web 2.0
        Aplicações de Rede que aproveitam os Efeitos de Rede
         através de uma Arquitectura de P...
Aplicações Web 2.0




5              Web 2.0 e SAAS   November 2008
Aplicações Web 2.0
        Aparecimento e Crescimento de Mass Media Sociais




     6                         Web 2.0 e ...
7   Web 2.0 e SAAS   November 2008
Evolução da Web 2.0




8              Web 2.0 e SAAS   November 2008
Web 2.0
        O termo “Web 2.0” pode referir diversas coisas:
             A transição de sites de web de silos de inf...
Web 1.0 vs Web 2.0
         Web 1.0                                                       Web 2.0
            (1993-2003) ...
Software como um Serviço - SaaS
Ondas de SAAS e Curvas de Valor
                              2005
                                        Final 1990’s   ...
Necessidade de Mudança
Web Skeptical, Thick Client, Thin Pipes                    Browser-based Applications,
            ...
Desenvolver Software como um Service
(SaaS)
     Mudança do Modelo de Negócios:
          Deixar de ser um fornecedor de...
Web-Services
Web Services
     Definições
          Gartner Group (http://www.gartner.com)
               “[…] componentes de softwa...
Web Services segundo o W3C
     Um Web Service é
          uma aplicação de software
          identificada por uma URI...
Web Services

      XML é a língua franca dos Web-Services




18                 Web 2.0 e SAAS              November 2008
Historial dos Web Services
     Raiz: Componentes: inventados nos anos 80, desenvolvidos a pensar nos interfaces de utili...
Historial dos Web Services
     Resumindo…


Os Web Services são o resultado de desenvolvimentos
       na indústria de T...
Evolução das Arquitecturas

Client-   3-tier      Web           Web              Hybrid   Fractal
Server             Appli...
Evolução da Arquitectura dos Web-Services

              B2B Market,
          Global Enterprise                          ...
Web Services
     Tendências da Indústria
          Passou de interacções 1-para-1 para colaborações muitos-para-muitos
...
Mudança de Paradigma




24            Web 2.0 e SAAS   November 2008
Porquê os Web Services?
     Interoperabilidade
        Permitem ligações em redes heterogéneas utilizando standards
   ...
Porquê os Web Services?
     Acessibilidade
        Sistemas legados e aplicações internas são expostas e podem ser
    ...
Impacto dos WS no Software
                                         Web Services
“(Des)Integração” de
    Aplicações      ...
Desenho de Software




28            Web 2.0 e SAAS   November 2008
Web Services
     Web Services e a EAI
          EAI – Enterprise Application Integration
          Modelo Clássico, se...
Web Services
     Web Services e a EAI
          Modelo com EAI




     30                      Web 2.0 e SAAS   Novemb...
Web Services
     Web Services e a EAI
          Vantagens dos Web Services face às Soluções Tradicionais de EAI
       ...
Componentes Base dos Web-Services
Componentes arquitecturais dos WS
     Invocação de Serviços (SOAP)

     Descrição dos Serviços (WSDL)

     Registo (...
Web Services
     Por detrás da Tecnologia
          Tudo o que se discute aqui está baseado totalmente ou parcialmente ...
Arquitectura dos Web Services
     Operações
          Publicação e/ou Remoção
               Os Fornecedores de Serviç...
Web Services
                          Intermediário de
                              serviços




            Publicação ...
Stack de standards dos WS

           Publicar e Encontrar Serviços: UDDI


               Descrição de Serviços:         ...
SOAP
SOAP
  Simple Object Access Protocol
  Desenvolvido originalmente por Microsoft, UserLand,
   developMentor, ...
  Vers...
SOAP
     O que define o SOAP?
          Envelope das Mensagens
          Regras de Codificação
          Convenção RP...
SOAP
     O envelope SOAP
          Informação de Codificação
          Header
               Opcional
              ...
SOAP




42     Web 2.0 e SAAS   November 2008
SOAP

SOAP Message                              A mensagem SOAP completa

      Headers                             Inform...
SOAP
    O SOAP oferece:
         Um mecanismo para definir a unidade de comunicação;
         Um mecanismo para lidar ...
SOAP
     Concepção do SOAP
          Simplicidade
          Independente do vendedor
          Independente da lingua...
Pedido SOAP

     <SOAP-ENV:Envelope xmlns:SOAP-ENV=quot;…quot; SOAP-
     ENV:encodingStyle=quot;…quot;>
       <SOAP-ENV...
Resposta SOAP

     <SOAP-ENV:Envelope xmlns:SOAP-ENV=quot;…quot; SOAP-
     ENV:encodingStyle=quot;…quot;>
       <SOAP-E...
SOAP
     Especificações SOAP
          SOAP 1.2
               http://www.w3.org/TR/SOAP
          Mensagens SOAP e A...
WSDL
WSDL
     Web Services Description Language
     É uma forma de descrever os Web Services
          A descrição é reali...
Porquê WSDL?
     WSDL usa a linguagem XML para descrever os Web Services

     Um Web Service é descrito como
        ...
Porquê WSDL?
     Permite uma automação dos detalhes de comunicação entre
      parceiros que o pretendam fazer
        ...
WSDL

Interface                              Implementation

     <definitions>                       <definitions>

     ...
WSDL

Interface
                               • <definitions> é o nó de raíz de um
                               documen...
WSDL

                                                    Implementation
• <service> especifica os detalhes da
implementaç...
Exemplo em WSDL - Types
     <definitions name=quot;StockQuotequot;
        targetNamespace=quot;http://example.com/stockq...
Ex.: Messages, Operation e Porttype


     <message name=quot;GetLastTradePriceInputquot;>
         <part name=quot;bodyqu...
Exemplo: Binding, Port e Service

     <binding name=quot;StockQuoteSoapBindingquot; type=quot;tns:StockQuotePortTypequot;...
WSDL                                                     <wsdl:binding name=quot;nmtokenquot; type=quot;qnamequot;>*
     ...
UDDI
UDDI
     Universal Description, Discovery and Integration
     Define standards para um registo distribuído de Web Serv...
UDDI
                                                         Páginas
                                                    ...
UDDI
                   As empresas registam a informação pública àcerca dos
                      seus negócios e web-ser...
UDDI
     Registo do Tipo de Serviços
          Apontador para o namespace em que o serviços se encontra descrito
      ...
UDDI




65     Web 2.0 e SAAS   November 2008
UDDI


Fabricantes        UDDI Business Registry
                   
  Descrição dos Web Services
                   
  De...
UDDI
                                                                       4.
1.               Empresas de SW, organismos...
UDDI
<find_business generic=quot;1.0quot; xmlns=quot;urn:uddi-org:apiquot;>
    <name>Microsoft</name>
</find_business>

<...
Tópicos avançados em WS
Colaboração entre WS

      Business            Business Process Execution Language
     Processes                for Web ...
Outros standards de WS
     Especificações WS-*
          A serem desenvolvidas em colaboração por várias entidades (IBM...
Questões e Comentários
Upcoming SlideShare
Loading in …5
×

Apresentação sobre web 2.0

1,666 views

Published on

Apresentação sobre web 2.0 e sobre Software as a Service.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,666
On SlideShare
0
From Embeds
0
Number of Embeds
29
Actions
Shares
0
Downloads
56
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Apresentação sobre web 2.0

  1. 1. Web 2.0 Software como um Serviço (SaaS) IUL/ISCTE/DCTI Carlos Serrão Instituto Universitário de LIsboa carlos.serrao@iscte.pt Instituto Superior do Trabalho e da Empresa Departamento de Ciências e Tecnologias de Informação carlos.j.serrao@gmail.com Instituto Politécnico de Setúbal http://www.carlosserrao.net Escola Superior de Ciências Empresariais http://blog.carlosserrao.net Novembro 2008 http://www.linkedin.com/in/carlosserrao

  2. 2. Web 2.0
  3. 3. 3 Web 2.0 e SAAS November 2008
  4. 4. Aplicações Web 2.0   Aplicações de Rede que aproveitam os Efeitos de Rede através de uma Arquitectura de Participação reforçada por uma Arquitectura Social. 4 Web 2.0 e SAAS November 2008
  5. 5. Aplicações Web 2.0 5 Web 2.0 e SAAS November 2008
  6. 6. Aplicações Web 2.0   Aparecimento e Crescimento de Mass Media Sociais 6 Web 2.0 e SAAS November 2008
  7. 7. 7 Web 2.0 e SAAS November 2008
  8. 8. Evolução da Web 2.0 8 Web 2.0 e SAAS November 2008
  9. 9. Web 2.0   O termo “Web 2.0” pode referir diversas coisas:   A transição de sites de web de silos de informação para fontes de conteúdo e de funcionalidade, tornando-se assim plataformas de computação servindo aplicações web para os utilizadores finais   O fenómeno social que usa uma nova forma de gerar e distribuir conteúdo Web, caracterizado por comunicação aberta, descentralizada de autoridade, liberdade de partilha e de re-utilização e de conversação   Melhoria na organização e categorização de conteúdo, com ênfase numa forte interligação entre o mesmo   O aparecimento do valor económico de Web, que ultrapassa o impacto das dot-com do final dos 1990s 9 Web 2.0 e SAAS November 2008
  10. 10. Web 1.0 vs Web 2.0 Web 1.0 Web 2.0 (1993-2003) (2003- beyond) Principalmente páginas HTML Páginas Web e outro conteúdo partilhado através da rede, com maior interactividade. Actuam mais visualizadas através de um browser como uma aplicação do que uma “página” “Leitura” Modo “Escrita” & Contribuição “Página” Unidade principal “Post / registo” de conteúdo “estático” Estado “dinâmico” Web browser Visto através de… Browsers, RSS Readers, outro “Client/Server” Arquitectura “Web Services” Web Coders Conteúdo criado Todos por… “geeks” Domínio de… “amadores” 10 Web 2.0 e SAAS November 2008
  11. 11. Software como um Serviço - SaaS
  12. 12. Ondas de SAAS e Curvas de Valor 2005 Final 1990’s a 2010 a 2004 Início a Meados -1990’s Modelo de SaaS – impulsionado por clientes Modelo ASP – impulsionado que procuram contornar por companhias que desejam atrasos de TI, controlo de TI, Cliente/Servidor – potenciar fontes de TI, com orientado pelas pesadelos na actualização e custos controlados e sub- evitar compromissos necessidades de negócio alugando a infra-estrutura de em termos de inflexiveis e onerosos a TI longo-prazo. descentralização, flexibilidade e plataformas ENFOQUE alterou-se económicas. para os valores do comprador Fonte: AMR Research SaaS Study 2005 … os objectivos de negócio e as espectativas de utilizadores mudaram de pretenderem aplicações abrangentes e SAAS aplicações especializadas e verticais 12 Web 2.0 para November 2008
  13. 13. Necessidade de Mudança Web Skeptical, Thick Client, Thin Pipes Browser-based Applications, Thin Client, Thick Pipes IT is Aligned with IT is Aligned with Vendors LOB Leaders Business Processes Business Processes Far Different from Rivals Very Similar to Rivals Huge Investment, Major Risk, Short-Term, Long-Term ROI Immediate Savings Major upfront costs Pay as you go, fees per use Unpredictable maintenance Predictable monthly expense Efficiency, Speed and Multiple code bases Simplicity 1990’s Today Suite Solution Vertical Specific On Premises SaaS 13 Web 2.0 e SAAS November 2008
  14. 14. Desenvolver Software como um Service (SaaS)   Mudança do Modelo de Negócios:   Deixar de ser um fornecedor de software – passar a ser um fornecedor de serviços de software   Missão – ajudar os parceiros de negócio:   A criarem serviços funcionais e aplicações, que automatizem/ melhorem os processos de negócio actuais – fornecer essas mesmas aplicações como serviços para baixar o custo com base em acordos de desempenho de serviços 14 Web 2.0 e SAAS November 2008
  15. 15. Web-Services
  16. 16. Web Services   Definições   Gartner Group (http://www.gartner.com)   “[…] componentes de software espalhados que interagem dinamicamente uns com os outros através de tecnologias Internet standard […]   Forrester Research (http://www.forrester.com)   “[...] ligações automáticas entre pessoas, sistemas e aplicações que expoem elementos de funcionalidade de negócio como um serviço de software e criam um novo valor de negócio […]quot; 16 Web 2.0 e SAAS November 2008
  17. 17. Web Services segundo o W3C   Um Web Service é   uma aplicação de software   identificada por uma URI (Uniform Resource Identifier) *,   cujos os interfaces e ligações são capazes de serem claramente definidas, descritas e encontradas através de artefactos XML   suportando interacções directas com outras aplicações de software   utilizando mensagens baseadas em XML   através da utilização de protocolos baseados em Internet. *A Uniform Resource Identifier (URI), is a compact string of characters used to identify or name a resource. http://www.w3.org 17 Web 2.0 e SAAS November 2008
  18. 18. Web Services XML é a língua franca dos Web-Services 18 Web 2.0 e SAAS November 2008
  19. 19. Historial dos Web Services   Raiz: Componentes: inventados nos anos 80, desenvolvidos a pensar nos interfaces de utilizador: COM   Distribuição: arquitecturas de componentes distribuídas: component middleware. Principais arquitecturas:   OMG CORBA: Object Management Group Comon Request Broker Architecture   Microsoft DCOM: Distributed Component Object Model   Sun RMI: Remote Method Invocation   Limitação dos componentes distribuídos: só podem ser usados através de uma rede bem gerida e controlada – Intranet   Web Services são uma forma de distribuição de componentes numa rede pública 19 Web 2.0 e SAAS November 2008
  20. 20. Historial dos Web Services   Resumindo… Os Web Services são o resultado de desenvolvimentos na indústria de TI dos últimos 20 anos 20 Web 2.0 e SAAS November 2008
  21. 21. Evolução das Arquitecturas Client- 3-tier Web Web Hybrid Fractal Server Applications Services P2P 21 Web 2.0 e SAAS November 2008
  22. 22. Evolução da Arquitectura dos Web-Services B2B Market, Global Enterprise Typical access via: Ecosystems Web services Services Homogeneous Application Components Program Objects Daryl Plummer, Gartner 22 Web 2.0 e SAAS November 2008
  23. 23. Web Services   Tendências da Indústria   Passou de interacções 1-para-1 para colaborações muitos-para-muitos   Passou de aplicações de software empacotadas para componentes modulares, interoperáveis e auto-contidos   Passou de integração rígida de aplicações ponto-a-ponto para montagem e integração de software de uma forma dinâmica   Passou do software como produto para software como serviço 23 Web 2.0 e SAAS November 2008
  24. 24. Mudança de Paradigma 24 Web 2.0 e SAAS November 2008
  25. 25. Porquê os Web Services?   Interoperabilidade   Permitem ligações em redes heterogéneas utilizando standards ubíquos baseados na Web   Economia   Permite a reciclagem de componentes, não é preciso instalação nem uma integração muito forte dos mesmos   Automatização   Não é necessária intervenção humana mesmo em transacções muito complexas 25 Web 2.0 e SAAS November 2008
  26. 26. Porquê os Web Services?   Acessibilidade   Sistemas legados e aplicações internas são expostas e podem ser acedidas na Web   Disponibilidade   Serviços em qualquer dispositivo, em qualquer lugar, a qualquer hora   Escalabilidade   Não existem limites no âmbito das aplicações nem na quantidade de aplicações heterogéneas 26 Web 2.0 e SAAS November 2008
  27. 27. Impacto dos WS no Software Web Services “(Des)Integração” de Aplicações Serviço Serviço Serviço Aplic. Aplic. Aplic. Software Monolítico Aplicação Serviço Serviço Serviço Sistema de Software Sistema Sistema Sistema Computador A Rede 27 Web 2.0 e SAAS November 2008
  28. 28. Desenho de Software 28 Web 2.0 e SAAS November 2008
  29. 29. Web Services   Web Services e a EAI   EAI – Enterprise Application Integration   Modelo Clássico, sem EAI 29 Web 2.0 e SAAS November 2008
  30. 30. Web Services   Web Services e a EAI   Modelo com EAI 30 Web 2.0 e SAAS November 2008
  31. 31. Web Services   Web Services e a EAI   Vantagens dos Web Services face às Soluções Tradicionais de EAI   Simplicidade   Standards Abertos   Flexibilidade   Menor Custo   Âmbito   Eficiência   Dinamismo 31 Web 2.0 e SAAS November 2008
  32. 32. Componentes Base dos Web-Services
  33. 33. Componentes arquitecturais dos WS   Invocação de Serviços (SOAP)   Descrição dos Serviços (WSDL)   Registo (Publicação) e Descoberta de Serviços (UDDI) 33 Web 2.0 e SAAS November 2008
  34. 34. Web Services   Por detrás da Tecnologia   Tudo o que se discute aqui está baseado totalmente ou parcialmente em XML   SOAP (Simple Object Access Protocol)   WSDL (Web Services Description Language)   UDDI (Universal Description, Discovery, and Integration) 34 Web 2.0 e SAAS November 2008
  35. 35. Arquitectura dos Web Services   Operações   Publicação e/ou Remoção   Os Fornecedores de Serviços publicitam (ou não) os seus serviços junto de um Broker de Serviços   Encontrar   Os Solicitadores de Serviços solicitam ao Broker de Serviços um serviços que corresponda a um determinado critério   Ligar   Os Solicitadores de Serviços ligam-se aos Fornecedores de Serviços e efectuam transações entre si 35 Web 2.0 e SAAS November 2008
  36. 36. Web Services Intermediário de serviços Publicação Encontrar Remoção E-Business SOAP Fornecedor de Ligar Cliente de serviços serviços 36 Web 2.0 e SAAS November 2008
  37. 37. Stack de standards dos WS Publicar e Encontrar Serviços: UDDI Descrição de Serviços: WSDL Formato de Transporte: SOAP Formato de dados universal: XML Comunicações ubíquas: Internet Simples, Aberto e com suporte alargado por parte da Indústria 37 Web 2.0 e SAAS November 2008
  38. 38. SOAP
  39. 39. SOAP   Simple Object Access Protocol   Desenvolvido originalmente por Microsoft, UserLand, developMentor, ...   Versão 1.0 era considerada como demasiado dependente do Windows   IBM juntou-se aos esforços de desenvolvimento por forma a tornar o SOAP mais independente do vendedor e da plataforma   Uma implementação da segunda geração de do SOAP pode ser encontrada (p.e) em http://xml.apache.org (1.2) 39 Web 2.0 e SAAS November 2008
  40. 40. SOAP   O que define o SOAP?   Envelope das Mensagens   Regras de Codificação   Convenção RPC   Ligação com os Protocolos subjacentes (HTTP e SMTP) 40 Web 2.0 e SAAS November 2008
  41. 41. SOAP   O envelope SOAP   Informação de Codificação   Header   Opcional   Pode conter conhecimento acerca do contexto   Segurança   Transacção   Body   Métodos RPC e os parâmetros   Dados aplicacionais 41 Web 2.0 e SAAS November 2008
  42. 42. SOAP 42 Web 2.0 e SAAS November 2008
  43. 43. SOAP SOAP Message A mensagem SOAP completa Headers Informação sobre o protocolo de transporte e a ligação entre ambos <Envelope> contém o payload da SOAP Envelope mensagem SOAP Header <Header> contém os headers da mensagem Headers Cada um dos headers SOAP Body <Body> contém o nome da mensagem SOAP Message name & Data Mensagem SOAP e os dados codificados em XML 43 Web 2.0 e SAAS November 2008
  44. 44. SOAP   O SOAP oferece:   Um mecanismo para definir a unidade de comunicação;   Um mecanismo para lidar com erros que pode identificar a causa e que permite a troca de informação de erro entre os participantes na interacção;   Um mecanismo de extensão que permite a sua própria evolução;   Um mecanismo flexível de representação dos dados que permite a troca de dados num determinado formato (texto, XML, …);   Uma convenção para representar estruturas de dados abstractas tais como tipo de dados em formato XML;   Uma convenção para representar RPCs e as suas respostas em como mensagens SOAP;   Uma aproximação document-centric para reflectir trocas de documentos nas interacções de negócios mais natural;   Um mecanismo de ligação entre as mensagens SOAP e o HTTP. 44 Web 2.0 e SAAS November 2008
  45. 45. SOAP   Concepção do SOAP   Simplicidade   Independente do vendedor   Independente da linguagem   Independente do modelo de objectos   Independente do transporte 45 Web 2.0 e SAAS November 2008
  46. 46. Pedido SOAP <SOAP-ENV:Envelope xmlns:SOAP-ENV=quot;…quot; SOAP- ENV:encodingStyle=quot;…quot;> <SOAP-ENV:Header> <!-- Optional context information --> </SOAP-ENV:Header> <SOAP-ENV:Body> <m:GetLastTradePrice xmlns:m=“some_URIquot;> <tickerSymbol>SUNW</tickerSymbol> </m:GetLastTradePrice> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 46 Web 2.0 e SAAS November 2008
  47. 47. Resposta SOAP <SOAP-ENV:Envelope xmlns:SOAP-ENV=quot;…quot; SOAP- ENV:encodingStyle=quot;…quot;> <SOAP-ENV:Header> <!-- Optional context information --> </SOAP-ENV:Header> <SOAP-ENV:Body> <m:GetLastTradePriceResponse xmlns:m=“some_URIquot;> <price>30.5</price> </m:GetLastTradePriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 47 Web 2.0 e SAAS November 2008
  48. 48. SOAP   Especificações SOAP   SOAP 1.2   http://www.w3.org/TR/SOAP   Mensagens SOAP e Attachments   http://www.w3.org/TR/SOAP-attachments/   Extensões de Segurança ao SOAP: Assinaturas Digitais   http://www.w3.org/TR/SOAP-dsig/ 48 Web 2.0 e SAAS November 2008
  49. 49. WSDL
  50. 50. WSDL   Web Services Description Language   É uma forma de descrever os Web Services   A descrição é realizada aquando da sua publicação   É preciso descrever o que procurar quando se efectua uma pesquisa   Quando se encontram as interfaces precisam igualmente de ser descritas 50 Web 2.0 e SAAS November 2008
  51. 51. Porquê WSDL?   WSDL usa a linguagem XML para descrever os Web Services   Um Web Service é descrito como   Um conjunto de pontos de comunicação (endpoints, portos)   Cada ponto de comunicação é composto por duas partes   Definições abstractas das operações e das mensagens   Uma ligação concreta a um protocolo de comunicação (e o correspondente endereço do ponto de comunicação) e o formato da mensagem   Porque existe esta separação?   Para melhorar a reutilização (tal como acontece com as referências UDDI para documentos WSDL) 51 Web 2.0 e SAAS November 2008
  52. 52. Porquê WSDL?   Permite uma automação dos detalhes de comunicação entre parceiros que o pretendam fazer   As máquinas podem ler WSDL   As máquinas podem invocar um serviços definido por um WSDL   Descoberta através do registo   Arbítrio   Uma 3ª parte pode verificar se a comunicação está de acordo com o WSDL 52 Web 2.0 e SAAS November 2008
  53. 53. WSDL Interface Implementation <definitions> <definitions> <import> <import> <types> <service> <message> <port> <portType> <binding> 53 Web 2.0 e SAAS November 2008
  54. 54. WSDL Interface • <definitions> é o nó de raíz de um documento WSDL <definitions> • <import> permite a inclusão de outras <import> entidades externas • <types> contêm a descrição dos dados – <types> XSD • <message> define os parâmetros das <message> funções do web service • <portType> define as operações de input e <portType> de output <binding> • <binding> especifica como é que cada mensagem é enviada através da rede 54 Web 2.0 e SAAS November 2008
  55. 55. WSDL Implementation • <service> especifica os detalhes da implementação do serviço <definitions> • <port> contém o endereço do web-service <import> <service> <port> 55 Web 2.0 e SAAS November 2008
  56. 56. Exemplo em WSDL - Types <definitions name=quot;StockQuotequot; targetNamespace=quot;http://example.com/stockquote.wsdlquot; xmlns:tns=quot;http://example.com/stockquote.wsdlquot; xmlns:xsd1=quot;http://example.com/stockquote.xsdquot; xmlns:soap=quot;http://schemas.xmlsoap.org/wsdl/soap/quot; xmlns=quot;http://schemas.xmlsoap.org/wsdl/”> <types> <schema targetNamespace=quot;http://example.com/stockquote.xsdquot; xmlns=quot;http://www.w3.org/2000/10/XMLSchemaquot;> <element name=quot;TradePriceRequestquot;> <complexType> <all> <element name=”tickerSymbolquot; type=quot;stringquot;/> </all> </complexType> </element> <element name=quot;TradePricequot;> <complexType> <all> <element name=quot;pricequot; type=quot;floatquot;/> </all> </complexType> </element> </schema> </types> 56 Web 2.0 e SAAS November 2008
  57. 57. Ex.: Messages, Operation e Porttype <message name=quot;GetLastTradePriceInputquot;> <part name=quot;bodyquot; element=quot;xsd1:TradePriceRequestquot;/> </message> <message name=quot;GetLastTradePriceOutputquot;> <part name=quot;bodyquot; element=quot;xsd1:TradePricequot;/> </message> <portType name=quot;StockQuotePortTypequot;> <operation name=quot;GetLastTradePricequot;> <input message=quot;tns:GetLastTradePriceInputquot;/> <output message=quot;tns:GetLastTradePriceOutputquot;/> </operation> <!-- More operations --> </portType> 57 Web 2.0 e SAAS November 2008
  58. 58. Exemplo: Binding, Port e Service <binding name=quot;StockQuoteSoapBindingquot; type=quot;tns:StockQuotePortTypequot;> <soap:binding style=quot;documentquot; transport=quot;http://schemas.xmlsoap.org/soap/httpquot;/> <operation name=quot;GetLastTradePricequot;> <soap:operation soapAction=quot;http://example.com/GetLastTradePricequot;/> <input> <soap:body use=quot;literalquot; /> </input> <output> <soap:body use=quot;literalquot; /> </output> </operation> </binding> <service name=quot;StockQuoteServicequot;> <documentation>My first service</documentation> <port name=quot;StockQuotePortquot; binding=quot;tns:StockQuoteBindingquot;> <soap:address location=quot;http://example.com/stockquotequot;/> </port> </service> 58 Web 2.0 e SAAS November 2008
  59. 59. WSDL <wsdl:binding name=quot;nmtokenquot; type=quot;qnamequot;>* <wsdl:documentation .... />? <-- extensibility element --> * <wsdl:definitions name=quot;nmtokenquot;? targetNamespace=quot;uriquot;?> <wsdl:operation name=quot;nmtokenquot;>* <import namespace=quot;uriquot; location=quot;uriquot;/>* <wsdl:documentation .... /> ? <wsdl:documentation .... /> ? <-- extensibility element --> * <wsdl:types> ? <wsdl:input> ? <wsdl:documentation .... />? <wsdl:documentation .... /> ? <xsd:schema .... />* <-- extensibility element --> <-- extensibility element --> * </wsdl:input> </wsdl:types> <wsdl:output> ? <wsdl:message name=quot;nmtokenquot;> * <wsdl:documentation .... /> ? <wsdl:documentation .... />? <-- extensibility element --> * <part name=quot;nmtokenquot; element=quot;qnamequot;? type=quot;qnamequot;?/> * </wsdl:output> </wsdl:message> <wsdl:fault name=quot;nmtokenquot;> * <wsdl:portType name=quot;nmtokenquot;>* <wsdl:documentation .... /> ? <wsdl:documentation .... />? <-- extensibility element --> * <wsdl:operation name=quot;nmtokenquot;>* </wsdl:fault> <wsdl:documentation .... /> ? </wsdl:operation> <wsdl:input name=quot;nmtokenquot;? message=quot;qnamequot;>? </wsdl:binding> <wsdl:documentation .... /> ? <wsdl:service name=quot;nmtokenquot;> * </wsdl:input> <wsdl:documentation .... />? <wsdl:output name=quot;nmtokenquot;? message=quot;qnamequot;>? <wsdl:port name=quot;nmtokenquot; binding=quot;qnamequot;> * <wsdl:documentation .... /> ? <wsdl:documentation .... /> ? </wsdl:output> <-- extensibility element --> <wsdl:fault name=quot;nmtokenquot; message=quot;qnamequot;> * </wsdl:port> <wsdl:documentation .... /> ? <-- extensibility element --> </wsdl:fault> </wsdl:service> </wsdl:operation> <-- extensibility element --> * </wsdl:portType> </wsdl:definitions> 59 Web 2.0 e SAAS November 2008
  60. 60. UDDI
  61. 61. UDDI   Universal Description, Discovery and Integration   Define standards para um registo distribuído de Web Services:   Páginas Brancas (informação geral)   Páginas Amarelas (categorias de serviços)   Páginas Verdes (regras de negócio) 61 Web 2.0 e SAAS November 2008
  62. 62. UDDI Páginas Brancas •  Empresas registam informação acerca delas próprias Páginas Amarelas •  Organismos de standardização, Páginas programadores e empresas registam Verdes informação acerca dos seus tipos de serviços Registo do Tipo de Serviços 62 Web 2.0 e SAAS November 2008
  63. 63. UDDI As empresas registam a informação pública àcerca dos seus negócios e web-services na directoria UDDI Páginas Brancas Páginas Amarelas Páginas Verdes •  Nome do negócio •  Índice de Produtos e •  Regras de Negócio Serviços Electrónico •  Informação de contacto •  Códigos de Indústria •  Descrição dos serviços •  Descrição em formato legível •  Índice geográfico •  Invocação de Aplicações •  Diversos identificadores conhecidos •  Ligação a dados 63 Web 2.0 e SAAS November 2008
  64. 64. UDDI   Registo do Tipo de Serviços   Apontador para o namespace em que o serviços se encontra descrito   O que os programadores devem ler para perceber como utilizar o serviço   Identificação de quem publicou o serviço   Identificação do tipo de registo do serviço   Designado por tModelKey   Usado como assinatura pelos sites de web que implementem estes serviços 64 Web 2.0 e SAAS November 2008
  65. 65. UDDI 65 Web 2.0 e SAAS November 2008
  66. 66. UDDI Fabricantes UDDI Business Registry  Descrição dos Web Services  Descrição dos negócios e dos serviços que suportam  Modelo de programação, esquema e independência da plataforma Lojas  Usa XML, HTTP, e SOAP  Livre na Internet Marketplaces 66 Web 2.0 e SAAS November 2008
  67. 67. UDDI 4. 1. Empresas de SW, organismos de standardização, e programadores “alimentam” o registo com descrições dos diversos tipos de serviços Aplicações de marketplaces, motores de busca e 2. empresas, questionam o registo à procura de descobrir serviços noutras UDDI Business Registry empresas Registo de 5. Registo de tipos de Empresas Empresas serviços “alimentam” o registo com descrições dos 3. UBR atribui um identificador único a cada serviço As empresas utilizam e empresa serviços que estes dados para suportam facilitar uma integração mais fácil entre elas na Web 67 Web 2.0 e SAAS November 2008
  68. 68. UDDI <find_business generic=quot;1.0quot; xmlns=quot;urn:uddi-org:apiquot;> <name>Microsoft</name> </find_business> <businessList generic=quot;1.0“ operator=quot;Microsoft Corporation“ truncated=quot;false“ xmlns=quot;urn:uddi-org:apiquot;> <businessInfos> <businessInfo businessKey=quot;0076B468-EB27-42E5-AC09-9955CFF462A3quot;> <name>Microsoft Corporation</name> <description xml:lang=quot;enquot;> Empowering people through great software - any time, any place and on any device is Microsoft's vision. As the worldwide leader in software for personal and business computing, we strive to produce innovative products and services that meet our customer's</ description> <serviceInfos> <serviceInfo businessKey=quot;0076B468-EB27-42E5-AC09-9955CFF462A3“ serviceKey=quot;1FFE1F71-2AF3-45FB-B788-09AF7FF151A4quot;> <name>Web services for smart searching</name> </serviceInfo> <serviceInfo businessKey=quot;0076B468-EB27-42E5-AC09-9955CFF462A3“ serviceKey=quot;8BF2F51F-8ED4-43FE-B665-38D8205D1333quot;> <name>Electronic Business Integration Services</name> </serviceInfo> <serviceInfo businessKey=quot;0076B468-EB27-42E5-AC09-9955CFF462A3“ serviceKey=quot;611C5867-384E-4FFD-B49C-28F93A7B4F9Bquot;> <name>Volume Licensing Select Program</name> </serviceInfo> <serviceInfo businessKey=quot;0076B468-EB27-42E5-AC09-9955CFF462A3“ serviceKey=quot;A8E4999A-21A3-47FA-802E-EE50A88B266Fquot;> <name>UDDI Web Sites</name> </serviceInfo> </serviceInfos> </businessInfo> </businessInfos> </businessList> 68 Web 2.0 e SAAS November 2008
  69. 69. Tópicos avançados em WS
  70. 70. Colaboração entre WS Business Business Process Execution Language Processes for Web Services (BPEL4WS) Quality of Reliable Security Transactions Service Messaging Description Web Services Description Language (WSDL) Simple Object Access Protocol (SOAP) Other Protocols Messaging Extensible Markup Protocol (XML) Other Services 70 Web 2.0 e SAAS November 2008
  71. 71. Outros standards de WS   Especificações WS-*   A serem desenvolvidas em colaboração por várias entidades (IBM, Sun, Microsoft, BEA, Tibco, Verisign, SAP, etc) • WS-Routing • WS-SecuredConversation • WS-Referral • WS-SecurityPolicy • WS-Inspection • WS-Policy • WS-Security • WS-PolicyAttachment • WS-Attachments • WS-PolicyAssertions • WS-Coordination • WS-Addressing • WS-Transaction • WS-ReliableMessaging 71 Web 2.0 e SAAS November 2008
  72. 72. Questões e Comentários

×