COM, CORBA Bridges Emerge and Evolve
During the last few years, Microsoft Corp.’s Component Object Model (COM) and the Common Object Request Broker Architecture (CORBA) have developed side-by-side as competing methods of communication among distributed objects. Historically, COM and CORBA objects haven’t interacted well with one another. During the past several months, though, a number of independent software vendors unveiled initiatives on the COM/CORBA integration front.
In late May 1997, for example, Microsoft Corp. agreed to integrate its Microsoft Transaction Server with OrbixOTM, a CORBA-compliant middleware suite from Iona Technologies P.L.C. (Cambridge, Mass., www.iona.com). Other products that provide COM/CORBA integration are ObjectBridge, a COM-CORBA bridge from Visual Edge Software Ltd. (St. Laurent, Quebec, www.visualedge.com) and M3, an object transaction manager that supports both COM and CORBA from BEA Systems Inc. (Sunnyvale, Calif., www.beasys.com ).
While several tool vendors have developed similar technology – like the new version of Borland Delphi rapid application development (RAD) environment from Inprise Corp. (Scotts Valley, Calif., www.inprise.com), which can create components that are both COM- and CORBA-enabled -- InterNova’s Colibri Engine and Development Suite is one of the first tools that allows developers to employ discrete integrated development environments, such as Microsoft’s Visual Basic or Inprise’s Delphi, to do the actual development work.
According to Brock Hotaling, CEO of InterNova, because the Colibri Engine and Development Suite heavily leverages scripting technology, it provides COM to CORBA bridging functionality in an everything-under-the-hood development environment that requires very little experience in developing for either distributed component architecture.
"We have built into this engine a COM/CORBA bridge, so you don’t need to worry about whether you’re developing COM, or CORBA, or whatever. It’s all smooth," Hotaling says. "Our clients are scared of CORBA, scared of Java, and they just can’t find qualified people to do CORBA or Java programming. This allows them to hire different people, because a huge population of programmers knows how to do scripting."
The Colibri Development Engine functions by linking the Microsoft COM desktop environment and CORBA services via a COM-CORBA Bridge, then bridges to an ODBC- or JDBC-compliant database, such as Oracle 8 from Oracle Corp. or SQL Server from Microsoft, with automatic persistence mechanisms using ODBC/JDBC or native drivers.
In addition to a Colibri Client Suite, the Colibri Development Suite includes Colibri Studio, the Colibri Management Console and a CORBA Template Starter Kit, which features sample templates that enterprises can use to customize business services.
InterNova’s Hotaling indicates that many of his company’s customers require COM/CORBA integration services because they are standardized on COM on the desktop and on CORBA in the backend. In Hotaling’s account, this isn’t about to change anytime soon. Although CORBA is a newer, sexier technology, it simply doesn’t have the maturity or functionality of COM on the client-side. "To be honest with you, right now the Microsoft desktops are just far and away better than their CORBA counterparts," he explains.
Mike Gilpin, vice president and senior analyst, research services, with consult Giga Information Group (Norwell, Mass., www.gigaweb.com), concurs, but cautions client-side application developers must now be attuned to the presence of the CORBA standard in the backroom. "I think that everybody knows that COM has established a firm ownership of the desktop environment as a standard, but what’s making this integration more important is that in the context of Internet standards CORBA is gaining more popularity, particularly in the areas of Java and Enterprise Java Beans functionality (EJB)," Gilpin notes. "Anyone who wants to create an application available in a Windows environment now needs to provide some sort of interoperability solution [between COM and CORBA]."