Arnon Rotem-Gal-Oz's Cirrus Minor
"Making IT work" - Musings of a Holistict Architect
Navigation for Arnon Rotem-Gal-Oz's Cirrus Minor - REST and contracts
Content
Sidebar
Footer
June 6, 2007
@ 10:02 AM
Comments [0]
REST and contracts
While
I am on the topic of REST
, it is probably a good time to comment on my (first) post on InfoQ "
Debate: Does REST need a Description Language
"
Personally, I think there's merit in Services publishing their message structures in a machine readable format. When a Service has a machine readable contact. generated stubs allows you to make the interaction with less bugs vs. hand crafted interactions. It also makes it easier to test the service itself.
I do agree with
Stefan's views on runtime interface dependency
where he said that if a service consumer needs just 20% of the information in a service it shouldn't be forced to deserialize (i.e. know or care about) the whole message.However, I think this is a weakness of tooling not the concept. What if you had a tool that reads the machine readable contract, allow you to pick the 20% you need and generate for you a stub that ignores all the other 80% and "hand pick" the 20% you need. This is what you would personally do yourself anyway, and since the code is generated from the Service's definition it would be more resilient and error-free This is effectively designing a personalized mini-contract from the published general one. It does mean that when that 20% changes you will be affected, but this is something you'd have anyway.
I also agree that that the WS-* standards and resulting contract are (and getting more) complicated. Much of this can probably be attributed to the
"design by committee"
effect. However, there are also some real challenged that the SOA and ROA architectural styles do not address and we still need to solve those. Trying to solve these challenges is, by the way, what prompted me to write my
SOA patterns book
...
Tags:
Everything
|
SOA
|
SOA Patterns
|
Software Architecture
Related posts:
SPAMMED Architecture Framework (SAF)
SOA Anti-pattern: Nanoservices
SOA Patterns book – your opinion needed
Yes to NoSQL
Architectural requirements Q&A
Evolving Architectures – Part II but Design is emergent
« Can you do REST without HTTP?
|
Home
|
Agile Architecture and documentation »
Comments are closed.
Navigation
Home
Papers, Articles & Presentations
SPAMMED Architecture Framework
SOA Patterns
About Me
Featured Presentations & Papers
REST introduction (ppt)
SOA Pattern Presentation (pdf)
Fallacies of Distributed Computing (pdf)
Getting SPAMMED for architecture (pdf)
OO Primer (ppt)
Use Case Methodology for large systems (pdf)
Software Architecture (ppt)
Service Oriented Architecture - Intro (ppt)
What is SOA anyway? (pdf)
(New) SOA Patterns Presentation (pdf)
More...
SOA Patterns Book
Published Patterns
Edge Component (pdf)
Gridable Service (pdf)
Service Firewall (html @ InfoQ)
Saga (pdf)
The Knot Antipattern (pdf)
Blogjecting Watchdog (pdf)
Reservation (pdf)
What I am reading
Subscribe to RSS headline updates from:
Tag Cloud
.NET (80)
A&D2007 (6)
Agile (27)
BI (2)
Cloud Computing (3)
dasBlog (1)
data (6)
Design (26)
ESB (2)
Everything (200)
Functional Languages (1)
General (67)
Google (1)
iPhone (1)
Java (9)
Mobile (3)
Mono (1)
new (4)
OO (15)
PaperLnx (6)
Papers (4)
Programming (1)
Project Management (11)
Q&A (3)
refactoring (1)
Requirements (3)
REST (21)
RIA (4)
ruby (8)
scalability (6)
SCRUM (2)
SOA (105)
SOA Patterns (51)
Software Architecture (203)
SPAMMED Process (35)
TDD (8)
Trends (5)
Trends (9)
WCF (8)
xsights (7)
Archives
May, 2010 (2)
April, 2010 (3)
March, 2010 (2)
January, 2010 (2)
December, 2009 (1)
November, 2009 (3)
October, 2009 (3)
September, 2009 (5)
August, 2009 (3)
July, 2009 (1)
June, 2009 (3)
May, 2009 (4)
April, 2009 (2)
March, 2009 (3)
February, 2009 (3)
January, 2009 (5)
December, 2008 (8)
November, 2008 (6)
October, 2008 (4)
September, 2008 (4)
August, 2008 (8)
July, 2008 (6)
June, 2008 (5)
May, 2008 (4)
April, 2008 (4)
March, 2008 (6)
February, 2008 (3)
January, 2008 (5)
December, 2007 (9)
November, 2007 (6)
October, 2007 (11)
September, 2007 (11)
August, 2007 (10)
July, 2007 (9)
June, 2007 (9)
May, 2007 (9)
April, 2007 (6)
March, 2007 (4)
February, 2007 (2)
January, 2007 (5)
December, 2006 (4)
November, 2006 (3)
October, 2006 (4)
September, 2006 (2)
August, 2006 (4)
July, 2006 (3)
June, 2006 (4)
May, 2006 (10)
April, 2006 (8)
March, 2006 (8)
February, 2006 (6)
January, 2006 (6)
December, 2005 (3)
November, 2005 (5)
October, 2005 (6)
September, 2005 (10)
August, 2005 (5)
July, 2005 (15)
June, 2005 (16)
All dates
All Posts
Contact the Author
Contact Arnon
Affiliations
Admin
Sign In