A component architecture developed by the Object Management Group and its member companies that specifies technologies for creating, distributing, and managing component programming objects over a network. Common Object Request Broker Architecture (CORBA) is designed to provide interoperability between applications in heterogeneous distributed environments.
CORBA is not supported by Microsoft, which instead has developed its own distributed object management architecture called Distributed Component Object Model, or DCOM.
In a CORBA environment, programs request services through an object request broker (ORB), which allows components of distributed applications to find each other and communicate without knowing where applications are located on the network or what kind of interface they use.
ORBs are the middleware that enable client and server programs to establish sessions with each other, independent of their location on the network or their programming interface.
The process of a client invoking a call to an application programming interface (API) on a server object is transparent.
The client issues the call, which is intercepted by the ORB. The ORB takes the call and is responsible for locating a server object that is able to implement the request. Once it has located such an object, the ORB invokes the object's method and passes it any parameters submitted by the client.
The results are then returned to the client. ORBs communicate among themselves using the General Inter-ORB Protocol (GIOP) or the Internet Inter-ORB Protocol (IIOP) so that any ORB can fulfill any client request on the network.