Intro
This section explains the architectural alignment of the OA&D Facility (OA&DF)
metamodel and the MOF meta-metamodel, and their relationships to the OMA and
CORBA object models. When discussing specific models, MOF corresponds to the
MOF meta-metamodel also referred to as the MOF Model. The UML is used to refer
to the proposed OA&DF metamodel.
As yet, there is not an MOF meta-metamodel standard or an OA&D metamodel
standard. However, since each of these specifications has been unified, a proactive
approach has been taken towards architectural alignment. Considerable structure
sharing between the two specifications has been accomplished. As the OA&DF and
MOF technologies evolve, additional alignment work will be addressed by standard
OMG processes such as those for Revision Task Forces and subsequent RFPs.
The MOF and OA&DF alignment work has focused on aligning the metamodels and
applying the MOF IDL Mapping for generating the CORBA IDL for both the MOF
and UML models. This was accomplished by defining the MOF and UML models
using the MOF and by generating the IDL interfaces based on the MOF specification.
Note that both the MOF and OADF specifications use the UML notation for
graphically defining the models.
In terms of abstraction levels and the kinds of meta-metaobjects used, the UML and
MOF meta-metamodels are well aligned. There are significant advantages in aligning
the OA&DF meta-metamodel with the MOF meta-metamodel. In the case of the MOF,
meta-metamodel alignment facilitates interoperability between the OA&DF and the
MOF. An example of OA&DF-MOF interoperability is the use of an MOF-compliant
repository to store an OA&DF object model.
Alignment of the UML, MOF, and CORBA paves the way for future extensibility of
CORBA in key areas such as richer semantics, relationships, and constraints. Likewise
the longer-term benefits to UML and MOF include better recognition and addressing
of distributed computing issues in developing CORBA-compliant systems.
Motivation
The primary reason for aligning the OA&DF metamodel with the MOF metametamodel
is to facilitate interoperability between the two facilities using CORBA
IDL. When considering interoperability between the OA&DF and the MOF, it is
important to consider the difference in scope between the facilities. The MOF goal is
to allow interoperability across the application development cycle by supporting the
definition of multiple metamodels, whereas the OA&DF focuses on supporting the
definition of a single OA&D metamodel. An example of OA&DF-MOF
interoperability is the use of an MOF-compliant repository to store and interchange
OA&DF object models.
The key motivation to align the MOF and OA&DF with CORBA is to address the
requirement of aligning with CORBA and between the two facilities. In addition, the
MOF and OA&DF (especially the UML) specifications signify years of modeling and
metamodeling experience that are being integrated. As such, some of the key concepts
in the UML and MOF are potential candidates to evolve the OMG Core object model
and CORBA IDL in the future.
Approach
The UML and MOF are based on a four-layer metamodel architecture, where the MOF
meta-metamodel is the meta-metamodel for the UML metamodel. As a result, the
UML metamodel may be considered an instance-of the MOF meta-metamodel. This is
sometimes referred to as loose metamodeling, where an Mn level model is an instance
of an Mn+1 level model.
Since the MOF and OA&DF have different scopes, and diverge in the area of
relationships, we have not been able to apply strict metamodeling. In strict
metamodeling, every element of an Mn level model is an instance of exactly one
element of Mn+1 level model. Consequently, there is not a strict isomorphic mapping
between all the MOF meta-metamodel elements and the UML meta-metamodel
elements. In principle strict metamodeling is difficult (or sometimes impossible to
accomplish) as the complexity of new concepts (for example patterns and frameworks)
continues to increase. In any case, using a small set of primitive concepts such as those
defined in the MOF it is possible to define arbitrarily complex metamodels.
In spite of this, since the two models were designed to be interoperable, the two
metamodels are structurally quite similar. The following sections compare the core
MOF and UML modeling concepts, and contrast them with the OMA and
CORBA/IDL core object models. The issues related to mapping metaclasses which are
not isomorphic (e.g., Association classes) are also discussed.
The following tables are comparison tables that summarize the mappings of similar
concepts across the meta-metamodeling layers. Where there is no analog for a concept,
it will be identified and discussed in ”Issues Related to UML-MOF Mapping” on page
xviii.
.
.
Click Here to Download
This section explains the architectural alignment of the OA&D Facility (OA&DF)
metamodel and the MOF meta-metamodel, and their relationships to the OMA and
CORBA object models. When discussing specific models, MOF corresponds to the
MOF meta-metamodel also referred to as the MOF Model. The UML is used to refer
to the proposed OA&DF metamodel.
As yet, there is not an MOF meta-metamodel standard or an OA&D metamodel
standard. However, since each of these specifications has been unified, a proactive
approach has been taken towards architectural alignment. Considerable structure
sharing between the two specifications has been accomplished. As the OA&DF and
MOF technologies evolve, additional alignment work will be addressed by standard
OMG processes such as those for Revision Task Forces and subsequent RFPs.
The MOF and OA&DF alignment work has focused on aligning the metamodels and
applying the MOF IDL Mapping for generating the CORBA IDL for both the MOF
and UML models. This was accomplished by defining the MOF and UML models
using the MOF and by generating the IDL interfaces based on the MOF specification.
Note that both the MOF and OADF specifications use the UML notation for
graphically defining the models.
In terms of abstraction levels and the kinds of meta-metaobjects used, the UML and
MOF meta-metamodels are well aligned. There are significant advantages in aligning
the OA&DF meta-metamodel with the MOF meta-metamodel. In the case of the MOF,
meta-metamodel alignment facilitates interoperability between the OA&DF and the
MOF. An example of OA&DF-MOF interoperability is the use of an MOF-compliant
repository to store an OA&DF object model.
Alignment of the UML, MOF, and CORBA paves the way for future extensibility of
CORBA in key areas such as richer semantics, relationships, and constraints. Likewise
the longer-term benefits to UML and MOF include better recognition and addressing
of distributed computing issues in developing CORBA-compliant systems.
Motivation
The primary reason for aligning the OA&DF metamodel with the MOF metametamodel
is to facilitate interoperability between the two facilities using CORBA
IDL. When considering interoperability between the OA&DF and the MOF, it is
important to consider the difference in scope between the facilities. The MOF goal is
to allow interoperability across the application development cycle by supporting the
definition of multiple metamodels, whereas the OA&DF focuses on supporting the
definition of a single OA&D metamodel. An example of OA&DF-MOF
interoperability is the use of an MOF-compliant repository to store and interchange
OA&DF object models.
The key motivation to align the MOF and OA&DF with CORBA is to address the
requirement of aligning with CORBA and between the two facilities. In addition, the
MOF and OA&DF (especially the UML) specifications signify years of modeling and
metamodeling experience that are being integrated. As such, some of the key concepts
in the UML and MOF are potential candidates to evolve the OMG Core object model
and CORBA IDL in the future.
Approach
The UML and MOF are based on a four-layer metamodel architecture, where the MOF
meta-metamodel is the meta-metamodel for the UML metamodel. As a result, the
UML metamodel may be considered an instance-of the MOF meta-metamodel. This is
sometimes referred to as loose metamodeling, where an Mn level model is an instance
of an Mn+1 level model.
Since the MOF and OA&DF have different scopes, and diverge in the area of
relationships, we have not been able to apply strict metamodeling. In strict
metamodeling, every element of an Mn level model is an instance of exactly one
element of Mn+1 level model. Consequently, there is not a strict isomorphic mapping
between all the MOF meta-metamodel elements and the UML meta-metamodel
elements. In principle strict metamodeling is difficult (or sometimes impossible to
accomplish) as the complexity of new concepts (for example patterns and frameworks)
continues to increase. In any case, using a small set of primitive concepts such as those
defined in the MOF it is possible to define arbitrarily complex metamodels.
In spite of this, since the two models were designed to be interoperable, the two
metamodels are structurally quite similar. The following sections compare the core
MOF and UML modeling concepts, and contrast them with the OMA and
CORBA/IDL core object models. The issues related to mapping metaclasses which are
not isomorphic (e.g., Association classes) are also discussed.
The following tables are comparison tables that summarize the mappings of similar
concepts across the meta-metamodeling layers. Where there is no analog for a concept,
it will be identified and discussed in ”Issues Related to UML-MOF Mapping” on page
xviii.
.
.
Click Here to Download
ไม่มีความคิดเห็น:
แสดงความคิดเห็น