SlideShare ist ein Scribd-Unternehmen logo
1 von 72
Downloaden Sie, um offline zu lesen
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

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 Participação reforçada
         por uma Arquitectura Social.




     4                        Web 2.0 e SAAS             November 2008
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 SAAS               November 2008
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 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
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
Software como um Serviço - SaaS
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
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
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
Web-Services
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
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
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 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
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
Evolução das Arquitecturas

Client-   3-tier      Web           Web              Hybrid   Fractal
Server             Applications   Services            P2P




    21                              Web 2.0 e SAAS            November 2008
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
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
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
         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
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
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
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, sem EAI




     29                                      Web 2.0 e SAAS   November 2008
Web Services
     Web Services e a EAI
          Modelo com EAI




     30                      Web 2.0 e SAAS   November 2008
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
Componentes Base dos Web-Services
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
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
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
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
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
SOAP
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
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
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
SOAP




42     Web 2.0 e SAAS   November 2008
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
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
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
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
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
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
WSDL
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
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
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
WSDL

Interface                              Implementation

     <definitions>                       <definitions>

          <import>                            <import>

         <types>                             <service>

         <message>                                   <port>

         <portType>

         <binding>


53                    Web 2.0 e SAAS                          November 2008
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
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
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
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
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
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
UDDI
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
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
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
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
UDDI




65     Web 2.0 e SAAS   November 2008
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
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
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
Tópicos avançados em WS
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
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
Questões e Comentários

Weitere ähnliche Inhalte

Was ist angesagt?

SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Servicessergiocrespo
 
SOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoSOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoAndré Borgonovo
 
SOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a ServiçosSOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a Serviçosalinebicudo
 
04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)DNAD
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 
Integrando Pessoas Ao Negocio Atraves De Um Portal Colaborativo
Integrando Pessoas Ao Negocio Atraves De Um Portal ColaborativoIntegrando Pessoas Ao Negocio Atraves De Um Portal Colaborativo
Integrando Pessoas Ao Negocio Atraves De Um Portal ColaborativoJuliana Soares
 
Palestra sobre a SOA foi destaque no Ciasc
Palestra sobre a SOA foi destaque no Ciasc  Palestra sobre a SOA foi destaque no Ciasc
Palestra sobre a SOA foi destaque no Ciasc guest880159
 
Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...
Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...
Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...Vertigo Tecnologia
 
Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)Marcelo Sávio
 
2o workshop governanca soa na pratica
2o workshop governanca soa na pratica2o workshop governanca soa na pratica
2o workshop governanca soa na praticaSensedia
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWSDextra
 
Reutilização
ReutilizaçãoReutilização
Reutilizaçãoemjorge
 
Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...
Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...
Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...Markus Christen
 

Was ist angesagt? (19)

Webinar Portal Colaborativo
Webinar Portal ColaborativoWebinar Portal Colaborativo
Webinar Portal Colaborativo
 
SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Services
 
SOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoSOA - Uma Breve Introdução
SOA - Uma Breve Introdução
 
SOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a ServiçosSOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a Serviços
 
Apresentação Discussao publica da Dissertação
Apresentação Discussao publica da DissertaçãoApresentação Discussao publica da Dissertação
Apresentação Discussao publica da Dissertação
 
04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 
SOA - Fatos e Mitos
SOA - Fatos e MitosSOA - Fatos e Mitos
SOA - Fatos e Mitos
 
Integrando Pessoas Ao Negocio Atraves De Um Portal Colaborativo
Integrando Pessoas Ao Negocio Atraves De Um Portal ColaborativoIntegrando Pessoas Ao Negocio Atraves De Um Portal Colaborativo
Integrando Pessoas Ao Negocio Atraves De Um Portal Colaborativo
 
Palestra sobre a SOA foi destaque no Ciasc
Palestra sobre a SOA foi destaque no Ciasc  Palestra sobre a SOA foi destaque no Ciasc
Palestra sobre a SOA foi destaque no Ciasc
 
Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...
Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...
Liferay RoadShow 2010 | O Futuro no Desenvolvimento de Portais. Por Bruno Tar...
 
Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)
 
Soa Woa Rest
Soa Woa RestSoa Woa Rest
Soa Woa Rest
 
Ets simonsen wsrv_2011
Ets simonsen wsrv_2011Ets simonsen wsrv_2011
Ets simonsen wsrv_2011
 
Web services
Web servicesWeb services
Web services
 
