Open Adaptor

From the OpenAdaptor.org site:

"... a 100% Java/XML-based software platform which allows for rapid business system integration with little or no custom programming."


Developed internally at Dresdner Kleinwort Wasserstein, recently released to the outside world via Open Source at http://www.openadaptor.org.


Enterprise Architecture teams add value by focusing a company's efforts on a few strategic technologies, and accelerating their adoption by project teams throughout the company. The best way to do this is NOT by setting up intrusive thought-police style bureaucracy and enforcement.

The effective way to do this is by providing the missing bits of infrastructure and componentry that make it dead easy for developers to choose the strategic alternatives. To make them so compelling that there really is no other rational choice. (You'll always get some developers who are irrationally attached to other technology options, but that's another story for another WikiPage).

In the mid/late '90's, Dresdner Kleinwort Wasserstein selected a commercial middleware package as a common messaging backbone. The package was functionally very good, and easily solved the "many-to-many" integration problem. But we weren't able to push its adoption across business lines fast enough, because:

The OpenAdaptor framework was developed to solve these problems. (BTW, I can talk very highly about the development of this framework because by the time I showed up in spring '00, the hard work had been done :) )

The team looking at the technology realised that if you used a plumbing metaphor to understand the problem, it was easy to abstract out key pieces into an integration framework that would:

We wrote a Java framework composed of plug-n-play Sinks, Sources, and Pipes. The Sinks and Sources are specific to given technologies or applications (RMI, IIOP, MQSeries, ETX, JMS, RV, sockets, etc). Messages come in through sources, go out through sinks. The pipes allow for easy data transformation, aliasing, exception handling, etc. A simple configuration file defines the specific combination of one or more sources, pipes, and sinks, to create an individual Adaptor. This configuration file is read at runtime by a bootstrap java server process.

If you need to add business-specific java code, you can code to your heart's content in one of several types of pipe; that ensures that your application code stays separate from the middleware-technology code.

This framework has been in production for about 2 years, is used currently by 70 applications inside DrKW. It ties together all our key applications for trading, risk, settlement, accounting, etc, handling something on the order of 500,000 transactions per day (not retail internet volume, I know, but not ivory tower experimental software, either).

Because this framework has now been released through Open Source, you can download it, extend it, use it for free in your own applications. Take a look! http://www.openadaptor.org. -- BillBarnett

[Annotation about site problems removed]


EditText of this page (last edited November 19, 2005) or FindPage with title or text search