This post originated from an RSS feed registered with .NET Buzz
by Udi Dahan.
Original Post: Contract First, Discussion Second?
Feed Title: Udi Dahan - The Software Simplist
Feed URL: http://feeds.feedburner.com/UdiDahan-TheSoftwareSimplist
Feed Description: I am a software simplist. I make this beast of architecting, analysing, designing, developing, testing, managing, deploying software systems simple.
This blog is about how I do it.
Ali Pasha posted something quite interesting on Policy & Contract-First Design where he quotes the Reliable Messaging spec put out by OASIS with respect to SOA: "Whereas a policy is associated with the point of view of individual participants, a contract represents an agreement between two or more participants."
I must respectfully disagree - to a degree.
While in the "real world" a contract does indeed represent an agreement between two or more parties, a service's contract is a more "take-it, or leave-it" kind of deal. Although during the development of a service, or at least a given version of a service, there may be a dialogue between the teams developing the service and other teams consuming that service, once that service has been deployed - that's it.
If the contract is first, then discussion is zero.