CORBA – Common Object Request Broker Architecture

CORBA is a standard for an object request broker architecture that was developed by the Object Management Group in the 1990s. It was hoped that this would be widely adopted and that implementations of the standard would be available from competing vendors. The OMG standards are available from their website.

The OMG’s vision of a distributed application is shown in Figure 1, which I have adapted from Siegel’s diagram of the Object Management Architecture (Siegal, 1998). This proposes that a distributed application should be made up of a number of components:

Figure 1. The structure of a CORBA-based distributed application

The CORBA standards cover all aspects of this vision. There are four major elements to these standards:

The CORBA object model considers an object to be an encapsulation of attributes and services, as is normal for objects. However, CORBA objects must have a separate interface definition that defines the public attributes and operations of the object. CORBA object interfaces are defined using a standard, language-independent interface definition language (IDL). If an object wishes to use services provided by another object then it accesses these services through the IDL interface. CORBA objects have a unique identifier called an Interoperable Object Reference (IOR). This IOR is used when one object requests services from another. These requests are processed by the object request broker.



(c) Ian Sommerville 2008