Those of you who attended the EBI 3.0 preview session at the recent EXTOL University learned that EXTOL will be switching to an Eclipse-based development environment for the next major release of EXTOL Business Integrator (EBI). For the rest, I’d like to explain what that means, and why we’re so excited about it here at EXTOL development.
Eclipse is a software framework for building integrated development environments. Huh? What’s an integrated development environment (IDE)? An IDE is a concept well understood by software developers. Building software is a complex activity involving many tasks: writing the source code, compiling it to runnable software, building user interfaces, testing, debugging, etc. In the past, developers had to use many different tools to accomplish these various tasks. These tools composed the programmer’s development environment (their “toolkit”).
Unfortunately, these tools, cobbled together from various sources, didn’t always work together smoothly or intuitively. Eventually, the tool builders responded to our pain by offering development environments in which all the pieces of our toolkit were integrated into a seamless, cooperative whole — an integrated development environment. Eclipse is such a tool, used for building other software tools; an IDE for building IDEs. Sounds paradoxical, I know.
The reason this is pertinent to us, as you might have guessed, is that EBI is a kind of IDE. It’s a single software environment that brings together a collection of tools for building business integrations: schema and rule set builders, configurable adapters, process scripting, etc. Imagine if you had to use a dozen different tools to accomplish your integration tasks! EBI is designed to ease your development pain. Still, if EBI is already an IDE, why the interest in Eclipse?
Eclipse is not only a tool for building IDEs, it is also a set of reusable components — a platform upon which these IDEs can be built. It is called Eclipse RCP (for “Rich Client Platform”). Think of RCP as software scaffolding or infrastructure. Tool makers (like EXTOL) can use that infrastructure to build better systems.
Eclipse started out as a project at IBM (under a different name), and was donated to the open-source community in 2001 (a $40 million gift!). It has since matured into a rich platform — literally millions of lines of code — for building software. There are lots of reasons for wanting to adopt the RCP framework here at EXTOL, and I’ll detail some of these in later blogs. Here I’ll mention just one: Adopting Eclipse RCP gets us out of the framework business.
Though you may not have thought about it, building business software has two related but independent concerns: The primary concern of providing solutions to business problems, and the secondary concern of creating the building blocks necessary to achieve the first. The latter includes stuff like user interface components, file manipulation, printing services, application logging and error recovery — the basic and necessary building blocks that have to be in place in order to create a tool like EBI or any commercial software.
As a user, you take these things for granted (and you should!), but as developers, we have to spend a lot of time figuring them out — and this draws our time and energy away from our primary concern. Imagine if an architect, tasked with designing a library or hospital, had to be concerned also with designing pipes for the plumbing system, or developing a new wiring standard. You get the idea. Eclipse RCP is software plumbing, software wiring, and using it gets us out of the framework business so that we can focus on our core competencies.
Our focus here at EXTOL is business integration. You’ve got integration challenges, real pain, and we like to spend lots of time figuring out how to help you meet those challenges and ease your pain. The Eclipse Rich Client Platform lets us leverage the power of best-of-breed components to build a better EBI, and that’s good news for you.