William Kent, "The Objects Are Coming!", Computer Standards and Interfaces, 12(2-3), July 1993. [2 pp]

The Objects Are Coming!
(Guest Editorial)

William Kent
Database Technology Department
Hewlett-Packard Laboratories
Palo Alto, California

July 1993

The objects are coming! The objects are coming! Big ones, little ones, fat ones, skinny ones, round ones and square ones. They're on our screens, in our networks, at our interfaces, and in our methodologies. No programming language is complete without them. They're all over our conferences, workshops, journals, magazines, newsletters, and bulletins. They've even found their way into the weekly news magazines and the Sunday supplements.

But what is an object? Well, everybody knows that, of course. An object is "really" an application. An object is "really" a coherent chunk of data and code all in one place. An object is "really" an active agent in your system. An object is "really" something that sends and receives messages. An object is "really" something that represents a single thing or concept in the real world. An object is "really" something you can see on your screen. Are these all the same idea? Not exactly.

So what are they, really? That's the sixty-four dollar question that makes this issue of Computer Standards and Interfaces so timely. As usual, the problem isn't that we don't have an answer - we have too many. That's why the need for standardization is so strong, and also why it's so hard to achieve. Again, it's not that we don't have emerging standards - we have too many. Dozens of groups and committees are defining "the" object model for their language, interface, methodology, etc.

That's the challenge facing X3H7, the new ANSI/X3 Technical Committee dealing with Object Information Management. Formed early last year in response to a recommendation of the Object Oriented Database Task Group (OODBTG) of the ANSI/X3/SPARC Database Systems Study Group (DBSSG), X3H7 has the mission of harmonizing the object-oriented aspects of standards developed by other committees.

This is a unique and unusual mission. Though we are chartered to produce a reference object model description, that's not our most important product. The real product is intangible, reflected indirectly in the standards produced by other groups. To the extent that such standards are consistent, X3H7 will have accomplished its basic mission.

How will we achieve this? What does "harmonious" really mean? X3H7 is new enough that we can still say we're trying to figure that out. But we have some definite ideas.

For one thing, there is a spectrum of solution styles. At one unlikely extreme we have a single unified object model that suits all needs. At the other extreme we have architectural frameworks allowing facilities which use a plethora of object models to interoperate with each other. The real solution is undoubtedly some hybrid. Essential to it all, though, is some uniform and consistent description of all object models.

X3H7 is not in the business of prescribing the "right" object model. We are collecting descriptions of a variety of object models into a "features matrix", which will be synthesized into a single description that is consistent in its goals and technology, described in a consistent manner.

Interoperability problems themselves come in various flavors. We are structuring these into a problem space with at least the following dimensions:

Ideally, X3H7 should proceed serially, first learning the current state of object technology from the work of other groups and the published literature, then synthesizing it all into a coherent strategy and recommendations, and finally trying to guide other groups toward a common goal. In reality, we are constrained by the same accelerated "time-to-market" as everyone else, and so we are tackling all those stages simultaneously. X3H7 has undertaken a substantial mission, and your help is solicited. For more information, contact Liz Fong [(301) 975-3250 / fong@ecf.ncsl.nist.gov].

Whether or not you join us in X3H7, this issue of Computer Standards and Interfaces provides a valuable introduction to the problems we are addressing.