Anmerkungen:
Diese Datenquelle enthält auch Bestandsnachweise, die nicht zu einem Volltext führen.
Beschreibung:
In der sichtenbasierten Software-Entwicklung ist es möglich, dass mehrere Sichten das gleiche Konzept abbilden, wodurch Sichten redundante oder abhängige Informationen darstellen können. Es ist essenziell, diese individuellen Sichten synchron zu halten, um Inkonsistenzen im System zu vermeiden. In Ansätzen mit einem Single Underlying Model (SUM) werden Inkonsistenzen vermieden, indem das SUM als zentrale und einzige Informationsquelle genutzt wird, von welcher Sichten projiziert werden. Um Sichten mit dem SUM zu synchronisieren, wird in den meisten Fällen eine deltabasierte Konsistenzhaltung verwendet. Diese nutzt feingranulare Änderungssequenzen, welche von den einzelnen Sichten bereitgestellt werden müssen, um das SUM inkrementell zu aktualisieren. In realen Anwendungsfällen ist die Funktionalität zur Bereitstellung dieser Änderungssequenzen jedoch selten verfügbar. Stattdessen werden nur zustandsbasierte Änderungen persistiert. Es ist insofern wünschenswert Sichten, welche nur zustandsbasierte Änderungen bereitstellen, in deltabasierter Konsistenzhaltung zu unterstützen. Dies kann erreicht werden, indem die feingranularen Änderungssequenzen von den zustandsbasierten Änderungen abgeleitet werden. In dieser Arbeit wird die Qualität von abgeleiteten Änderungssequenzen im Kontext von Modellkonsistenzhaltung evaluiert. Um eine solche Sequenz abzuleiten, müssen übereinstimmende Elemente aus den verglichenen Modellen identifiziert und deren Unterschiede bestimmt werden. Um übereinstimmenden Elemente zu identifizieren, nutzen wir zwei Strategien. Bei der einen Strategie werden übereinstimmende Elemente anhand ihres eindeutigen Bezeichners erkannt. Bei der anderen Strategie wird eine Ähnlichkeitsmetrik basierend auf den Eigenschaften der Elemente genutzt. Als Evaluationsgrundlage werden verschiedene Testszenarien erstellt. Für jeden Test wird eine initiale und eine geänderte Version von sowohl einem UML-Klassendiagramm als auch Java-Code bereitgestellt. Wir nutzen die verschiedenen Strategien, um Änderungssequenzen ...