A Word of Warning

One of the real dangers of creating an interoperability framework is the temptation to be overly restrictive. Many IT managers have made the mistake of trying to home in on single technology choice on the premise that such standardization will lead to better efficiency within their organizations. In theory this is true, but in my experience, it's a rare organization that has the discipline to pull it off. Perhaps, more importantly, such single-minded devotion to specific technologies can limit agility and create an organization that is overly rigid.

As an example, most large organizations are going to be running a mixture of Linux and Windows (at least on their servers) and developing in multiple programming languages. I found as CIO for Utah that it often made real sense (and cents) to have one project using IBM's WebSphere J2EE application server, another using BEA's WebLogic, and yet another using the jBoss open source application server. You'd think that because all of these projects were based on the same standard (J2EE, in this case), they'd be able to use the same application server, but it just didn't bear up under analysis.

Here's one real scenario where that happened. We went out to bid on a $30 million project to build an eligibility determination system for welfare benefits in the state. The project would replace a 20-year-old green screen COBOL application. The winning bidder happened to be IBM. If we'd put in the Request for Proposals that the system had to use WebLogic, which many projects in the state were using at the time, IBM would not have bid and the state would have lost out on what was ultimately the best system as judged by business and technical people working on the bid.

You might conclude that it's hopeless, but I don't think so. You'll get more interoperability mileage by picking standards to support in the IF than by picking identical software and hardware or software development environments. If the software and hardware support the standards that are important to you, then you'll get interoperability anyway and still be able to reap the benefit of picking hardware or software for other reasons such as price or feature set. TCP/IP is a real example of this principle in action. This networking standard is now so pervasive that we wouldn't even think of purchasing certain hardware or software that couldn't internetwork according to the TCP/IP standard. Choosing standards within your organization can provide the same benefit in other areas.