ORB Vendors for CORBA and COM Integration Products
The ability to integrate the enterprise's legacy IT assets is perhaps the most overriding consideration for middleware adoption. Millions of lines of code and megabytes of data represent the business intelligence that drives the present and future survival of the enterprise. For the majority of organizations that are considering middleware, wholesale replacement of all IT assets at once is simply not possible. The need to
maximize previous investments by extending the lifetime of legacy IT assets is critical. Controlling the pace of transition in a way that minimizes impact on the operational environment is also a paramount consideration.
With the wide spread utilization of object technology, it has become more and more important to employ
the object oriented paradigm in distributed environments as well. This raises several inherent issues, such
as references spanning address spaces, the need to bridge heterogeneous architectures, etc. It is the main
goal of this paper to provide an architectural analysis of current software platforms in this area. One of
the obstacles to overcome in order to achieve this aim is the fact that the available descriptions of these
platforms speak different languages. Thus to target the issue, we have decided to employ design patterns as a common denominator which will help us provide an unified view on the platforms analyzed.
We focus on the following key distributed object platforms: CORBA, Java RMI, and COM/DCOM. The first one, CORBA, is specified by OMG , which is the largest consortium in the software industry. CORBA has undergone an evolution ranging from CORBA 1.0 (1991) and CORBA 2.0 (1995) to CORBA
3.0, which is soon to be released. The Java environment, designed by Sun Microsystems, has probably experienced the greatest evolution recently. From the broad spectrum of the Java platform segments, we will focus on Java RMI , which targets working with distributed objects. The last platform analyzed is the Microsoft Component Object Model (COM). This platform has also been evolving gradually along
the milestones OLE, COM, DCOM, and COM + .
The general principles of working with distributed objects and the division of the section reflects our approach to the architectural analysis - basic principles, basic patterns, provision and employment of a service, and inherent issues.
The analyses of CORBA (Sect. 3), Java RMI (Sect. 4), and COM/DCOM
A thorough evaluation of each platform could not be provided since all of these areas have become very broad and each of them requires individual analysis.