July 01, 2006

Innovate, Implement and Then Standardize

Michi Henning has written an interesting article for ACM Queue entitled "The Rise and Fall of CORBA".

His overall conclusions in the "Lessons Learned" section seem spot on to me:

  1. Standards consortia need iron-clad rules to ensure that they standardize existing best practice. There is no room for innovation in standards. Throwing in "just that extra little feature" inevitably causes unforeseen technical problems, despite the best intentions.
  2. No standard should be approved without a reference implementation. This provides a first-line sanity check of what is being standardized. (No one is brilliant enough to look at a specification and be certain that it does not contain hidden flaws without actually implementing it.)
  3. No standard should be approved without having been used to implement a few projects of realistic complexity. This is necessary to weed out poor APIs: Too often, the implementers of an API never actually use their own interfaces, with disastrous consequences for usability.

However, I disagree with Michi's implied criticisms of the approach taken to develop and standardize the Web services specification.

Clearly Michi is not familiar with the approach Microsoft and our industry partners actually use to develop and incubate the WS-* specs ready for standardization - namely the WS-* Workshops Process.

Looking at the list of reasons why we uses the Workshop process, and you'll spot a striking similarity to the lessons Michi mentions about.

Why Do Microsoft and Industry Partners Conduct WS-* Workshops?

The main reason for the WS-* workshop process is to produce well-engineered, quality specifications.

Secondary benefits of WS-* workshops include:

  • Workshops provide proof of the interoperability of the Web services specifications.
  • Workshops help to uncover any inconsistencies with other WS-* specifications.
  • Interop workshops allow implementation experience to be gained much earlier in the development process, which helps shape the specifications and validate the overall design.
  • Workshops foster community involvement among partners, vendors, academics, consultants, authors and other interested parties to shape and improve the development of the Web services specifications in a formal setting
  • Workshops apply software testing disciplines to the way Web services specifications are developed. This provides additional review and test cycles in order to increase the effectiveness of finding and removing defects in the specifications.
  • Workshops help determine whether the specification is appropriate and ready to move to an industry standards-setting organizations for consideration for approval and ratification

Remember: "Premature standardization is the root of all evil" to misquote a well-known saying!

Posted by Jorgen Thelin at July 1, 2006 10:06 AM - [PermaLink]
Traceback List
Reminds me of Jim Waldo's comment several years ago, about standards groups stifling innovation: http://slashdot.org/article.pl?sid=03/05/27/1422200 Posted by: Craig on July 2, 2006 12:03 PM