Welcome to MSDN Blogs Sign in | Join | Help

      Loosely Coupled Thinking

      SOA, BPM, Clouds &
      other trendy stuff...

News

  • Better Search:

    Tweets


      Reading

      About

      Not me but an incredibly realistic simulation.
      John Evdemon
      is an Architect
      at Microsoft.

      <legal-stuff>
      The views and opinions stated in this blog are mine and do not necessarily reflect those of Microsoft.
      Each posting on this blog is provided "AS IS" with no warranties, and confers no rights.
      </legal-stuff>


      Social

      View John Evdemon's profile on LinkedIn

      John Evdemon's Facebook profile





      Locations of visitors to this page

    Contract First or Rewrite Later

    Reviewing the four tenets for service orientation, note that tenet #2 (Services are Autonomous) states that services should be independently deployed, versioned and managed.  Service contracts should be designed with the assumption that once published, they cannot be modified - this approach forces developers to build flexibility into their schema designs.  One way to ensure that the service contract remains flexible is to adopt a Contract-First approach to service development.  With Contract-First you define your service contract before developing the service itself.  The service contract can then be used to generate the actual service code.  Contract-First is a proven approach for reducing the barriers to interoperability since it builds upon decades of experience (CORBA, COM and DCE all used interface languages and encouraged a Contract-First approach to development).  Many development environments have added simple support for Contract-First while tools such as thinktecture’s WSCF and the GotDotNet XSD Object Code Generator help to further automate this process.  Regardless of the development approach you utilize for service development there is no question that service contracts must be designed in an extensible manner to minimize disruptive versioning changes. 

     

    If you want to develop interoperable services adopt contract first or you'll be re-writing portions of your service later.

    Posted: Friday, April 29, 2005 9:41 PM by jevdemon

    Comments

    TheChaseMan's Frenetic SoapBox said:

    # May 3, 2005 12:05 PM
    New Comments to this post are disabled
    Page view tracker