Knowledge Discovery Metamodell
Knowledge Discovery Metamodell (Kdm) ist eine öffentlich verfügbare Spezifikation aus der Objektverwaltungsgruppe (OMG). KDM ist häufig Zwischendarstellung Für vorhandene Softwaresysteme und ihre Betriebsumgebungen definiert das gemeinsame Metadaten für tief erforderlich Semantische Integration von Anwendungslebenszyklusmanagement Werkzeug. KDM wurde als Grundlage des OMG für die Grundlage für Software -ModernisierungIT -Portfoliomanagement und Softwareversicherung. KDM verwendet OMGs Meta-Objekt-Einrichtung um ein zu definieren Xmi Austauschformat zwischen Tools, die mit vorhandener Software und einer abstrakten Schnittstelle arbeiten (API) für die Instrumente der nächsten Generation und Modernisierung. KDM standardisiert vorhandene Ansätze an Wissensentdeckung in Software -Engineering -Artefakten, auch bekannt als Software -Mining.
Geschichte
- Im November 2003 empfahl die Architektur-Task Force der OMG-Architektur-Modernisierung und das Plattform Technical Committee, das Knowledge Discovery Metamodel (KDM) RFP. Das Ziel dieses RFP war zu Stellen Sie eine gemeinsame Repository -Struktur zur Verfügung, um Informationen über vorhandene Software -Assets und deren Betriebsumgebung darzustellen. Das Ziel von KDM wurde als definiert als Austausch von Informationen im Zusammenhang mit der Transformation vorhandener Software -Assets. Die RFP gab an, dass KDM bereitstellen soll Die Fähigkeit, vorhandene Systeme zu dokumentieren, wiederverwendbare Komponenten in vorhandener Software zu entdecken, Transformationen zu anderen Sprachen und MDA zu unterstützen oder andere potenzielle Transformationen zu ermöglichen. Mit dem Knowledge Discovery Metamodel können Informationen über vorhandene Software -Artefakte zwischen verschiedenen Tools ausgetauscht werden. Auf diese Weise können Anbieter, die sich auf bestimmte Sprachen, Plattformen oder Arten von Transformationen spezialisiert haben, um Kundenlösungen in Verbindung mit anderen Anbietern zu liefern.
- Das ursprüngliche KDM RFP ist OMG -Mitgliedern zum Download zur Verfügung.[1]
- Während der gesamten 2004 und 2005 haben 12 Unternehmen zusammengearbeitet, um eine gemeinsame Reaktion auf das KDM RFP vorzubereiten. Mehr als 30 Organisationen aus 5 Ländern haben zur Entwicklung und Überprüfung der KDM -Spezifikation beigetragen.
- Im Mai 2006 wandelte sich die Einreichung des Teams - das Knowledge Discovery Metamodel (KDM) - in die Abschlussphase des Adoptionsprozesses des OMG -Standards. Die OMG verabschiedete Spezifikation für KDM wurde öffentlich verfügbar (OMG-Dokument PTC/06-06-07).
- Im März 2007 beendete die KDM Finalization Task Force die Abschlussphase des Adoptionsprozesses des OMG. Die formale KDM -Spezifikation KDM 1.0 ist bei OMG erhältlich.[2]
- Die neueste Version der Spezifikation wurde im Juli 2011 abgeschlossen, was KDM 1.3 zur neuesten Version machte.
- KDM Analytic[3]
Überblick
Das Ziel von KDM ist es, die Interoperabilität zwischen Werkzeugen für Wartung, Entwicklung, Bewertung und Modernisierung sicherzustellen. KDM ist definiert als a Metamodell das kann auch als als angesehen werden Ontologie Zur Beschreibung der wichtigsten Aspekte des Wissens im Zusammenhang mit den verschiedenen Facetten der Unternehmenssoftware. KDM Support bedeutet Investitionen in das KDM-Ökosystem-eine wachsende, auf offen standardisierte zusammenhängende Gemeinschaft von Werkzeuganbietern, Dienstleistern und kommerziellen Komponenten.
KDM repräsentiert ganze Unternehmenssoftware -Systeme, nicht nur Code. KDM ist ein Breitspektrum Entitätsbeziehung Darstellung zur Beschreibung vorhandener Software. KDM repräsentiert strukturelle und Verhaltenselemente vorhandener Softwaresysteme. Das Schlüsselkonzept von KDM ist a Container: Eine Entität, die andere Einheiten besitzt. Dies ermöglicht KDM, vorhandene Systeme in verschiedenen Gradkörpern darzustellen.
KDM definiert eine präzise semantische Grundlage für die Darstellung des Verhaltens, die sogenannten Micro-KDM. Es bietet eine High-Fidelity Zwischendarstellung Dies kann beispielsweise zur Durchführung einer statischen Analyse vorhandener Softwaresysteme verwendet werden. Micro-KDM ist in einem Zweck ähnlich wie bei a virtuelle Maschine Für KDM ist KDM zwar kein ausführbares Modell oder ein Einschränkungsmodell, sondern eine Darstellung vorhandener Artefakte für Analysezwecke.
KDM erleichtert eine inkrementelle Analyse vorhandener Softwaresysteme, bei denen die anfängliche KDM -Darstellung analysiert wird und mehr Wissensstücke extrahiert und explizit als KDM -zu -KDM -Transformation im KDM -Technologieraum durchgeführt werden. Die Schritte des Wissensextraktionsprozesses können von Tools durchgeführt werden und können den Analysten betreffen.
KDM ist die einheitliche Repräsentation für Sprach- und Plattform. Sein Erweiterbarkeitsmechanismus ermöglicht die Zugabe von Domänen-, Anwendungs- und implementierungsspezifischen Wissen.
Die Architektur

