Teach Yourself CORBA In 14 Days

Previous chapterNext chapterContents


Appendix B
CORBA Tools and Utilities


This appendix provides a brief overview of some of the CORBA products available today. Although every attempt was made to make this information as up-to-date as possible, there are always products that slip between the cracks. Also, as the interest in CORBA grows, new products are announced all the time. Here, then, is a brief overview of all CORBA-related products known to the author at the time this was written.

A Look at CORBA ORB Products

The products described in this section include Object Request Brokers (ORBs) and are used to develop and deploy CORBA applications. Usually, these products don't provide full development environments but simply the ORB itself, an Interface Definition Language (IDL) compiler, and other miscellaneous tools useful for CORBA application development.

BBN's Corbus'

Corbus is a CORBA 2.0-compliant ORB that is free for government and noncommercial use (subject to certain conditions, details being available on BBN's Web site). Corbus is available for Solaris, SunOS, and HP-UX.

Information on Corbus, as well as downloadable copies, is available on BBN's Web site at http://www.bbn.com/products/dpom/corbus.htm.

BEA Systems' ObjectBroker'

BEA, perhaps most famous for its Tuxedo transaction-processing monitor, offers a CORBA ORB (which it acquired from Digital around March 1997). ObjectBroker supports 20 platforms (BEA's Web site doesn't indicate which) and provides integration with OLE on Windows platforms. BEA claims that ObjectBroker is the most mature ORB available, having first shipped in 1991 (indeed, this is an eternity in CORBA years).

Information on ObjectBroker is available on BEA's Web site at http://www.beasys.com/products/obb/index.htm.

Chorus Systems' CHORUS/COOL ORB'

Chorus, recently acquired by Sun Microsystems (September 1997), offers a CORBA 2.0- compliant ORB in its CHORUS/COOL ORB product. CHORUS/COOL ORB is available for an impressive array of operating systems, including AIX, CHORUS realtime and embedded OS's, HP-UX, Linux, SCO OpenDesktop and OpenServer, SunOS, Solaris, Windows 95, and Windows NT.

Information on CHORUS/COOL ORB, as well as a downloadable evaluation copy, is available at Chorus's Web site at http://www.chorus.com/Products/Cool/index.html.

DNS Technologies' SmalltalkBroker'

A rare breed, DNS Technologies' SmalltalkBroker is a CORBA 2.0-compliant ORB for Smalltalk applications. SmalltalkBroker also provides a handful of CORBAservices implementations--CORBA Naming Service, CORBA Life Cycle Service, CORBA Event Service, and CORBA Transaction Service.

Information on SmalltalkBroker is available on DNS Technologies' Web site at http://www.dnstech.com/stbprod.htm.

Expersoft's CORBAplus Products'

Expersoft's CORBAplus family comes in a variety of flavors:

Information on the CORBAplus product line, along with downloadable evaluation copies, is available on Expersoft's Web site at http://www.expersoft.com/Products/CORBAplus/corbaplus.htm.

Hewlett-Packard's ORB Plus'

ORB Plus is Hewlett-Packard's entry into the CORBA market, with support for (of course) HP-UX, Solaris, and Windows NT. In addition to being a CORBA 2.0-compliant ORB, ORB Plus provides implementations for the CORBA Life Cycle Service, the CORBA Naming Service, and the CORBA Event Service. A unique feature of ORB Plus is that it supports DCE CIOP (essentially the equivalent of IIOP for DCE), at least on HP-UX.

Hewlett-Packard has been instrumental in the development of proposals to build bridges between CORBA and Microsoft technologies, such as DCOM and ActiveX, so developers interested in spanning the two worlds will want to keep an eye on Hewlett-Packard.

More information on ORB Plus is available on Hewlett-Packard's Web site at http://www.hp.com/gsy/orbplus.html.

IBM's SOMobjects'

SOMobjects, IBM's offering in the CORBA world, is available for AIX, OS/2, and Windows NT. SOMobjects provides implementations for a variety of CORBAservices, including the CORBA Event Service, the CORBA Life Cycle Service, the CORBA Persistent Object Service, the CORBA Concurrency Service, and the CORBA Transaction Service.

Information on SOMobjects, as well as a downloadable copy, is available at IBM's Web site at http://www.software.ibm.com/ad/somobjects/.

IONA Technologies' Orbix, OrbixWeb, and Other Products'

IONA and Orbix are perhaps two of the most well-known and well-respected names in CORBA. IONA offers a number of CORBA products to serve a wide range of needs:

IONA seems to be making itself a one-stop shop for a wide variety of CORBA solutions. Information on Orbix, OrbixWeb, and other IONA products--many of which can be down-loaded as trial versions--is available from the IONA Web site at http://www.iona.com/.

Netscape's Navigator and Enterprise Server'

Netscape licenses Visigenic Software's VisiBroker for Java (covered in greater detail later in this appendix) and includes the ORB technology in its popular Web browser, Navigator 4.0 (and, by extension, Communicator). This is a boon for intranet (and, to a lesser extent, Internet) developers because the client end (the part written in Java that runs in the browser) of a CORBA application can be made smaller (requiring less code to be downloaded to the client) because the ORB is integrated with the browser. Because VisiBroker is 100% Pure Java, such an application also works with non-Netscape browsers as well, although the VisiBroker code has to be downloaded to those browsers. (Of course, other vendors are free to include ORB technology in their browsers as well.)

Netscape also bundles Visigenic's ORB technology with Enterprise Server 3.0, bringing CORBA functionality to the server side as well.

Information on Navigator, as well as a downloadable copy, is available at Netscape's Web site at http://www.netscape.com/; developer information for Netscape products is available at http://developer.netscape.com/.

Object-Oriented Concepts' OmniBroker'

OmniBroker, from Object-Oriented Concepts, is another CORBA 2.0-compliant ORB that is freely available for noncommercial use. As well as being freely available, full source code is included with OmniBroker. OmniBroker fully supports IDL mappings for C++ and Java, and, because source code is available, can theoretically work on virtually any platform. OmniBroker for C++ has been tested on IRIX, Solaris, HP-UX, AIX, Linux, Windows 95, and Windows NT; OmniBroker for Java works with Sun's JDK 1.0.2 or 1.1.3, as well as Microsoft's Visual J++ 1.1.

Information on OmniBroker, as well as a downloadable copy, is available on Object-Oriented Concepts' Web site at http://www.ooc.com/ob.html.

Object-Oriented Technologies' DOME'

DOME is another freely available (though redistribution details are not clear) CORBA ORB supporting C++ and C. DOME is available for a wide variety of platforms, including Solaris, SunOS, AIX, HP-UX, Digital UNIX, Windows 3.1, Windows 95, Windows NT, VMS, OS/2, OS-9, pSOS, and Linux.

More information about DOME is available on Object-Oriented Technologies' Web site at http://www.oot.co.uk/.

Objectspace's Voyager'

Voyager, although not yet CORBA-compliant (Objectspace is planning CORBA interoperability in the next release), should still be of great interest to Java developers. Just one look at the list of features will explain why: In addition to all the ORB-like features one would expect (such as remote method invocation, naming services, and so on), Voyager provides much, much more. For example, any Java class can be remote-enabled non-intrusively (even if the source code is unavailable). Voyager also supports a wide variety of messaging services, as well as mobile objects (objects can literally be moved onto any Voyager server on the network) and even autonomous agents (objects can move themselves to other Voyager servers). Voyager adds more, such as support for persistence through various databases (as well as its own simple built-in persistence mechanism) and a custom Security Manager.

And, as if all this weren't enough, Objectspace is making Voyager available free of charge. (Objectspace charges for Voyager support, although the level of support given for free is quite reasonable.) That Objectspace is giving away the use of this technology is amazing, especially considering the product's capabilities. Although Voyager is a Java-only product (and 100% Pure Java at that), when CORBA support is added, Voyager objects can interact with CORBA applications. In addition, Objectspace is planning support for DCOM interoperability as well.

Java developers owe it to themselves to check out this product; the rest of the CORBA community should stay tuned. Information on Voyager, along with the free download, is available on Objectspace's Web site at http://www.objectspace.com/voyager/.

The Olivetti and Oracle Research Laboratory's omniORB2'

omniORB2, from the Olivetti and Oracle (an interesting combination) Research Laboratory, will be a particularly appealing product to some developers because of one outstanding feature: The product is freely available, even for commercial use. That's correct. ORL has placed omniORB2 under the GNU General Public License and GNU Library General Public License. At the time this was written, omniORB2 was not yet a complete CORBA 2.0 implementation because it lacked support for Typecodes and the any type; also, the Dynamic Invocation Interface (DII) and Dynamic Skeleton Interface (DSI) were not supported. Nevertheless, omniORB2 can prove useful for a great many of development projects.


The GNU General Public License

Details of the GNU General Public License (GPL), also known as the copyleft, are available from the Free Software Foundation (FSF) Web site at http://www.fsf.org/copyleft/gpl.html. Similarly, details of the GNU Library General Public License are available at http://www.fsf.org/copyleft/lgpl.html. Essentially, software distributed under these terms can be copied and distributed freely, or even modified or sold, but the source code must always be included with the product using such software. The GPL is very popular among users of free UNIX-like operating systems such as Linux or FreeBSD.

Information on omniORB2, along with the (freely available) distribution, is available at ORL's Web site at http://www.orl.co.uk/omniORB/omniORB.html.

SunSoft's NEO and Joe'

Sun's CORBA product line consists of four major products:

Information on NEO and Joe, along with downloadable copies of some of Sun's products, is available on Sun's Web site at http://www.sun.com/solaris/neo/.

Sybase's Jaguar CTS'

Although the current version (1.1) of Jaguar CTS is not CORBA-compliant, Sybase is promising CORBA interoperability in version 2. In the meantime, Jaguar CTS is particularly interesting because of its wide range of support for various technologies and products. Jaguar CTS interoperates with Java, ActiveX, PowerBuilder, and C/C++. It supports connectivity through HTTP, TDS, and (in version 2) IIOP. It also supports database connectivity through JDBC, ODBC, or CTlib to databases such as (of course) Sybase, Oracle, Informix, SQL Server, or mainframe-based databases.

Information on Jaguar CTS is available on Sybase's Web site at http://www1.sybase.com/products/jaguar/.

TIBCO's TIB/ObjectBus'

TIBCO's strong suit is messaging, and it leverages this strength with its TIB/ObjectBus product, a CORBA 2.0-compliant ORB that TIBCO claims is "the only ORB that takes advantage of both broadcast and reliable multicast communication to initiate ORB requests and distribute ORB events across an unlimited number of servers and users." In addition to supporting the CORBA Naming Service and CORBA Event Service, TIB/ObjectBus provides CORBA-compliant mechanisms for publish-subscribe and request-reply models of communication. TIB/ObjectBus supports a variety of platforms, including Solaris, HP-UX, VMS, Digital UNIX, OS/2, AIX, and Windows NT. In addition, TIBCO is planning possible support for Java, the CORBA Transaction Service, and other features.

More information on TIB/ObjectBus is available on TIBCO's Web site at http://www.tibco.com/objctbus/tib_object_bus.html.

Visigenic Software's VisiBroker and Other Products'

Visigenic is quickly making a name for itself in the CORBA industry. The company has been successful in licensing its ORB technology to a number of high-profile vendors, including Borland, Netscape, Novell, Oracle, SGI, and Sybase. In addition to licensing its technology, Visigenic also offers the following products:

Visigenic has recently announced the Distributed Application Platform Architecture (Visigenic/DAP), its plan for a CORBA development platform. Along with the CORBAservices presently offered, Visigenic plans to add other services, such as the CORBA Trader Service, integrated transaction capability, and asynchronous messaging capability.

Information on VisiBroker and other Visigenic products, many of which can be downloaded as trial versions, is available from Visigenic's Web site at http://www.visigenic.com/.

Xerox PARC's ILU'

Strictly speaking, ILU (Inter-Language Unification) is not a CORBA 2.0-compliant ORB, although it supports IIOP along with the CORBA language mappings for C, C++, and Java. The capabilities provided by ILU are a superset of CORBA. For example, languages supported by ILU, in addition to the aforementioned C, C++, and Java, include Python, Common LISP, and Modula-3. Also, ILU includes, of all things, an implementation of HTTP (Hypertext Transport Protocol, the mechanism used by the World Wide Web).

According to the ILU Web page, one of the implementation goals is to maximize compatibility with existing open standards, and this goal is reflected in the availability list for ILU: SunOS, Solaris, HP-UX, AIX, OSF, IRIX, FreeBSD, Linux, LynxOS, SCO, Windows 3.1, Windows 95, and Windows NT. Additionally, ILU supports a number of threading and event loop models. Again, ILU is not strictly a CORBA 2.0-compliant product, but it is freely available with no restrictions (other than that a copyright notice must accompany any copies of the software).

Information on ILU, as well as a freely available downloadable copy, is available at PARC's Web site (actually their FTP site) at ftp://ftp.parc.xerox.com/pub/ilu/ilu.html.

A Look at CORBA-Aware Development Tools

This section describes development tools that are "CORBA-aware," meaning that they have at least some knowledge of CORBA application development methodology. For instance, such a tool can generate and parse IDL definitions or enable a developer to graphically create a set of IDL interfaces to define the workings of a CORBA application.

Note that a number of development products might include ORBs (as mentioned previously, Visigenic Software licenses its ORB technology to a number of other software vendors). Development products that include ORBs without providing CORBA-specific development tools are not mentioned here.

Aonix's Software through Pictures'

Software through Pictures is a family of tools that supports, among other things, object-oriented analysis and design of applications. Software through Pictures supports a variety of OO methodologies, including the Unified Modeling Language (UML), Object Modeling Technique (OMT), and Booch. Software through Pictures supports graphical editing of business requirements, use cases, object models, dynamic models, functional models, object interaction diagrams, and class tables. Software through Pictures also integrates with a variety of languages and tools, such as Smalltalk, C++, Java, and IDL (making it useful as a CORBA design tool); FrameMaker and Interleaf are supported for automatic generation of documentation. Finally, Software through Pictures supports SunOS, Solaris, HP-UX, AIX, Digital UNIX, and Windows NT.

More information on the Software through Pictures family of products is available on Aonix's Web site at http://www.aonix.com/Products/StP/stp.html.

Black & White Software's CORBA Development Tools'

Black & White Software offers a plethora of CORBA development tools:

More information on Black & White's CORBA development products is available on the Black & White Web site at http://www.blackwhite.com/products/corbadev.html.

ParcPlace's Distributed Smalltalk'

Distributed Smalltalk is an interactive tool that supports the development of CORBA applications in--what else--Smalltalk. In addition to providing graphical design and development tools, Distributed Smalltalk includes a CORBA 2.0-compliant ORB and implementations for the CORBA Naming Service, the CORBA Event Service, the CORBA Transaction Service, and the CORBA Concurrency Service. Distributed Smalltalk also includes other CORBA features, such as an Interface Repository browser and the capability to generate IDL from existing Smalltalk classes. Distributed Smalltalk supports Windows 3.1, Windows 95, Windows NT, MacOS, HP-UX, AIX, Solaris, and SunOS.

More information on Distributed Smalltalk is available on ParcPlace's Web site at http://www.parcplace.com/products/dst/info/dst.htm.

Rational Software's Rose'

Rational Rose is the most popular visual design tool on the market today. The tool supports Booch, Object Modeling Technique (OMT), and Unified Modeling Language (UML) notations and provides tools for use case analysis, class and object modeling, component modeling, and more. Rose also supports a number of languages, including Visual Basic, PowerBuilder, C++, Forté, Java, Smalltalk, and SQLWindows. In addition, Rose can be used to create logical models for relational databases, supporting Oracle7, Sybase, SQL Server, Watcom SQL, and ANSI SQL. Of particular use to CORBA application developers is Rose's capability to generate IDL from graphical object models. Rose is available on a number of platforms, including Windows 95, Windows NT, IRIX, Solaris, AIX, Digital UNIX, and HP-UX.

More information on Rose, as well as a downloadable evaluation copy, can be found on Rational's Web site at http://www.rational.com/products/rose/index.html.

TakeFive Software's SNiFF+'

SNiFF+ is a development tool (or actually a family of tools) that supports a wide variety of languages, including C, C++, FORTRAN, Java, IDL, and others. Useful to CORBA developers is SNiFF+'s capability to generate and parse IDL files. Of course, SNiFF+ offers a variety of graphical tools, such as a class browser, a debugger, and more.

More information on the SNiFF+ family of products, along with downloadable evaluation software, can be found on TakeFive's Web site at http://www.takefive.com/products.htm.

TRW's Universal Network Architecture Services (UNAS)'

TRW's Universal Network Architecture Services (UNAS) is a development tool combined with a CORBA ORB, supporting some beyond-CORBA features such as object monitoring and control, performance evaluation and tuning, and fault tolerance. UNAS also supports the CORBA Naming Service and SNMP (Simple Network Management Protocol) management. Also supported are the C++ and Ada languages, SunOS, Solaris, HP-UX, AIX, IRIX, Digital UNIX, OpenVMS, DEC CMW, ULTRIX, Rational Apex, Rational R1000, SCO UNIX, and Windows NT platforms.

More information on UNAS is available at TRW's Web site at http://www.trw.com/unas/http://www.trw.com/unas/.


Previous chapterNext chapterContents



Macmillan Computer Publishing USA

© Copyright, Macmillan Computer Publishing. All rights reserved.