While Microsoft Access was successful for the Age of Mass Automation, Eclipse now has the opportunity to become the solution of choice for the Age of Mass Integration.
Microsoft Access was a very successful platform during the 1990s for building applications. It combined in one platform:
- User interface development
It also had some key advantages:
- The development platform was the deployment platform
- Easy to install
- Rich graphical user interface (GUI)
MS Access was designed for the Age of Mass Automation. As the community moved into mass connectivity, MS Access began to fail. The DNA of the product was to be standalone. Attempts to make MS Access a client-server product were doomed.
The Eclipse platform has the potential to be the equivalent of Microsoft Access for the Age of Mass Integration. To do so, the Eclipse Rich Client Platform (RCP) should provide in one platform:
- User interface development, both Web and desktop
- Services orchestration
- Procedural business logic
- Rules-based decision logic
Eclipse already embodies the key advantages that MS Access enjoyed. The install process is unzip. The Standard Widget Toolkit (SWT) finally overcomes Java’s GUI acceptance limitations. With its OSGi bundle architecture, the development platform is the deployment platform. More importantly, it is a deployment platform that meets the needs of the Internet.
The figure above shows conceptually how the OSGi bundle architecture works as the development platform and the deployment platform. The boxes represent bundles. In development, the platform consists of bundles for development (DEV), the core platform bundles, and the bundles being created for the application (APP). To deploy the application, we simply remove the bundles related to development. This is the Rich Client Platform (RCP) concept of Eclipse in a nutshell.
In the past months, the community has come to realize that the deployment can be taken further. If we remove the bundles related specifically to the user interface (UI), then we have created a server. This is the Rich Server Platform concept now being discussed.
MS Access enabled someone to quickly create a business application for his own needs. He could even share the application within the office, but when the application grew in popularity to be used across the company, MS Access fell down. It could not scale.
Eclipse bundle architecture, however, can scale relatively painlessly. Consider the following scenario:
- Bob creates an application that runs on his desktop for maintaining information
- Others in the office want access, so Bob makes the UI available as AJAX served from his desk
- Bob’s data is identified as key to a business process, so Bob makes the data entry a workflow process step (i.e. a human service)
- A department wants to have their application use some of the data, so Bob opens a webservice for reading the data
- Too many people are now connected to Bob’s application, so he moves it to a server
I am watching all of these pieces come together. Eclipse already has the Business Intelligence and Reporting Toolkit, a couple of workflow projects and embedded databases. I expect that we will soon see Eclipse explode upon the business application landscape.