Click here to load reader
Upload
geraldo-cruz
View
65
Download
0
Embed Size (px)
Citation preview
M-II
José Francisco Salm JuniorDiretor de Engenharia de Sistemas Instituto Stela
Arquitetura SOA: Uso eficiente Arquitetura SOA: Uso eficiente de Web Services, WSDL e de Web Services, WSDL e UDDIUDDI
2 M-II
Instituto StelaInstituto StelaMissão do Instituto StelaMissão do Instituto StelaConjugar a pesquisa científica com a inovação Conjugar a pesquisa científica com a inovação tecnológica na geração de conhecimento que vise o tecnológica na geração de conhecimento que vise o desenvolvimento das organizações e da sociedadedesenvolvimento das organizações e da sociedade
Visão do Instituto StelaVisão do Instituto StelaSer referência internacional em inovação científica eSer referência internacional em inovação científica etecnológica, elo entre academia e mercado, promotor tecnológica, elo entre academia e mercado, promotor de de spin-offsspin-offs empresariais e gerador de soluções de empresariais e gerador de soluções de impacto sócio-econômicoimpacto sócio-econômico
3 M-II
AgendaAgenda
• Sociedade Orientada a Serviços
• Conceitos em Service-Oriented Architecture (SOA)
• Aspectos relevantes em Web Services e SOA
4 M-II
Imagine se tivéssemos que fazer tudo sozinhos, sem puder
contar com serviços de terceiros.
Sociedade Orientada a Serviços
5 M-II
Transformação do Artesão em Transformação do Artesão em Provedor de ServiçosProvedor de Serviços
• Muito do que nossa sociedade é hoje provem da:– Especialização– Padronização– Escalabilidade
• Nossa sociedade é quase que exclusamente orientada a serviços– Transporte – Telecomunicação– Planos de Saúde– Bibliotecas Virtuais / Busca especializada
6 M-II
O que é SOAO que é SOA
SOA é uma arquitetura de software que está baseada nos elementos de repositório de serviços, BUS de serviços e aplicação
frontend.
7 M-II
Principais Principais elementos SOAelementos SOA
SOASOA
Serviços (Web Services)
Serviços (Web Services)
Repositório de Serviços)
Repositório de Serviços)
ImplementaçãoImplementação Regras de Serviços / SLA-WS
Regras de Serviços / SLA-WS
Lógica na InstituiçãoLógica na Instituição
DadosDados
Aplicação Frontend Bus de Serviços
Interface
8 M-II
Conectividade possibilita o Conectividade possibilita o processamento global da informaçãoprocessamento global da informação
Informação
Processos
Local
1980 1990 2000 2010
Web
XMLWS
WAN
Web
LAN
LANInternet
Global
SOA
9 M-II
O que são O que são Web ServicesWeb Services• Serviços Web são aplicações de
negócio modulares• Nele é exposta a lógica de negócio em
forma serviços sobre a Internet através de interfaces programáveis
• Utiliza de protocolos de Internet com o propósito de fornecer meios para buscar, assinar e acessar esses serviços
10 M-II
Modelo básico operacional dos Modelo básico operacional dos Web ServicesWeb Services
• Serviços Web podem ser conceituados em um modelo simples operacional que tem um pouco em comum com o modelo padrão de comunicação
• As operações são concebidas em 3 distintas regras e relacionamentos que definem os usuários e fornecedores dos serviços:– Service provider– Service broker– Service requestor
11 M-II
Modelo básico operacionalModelo básico operacional– Service provider: Desenvolvedor e publicador dos serviços (interage
com o service broker); – Service broker: Responsável por registrar e descobrir os serviços na
Web. Ele lista os vários tipos de serviços, descrições e locais do serviços que auxiliam o solicitante dos serviços (service requestor) a encontrar e acessar os serviços requiridos;
– Service requestor: Usuário dos serviços. Ele localiza o serviço usando o service broker, invoca o serviço requerido e executa ele do service provider
Developing Java Web Services. Nagappan, et al (2004)
12 M-II
Árvore de PadrõesÁrvore de Padrões
Representação de IA
Linguagens de
Semântica
Linguagens de Gestão de Conteúdo
Linguagem de Processos
Linguagens de Modelagem de Software
Adaptado de: IBM
13 M-II
Arquitetura em camadas (WS)Arquitetura em camadas (WS)Interface de Serviços com o usuário
Diálogo com o usuário (Troca de Mensagem)
Diretório de Serviços
Coordenação dos Serviços
XML Schema +WSDL + SOAP
WSDL + SOAP
Broker (UDDI + WSDL)
Broker (UDDI + WSDL)
14 M-II
Entidade de Informação em SOAEntidade de Informação em SOA
• “No coração de um Web services está um problema complexo: com uma aplicação distribuída trata a necessidade de compartilhamento de dados”– Identificação e equivalência– Autenticação– Autorização e privacidade– mediação– sincronização
fonte: The Dataweb: An Introduction to XDI, Drummond Reed et al.
15 M-II
Entidades de informação em SOAEntidades de informação em SOA• Diferentes dimensões estão presentes
quanto a gerencia da informação agregada em uma SOA
Entidades de
Informação
Entidades de
Informação
Identidade
Conteúdo
Estado
Localização
Replicação
Privacidade
Específicoto SOA
16 M-II
Padrões Web vs. Padrões Padrões Web vs. Padrões DatawebDataweb
URIs XRIs
HTML XML/XDI
HTTPXDI/HTTPXDI/SOAP
100% endereçamento de recurso
Representação comume formato de link’s
Protocolo de intercâmbio
Web Dataweb
fonte: Drummond Reed
17 M-II
Padrões Web vs. Padrões DatawebPadrões Web vs. Padrões Dataweb
HTML
WebsiteA
HTML
HTML HTML
HTML HTML
HTML HTML
HTML HTML
WebsiteB
XDI Linkcontracts
XML/XDI
Dataweb siteA
XML/XDI
XML/XDI
XML/XDI
XML/XDI
XML/XDI
XML/XDI
XML/XDI
XML/XDI
XML/XDI
Dataweb siteB
fonte: Drummond Reed
18 M-II
Projeto de SOA e WSProjeto de SOA e WS
19 M-II
Possibilidades com os PadrõesPossibilidades com os Padrões
20 M-II
Especificando ContratosEspecificando Contratos
• Dois tipos diferentes de contratos:– Contrato de Utilização: contrato entre a
interface do objeto e seus clientes;
– Contrato de Realização: contrato entre a especificação do WS e sua implementação
21 M-II
Contrato de Contrato de UtilizaçãoUtilização• Define o relacionamento entre a interface do
objeto WS e o cliente (usuário), e é especificado em forma de uma interface.– Operações: uma lista de operações que a interface
dispoem, incluindo suas assinaturas e definições;
– Modelo de Informação: a definição abstrata de uma informação ou estado existente entre o cliente e o objeto que dá suporte a interface.
22 M-II
Contrato de Contrato de UtilizaçãoUtilizaçãoEspecificaçãodo WS
Cliente
Interface
utilização
Pré-Condições : é uma afirmação que o componente assume ser verdade antes que uma operação seja invocada.
Pós-Condição :é uma afirmação do componente garante imediatamente após a operação ser invocada. É um predicado sobre os parâmetros de entrada e de saída, bem como para o estado do componente logo após a operação ser invocada
23 M-II
Onda SOA – ou esperar pela Onda SOA – ou esperar pela tsunamitsunami
Especificaçãode Núcleo
EspecificaçãoAvançada
EspecificaçãoSemântica
SOAP, WSDLUDDI, BPELWS-Security etc.
OWLe outros
?
Adaptado de: IBM