A couple of weeks I had the pleasure of visiting the CETINA Research Institute at URJC (http://www.cetinia.urjc.es/) in Madrid for an Invited Talk. I pulled together some thoughts from 3scale and some R&D worked I've been involved in to muse about how the web will evolve. Fun to be there - thanks to CETINA and Sascha in particular for the invite!
1 of 75
Downloaded 98 times
More Related Content
Web APIs - Infrastructure for the (Intelligent) Programmable Web (R&D Talk)
1. Web APIs - Infrastructure for the
(Intelligent) Programmable Web
Steven Willmott, 3scale networks
2. Web Services will fundamentally
change the way the Internet
works within the next 5-7 years
3. Web Services will fundamentally
change the way the Internet
works within the next 5-7 years
(and much of that change will happen
in the next 2-3)
4. Change in what way?
Web applications will be totally different
The way content is generated, manipulated and
consumed will be totally different
Revenue streams and business models will be totally
different
5. The adoption of Amazon's Web services is currently
driving more network activity than everything
Amazon does through their traditional Web sites.
Jeff Bar (Amazon evangelist) / Dion Hinchcliffe (Journalist)
60% of all listings on eBay are added via their
APIs and eBay services over 6 billion API calls
per month
John Musser (Programmable Web)
The API which has easily 10 times more traffic than
the website, has been really very important to us.
Biz Stone (co-founder, Twitter)
18. What Changed?
SOAP gave way to REST
APIs became easy to build
APIs became easy(ier) to
use
APIs became incredibly
useful
19. What Changed?
SOAP gave way to REST
APIs became easy to build
APIs became easy(ier) to
use
APIs became incredibly
useful
Image: Peta M / Flickr
20. What more is changing?
Javascript is accelerating
HTML5 is coming
Widgets are taking off
Partnering is getting serious
21. Why 5-7 years?
Several generations of technology
Todays leading Web Services will have had
transformative effects
Almost all segment followers will have launched Web
Services
Internet experience will have caught up for users
No time for 3 or 4 complex 5 year R&D
Projects!
23. Web Services (APIS...)
Programmable Web:
SOAP Web Services
REST Web Services
Plain HTML Forms
They can all be manipulated programatically to produce
an effect
26. Operators
GET
Get Information about a resource
POST
Create : create new elements in a resource
Update : modify a resource
PUT
Create : Create a new resource
Update : Modify a resource
DELETE
Remove a resource
27. Operators
GET
Get Information about a resource
POST
Manipulating
Create : create new elements in a resource
Update : modify a resource
PUT Data Objects
Create : Create a new resource
Update : Modify a resource
DELETE
Remove a resource
29. REST
70-80% of current Web
APIs
Very Wide Range of
Applications
SOAP Seems unlikely to
catch up any time soon
30. REST
70-80% of current Web
APIs
Very Wide Range of
Applications
SOAP Seems unlikely to
catch up any time soon
Great Rest Presentation: Alex Puig / Softonic / 際際滷share
http://www.slideshare.net/apuig75/desarrollando-un-api-con-rest
31. REST
70-80% of current Web
An Example:
APIs
Very Wide Range of
Applications
SOAP Seems unlikely to
catch up any time soon
Great Rest Presentation: Alex Puig / Softonic / 際際滷share
http://www.slideshare.net/apuig75/desarrollando-un-api-con-rest
33. Example APIs: Twitter
Microblogging Service
45-50 Million users
worldwide
10x traf鍖c on their API vs
Web Page
Large numbers of client and
partner applications
REST API
39. Two trends
More time on Well
User Known
Properties
40. Two trends
More new ways to More time on Well
access content User Known
sources Properties
41. Two trends
More new ways to More time on Well
access content User Known
sources Properties
APIs to feed
widgets
42. Two trends
More new ways to More time on Well
access content User Known
sources Properties
APIs to feed APIs to feed
widgets platforms
43. Two trends
More new ways to More time on Well
access content User Known
sources Properties
APIs to feed APIs to feed
widgets platforms
Web Applications will get inc. interconnected
44. The rules change
The Web Page is no longer King
Service to Service relationships are Business to
Business relationships
People care about wether Web Services work
People care that applications built on Web Services
work
45. Key Concepts
Agency: the components you depend on are not
owned/operated by you, they are beyond your control.
Contracts: individual interactions need to be mediated
by expectations, agreements and (potentially)
consequences.
Norms: relationships are long running and require
defaults, frameworks and other constructs to make
them ef鍖cient.
46. IST FP6 Project: Contract
(an experiment in how notions of contracts and autonomy
can power new service ecosystems)
Full Credit - Javier Vazquez, UPC
and others from http://www.ist-contract.org/
47. IST-CONTRACT Project Parameters
ISTFramework 6 STREP Area:Digital Business
Project Ecosystems
Funded from the 5th Call IST Costs:
Focus: Total Cost: 2,509,156 Euro
Contracts for Distributed Req. Cont: 1,850,000 Euro
Applications Engineering
Dates:
Contracts as a basis for formal
verification Start: 1st Sept 2006
e-business applications End: 31st May 2009
Project ID: FP6-034418
26
48. IST-CONTRACT Project Partners
Universitat Polit竪cnica
de Catalunya
Fujitsu EST Gmbh
Czech Technical University
of Prague
King's College London
Imperial College London
3scale Networks S. L.
CertiCon A. S.
Lostwax Media Ltd.
YAll B. V.
27
49. The problem: Engineering applications in Cross
Organisational Service Oriented Computing environments
The behaviour of a software application depends upon:
Code, Execution Context (environment), Inputs
In a multi-organisational Distributed Business Application
application:
No-one has access to all the code
No-one has access to all the execution context
(Possibly) no-one has access to all inputs
Question:How do you predict the potential run-time
behaviour of such applications?
28
50. Project Core Idea
Normal Verification approaches for software will not work
without full source code access. In Contract:
Instead of predicting actions w.r.t code,
predict actions w.r.t obligations, rights, permissions
in Contracts
Impacts:
Short term: application design tool
Longer term: formal verification of distributed business
applications
29
51. Where are the Contracts?
Contracts:
Are the explicit, tangible representation of service interdependencies
Make explicit the obligations of each of the parties in the transactions
Make explicit what each system can expect from another
Bind together:
The electronic interaction (web services) with
The business obligation with
Prediction as to whether the system will function to get the job done
30
52. What does the Project Deliver?
Contract Framework formal theoretical framework for
distributed business application modelling based on the
interchange of (electronic) contracts
Contracting Language specifications of how the actors
should interact electronically and how they should
communicate
Contract Execution Environment for Web services to
create and execute contract-mediated business
interactions
Verification,
Monitoring and Analysis tools to analyze
and inspect deployed systems
31
55. Contracting Language Communication Model
Context Layer
Interaction Protocol Layer
Message Layer
Message Content Layer
Contract Layer
Domain Ontology Layer
56. Contracting Language Communication Model
Context Layer
Interaction Protocol Layer
Message Layer
Message Content Layer
Contract Layer
Domain Ontology Layer
33
57. Contracting Language Communication Model
Interaction
uest
Context Layer context: Req S2
Protocol
handling: S1 A gree
Interaction Protocol Layer
Message envelope + intentionality:
from service S1 to service S2
Contractual Message Layer Request[cancel(contract C1)]
Ontology
Statements / actions related to
contracts:
Message Content Layer cancel(contract C1)
A contract:
the workshop is obliged to
Contract Layer repair the car in 2 days
Domain Domain terms: car, workshop, repair
Ontology Domain Ontology Layer
33
64. Verification Tool
Off-line
tool implements verification mechanisms for
contract-governed systems.
Capableto verify system behaviours through notions of
compliance/violations of intended behaviours.
Based
in the formal framework and the contract language
semantics.
Ability to check systems with large state spaces
Capable to generate counterexamples when dangerous or
conflicting situations are detected
User friendly GUI
37
67. What does this give you?
System interactions are described in terms of
obligations, permissions, prohibitions etc.
Agents can act according to expected behaviour
You never have to verify actual code
Seems like SciFi now - but these concepts will
be fundamental in 5, 10, 20 years.
68. Beyond Contracts
Still need to 鍖gure out how to actually build an systems
which ful鍖ll your contracts (!)
Contracts need to be connected to something - a
context or an organisation - in order to have force - we
might want to model that too
We can even go further...
69. Key Concepts
Projects:
Contract: http://www.ist-contract.org/
Alive: http://www.ist-alive.eu/
More Challenges:
Individual rational actions?
Autonomy vs Control?
Interaction with Business / Legal Frameworks?
70. Business Relevance
Sounds business
relationships are
critical
Quality of Service
Management of
Autonomy and
Dependencies will be
Mandatory
72. Web Services will fundamentally
change the way the Internet
works within the next 5-7 years
73. Web Services will fundamentally
change the way the Internet
works within the next 5-7 years
(and much of that change will happen
in the next 2-3)
74. Web Services will fundamentally
change the way the Internet
works within the next 5-7 years
(and much of that change will happen
in the next 2-3)
Not Convinced Yet?
75. Conclusions
The programmable web is coming - faster than you
might think
Huge challenges lie ahead in:
Making it work
Making it intelligent
Techniques from AI, Autonomous Systems, Multi-agent
and the Semantic Web will be key to understanding the
resulting ecosystems