One of the reasons that we have chosen to use the Eclipse RCP framework for the next version of EXTOL Business Integrator is that it promotes modularity. A modular application is a system comprised of smaller, simpler parts (modules). As things grow in size and complexity this becomes necessary. Automobiles, for example, are modular, comprised of numerous subsystems — power train, exhaust, brakes, electrical, etc. You, in fact, are modular. This principle from nature has long been understood in manufacturing: that the best way to design and build a complex thing is to first see it as an assemblage of smaller, less complex (and therefore more manageable) parts. Divide and conquer. Modularity also makes possible the division of labor, the modern assembly line, and with it the move from a culture of craftsmanship to mass production and economies of scale.
Designing modular systems tends to require more thought and planning up front but pays huge dividends down the line. Not only are they easier to build, they are easier to fix and maintain. Consider the problem faced by the U.S. government in the 18th century in provisioning firearms to its army. Each gun was unique and made by a different gunsmith, so if a single piece broke the whole thing needed to be replaced or needed custom repairs. The government hired famed inventor Eli Whitney to address the problem, and he proposed replacing traditional methods of gun manufacture with a system based on the use of interchangeable parts. So, if a part fails, swap in another that is identical.
Unfortunately, too much software is still manufactured like an 18th century musket: highly-customized, one-off creations built by craftsman programmers (‘codesmiths’); handcrafted works that may be beautiful to behold, but are a real bear to fix and maintain in the field. Bringing in the codesmiths for ‘custom repairs’ as noted above is expensive enough; having to ‘discard and replace’ your software because it cannot adapt to change is worse.
That’s where Eclipse Rich Client Platform helps us. The RCP provides infrastructure into which components can be plugged. In fact, everything in Eclipse is a plug-able component (a ‘plug-in’). Plug-ins are a bit like Whitney’s interchangeable parts. Each plug-in has a well-defined purpose, that is, it tends to do one thing well (in developer jargon, it is ‘cohesive’). Because each component represents only a small piece of the overall problem, it is easier to comprehend, and therefore easier to build. Since components are more-or-less self contained, they are also easier to add and remove, giving an application greater extensibility and adaptability.
We want you to be well-equipped on the battlefields of business; making EXTOL Business Integrator more modular with Eclipse is state of the art. You can leave that beautiful musket in the glass case where it belongs.