Faculty of Informatics, University of Lugano School of Information, UC Berkeley

Introduction

From SOA to REST:
Designing and Implementing RESTful Services
[./]
Tutorial at WWW2009 [http://www2009.org/] (Madrid, Spain)

Cesare Pautasso (Faculty of Informatics, University of Lugano)
Erik Wilde (School of Information, UC Berkeley)

April 21, 2009

Creative Commons License [http://creativecommons.org/licenses/by/3.0/]

This work is licensed under a CC
Attribution 3.0 Unported License
[http://creativecommons.org/licenses/by/3.0/]

Contents Cesare Pautasso: Introduction

Contents

Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(2) Abstract

This introduction presents the schedule, the tutorial presenters, and some background for the tutorial. Specifically, we briefly mention all the *OA terms that have been invented in recent years, such as SOA (Services), ROA (Resources), WOA (Web), SynOA (Syndication), and EOA (Event), and briefly set them into context. Our main goal is to explain our notion of SOA for the purpose of this tutorial, and what we perceive as the core tasks when moving from SOA to REST.



Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(3) Schedule



Presenters

Outline (Presenters)

  1. Presenters [2]
  2. *OA Overload [6]
Presenters Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(5) Cesare Pautasso

usi-complete.png

Presenters Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(6) Erik Wilde

ischool-logo.png

*OA Overload

Outline (*OA Overload)

  1. Presenters [2]
  2. *OA Overload [6]
*OA Overload Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(8) What is SOA?

  1. Alignment of business objectives and IT
    • can be implemented with any architecture, technology, products
    • SOA explained like this is more for business people
  2. Technical architecture (interfaces are exposing services)
    • focus on IT and the idea of services as the main abstraction
    • still little guidance on how exactly a service is identified and exposed
  3. SOA as the high-level explanation for WS-* Web Services [http://en.wikipedia.org/wiki/Web_service]
    • this is how SOA as a buzzword started
    • most SOA products are focusing on this view of Web Services


*OA Overload Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(9) What are Web Services?

Definition: A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.

Web Services Architecture, W3C Working Group Note, February 11, 2004 [http://www.w3.org/TR/ws-arch/#whatis]



*OA Overload Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(10) Resource Oriented Architecture (ROA)

RESTful Web Services

*OA Overload Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(11) Web Oriented Architecture (WOA)



*OA Overload Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(12) Syndication Oriented Architecture (SynOA)



*OA Overload Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(13) Event Oriented Architecture (EOA)



Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(14) Conclusions



Cesare Pautasso: Introduction
hotspot/hotspot/layout/ischool+usi/usi+ischool.png

(15) Schedule



April 21, 2009 From SOA to REST:
Designing and Implementing RESTful Services
[./]
Tutorial at WWW2009 [http://www2009.org/] (Madrid, Spain)