Overview
ISO/IEC 19506:2012 - Knowledge Discovery Meta-Model (KDM) - is an international standard that defines a meta-model for representing existing software assets, their relationships, and operational environments. As the first in the family of specifications addressing Software Assurance (SwA) and Architecture-Driven Modernization (ADM), KDM enables consistent representation of legacy systems to support analysis, transformation and tool-based modernization. The standard’s primary goal is to ensure interoperability and exchange of data between different vendor tools involved in reverse engineering, reengineering and modernization activities.
Key topics and technical scope
- Meta-model definition: formal model elements and relationships used to describe software artifacts, inventories and runtime aspects.
- Layered organization: infrastructure and program-elements layers (e.g., Core, kdm, Source, Code packages) that structure how software knowledge is captured.
- Conformance and compliance: defined KDM domains, compliance levels and types to guide tool vendors and integrators on how to conform.
- Model contents and diagrams: class diagrams and packages for core entities, aggregated relations, datatypes, source artifacts, code model elements, control/data elements and primitive/composite types.
- Extensibility and annotations: mechanisms for extensions, tagged values and annotations to capture tool- or domain-specific metadata.
- Audit and provenance: support for audit information to track model origin and transformation history.
- Vocabulary and normative references: standardized terms, symbols and references to support consistent interpretation.
Practical applications and who should use it
ISO/IEC 19506 (KDM) is practical for organizations and practitioners involved in:
- Software modernization and migration: mapping legacy code and artifacts prior to redesign, refactoring or platform migration.
- Reverse engineering and program comprehension: extracting architecture, dependencies and behavioral structures from existing systems.
- Tool vendors and integrators: enabling tool interoperability for static analysis, model transformation, impact analysis and automated reengineering pipelines.
- Software assurance and auditing: documenting system artifacts for security assessment, compliance and traceability.
- Enterprise architects and modernization teams: creating consistent, tool-agnostic representations of software portfolios to plan modernization roadmaps.
Typical users: software architects, modernization engineers, tool developers, SAST/SCAT vendors, consultants and governance/audit teams.
Related standards and positioning
ISO/IEC 19506 implements the OMG Architecture-Driven Modernization (ADM) KDM concept and is the foundational specification in the ADM/SwA series. It is intended to be used alongside other ADM/modernization specifications and vendor tool guidelines to create interoperable, machine-readable representations of software knowledge for automated analysis and transformation.