2o workshop governanca soa na pratica
2o workshop governanca soa na pratica2o workshop governanca soa na pratica
2o workshop governanca soa na pratica
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWS
 
Reutilização
ReutilizaçãoReutilização
Reutilização
 
Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...
Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...
Providenciar Uma Plataforma De AplicaçõEs De Alta Performance Para Aplicações...
 

Ähnlich wie Web 2.0 e Software como Serviço (SaaS

Mobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para NegociosMobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para NegociosRodney Repullo
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambMicrosoft Brasil
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidorMarcia Abrahim
 
Pense Aberto, Pense Linux
Pense Aberto, Pense LinuxPense Aberto, Pense Linux
Pense Aberto, Pense Linuxaviram
 
SaaS - Software como Serviço
SaaS - Software como ServiçoSaaS - Software como Serviço
SaaS - Software como ServiçoRicardo Saldanha
 
Vida longa para SOA com microservices
Vida longa para SOA com microservicesVida longa para SOA com microservices
Vida longa para SOA com microservicesFábio Rosato
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web ServicesFabio Leal
 
Quando “bom o bastante” não basta
Quando “bom o bastante” não bastaQuando “bom o bastante” não basta
Quando “bom o bastante” não bastaCisco do Brasil
 
Apresentação Case Eletrobras - Workshop Lumis | Maio/2010
Apresentação Case Eletrobras - Workshop Lumis | Maio/2010Apresentação Case Eletrobras - Workshop Lumis | Maio/2010
Apresentação Case Eletrobras - Workshop Lumis | Maio/2010Lumis
 
[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataforma[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataformaAlessandro Almeida
 
A Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosA Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosOziel Moreira Neto
 
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...Osvaldo Daibert
 
Think Cloud! - Hands On @ ESTCB 24 Mar 2012
Think Cloud!  - Hands On @ ESTCB 24 Mar 2012Think Cloud!  - Hands On @ ESTCB 24 Mar 2012
Think Cloud! - Hands On @ ESTCB 24 Mar 2012sandrobmartins
 
Navita | Webinar: Aplicativos Corporativos Mobile
Navita | Webinar: Aplicativos Corporativos MobileNavita | Webinar: Aplicativos Corporativos Mobile
Navita | Webinar: Aplicativos Corporativos MobileNavita BR
 
Workshop soa, microservices e devops
Workshop soa, microservices e devopsWorkshop soa, microservices e devops
Workshop soa, microservices e devopsDiego Pacheco
 

Ähnlich wie Web 2.0 e Software como Serviço (SaaS (20)

Mobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para NegociosMobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para Negocios
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcamb
 
Palestra Web 2.0 & RIA
Palestra Web 2.0 & RIAPalestra Web 2.0 & RIA
Palestra Web 2.0 & RIA
 
Expresso nuvem-campus-party
Expresso nuvem-campus-partyExpresso nuvem-campus-party
Expresso nuvem-campus-party
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidor
 
Pense Aberto, Pense Linux
Pense Aberto, Pense LinuxPense Aberto, Pense Linux
Pense Aberto, Pense Linux
 
SaaS - Software como Serviço
SaaS - Software como ServiçoSaaS - Software como Serviço
SaaS - Software como Serviço
 
WEB 2.0
WEB 2.0WEB 2.0
WEB 2.0
 
Vida longa para SOA com microservices
Vida longa para SOA com microservicesVida longa para SOA com microservices
Vida longa para SOA com microservices
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web Services
 
Quando “bom o bastante” não basta
Quando “bom o bastante” não bastaQuando “bom o bastante” não basta
Quando “bom o bastante” não basta
 
Apresentação Case Eletrobras - Workshop Lumis | Maio/2010
Apresentação Case Eletrobras - Workshop Lumis | Maio/2010Apresentação Case Eletrobras - Workshop Lumis | Maio/2010
Apresentação Case Eletrobras - Workshop Lumis | Maio/2010
 
[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataforma[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataforma
 
A Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosA Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas Corporativos
 
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
 
Think Cloud! - Hands On @ ESTCB 24 Mar 2012
Think Cloud!  - Hands On @ ESTCB 24 Mar 2012Think Cloud!  - Hands On @ ESTCB 24 Mar 2012
Think Cloud! - Hands On @ ESTCB 24 Mar 2012
 
Navita | Webinar: Aplicativos Corporativos Mobile
Navita | Webinar: Aplicativos Corporativos MobileNavita | Webinar: Aplicativos Corporativos Mobile
Navita | Webinar: Aplicativos Corporativos Mobile
 
PHP nas Nuvens
PHP nas NuvensPHP nas Nuvens
PHP nas Nuvens
 
Workshop soa, microservices e devops
Workshop soa, microservices e devopsWorkshop soa, microservices e devops
Workshop soa, microservices e devops
 
Ria
RiaRia
Ria
 

Mehr von Carlos Serrao

Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"Carlos Serrao
 
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...Carlos Serrao
 
Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]
Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]
Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]Carlos Serrao
 
A OWASP e a Segurança Aplicacional para a Web
A OWASP e a Segurança Aplicacional para a WebA OWASP e a Segurança Aplicacional para a Web
A OWASP e a Segurança Aplicacional para a WebCarlos Serrao
 
Segurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisSegurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisCarlos Serrao
 
Segurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisSegurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisCarlos Serrao
 
OWASP e o desenvolvimento seguro de aplicações para a Web
OWASP e o desenvolvimento seguro de aplicações para a WebOWASP e o desenvolvimento seguro de aplicações para a Web
OWASP e o desenvolvimento seguro de aplicações para a WebCarlos Serrao
 
Principios básicos de segurança on-line
Principios básicos de segurança on-linePrincipios básicos de segurança on-line
Principios básicos de segurança on-lineCarlos Serrao
 
To DRM or not to DRM?
To DRM or not to DRM?To DRM or not to DRM?
To DRM or not to DRM?Carlos Serrao
 
OWASP presentation on FISTA2011
OWASP presentation on FISTA2011OWASP presentation on FISTA2011
OWASP presentation on FISTA2011Carlos Serrao
 
Análise de Vulnerabilidades em Aplicações na Web Nacional
Análise de Vulnerabilidades em Aplicações na Web NacionalAnálise de Vulnerabilidades em Aplicações na Web Nacional
Análise de Vulnerabilidades em Aplicações na Web NacionalCarlos Serrao
 
Segurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisSegurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisCarlos Serrao
 
OWASP, PT.OWASP, IBWAS'10 & Cia.
OWASP, PT.OWASP, IBWAS'10 & Cia.OWASP, PT.OWASP, IBWAS'10 & Cia.
OWASP, PT.OWASP, IBWAS'10 & Cia.Carlos Serrao
 
Owasp@iscte iul ferramentas-analise_vulnerabilidades
Owasp@iscte iul ferramentas-analise_vulnerabilidadesOwasp@iscte iul ferramentas-analise_vulnerabilidades
Owasp@iscte iul ferramentas-analise_vulnerabilidadesCarlos Serrao
 
OWASP@ ISCTE-IUL, Segurança em PHP
OWASP@ ISCTE-IUL, Segurança em PHPOWASP@ ISCTE-IUL, Segurança em PHP
OWASP@ ISCTE-IUL, Segurança em PHPCarlos Serrao
 
OWASP @ ISCTE-IUL, OWASP Top 10 2010
OWASP @ ISCTE-IUL, OWASP Top 10 2010OWASP @ ISCTE-IUL, OWASP Top 10 2010
OWASP @ ISCTE-IUL, OWASP Top 10 2010Carlos Serrao
 
OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)
OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)
OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)Carlos Serrao
 
