Reference Model For Open Distributed Processing

RM-ODP is a joint ISO and ITU standard, defined during the early 1990s, to standardise architectural concepts for distributed computing. It is intended to aid the development of future standards for distributed computing platforms rather than define a standard platform itself.

RM-ODP presents distributed computing systems from five viewpoints, concepts in higher level viewpoints being mapped to one or more lower level concepts in others. E.g. the computational viewpoint defines the functional abstractions of a distributed system in a distribution-transparent manner, and the engineering viewpoint describes how the system implements the computational viewpoint.

The computational viewpoint views a distributed system as a set of interacting objects. An object provides one or more interfaces through which it makes its services available to other objects in the system. RM-ODP defines three types of interface: operational, stream and signal interfaces. An operational interface defines one or more one-way and request/reply operations that can be invoked upon an object. A stream interface defines one or more flows of continuous media accepted by the object. Both operational and stream interfaces are defined in terms of signals, low level operations that correspond to local procedure calls; operations and streams are the only interactions that are supported between address spaces.

In the computational viewpoint, objects interact via bindings between their interfaces. RM-ODP does not specify who initiates the binding, thereby allowing both first-party and ThirdPartyBinding to be supported by the model. Bindings are either primitive, directly connecting two interfaces, or are compound, being supported by binding objects that are themselves bound between the two interfaces. In the engineering viewpoint, a binding object corresponds to a channel, a concept that represents the communication mechanism used by the distributed system. A channel is composed of stubs, binders and protocols. Stubs perform processing that requires knowledge of appli-cation semantics, binders perform processing that does not require application semantics and can be performed on raw bit-streams, and protocols transmit the bit-streams between address spaces.

Because RM-ODP defines only concepts, is understandably vague as to exactly how objects and systems are defined and deployed. It does not prescribe any interface definition language or any method of constructing systems and does not define its model of object behaviour and interaction with any formality.

The concepts of the RM-ODP were realised in the ANSA system. Recent developments of the CORBA standard have specified features that are compatible with the concepts of RM-ODP, including naming and trading services and facilities for controlling media streams, and RM-ODP has adopted the CORBA IDL as an ISO standard.


EditText of this page (last edited March 15, 2000) or FindPage with title or text search