Arquiteturas SOA, WOA e REST

Lucas Barsand
Lucas Castro
Mateus Miquelão
Roger Avelar
Túlio Dourado




  Universidade Federal de Minas Gerais, Abril 2012
SOA    O que é




Service-oriented architecture, ou arquitetura
orientada a serviços, o SOA é um estilo de
arquitetura de software, que tem como objetivo
aumentar a produtividade e diminuir os custos
por meio de uma centralização de informações
em comum entre varios sistemas internos e
externos, deixando a comunicação entre
vários departamentos mais rápida e eficaz.
SOA      conceitos básicos - serviço




Um serviço, do ponto de vista da arquitetura SOA, é
uma função de um sistema computacional que é
disponibilizado para outro sistema. Um serviço deve
funcionar de forma independente do estado de outros
serviços, exceto nos casos de serviços compostos
(composite services), e deve possuir uma interface bem
definida. Normalmente, a comunicação entre o sistema
cliente e aquele que disponibiliza o serviço é realizada
através de web services.
SOA    conceitos básicos




Como o próprio nome sugere, esta arquitetura
dispõe as aplicações em forma de serviços, de
uma forma que torne fácil estabelecer ligações
e acessos por uma determinada aplicação às
demais ferramentas e funcionalidades de um
sistema, e até mesmo estabelecer conexões
com sistemas externos.
SOA    produtos no mercado




● WebSphere DataPower Series
    (IBM WebSphere DataPower SOA Appliances)

● Oracle SOA Suite
    (Oracle Fusio Middleware)
● SOA Expressway
    (Intel SOA Products)

● SOLA
    (SOA Software)
SOA      padrões e formatos existentes




●   Soap 1.1
●   WSDL 1.1
●   WS-BPEL 2.0
●   XML Schema 1.0
●   XML Signature
●   XML Encryption
●   XQuery 1.0
WOA

● Web Oriented Architecture

● é uma extensão do SOA para aplicações na web

● introduz a empresa em um ambiente propício a
  pesquisa

● provoca/facilita mudanças rápidas

● informações acessadas e manipuladas pelos
  protocolos definidos na URI
REST       O que é



A Transferência de Estado Representacional (Representational
State Transfer) ou somente (REST) é uma técnica de engenharia
de software para sistemas hipermídia distribuídos como a World
Wide Web.

É a utilização de uma ferramenta de protocolo, por exemplo o
HTTP, para agilizar e com mais segurança permitir a troca de
informação entre o usuário e o servidor.

No sistema REST, cada recurso é unicamente direcionado através
da sua URI.
REST       Produtos no mercado




●   eBay oferece uma interface REST
●   O Projeto "Seniores Canada On-line" do Governo do Canadá
    oferece um interface REST
●   Amazon.com oferece sua interface tanto em formato REST
    como em formato SOAP (sendo a versão REST a que recebe
    maior tráfego)
●   Yahoo! oferece uma API em REST
REST     Como está sendo usada



As aplicações descritas anteriormente não são
totalmente escritas em REST puramente, isto é, não
respeitam todas as restrições que impõe a arquitetura
REST. E sim, todas são inspiradas em REST e
respeitam os aspectos mais significativos e restritivos da
sua arquitetura, em particular a restrição de "interface
uniforme".

Estes serviços são denominados "Acidentalmente
RESTful".
REST     Padrões e formatos existentes




●   RDF
●   XTM Atom
●   RSS (e suas várias formas)
●   XML com XLink.
REFERENCIAS

● http://pt.wikipedia.org/wiki/REST

● http://www.infoq.com/br/articles/rest-introduction

● http://en.wikipedia.org/wiki/Service-oriented_architecture

● https://www.google.com/search?
  client=ubuntu&channel=fs&q=SOa+products&ie=utf-
  8&oe=utf-8

● http://www.youtube.com/watch?v=f9lOMGvTUVo

