The Common Object Request Broker Architecture (CORBA) is a powerful technology, but it can be difficult to use.
What makes this technology so complicated is that it must allow objects written in different languages, running on different platforms and located in different places to share functions and data.
Helping those objects communicate are Object Request Brokers (ORB), which follow the CORBA standard and can establish links between objects.
"ORBs are designed specifically to handle the interoperability of objects on a network," explained Steve Garone, an analyst at International Data Corp.
But it isn't that easy. "CORBA traditionally has presented quite a learning curve," said Larry Perlstein, an analyst at Dataquest. For example, programmers need to learn Interface Definition Language to describe the properties and functions of an object to the ORB.
Commercial ORBs make life easier by providing services such as automatically finding objects, naming them and managing them.
Popular services eventually are introduced into the CORBA specification, but the race to provide new services is what differentiates the commercial ORBs. Major vendors include Iona Technologies, BEA Systems, Inprise, Siemens Nixdorf Information and Visual Edge Software.
Even though CORBA is hard to learn, many companies without a standardised technology favour it because it isn't tied down to a specific platform, language or communications protocol, according to analysts.
In shops that have standardised on Windows, programmers use Microsoft's Distributed Component Object Model. Java-only enterprises use Remote Method Invocation. "Bridges" let programmers combine the different technologies.
One company that has discovered the benefits of CORBA is Vanguard Cellular Systems in North Carolina.
Vanguard used Inprise's Visibroker to create an application that allows the company's salespeople to sell and activate prepaid calling cards, said software engineer Marshall Smith.
The World Wide Web-based program invokes separate objects to log in the salesperson, enter customer data into a database, set the usage parameters of the card and activate it.
CORBA competes with other forms of middleware. Remote Procedure Calls link together non-object-oriented programs written in Cobol or Fortran.
Message-oriented middleware quickly routes data among applications, but it's best for simple, point-to-point connections, said Colin Mahony, an analyst at The Yankee Group in Boston.