OWASP @ ISCTE-IUL, Criptografia em PHP
OWASP @ ISCTE-IUL, Criptografia em PHPOWASP @ ISCTE-IUL, Criptografia em PHP
OWASP @ ISCTE-IUL, Criptografia em PHPCarlos Serrao
 

Mehr von Carlos Serrao (20)

Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
 
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
 
OWASP Mobile Top 10
OWASP Mobile Top 10OWASP Mobile Top 10
OWASP Mobile Top 10
 
Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]
Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]
Vamos tirar uma selfie? [... como a privacidade morreu e ninguém nos avisou]
 
A OWASP e a Segurança Aplicacional para a Web
A OWASP e a Segurança Aplicacional para a WebA OWASP e a Segurança Aplicacional para a Web
A OWASP e a Segurança Aplicacional para a Web
 
Segurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisSegurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes Sociais
 
Segurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisSegurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes Sociais
 
OWASP e o desenvolvimento seguro de aplicações para a Web
OWASP e o desenvolvimento seguro de aplicações para a WebOWASP e o desenvolvimento seguro de aplicações para a Web
OWASP e o desenvolvimento seguro de aplicações para a Web
 
Principios básicos de segurança on-line
Principios básicos de segurança on-linePrincipios básicos de segurança on-line
Principios básicos de segurança on-line
 