Arquiteturas SOA, WOA e REST

  • 1.
    Arquiteturas SOA, WOAe REST Lucas Barsand Lucas Castro Mateus Miquelão Roger Avelar Túlio Dourado Universidade Federal de Minas Gerais, Abril 2012
  • 2.
    SOA O que é Service-oriented architecture, ou arquitetura orientada a serviços, o SOA é um estilo de arquitetura de software, que tem como objetivo aumentar a produtividade e diminuir os custos por meio de uma centralização de informações em comum entre varios sistemas internos e externos, deixando a comunicação entre vários departamentos mais rápida e eficaz.
  • 3.
    SOA conceitos básicos - serviço Um serviço, do ponto de vista da arquitetura SOA, é uma função de um sistema computacional que é disponibilizado para outro sistema. Um serviço deve funcionar de forma independente do estado de outros serviços, exceto nos casos de serviços compostos (composite services), e deve possuir uma interface bem definida. Normalmente, a comunicação entre o sistema cliente e aquele que disponibiliza o serviço é realizada através de web services.
  • 4.
    SOA conceitos básicos Como o próprio nome sugere, esta arquitetura dispõe as aplicações em forma de serviços, de uma forma que torne fácil estabelecer ligações e acessos por uma determinada aplicação às demais ferramentas e funcionalidades de um sistema, e até mesmo estabelecer conexões com sistemas externos.
  • 7.
    SOA produtos no mercado ● WebSphere DataPower Series (IBM WebSphere DataPower SOA Appliances) ● Oracle SOA Suite (Oracle Fusio Middleware) ● SOA Expressway (Intel SOA Products) ● SOLA (SOA Software)
  • 8.
    SOA padrões e formatos existentes ● Soap 1.1 ● WSDL 1.1 ● WS-BPEL 2.0 ● XML Schema 1.0 ● XML Signature ● XML Encryption ● XQuery 1.0
  • 9.
    WOA ● Web OrientedArchitecture ● é uma extensão do SOA para aplicações na web ● introduz a empresa em um ambiente propício a pesquisa ● provoca/facilita mudanças rápidas ● informações acessadas e manipuladas pelos protocolos definidos na URI
  • 10.
    REST O que é A Transferência de Estado Representacional (Representational State Transfer) ou somente (REST) é uma técnica de engenharia de software para sistemas hipermídia distribuídos como a World Wide Web. É a utilização de uma ferramenta de protocolo, por exemplo o HTTP, para agilizar e com mais segurança permitir a troca de informação entre o usuário e o servidor. No sistema REST, cada recurso é unicamente direcionado através da sua URI.
  • 12.
    REST Produtos no mercado ● eBay oferece uma interface REST ● O Projeto "Seniores Canada On-line" do Governo do Canadá oferece um interface REST ● Amazon.com oferece sua interface tanto em formato REST como em formato SOAP (sendo a versão REST a que recebe maior tráfego) ● Yahoo! oferece uma API em REST
  • 13.
    REST Como está sendo usada As aplicações descritas anteriormente não são totalmente escritas em REST puramente, isto é, não respeitam todas as restrições que impõe a arquitetura REST. E sim, todas são inspiradas em REST e respeitam os aspectos mais significativos e restritivos da sua arquitetura, em particular a restrição de "interface uniforme". Estes serviços são denominados "Acidentalmente RESTful".
  • 14.
    REST Padrões e formatos existentes ● RDF ● XTM Atom ● RSS (e suas várias formas) ● XML com XLink.
  • 16.
    REFERENCIAS ● http://pt.wikipedia.org/wiki/REST ● http://www.infoq.com/br/articles/rest-introduction ●http://en.wikipedia.org/wiki/Service-oriented_architecture ● https://www.google.com/search? client=ubuntu&channel=fs&q=SOa+products&ie=utf- 8&oe=utf-8 ● http://www.youtube.com/watch?v=f9lOMGvTUVo