ActiveX versus CORBA: It’s the technological competition that may ultimately define how we buy, build and use next-generation healthcare applications.
The problem is, the marketing machines behind both standards--namely Microsoft and the Object Management Group (OMG)--are kicking up so much sand that prospective users are hard pressed to make informed decisions about which software-component technology is best for them. Even the combatants admit to excess hype. "This is one area where the technology is actually simpler than the marketing," says Brian Welcker, program manager for Microsoft, Redmond, Wash.
No matter that entire healthcare organizations may rely on componentized applications using either or both ActiveX and CORBA (Common Object Request Broker) in the next five years. Deciding which technology is best is barely more scientific than polling a group of teens about which cola tastes better. The result: bewildered hospital IT staffs.
Any final decisions about component plumbing will come only after the two competing platforms mature in five primary areas: enterprisewide applicability, market penetration, interoperability, customization and installation headaches. And as the famous VHS vs. BETA Max wars of a decade ago proved, the keys to success will hinge on a combination of technical and marketing issues.
Here’s an early scorecard on where the two technologies stand today.
Issue 1: Enterprisewide applicability
ActiveX is grounded in Microsoft’s Component Object Model (COM). Although COM is not accredited by an independent standards organization, it is so widely available--it’s bundled with Windows--ActiveX is fast becoming a de facto standard. ActiveX is central to Microsoft’s goal of achieving plug-and-play among applications and components, a central goal for all componentized applications strategies, including CORBA’s. By allowing IT departments to customize and upgrade applications by simply plugging in a new module, healthcare organizations may speed up the processes for choosing and deploying new capabilities.
In this context, Microsoft gets beat up for being Windows-centric, admits Microsoft’s John Carpenter, worldwide healthcare industry manager. But he claims the company is expanding ActiveX/COM’s horizons. Hewlett-Packard’s HP-UX and Compaq’s Digital UNIX will ship COM in the next versions of the operating systems.
Object Management Group’s CORBA has no such stigma. More than 800 vendors worldwide developed the standard by consensus. An added bonus: CORBA has authenticity as the International Standards Organization (ISO) standard 14750. Mature by IT standards, CORBA first arrived in 1992 and now runs in many multi-operating system environments.
CORBA was born to eliminate language barriers, says Jon Farmer, vice president of research and development for Care Data Systems, a Chicago-based research, development and support organization. (Farmer, a CORBA developer with cross-industry expertise, was an active participant in the recently adopted Person Identification Service (PIDS) specification.)
Because CORBA supports many types of hardware platforms, operating systems, programming languages and network architectures, CORBA is a particularly good fit for heterogeneous enterprises, especially those with legacy data. In fact, CORBA object request brokers (ORB) now run in everything from palmtop organizers to mainframes.
Issue 2: Market penetration
Microsoft wins hands-down when you count the number of commercial applications that support ActiveX/COM. Because the technology is bundled with Windows you and millions of other computer users may be primed to use ActiveX/COM. That’s good for end users--there’s no added cost to add component capabilities.
Microsoft also points with pride to such initiatives as the Andover Working Group’s first implementation of the Enterprise Communication Framework (ECF), which uses ActiveX/COM. "Adoption by the industry cannot be understated," Microsoft’s Carpenter says. He bristles when the OMG flaunts its large vendor base. "There may be 800 vendors supporting the CORBA platform, but how many are really developing and working in that environment versus how many are building and deploying in COM?" At best, that’s 800 vendors versus "the tens of thousands of vendors focused on COM," Carpenter says.
The OMG’s William Hoffman, president and COO of the Framingham, Mass.-based consortium, finds Microsoft’s claims amusing. "All the vendors in the world don’t make a market," he retorts. "You have to have customers that implement [the technology]. What is the point of bundling COM into an OS and claiming to have 40 million [users] if you are not using it to build distributed systems? The whole world isn’t Windows--and won’t be anytime soon. There are too many investments in COBOL, Basic and other programs that aren’t going to go away. We must find a way to work with them."
Farmer contends that CORBA is gaining in healthcare applications, in part because of strong international support. Since the recent formal adoption of CORBA’s Person Identification Service (PIDS), the government of Brazil has selected it for its national patient index, the largest healthcare provider in Paris is adopting it, and CORBA is a leading contender for the U.S. military’s computer-based patient record project.
Hoffman also takes exception to Microsoft reports citing low numbers of CORBA installations: Those numbers are primary sites, with thousands of users per site.
Does Microsoft have an inherent advantage with free, bundled software? You bet, says OMG’s Hoffman, but ORBs are so easy to acquire that availability is not an issue, he says. In addition to commercial offerings, many ORBs are in the public domain and available for downloading, some from OMG’s Web site (http://www.omg.org).
In addition, Care Data’s Farmer draws a distinction between desktop and server penetration. Windows may have the desktops sewn up, but in healthcare it doesn’t control the server market, says Farmer. "ActiveX is for Windows, C and C++, and very little of healthcare lives in those languages and operating systems," Farmer contends. "On the server side, 98 percent of all installed healthcare information systems can’t run COM."
(Carpenter concedes that ActiveX is not going to fit into a dumb-terminal model unless you are using a Windows terminal server that gives you the capability to run Windows-based applications on thin clients and lower-end machines.)
Advantage: Too soon to tell
Issue 3: Interoperability
Any application or component developer can say its product supports a standard--be it Active/COM or CORBA--but the claim is questionable without an independent review. Both Microsoft and OMB have recently implemented certification processes for their technologies. Systems integrator KPMG Peat Marwick LLP, in collaboration with the Microsoft Healthcare Users Group, manages ActiveX certification. The Open Group, a vendor-neutral, international consortium based in Cambridge, Mass., will administer testing and certification activities related to CORBA.
With certification, vendors and end users will have some assurance that the applications they build and buy will interoperate with each other. Future plans include making test suites available for download so that users can determine whether a custom-built communications application will work with a third-party product.
Nevertheless, certification will only verify COM-to-COM and CORBA-to-CORBA application interoperability. ActiveX/COM and CORBA still can’t talk to each other without a bridge. Six ORB vendors now offer bridges. Earlier this year, Microsoft licensed its COM technology to one of those vendors, Iona Technologies, Inc.
Issue 4: Customization and porting
Proponents from both houses agree that the component learning curve is steep but not insurmountable. Instead, deployment problems arise more in getting IT people to think in terms of object-oriented philosophies and of the move to distributed infrastructures.
Microsoft’s Welcker says end users don’t need to know underlying component technology if they buy off-the-shelf products that sport a certification seal of approval. However, if they want to customize the platform, tools such as Microsoft’s Visual Basic or Office will do the trick.
Regarding porting problems, Carpenter says COM lets you just deploy the latest version (as in Windows NT 5.0) and download any late enhancements. Porting problems for CORBA are past tense, says Farmer, conceding they existed and were very painful about a year ago when vendors released products before they were fully CORBA version 2.0-compliant. The exceptions to porting ease come when developers create an application that uses some of the proprietary interfaces of the ORB. An example is security. Even though an ORB vendor might have truly Internet Inter-Operability Protocol (IIOP)-compliant ORBs, the vendor may also sell security services which may not be compliant. So, if you use those types of ORB, you will have a porting problem.
A strike against CORBA? No, says Farmer: The same is true for Windows.
Advantage: Customization, ActiveX; Porting, Deuce
Issue 5: Staying out of the net
Because Microsoft released the first reference implementation for ActiveX/COM only about a year ago, applications are just now appearing. There are some risks associated with being on the forefront of technology, and there will always be hiccups, says Welcker. "Users need to have good plans in place and to be prepared for what might go wrong. I don’t know if the headaches will be any different than with new applications, except that there will be more applications. It sets up more of a paradigm shift in the way people buy and deploy applications than the technology itself."
As a component technology, COM allows you to isolate functionality, Carpenter adds. If one piece breaks or you introduce a new component into the mix, it’s self-contained and insulated from the other components. That’s not to say each application stands alone. There are some cross-component dependencies that you will need to understand. He adds: Break the Master Person Index and there will probably be many other things that will break.
The key to both installations is having somebody on staff with at least a handshake knowledge of object-oriented technology. Once the transition from procedural programming to object-oriented thinking has been bridged, Farmer claims that learning how to design effectively for CORBA is a small jump.
Advantage: Too soon to tell
Because the component market is nascent in healthcare and because ActiveX/COM and CORBA themselves are still maturing, each platform still earns an "incomplete." "Shrink-wrapped" components remain in the future, and ultimate component-technology decisions may revolve around other enterprise-building blocks, such as directory services, security, database services and reliable communications across networks--all linked by object technologies. That’s not to say that the current ActiveX/COM vs. CORBA battle doesn’t offer clear choices. For IT managers running a Windows shop, COM and ActiveX get the highest marks. However, for enterprises that must tie together mainframes, UNIX boxes and diverse clients, CORBA serves up an ace.
No matter which platform you choose, object-based systems are complex to build and manage, the OMG’s Hoffman concedes. "[The technologies are] better than five years ago, and [they] will be even better five years from now when the tools are more complete, more full-featured and robust. Set your expectations accordingly," he advises.
HL7: Don’t Throw in the Towel Yet
"IT IS VERY DIFFICULT TO CHOOSE BETWEEN Microsoft’s ActiveX and Object Management Group’s CORBA on purely technical grounds," says Jim Klein, research director for GartnerGroup, a technology research organization based in Stamford, Conn.
A more fundamental question, according to Klein, is whether the component philosophy itself is really suitable for the healthcare industry. Klein’s not so sure there’s a smooth link between components and healthcare. Everything is great, he reasons, when you’re running components in intra-platform applications. When CORBA objects are talking with CORBA objects or when ActiveX-to-ActiveX communications happen, glitches are few because the same design team created the underlying plumbing and services.
But a component framework is a less compelling model for linking disparate systems, he says. "Message-oriented middleware, such as interface engines (also known as message brokers) is still the best technique," he believes.
Moreover, it is less clear to him that the object model has value for HL7 interfaces. Although the speed and the throughput of remote object references will probably improve, he sees no advantage to replacing Health Level Seven (HL7)-type message-oriented interfaces with an interface that uses COM or CORBA and presents that same interface as a component or as an object.
"In a healthcare context, it’s stretching it to consider using component middleware and object middleware for inter-application communications," Klein believes. Why? There are performance problems referencing the properties of the components across a network--and neither architecture has a problem that the other doesn’t have. He believes, "Message-oriented interface middleware is still the best technique for messaging. Rather than seeing the demise of interface engines, it is most likely that XML--as a way of structuring, formatting and exchanging messages--will boost the interface engine market."
|Architecture||Component Object Model (COM) architecture||Object Management architecture of which Common Object Request Broker Architecture is the central piece.|
|Developer||Microsoft Corp.||The Object Management Group (OMG)|
|Healthcare task force||Microsoft Healthcare Users Group (MS-HUG)||CORBAmed|
|Standard||Proprietary: Microsoft-developed binary standard; managed by The Open Group||ISO standard 14750|
|Maturity||COM: 1993 DCOM, 1996.||CORBA, 1992; CORBA 2.0 (defining interoperability for ORBs) 1994; CORBA 3.0, Q4 1998|
|Maturity in healthcare||ActiveX for Healthcare Controls: first reference implementation, 1997||Healthcare domain interfaces, 1998|
|Platforms||Win 16-bit and 32-bit, Mac 68K and PPC, Sun Solaris 2.5, Digital UNIX 4.0, Beta on Intel LINUX, IBM MVS, HPUX.||Almost all (most popular development platform, Windows NT)|
|Client requirements||Windows, Macintosh, may be supported on UNIX.||Language-neutral. Bindings available for C++, Java, Fortran, Ada among others.|
|Networking component||DCOM||CORBA IIOP|
|Tools||Most traditional development tools can be used to build and deploy applications||If using Java, Java compiler (approximately $40). ORB|
|Vendors in US market||90||50-100|
|Certification program manager||KPMG Peat Marwick LLP with MS-HUG||The Open Group|
|Interoperability||COM-based applications||Any CORBA-based applications; interworking defined for COM and DCOM.|
|Cost||Included in cost of Windows||ORB: many in the public domain; also available for purchase and licensing.|
|Enhancements and upgrades||Download or buy||Download or buy|
- ActiveX for Healthcare: http://www.mshug.org/activex
- ActiveX control library (with downloadable ActiveX controls): http://www.download.com/PC/Activex/
- ActiveX for Healthcare industry solutions: http://www.eu.microsoft.com/industry/health
- Microsoft Corp: http://www.microsoft.com
- The Object Management Group: http://www.omg.org
- The Object Management Group’s Medical Domain Task Force: http://omg.org/corbamed
- The Open Group: http://www.opengroup.org
Other CORBA resources:
- General information and resource links: http://www.vex.net/~ben/corba/
- CORBA implementation comparisons: http://www.kav.cas.cz/~buble/corba/
Charlene Marietti is senior technology writer at Healthcare Informatics.