It is tempting to look at CORBA and quickly determine that it is simply a network transport layer for building software.
Or put another way, that CORBA answers the question: how will application component XYZ talk with component ABC?
While this is true and of significant value, it is nice to have a debugged, optimized tool that allows easy creation of distributed applications - CORBA is actually much more. As we explore CORBA we will see that the specification provides a sophisticated framework for both object and application level services that is designed to be as open as possible at every level.
This focus on openness is CORBA's greatest strength. As we move forward, we will repeatedly take the time to ask "Why CORBA?"
The Common Object Request Broker Architecture (CORBA) [OMG:95a] is an emerging open distributed object computing infrastructure being standardized by the Object Management Group (OMG).
CORBA automates many common network programming tasks such as
- object registration,
- location, and
- activation.
At this point, it's important to realize why the (OMG) Object Management Group got involved. Methodologists like to think that they are important. But I do not think that the requirements would even be heard by the OMG. What got the OMG involved were the requirements of tools vendors, all of which were frightened that a standard controlled by Rational would give Rational tools an unfair competitive advantage. As a result, the vendors energized the OMG to do something about it, under the banner of CASE tool interoperability. This banner was important, as the OMG was all about interoperability.
The idea was to create a UML that would allow CASE tools to freely exchange models.