KDM packages are arranged into the following four layers:
Infrastructure Layer The KDM Infrastructure Layer consists of the
Core,
kdm, and
Source packages which provide a small common core for all other packages, the inventory model of the artifacts of the existing system and full traceability between the meta-model elements as links back to the source code of the artifacts, as well as the uniform extensibility mechanism. The Core package determines several of the patterns that are reused by other KDM packages. Although KDM is a meta-model that uses
Meta-Object Facility, there is an alignment between the KDM Core and
Resource Description Framework (RDF).
Program Elements Layer The Program Elements Layer consists of the Code and Action packages. • The
Code package represents programming elements as determined by programming languages, for example data types, procedures, classes, methods, variables, etc. This package is similar in purpose to the Common Application Meta-model (CAM) from another OMG specification, called Enterprise Application Integration (EAI). KDM Code package provides greater level of detail and is seamlessly integrated with the architecturally significant views of the software system. Representation of datatypes in KDM is aligned with
ISO standard ISO/IEC 11404 (see also
General Purpose Datatypes). • The
Action package captures the low level behavior elements of applications, including detailed control- and data flow between statements. Code and Action package in combination provide a high-fidelity intermediate representation of each component of the enterprise software system
Resource Layer The Resource Layer represents the operational environment of the existing software system. It is related to the area of
Enterprise Application Integration (EAI). •
Platform package represents the operating environment of the software, related to the operating system, middleware, etc. including the control flows between components as they are determined by the runtime platform •
UI package represents the knowledge related to the user interfaces of the existing software system •
Event package represents the knowledge related to events and state-transition behavior of the existing software system •
Data package represents the artifacts related to persistent data, such as indexed files, relational databases, and other kinds of data storage. These assets are key to enterprise software as they represent the enterprise
metadata. The KDM Data package is aligned with another OMG specification, called
Common Warehouse Metamodel (CWM)
Abstractions Layer The Abstraction Layer represents domain and application abstractions. •
Conceptual package represent business
domain knowledge and business rules, insofar as this information can be mined from existing applications. These packages are aligned with another OMG specification, called
Semantics of Business Vocabulary and Business Rules (SBVR) •
Structure package describes the meta-model elements for representing the logical organization of the software system into subsystems, layers and components •
Build package represents the engineering view of the software system ==See also==