KDM -Pakete sind in die folgenden vier Schichten angeordnet:
Infrastrukturschicht
Die KDM -Infrastrukturschicht besteht aus der Kern, kdm, und Quelle Pakete, die einen kleinen gemeinsamen Kern für alle anderen Pakete bieten, das Bestandsmodell der Artefakte des vorhandenen Systems und die vollständige Rückverfolgbarkeit zwischen den Meta-Modellelementen als Verbindungen zum Quellcode der Artefakte sowie dem einheitlichen Erweiterbarkeitsmechanismus. Das Kernpaket bestimmt einige der Muster, die von anderen KDM -Paketen wiederverwendet werden. Obwohl KDM ein Metakodell ist, das verwendet Meta-Objekt-EinrichtungEs gibt eine Ausrichtung zwischen dem KDM -Kern und Ressourcenbeschreibung Framework (RDF).
Programmelemente Ebene
Die Programmelement -Ebene besteht aus den Code- und Aktionspaketen.
- Das Codepaket Repräsentiert Programmierelemente, die durch Programmiersprachen bestimmt werden, z. EAI). Das KDM -Codepaket bietet ein größeres Detailniveau und ist nahtlos in die architektonisch bedeutenden Ansichten des Softwaresystems integriert. Die Darstellung von Datenatypen in KDM ist mit dem Ausrichtung ISO -Standard ISO/IEC 11404 (siehe auch Allzweckdatenatypen).
- Das Aktionspaket Erfasst die Verhaltenselemente von Anwendungen auf niedriger Ebene, einschließlich detaillierter Kontroll- und Datenfluss zwischen Anweisungen. Code und Aktionspaket in Kombination bieten eine mittlere Intermediate-Darstellung der einzelnen Komponente des Unternehmenssoftware-Systems
Ressourcenschicht
Die Ressourcenschicht repräsentiert die Betriebsumgebung des vorhandenen Softwaresystems. Es hängt mit dem Bereich von zusammen Enterprise Application Integration (EAI).
- Plattformpaket Repräsentiert die Betriebsumgebung der Software, die sich auf das Betriebssystem, die Middleware usw. bezieht, einschließlich der Steuerflüsse zwischen Komponenten, wie sie von der Laufzeitplattform bestimmt werden
- UI -Paket repräsentiert das Wissen, das sich auf die Benutzeroberflächen des vorhandenen Softwaresystems bezieht
- Eventpaket repräsentiert das Wissen im Zusammenhang mit Ereignissen und staatlichem Übergangsverhalten des vorhandenen Softwaresystems
- Datenpaket Repräsentiert die Artefakte im Zusammenhang mit anhaltenden Daten, wie z. B. indexierte Dateien, relationale Datenbanken und andere Arten von Datenspeicher. Diese Vermögenswerte sind der Schlüssel zu Unternehmenssoftware, da sie das Unternehmen darstellen Metadaten. Das KDM -Datenpaket ist mit einer weiteren OMG -Spezifikation ausgerichtet, genannt Common Warehouse Metamodell (CWM)
Abstraktionsschicht
Die Abstraktionsschicht repräsentiert Domäne und Anwendungsabstraktionen.
- Konzeptionspaket Geschäft darstellen Fachwissen und Geschäftsregeln, sofern diese Informationen aus vorhandenen Anwendungen abgebaut werden können. Diese Pakete sind mit einer anderen OMG -Spezifikation ausgerichtet, genannt Semantik des geschäftlichen Wortschatzes und der Geschäftsregeln (SBVR)
- Strukturpaket Beschreibt die Meta-Modellelemente für die Darstellung der logischen Organisation des Softwaresystems in Subsysteme, Ebenen und Komponenten
- Bauen Das Paket repräsentiert die technische Ansicht des Softwaresystems
Siehe auch
- Objektverwaltungsgruppe
- Software -Metriken Metamodell ist eine metrische Spezifikation, die auf dem KDM basiert
Verweise
- ^ "Dokument LT/03-11-04". Omg.org. Abgerufen 2019-08-05.
- ^ "KDM 1.0". Omg.org. 2018-08-01. Abgerufen 2019-08-05.
- ^ "Überblick über die OMG Knowledge Discovery Metamodel (KDM) Spec". Kdmanalytics.com. Abgerufen 2019-08-05.
Externe Links
- OMG KDM -Spezifikation
- Objektverwaltungsgruppe (OMG)
- Öffnen Sie das KDM -Portal und Tools von KDM Analytics
- OMG Architekturgetriebene Modernisierungs-Task Force
- DSTC -erste Einreichung
- SBVR -Link
- Software Hypermodel Blueprint -Portal für Open Source -Software - TSRI -Instanziationen von ASTM+KDM+SMM
- Open -Source -Komponenten aus dem Modisco Eclipse Project