This Reference Model defines a framework comprising
-- five viewpoints, called enterprise, information, computational, engineering and technology which provide a basis for the specification of ODP systems;
-- a viewpoint language for each viewpoint, defining concepts and rules for specifying ODP systems from the corresponding viewpoint;
-- specifications of the functions required to support ODP systems;
-- transparency prescriptions showing how to use the ODP functions to achieve distribution transparency.
The architecture for ODP systems and the composition of functions is determined by the combination of the computational language, the engineering language and the transparency prescriptions.
4.1.1.1 Enterprise viewpoint: A viewpoint on an ODP system and its environment that focuses on the purpose, scope and policies for that system.
4.1.1.2 Information viewpoint: A viewpoint on an ODP system and its environment that focuses on the semantics of information and information processing.
4.1.1.3 Computational viewpoint: A viewpoint on an ODP system and its environment which enables distribution through functional decomposition of the system into objects which interact at interfaces.
4.1.1.4 Engineering viewpoint: A viewpoint on an ODP system and its environment that focuses on the mechanisms and functions required to support distributed interaction between objects in the system.
4.1.1.5 Technology viewpoint: A viewpoint on an ODP system and its environment that focuses on the choice of technology in that system.
The enterprise, information, computational, engineering and technology viewpoints have been chosen as a necessary and sufficient set to meet the needs of ODP standards. Viewpoints can be applied, at an appropriate level of abstraction, to a complete ODP system, in which case the environment defines the context in which the ODP system operates. Viewpoints can also be applied to individual components of an ODP system, in which case the component's environment will include some abstraction of both the system's environment and other system components.
NOTE - the process of abstraction might be such that the system's environment and the other system components are composed into a single object.
4.2.1.1 <Viewpoint> language: Definitions of concepts and rules for the specification of an ODP system from the <viewpoint> viewpoint; thus: engineering language: definitions of concepts and rules for the specification of an ODP system from the engineering viewpoint.
4.2.2 Using viewpoint languages
This Reference Model defines a set of five languages, each corresponding to one of the viewpoints defined in 4.1.1. Each language is used for the specification of an ODP system from the corresponding viewpoint. These languages are
-- the enterprise language (defined in 5);
-- the information language (defined in 6);
-- the computational language (defined in 7);
-- the engineering language (defined in 8);
-- the technology language (defined in 9).
Each language uses concepts taken from ITU-T Rec. X.902 | ISO/IEC 10746-2, and introduces refinements of those concepts, prescriptive rules and additional viewpoint-specific concepts relevant to the nature of the specifications concerned. These additional concepts are, in turn, defined using concepts from ITU-T Rec. X.902 | ISO/IEC 10746-2.
A system specification comprises one or more viewpoint specifications. These specifications must be mutually consistent. Rules for the consistent structuring of viewpoint specifications are given in 10. The specifier must demonstrate by other means that terms in the specifications are used consistently. A specification of a system using several viewpoint specifications will often restrict implementations more than a specification using fewer viewpoint specifications. Objects identified in one viewpoint can be specified using the viewpoint language associated with that viewpoint or using the viewpoint languages associated with other viewpoints. It is not necessary to specify an object fully from every viewpoint in order to achieve a mutually consistent set of viewpoint specifications.
NOTES
1 The list of terms taken from ITU-T Rec X.902 | ISO/IEC 10746-2 are listed in figure 1.
2 The qualification of a term from ITU-T Rec X.902 | ISO/IEC 10746-2 by the name of a viewpoint (e.g. as in "computational object") is interpreted as using of the term from ITU-T Rec X.902 | ISO/IEC 10746-2, subject to whatever additional provisions are specified in the identified viewpoint language.
3 The unqualified use of a term from ITU-T Rec X.902 | ISO/IEC 10746-2 in a viewpoint specification (e.g., "interface") is interpreted as if the term had been qualified by the name of the viewpoint (i.e., "computational interface"), if the associated viewpoint language places additional constraints on the term.
4.3.1 ODP function: A function required to support Open Distributed Processing.
This Reference Model specifies, in 11 to 15, the functions required to achieve Open Distributed Processing.
Each ODP function description contains
-- an explanation of the use of the function for open distributed processing;
-- prescriptive statements, about the structure and behaviour of the function, sufficient to ensure the overall integrity of the Reference Model;
-- a statement of other ODP functions upon which it depends.
4.4 ODP distribution transparencies
4.4.1.1 Access transparency: a distribution transparency which masks differences in data representation and invocation mechanisms to enable interworking between objects.
4.4.1.2 Failure transparency: A distribution transparency which masks, from an object, the failure and possible recovery of other objects (or itself), to enable fault tolerance.
4.4.1.3 Location transparency: A distribution transparency which masks the use of information about location in space when identifying and binding to interfaces.
4.4.1.4 Migration transparency: A distribution transparency which masks, from an object, the ability of a system to change the location of that object. Migration is often used to achieve load balancing and reduce latency.
4.4.1.5 Relocation transparency: A distribution transparency which masks relocation of an interface from other interfaces bound to it.
4.4.1.6 Replication transparency: A distribution transparency which masks the use of a group of mutually behaviourally compatible objects to support an interface. Replication is often used to enhance performance and availability.
4.4.1.7 Persistence transparency: A distribution transparency which masks, from an object, the deactivation and reactivation of other objects (or itself). Deactivation and reactivation are often used to maintain the persistence of an object when a system is unable to provide it with processing, storage and communication functions continuously.
4.4.1.8 Transaction transparency: A distribution transparency which masks coordination of activities amongst a configuration of objects to achieve consistency.
4.4.2 Using distribution transparency
Distribution transparency is an important end-user requirement in distributed systems. This Reference Model defines a set of distribution transparencies which make it possible to implement ODP systems which are distribution transparent from the point of view of users of those systems. Distribution transparency is selective; the Reference Model includes rules for selecting and combining distribution transparencies in ODP systems.
This Reference Model contains, for each distribution transparency defined in 4.4.1.1 to 4.4.1.8, definitions of both
-- a schema for expressing requirements for the particular transparency;
-- a refinement process for transforming a specification which contains requirements for the particular distribution transparency to a specification which explicitly realizes the masking implied by that transparency.
NOTES
1 In some cases (e.g., access transparency) the schema is null; in others (e.g., transaction transparency) the schema contains one or more parameters dictating the precise form of transparency required.
2 The refinement process typically involves introducing additional behaviour, including the use of one or more ODP functions into the specification.
The specifications of the refinement processes in 16 are prescriptive to the level required to ensure overall integrity of the Reference Model.
4.5 Standards derived from the framework
This Reference Model provides a framework for the definition of new standards and the use of existing standards as ODP standards.
ODP standards are any of
-- standards for components of ODP systems;
-- standards for composing ODP system components;
-- standards for modelling and specifying ODP systems.
ODP standards
-- use the enterprise language to specify policies;
-- use the information language to specify consistent use and interpretation of information in, and between, standards;
-- use the computational language to specify the configuration and behaviour of interfaces;
-- use the engineering language to specify the infrastructures they require;
-- use the technology language to specify conformance to international, private, or consensual specifications.
Standards for methodology, modelling, programming, implementation and testing of ODP systems use the framework as a whole.
ODP standards can be based on a subset of this Reference Model (e.g., by excluding some forms of interaction, particular functions or transparencies). Such standards can also extend upon this Reference Model, provided that the extensions they introduce do not change or contradict its provisions. Extensions will relate new terms to terms defined in this Reference Model: for example, by introducing new types and new type rules.
ODP standards comply with all the prescriptive statements in this Reference Model.
The enterprise, information, computational and engineering languages are used to specify the conformance requirements for ODP systems. The technology language can be used to assert conformance to ODP standards in ODP systems. Each interface which is defined as a conformance point has an information specification to enable interpretation of interactions of that interface. The rules for identifying conformance points are given in the computational and engineering languages.
An ODP system conforms to an ODP standard if it satisfies the conformance requirements of that standard.