"Best of Breed" or "Mangy Mutt?"

Throughout my career, I've sat through innumberable sales presentations showing some piece of software that is the greatest thing since sliced bread, according to the salesman.  All it takes is a "bit of integration" to make it work with everything else. The theory is, if we just collect all these "best of breed" applications and "do a bit of integration" we will end up with information systems nirvana.

Now, imagine trying to build the world's best car using an engine from a Corvette, seats from a Rolls Royce, and the hybrid electric system from a Prius.  Surely, this must produce the world's fastest, most comfortable, most fuel-efficient car. All it takes is a bit of integration, or so folks think.

But something is missing in this approach.  And that is an overall perspective - what Frederick Brooks calls the "conceptual integrity" of a design. 

VA's VistA took a different approach.  We started with the conceptual whole, which included a common metadata dictionary that mapped the patient data base and user interactions.  We then moved out to the specific functional areas, like lab, pharmacy, radiology, etc.  VistA was a process of composition, based on shared tools within a user community, rather than a process of decomposition by IT professionals removed from the clinical process.

Rather than trying to achieve "best of breed," we shot for "good enough"- something to get started and into the hands of the users, and then sought to improve it.  Rather than writing lengthy requirements documents, we used a "rough consensus, running code" approach.  We thought in terms of generations, not specifications - a system that was constantly evolving.

We were ridiculously underfunded.  We didn't have money for consultants or large staffs, so we had to rely on an internal network of folks helping each other.  VA staff members would contribute their own subject matter expertise; we shared it through an online Forum system that eventually reached 50,000 users in countless peer-to-peer relationships.

The centralists were aghast at what was happening.  They said that this would end up in "helter-skelter" development, yet it turned out to be one of the most integrated and most successful electronic health care systems in the world.

I wrote MailMan, a generalized communications sever that also did traditional email, as one of the first SMTP servers, learning at the knee of the master Jon Postel.  The notion of folks communicating laterally in a hierarchical bureaucracy in 1983 was revolutionary.  Los Angeles wasn't supposed to talk to Birmingham without following channels and through Washington.  A hospital director, shocked to find himself on the same email system that low level clerks used, asked me to enforce chain of command communications on electronic mail (I never got around to that suggestion, however :).

The case is not black-and-white, of course.  I like being able to choose between HP and Canon Printers for my computer, for having interchangeable lenses on my camera, and the ability to plug in arbitrary USB peripherals into my laptop.  Having watched (and participating in some of ) the underlying standards, I know how complicated and frustrating the standards process is.

The shades of gray appear when dealing with enormously complex, evolving things like the health care system.  But consider how successful the web was, starting with just three simple standards (HTTP, HTML, and URL).  Look at how successful WikiPedia is, starting with a ridiculously simple initial conditions.  And look at how successful VistA became, evolving from simple initial conditions.

Next time someone suggests that their product is "best of breed," ask yourself, "Is this going to end up a mangy mutt?"