For years, the late cartoonist Rube Goldberg graced the Sunday newspapers with his absurdly complex, convoluted and impractical inventions, such as the Self-Operating Napkin and the Automatic Back Scratcher. If he were alive today, Goldberg would discover he has a legion of followers in the IT community. All over the world, corporate developers are busy building their own Goldberg-inspired contraptions in the name of Integrated Business Solutionsalbeit with less hilarious results.
For many, the journey into Goldberg territory began when they tried to integrate legacy systems with new customer-facing applications. Others created crazy gizmos when they attempted to link disparate business systems into seamless business processes through hard-wired applications integration. Still others came up with contrivances worthy of Rube himself when they tried to retroactively link their stand-alone e-commerce Web sites to core operational systems.
In many of these cases, the results have been the same: lots of hard-coding and unproductive maintenance. Worse still, increasing complexity means an inflexibility that makes it difficult to respond to changing market and business conditions. Rube never told us about the downside of his elaborate creations.
Escape from the Goldberg Syndrome lies in taking an architectural approach to enterprise application integration (EAI)that is, the integration of data, applications and processes across multiple functions and, increasingly, multiple companies. EAI requires both an infrastructure for integrating applications and a standards-based mechanism for creating portable data. For more and more companies, that mechanism is XMLeXtensible Markup Language.
Data Exchange Without Complicated Contraptions
The emergence of XML as an industry standard for data exchange marks the beginning of the end of the Rube Goldberg era in enterprise computing. XML does away with the Band-aids, sealing wax and chewing gum of integration by providing a generalized mechanism for representing and structuring data. It is in fact a "meta-language," which means it can be used to define any set of constructs and is hence inherently extensible. As a result, XML provides not only a mechanism for dealing with the formatting of information for display as Web pages (as HTML does), but also a flexible framework for representing the structured data associated with databases and application systems. Any data structure can be rendered as an XML document.
1