Publikation

Erkennung von Informationsverlust in der Modelltransformation

Publikation, 2019

Outline

C. Praschl - Erkennung von Informationsverlust in der Modelltransformation - Master/Diploma Thesis, FH OÖ Fakultät Hagenberg, Österreich, 2019, pp. 81

Abstract

Der Modellbegriff bezeichnet eine vereinfachte Darstellung von Gegenständen, Abläufen oder anderen Subjekten und wird in der Disziplin der Softwareentwicklung zur Repräsentation eines abgekürzten Realitätsausschnittes verwendet. Die Modelltransformation erweitert diesen Bereich um den Informationstransfer zwischen mehreren Modellen und ist ein wesentlicher Bestandteil der modernen Softwareentwicklung, vor allem im Bereich der modellgetriebenen Softwareentwicklung. Die vorliegende These befasst sich mit verschiedenen Möglichkeiten zur Erkennung von Informationsverlust im Bereich der Modelltransformation. Dies ist nötig, um sicherstellen zu können, dass Informationen von einem Quell-, richtig in ein Zielmodell übertragen werden, sowie zur Detektion von semantischen Unterschieden zwischen betroffenen Modellen. Im Vordergrund dieser Abhandlung stehen die beiden Fragestellungen "Wo tritt in einem Modell bei der Überführung in ein anderes Modell ein Informationsverlust auf?" und "Wurde die Semantik eines Datensatzes durch die Transformation verändert?". Der ersten der beiden Forschungsfragen obliegt die Bewahrung von Informationen, welche aus dem Quell- in das Zielmodell übertragen werden. Demnach sollen Daten nicht korrumpieren beziehungsweise auch an die korrekte Stelle im Zielmodell gelangen. Demgegenüber fokussiert sich die zweite Problemstellung auf die Erkennung von Modellcharakteristika in welchen sich die betroffenen Modelle unterscheiden. Dabei handelt es sich um Informationen, welche im Ziel- aber nicht im Quellmodell existieren. Zur Beantwortung der beiden Fragestellungen werden zunächst Grundlagen der Modellierung, sowie theoretische Konzepte und Verfahren aus dem Bereich der Modelltransformation und -verifikation vorgestellt. Im Weiteren werden zwei graphbasierte Implementierungen präsentiert, welche es erlauben, von Informationsverlust betroffene Modellcharakteristika zu identifizieren. Dabei handelt es sich namentlich um die graphbasierte Einschränkungsauflösung und ein Verfahren zur Erkennung von Knotenmustern mithilfe einer Neo4j Graphdatenbank. Zusätzlich wird die Verifikationskomponente des verwendeten Transformationsframeworks erläutert, welche rudimentäre Modellprüfungen ermöglicht. Abschließend werden die vorgestellten, praktischen Verfahren anhand zweier Beispiele evaluiert. Diese Evaluierung stellt die Verifikationsmethoden gegenüber und resultiert in verschiedenen Vor- und Nachteilen, zeigt dabei aber auch die grundlegende Anwendbarkeit der Implementierungen zur Erkennung von Informationsverlust.