Your SlideShare is downloading. ×
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Arquitetura orientada a serviços (SOA)

1,943

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,943
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
77
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Arquitetura Orientada aServiços (SOA) Acadêmico: Helio Henrique Lopes Costa Monte Alto R.A.: 53729
  • 2. Sumário• Definição• Princípios• Web Services• Arquitetura de Web Services• XML - Extensible Markup Language• SOAP – Simple Object Access Protocol• WSDL – Web Service Description Language• UDDI – Universal Description, Discovery and Integration• SOA e OO• Benefícios da SOA• Referências
  • 3. Definição• Arquitetura de software: estrutura do sistema, que inclui elementos de software, as propriedades externamente visíveis desses elementos e as relações entre elas• SOA (Service-oriented architecture): • Recursos são empacotados como serviços bem definidos; • Modelo que visa decompor um sistema em uma coleção de pequenas unidades relacionadas entre si;
  • 4. Definição• Serviços: • Usam linguagem de descrição padrão; • Se comunicam através de solicitações de execução de operações; • Provê flexibilidade e agilidade para eliminar barreiras na integração de aplicações; • Constituídas de: Interface e implementação; • Interfaces são independentes de plataforma; • Coordenação de atividades através de passagens de mensagens entre serviços;
  • 5. Princípios• Reuso (de recursos)• Contrato formal • Contratos de serviços definem formalmente as regras e características do serviço, suas operações e mensagens• Fraco acoplamento • Independência entre os serviços• Abstração • “Caixa-preta”, detalhes de implementação são escondidos• Composição • Um serviço pode ser membro de uma composição de serviços
  • 6. Princípios• Autonomia • Alto nível de controle sobre seu ambiente e seus recursos básicos• Estado • Permanecem com informações de estado apenas quando necessário, minimizando o consumo de recursos• Descoberta • São externamente descritos para serem encontrados e interpretados
  • 7. Princípios• Autonomia, fraco acoplamento, abstração e contrato formal são considerados o núcleo fundamental que forma a base da SOA.
  • 8. Web Services• Tecnologia para implementar SOA;• Provê padronização • Através de conjunto de especificações e protocolos que definem as interfaces e contratos de serviços;• Disponíveis por meio de uma rede;• Padrão XML (Extensible Markup Language): • Mensagens e descrição de serviços• Sem ligação com qualquer linguagem de programação ou sistema operacional
  • 9. Web Services• Significativa tecnologia na evolução da Web e da computação distribuída;• Interfaces de Web Services podem mapear qualquer tipo de software • Ex: sistema de middleware, SGDBs e aplicações empacotadas
  • 10. Arquitetura de Web Services• Papéis individuais de cada ator: • Provedor de serviços: implementa e torna-o disponível • Consumidor de serviços: utiliza-o por meio de uma conexão de rede e envia uma solicitação XML • Registro de serviços: onde se publica e se pode encontrar serviços
  • 11. Arquitetura de Web Services• A interação entre os papéis envolve as operações: • Publicação • Descoberta • Ligação
  • 12. Arquitetura de Web Services• Pilha de protocolos
  • 13. XML – Extensible Markup Language• Formato simples e flexível para representar informação estruturada;• Principais características: • Diretamente utilizável na Internet; • Suporta grande variedade de aplicações; • Facilidade de escrever programas que processam documento XML • Devem ser legíveis e claros para os humanos; • Projeto deve ser formal e conciso; • Facilidade para criar documentos XML; • Forma de descrição, armazenamento e transmissão dos dados;
  • 14. SOAP – Simple Object Access Protocol• Protocolo de comunicação baseado em XML;• Transporte: HTTP• Independente de plataforma;• Especificação: três partes principais: • Especificação do envelope SOAP: regras para encapsulamento dos dados; • Regras de codificação dos dados: baseadas em XML Schema; • Convenções RPC: permite ao cliente especificar nome do método remoto e parâmetros e receber uma resposta;
  • 15. SOAP – Simple Object Access Protocol• Estrutura da mensagem SOAP:
  • 16. SOAP – Simple Object Access Protocol
  • 17. SOAP – Simple Object Access Protocol• Considerações: • SOAP torna possível que Web Services troquem dados, independente de onde estão localizados; • Fornece um mecanismo simples e extensível para mapear múltiplos tipos de interações de mensagens e sistemas de software subjacente
  • 18. WSDL – Web Service DescriptionLanguage• Define como descrever Web Services com XML;• Representa um contrato entre o serviço consumidor e o serviço provedor • Cliente pode localizar um web service e chamar qualquer uma de suas funções públicas;• Informações principais do protocolo: • De interface (descreve funções disponíveis); • De tipo de dados (para as mensagens); • Sobre o protocolo de transporte utilizado; • De endereço (para localizar o serviço especificado);
  • 19. WSDL – Web Service DescriptionLanguage• Dividida em seis elementos principais:
  • 20. WSDL – Web Service DescriptionLanguage
  • 21. WSDL – Web Service DescriptionLanguage• Considerações: • WSDL fornece um mecanismo para a definição de interfaces para web services; • Contém descrição dos tipos de dados e estruturas usadas em mensagens, bem como informações necessárias para o mapeamento da definição dos web services;
  • 22. UDDI – Universal Description, Discoveryand Integration• Descrever, descobrir e integrar web services;• Diretório distribuído de negócios e serviços;• Dados são divididos em 3 categorias: • Páginas brancas: informações gerais; • Páginas amarelas: dados de classificação geral; • Páginas verdes: informações técnicas, incluindo um ponteiro para uma especificação externa ou um endereço para chamar o WS• Fornece um mecanismo flexível, poderoso e extensível para registrar e descobrir informações de negócio por meio da Internet;
  • 23. SOA e OO• Enquanto o foco do paradigma de Programação Orientada a Objetos é o empacotamento de dados com operações, o de SOA é a tarefa ou função de negócio;• OO pretende unir os métodos a um objeto de dados, SOA pretende fornecer serviços que têm acesso aos métodos;• Para usar um objeto, ele primeiro precisa ser instanciado;• Um objeto expõe a estrutura, mas não a semântica, a não ser capturando comentários na definição da classe. SOA enfatiza a necessidade de clarificar a semântica;
  • 24. Benefícios da SOA• Facilitar gerenciamento do crescimento dos sistemas corporativos de larga escala;• Facilitar escalabilidade da Internet para uso por serviços; • Escalabilidade para organizar grandes sistemas em rede;• Reduzir custos nas organizações para cooperação delas;• Agilidade nos negócios e adaptabilidade • Habilidade para escalar e evoluir -> portifólio de TI adaptável para diferentes necessidades de um domínio de problema;
  • 25. Referências• CERAMI, E. Web Services Essentials: Distributed Applications with XML-RPC,• SOAP, UDDI & WSDL. OReilly, 2002.• KREGER, H. Web Services Conceptual Architecture. IBM Software Group.• 2001.• Modelo de Referência para Arquitetura Orientada a Serviço 1.0. Comitê de Especificação 1, 19 de Julho de 2006. Disponível em <http://www.pcs.usp.br/~pcs5002/oasis/soa-rm-csbr.pdf>. Acesso em Maio de 2011.• VIVIAN, R. L. "Arquitetura Orientada a Serviços em Aplicações Web Sensíveis ao Contexto“. Monografia de Especialização de Desenvolvimento de Sistemas para Web, Universidade Estadual de Maringá, 2010.• W3C. Extensible Markup Language. Obtido via Internet: http://www.w3.org/XML. Acesso em: mai. 2011.

×