To DRM or not to DRM?
To DRM or not to DRM?To DRM or not to DRM?
To DRM or not to DRM?
 
OWASP presentation on FISTA2011
OWASP presentation on FISTA2011OWASP presentation on FISTA2011
OWASP presentation on FISTA2011
 
Análise de Vulnerabilidades em Aplicações na Web Nacional
Análise de Vulnerabilidades em Aplicações na Web NacionalAnálise de Vulnerabilidades em Aplicações na Web Nacional
Análise de Vulnerabilidades em Aplicações na Web Nacional
 
Segurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes SociaisSegurança e Privacidade em Redes Sociais
Segurança e Privacidade em Redes Sociais
 
OWASP, PT.OWASP, IBWAS'10 & Cia.
OWASP, PT.OWASP, IBWAS'10 & Cia.OWASP, PT.OWASP, IBWAS'10 & Cia.
OWASP, PT.OWASP, IBWAS'10 & Cia.
 
Is the Web at Risk?
Is the Web at Risk?Is the Web at Risk?
Is the Web at Risk?
 
Owasp@iscte iul ferramentas-analise_vulnerabilidades
Owasp@iscte iul ferramentas-analise_vulnerabilidadesOwasp@iscte iul ferramentas-analise_vulnerabilidades
Owasp@iscte iul ferramentas-analise_vulnerabilidades
 
OWASP@ ISCTE-IUL, Segurança em PHP
OWASP@ ISCTE-IUL, Segurança em PHPOWASP@ ISCTE-IUL, Segurança em PHP
OWASP@ ISCTE-IUL, Segurança em PHP
 
OWASP @ ISCTE-IUL, OWASP Top 10 2010
OWASP @ ISCTE-IUL, OWASP Top 10 2010OWASP @ ISCTE-IUL, OWASP Top 10 2010
OWASP @ ISCTE-IUL, OWASP Top 10 2010
 
OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)
OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)
OWASP @ ISCTE-IUL - OWASP Top 10 (v2010)
 
OWASP @ ISCTE-IUL, Criptografia em PHP
OWASP @ ISCTE-IUL, Criptografia em PHPOWASP @ ISCTE-IUL, Criptografia em PHP
OWASP @ ISCTE-IUL, Criptografia em PHP
 

Web 2.0 e Software como Serviço (SaaS

  • 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

  • 3. 3 Web 2.0 e SAAS November 2008
  • 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. Aplicações Web 2.0 5 Web 2.0 e SAAS November 2008
  • 6. Aplicações Web 2.0   Aparecimento e Crescimento de Mass Media Sociais 6 Web 2.0 e SAAS November 2008
  • 7. 7 Web 2.0 e SAAS November 2008
  • 8. Evolução da Web 2.0 8 Web 2.0 e SAAS November 2008
  • 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. 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. Software como um Serviço - SaaS
  • 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. 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. 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
  • 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. 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. Web Services XML é a língua franca dos Web-Services 18 Web 2.0 e SAAS November 2008
  • 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. 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. Evolução das Arquitecturas Client- 3-tier Web Web Hybrid Fractal Server Applications Services P2P 21 Web 2.0 e SAAS November 2008
  • 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. 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. Mudança de Paradigma 24 Web 2.0 e SAAS November 2008
  • 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. 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. 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. Desenho de Software 28 Web 2.0 e SAAS November 2008
  • 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. Web Services   Web Services e a EAI   Modelo com EAI 30 Web 2.0 e SAAS November 2008
  • 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. Componentes Base dos Web-Services
  • 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. 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. 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. 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. 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. SOAP
  • 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. 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. 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. SOAP 42 Web 2.0 e SAAS November 2008
  • 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. 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. 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. 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. 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. 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. WSDL
  • 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. 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. 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. WSDL Interface Implementation <definitions> <definitions> <import> <import> <types> <service> <message> <port> <portType> <binding> 53 Web 2.0 e SAAS November 2008
  • 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. 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. 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. 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. 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. 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. UDDI
  • 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. 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. 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. 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. UDDI 65 Web 2.0 e SAAS November 2008
  • 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. 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. 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
  • 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. 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