Download - Tópicos de Sistemas de Informação A
![Page 1: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/1.jpg)
Tópicos de Sistemas de Informação A
Carlos Oberdan Rolim
Ciência da Computação
![Page 2: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/2.jpg)
UDDI
(Universal Description, Discovery and Integration protocol)
![Page 3: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/3.jpg)
Motivação
![Page 4: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/4.jpg)
Definição
UDDI cria uma plataforma padrão que possibilita que companhias e aplicações encontrem e usem Web Services de forma rápida, fácil e dinâmica
Permite a criação de registros centrais de serviços com diferentes propósitos
Tem como objetivo ser um mediador do serviço, permitindo que os clientes requisitantes encontrem um fornecedor do serviço apropriado
![Page 5: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/5.jpg)
Definição
Esforço de líderes de mercado de serviços eletrônicos através do consórcio OASIS
Segundo a Organization for the Advancement of Structured Information Standards, é um elemento central do grupo de padrões que compõe a pilha de componentes dos serviços web
![Page 6: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/6.jpg)
Definição
A especificação UDDI define:
APIs SOAP utilizadas para publicar e obter informações de um registro UDDI
Esquemas XML do modelo de dados do registro e do formato das mensagens SOAP
Definições WSDL das APIs SOAP
Definições de registro UDDI (modelos técnicos - tModels) de diversos sistemas de identificação e categorização, que podem ser utilizados para identificar e categorizar registros UDDI
![Page 7: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/7.jpg)
Origem
Criado em parceria com Ariba, IBM e Microsoft
Versão 1.0
lançada em Setembro 2000
Em Maio de 2001
Microsoft e a IBM lançaram, o primeiro site operador de UDDI, o UDDI Registry.
![Page 8: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/8.jpg)
Origem
Em Junho de 2001, foi anunciada a versão 2.0 de UDDI, incluindo novas características contendo:
Suporte melhorado para internacionalização. Neste sentido, negócios podem descrever eles próprios e seus serviços descritos em múltiplos idiomas.
Suporte melhorado para descrever organizações complexas. Por exemplo, para um negócio poder publicar unidades de negócio, departamentos, ou divisões em empresas, e atrelá-los juntos sob um único chapéu.
Um conjunto melhorado de opções de busca.
Versão atual 3.0
Fevereiro de 2005
![Page 9: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/9.jpg)
Arquitetura Orientada-a-Serviço e UDDI
Links de Documentos
WSDL
Aplicação de Negócio
Provedor do Serviço
Aplicação de Negócio
Consumidordo Serviço
UDDI Business Registry
Publicação BuscaAPI UDDI
Mensagens SOAP
Site
Operador de
UDDI
![Page 10: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/10.jpg)
O Processo da Descoberta de um Serviço: Discovery
Discovery é o processo de localizar serviços na Web através de registries.
Registries de serviços na Web são repositórios contendo documentos que descrevem dados de negócios
Registries, também, proporcionam características tais como, capacidade de busca e acesso programático para aplicações remotas
![Page 11: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/11.jpg)
O Processo da Descoberta de um Serviço: Discovery
Usando um registry, uma organização que deseja utilizar, por exemplo, um serviço para processar pagamentos de tickets de alimentação, por exemplo, pode localizar todos os serviços disponíveis publicamente, que proporcionam a necessária funcionalidade.
A organização pode comparar serviços e então tomar a decisão, de qual serviço, melhor se ajusta às necessidades da organização.
Discovery pode ser caracterizado em Discovery direto ou Discovery indireto.
![Page 12: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/12.jpg)
Discovery direto
Discovery direto é o processo de obter dados a partir de um registry mantido por um provedor de serviço.
Dados obtidos por Discovery direto são mais precisos e, portanto, confiáveis, visto que a organização que provê a informação também opera o serviço na Web.
![Page 13: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/13.jpg)
Discovery indireto
Com discovery indireto, uma organização obtém dados através de uma terceiro registry, cujos dados podem não ser precisos, porque provedores de serviço poderiam não atualizar informação nesse registry tão freqüentemente.
Quando realizando Discovery indireto, organizações devem colocar a seguinte questão:
Quão freqüente, terceiros registries interagem com provedores de serviço para garantir que os dados são ainda precisos?
Embora discovery indireto tenham seus “drawbacks”, ele ainda permite avaliar serviços de vários provedores antes do compromisso para usar um serviço particular.
![Page 14: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/14.jpg)
Componentes UDDI
Núcleo constituído de duas partes:
UDDI é uma especificação técnica para construir um diretório distribuído de negócios (businesses) e serviços na Web. A informação UDDI é armazenada dentro de um formato específico XML, definido por WSDL e XML Schema. A especificação inclui detalhes de uma API própria para buscar dados existentes ou publicar novos dados.
UDDI Business Registry, também conhecido como “UDDI cloud services” é uma implementação operacional completa da especificação UDDI. Tal parte habilita qualquer um a buscar dados UDDI existentes, e também, a qualquer empresa registrar-se a si própria e seus respectivos serviços
![Page 15: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/15.jpg)
Componentes UDDI
A informação capturada no contexto UDDI são classificadas em três categorias principais:
Páginas brancas
Páginas amarelas
Páginas verdes
![Page 16: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/16.jpg)
Páginas brancas
Páginas Brancas (White Pages)
incluem informação geral sobre uma empresa específica, como por exemplo, nome de um negócio, descrição do negócio, informação de contato, endereço, números de telefone, fax, ou mesmo incluir identificadores de negócios (business identifiers), no formato de classificações Dun & Bradstreet’s D-U-N-S (Data Universal Numbering System), que são números de nove dígitos atribuídos a negócios.
UDDI versão 2.0 oferece suporte para identificadores específicos de indústrias, tal como o sistema do Standard Industrial Classification (SIC), o qual atribui identificadores numéricos únicos a indústrias. Por exemplo, 7371 representa Serviços de Programação de Computadores e 2621 representa Paper Mills.
![Page 17: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/17.jpg)
Páginas amarelas
Páginas Amarelas (Yellow Pages)
incluem dados de classificação geral para qualquer empresa ou serviço oferecido. Por exemplo, esses dados podem incluir a indústria, o produto, ou códigos geográficos baseados sobre taxionomias padronizadas.
![Page 18: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/18.jpg)
Páginas verdes
Páginas Verdes (Green Pages)
contém informação técnica sobre um serviço na Web (Web service)
Geralmente, essa informação inclui um apontador (ponteiro) para uma especificação externa e um endereço para invocar o serviço.
UDDI não é restrito a descobrir serviços baseados em SOAP. Ao contrário, pode ser usado também, para descrever qualquer serviço, desde uma única página Web ou endereços de email, até serviços CORBA, Java RMI, ou mesmo, serviços EJB.
![Page 19: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/19.jpg)
Tipos de registros previstos
Privado
registro interno
protegido por um firewall
isolado da rede pública.
acesso as tarefas administrativas e aos dados do registro é de forma segura.
os dados não são compartilhados com outros registros
Analogia: intranet
![Page 20: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/20.jpg)
Tipos de registros previstos
Semi-Privado
registro desenvolvido dentro de um ambiente controlado.
acesso para o mundo externo é controlado e é compartilhado apenas com sócios externos confiáveis
tarefas administrativas podem ser delegadas a partes confiáveis
podem ser compartilhados dados com outros registros de um modo controlado
Analogia: Extranet
![Page 21: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/21.jpg)
Tipos de registros previstos
Público
Da perspectiva de um usuário final, um registro público parece ser um serviço em uma “nuvem”.
Ainda que possam ser efetuadas funções administrativas de forma segura, o acesso aos dados dos registros é essencialmente aberto e público.
Os dados podem ser compartilhados ou transferidos para outros registros.
Analogia: site web
![Page 22: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/22.jpg)
Registro Privado afiliado
UBR
Nodo 2
UBR
Nodo 1
Registro
Privado Afiliado
Registro
Privado
Registro
Privado
Domínio privado
Domínio semi-privado
Replicar
Publicar
Publicar
Publicar
Domínios compartilhados
Domínio público
Diagrama de interação dos registros UDDI versão 3.
![Page 23: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/23.jpg)
Estrutura de uma publicação UDDI
Baseado em XML
Tecnologia neutra de dados e permite descrever relações hierárquicas de um modo natural
Usa XSD
UDDI XSDS definem alguns tipos centrais de centro de informação que provê os tipos de informação que os usuários e aplicações precisariam conhecer por usar um serviço de rede particular
Junto, estes formam um modelo básico de informação e um framework para interação de registros UDDI
Divide-se nos seguintes elementos:
businessService
businessEntity
bindingTemplate
tModels
![Page 24: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/24.jpg)
businessEntity:
representa o provedor de um Web Service.
Apresenta dados de contato, categoria, serviços oferecidos, identificadores de negócio de uma determinada organização / empresa.
Estrutura de uma publicação UDDI
![Page 25: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/25.jpg)
01 <businessEntity businessKey="uuid:C0E6D5A8-C446-4f01-99DA-70E212685A40"02 operator="http://www.ibm.com" authorizedName="John Doe">03 <name>Cia Oi</name>04 <description>descricao</description>05 <contacts>06 <contact useType="general info">07 <description>Informacoes gerais</description>08 <personName>Joao</personName>09 <phone>0123-4567</phone>10 <email>[email protected]</email>11 </contact>12 </contacts>13 <businessServices> ... </businessServices>14 <identifierBag>15 <keyedReference TModelKey="UUID:8609D82E-FE1F-4E5B-B203-3CB14AD31423"16 name="D-U-N-S" value="123456" />17 </identifierBag>18 <categoryBag>19 <keyedReference TModelKey="UUID:C0C9FEF3-173F-414D-8A2B-5004328E5BB2"20 name="NAICS" value="112343" />21 </categoryBag>22 </businessEntity>
Exemplo de businessEntity
![Page 26: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/26.jpg)
Estrutura de uma publicação UDDI
businessService:
elemento filho do elemento businessEntity
descreve a função de negócio de um serviço.
Indicadores únicos que indicam as categorias as quais o Web Service pertence (businessKey, serviceKey).
01 <businessService serviceKey="uuid:D6F1B765-BDB3-4837-828D-8284301E5A2A"02 businessKey="uuid:C0E6D5A8-C446-4f01-99DA-70E212685A40">03 <name>Oi Web Service</name>04 <description>Eh um oi Web service</description>05 <bindingTemplates> ... </bindingTemplates>06 <categoryBag />07 </businessService>
![Page 27: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/27.jpg)
bindingTemplate:
referencia os detalhes técnicos do serviço, interface ou API.
Estrutura de uma publicação UDDI
01 <bindingTemplate serviceKey="uuid:D6F1B765-BDB3-4837-828D-8284301E5A2A"02 bindingKey="uuid:C0E6D5A8-C446-4f01-99DA-70E212685A40">03 <description>Hello World </description>04 <accessPoint URLType="http">http://localhost:8080</accessPoint>05 <TModelInstanceDetails>06 <TModelInstanceInfo TModelKey="uuid:EB1B645F-CF2F-4868705F5904">07 <instanceDetails>08 <overviewDoc>09 <description>Descricao WSDl</description>10 <overviewURL>http://localhost/helloworld.wsdl</overviewURL>11 </overviewDoc>12 </instanceDetails>13 </TModelInstanceInfo>14 </TModelInstanceDetails>15 </bindingTemplate>
![Page 28: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/28.jpg)
tModels: qualquer conceito abstrato pode ser registrado, como taxonomia, transportes, assinaturas digitais, etc.
Em muitos casos, o tModel contém o arquivo WSDL que descreve a interface SOAP do serviço web, mas o tModel é flexível o suficiente para descrever quase todo tipo de serviço.
Estrutura de uma publicação UDDI
01 <TModel TModelKey="uuid:xyz987..."02 operator="http://www.ibm.com" authorizedName="John Doe">03 <name>Oi Interface Port Type</name>04 <description>descricao</description>05 <overviewDoc/>06 <overviewURL>http://localhost/helloworld.wsdl</overviewURL>07 </overviewDoc>08 </TModel>
![Page 29: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/29.jpg)
Estrutura de uma publicação UDDI
Estrutura UDDI
![Page 30: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/30.jpg)
Modelo de dados
![Page 31: Tópicos de Sistemas de Informação A](https://reader030.vdocuments.pub/reader030/viewer/2022020417/568136b2550346895d9e56fc/html5/thumbnails/31.jpg)
Modelo de dados
As versões 2 e 3 do UDDI adicionaram dois tipos para facilitar a afiliação dos registros, são:
publisherAssertion: cria o relacionamento entre entidades no registro.
Subscription: localiza mudanças para uma lista de entidades.