IT Standards Logo

    CORBA: Its Consortium, Competition, and Criticisms

    by
    Ellen Fischer

    CORBA Technology

    The Common Object Request Broker Architecture "is an integration technology ... that binds disparate programming technologies together" (wpjava.htm). CORBA provides this binding in an object-oriented framework. The benefits of using objects have become increasingly clear in recent years; the OMG describes the oft-cited theory and benefits as follows:

    These objects are the encapsulation of the attributes, relationships and methods of software identifiable program components. A key benefit of an object-oriented system is its ability to expand in functionality by extending existing components and adding new objects to the system. Object management results in faster application development, easier maintenance, enormous scalability and reusable software. (backgrnd.htm)

    By distributing new objects and creating object wrappers around existing distributed code, developers can use CORBA to derive these object benefits and make heterogeneous software interact, thus adding additional value to an organization’s computing infrastructure.

    As the name implies, CORBA describes a standard for an Object Request Broker. Simply described, the client (the calling program) asks an Object Request Broker for an object to implement a procedure. The ORB uses the Implementation Repository (the directory service) to locate the appropriate object, passes the parameters provided by the client to the object, and returns the object’s results to the client.

    CORBA uses OMG’s Interface Definition Language to describe the syntax of communication between ORBs. The applications may use static client stubs and implementation skeletons to bridge the IDL code and the programming code or they may use dynamically-generated interfaces. These dynamic interfaces, in turn, may be created from static or dynamic knowledge of objects available. An Interface Repository allows a program to learn about an unknown object’s interface and invoke that object.

    In order for the ORB to be CORBA-compliant, it is necessary that the interfaces between the ORB and the clients and objects be provide standard capabilities. Any implementation is permissible, allowing maximum flexibility for developers to meet the applications’ needs. Thus, ORBs can be designed to take advantage of user-specific needs, such as those specific to a particular company or vertical market. Coupled with CORBA is the Internet Inter-ORB Protocol (IIOP), which was adopted as a CORBA specification in 1994 (ovumpr.htm). IIOP ensures interoperability of ORBs, despite vendor-specific implementation differences and add-ons.

    Introduction| The Work of the Object Management Group| Top of Page| CORBA Competition and Criticisms| References and Links

    Ellen Fischer, March 30, 1998