Derivation of Change Sequences from State-Based File Differences for Delta-Based Model Consistency: Unterschied zwischen den Versionen

Aus SDQ-Institutsseminar
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 5: Zeile 5:
|betreuer=Timur Sağlam
|betreuer=Timur Sağlam
|termin=Institutsseminar/2021-06-25
|termin=Institutsseminar/2021-06-25
|kurzfassung=In view-based software development, views may share concepts and thus contain redundant
|kurzfassung=In view-based software development, views may share concepts and thus contain redundant or dependent information. Keeping the individual views synchronized is a crucial property to avoid inconsistencies in the system. In approaches based on a Single Underlying Model (SUM), inconsistencies are avoided by establishing the SUM as a single source of truth from which views are projected. To synchronize updates from views to the SUM, delta-based consistency preservation is commonly applied. This requires the views to provide fine-grained change sequences which are used to incrementally update the SUM. However, the functionality of providing these change sequences is rarely found in real-world applications. Instead, only state-based differences are persisted. Therefore, it is desirable to also support views which provide state-based differences in delta-based consistency preservation. This can be achieved by estimating the fine-grained change sequences from the state-based differences.
or dependent information. Keeping the individual views synchronized is a crucial property
This thesis evaluates the quality of estimated change sequences in the context of model consistency preservation. To derive such sequences, matching elements across the compared models need to be identified and their differences need to be computed. We evaluate a sequence derivation strategy that matches elements based on their unique identifier and one that establishes a similarity metric between elements based on the elements’ features. As an evaluation baseline, different test suites are created. Each test consists of an initial and changed version of both a UML class diagram and consistent Java source code. Using the different strategies, we derive and propagate change sequences based on the state-based difference of the UML view and evaluate the outcome in both domains. The results show that the identity-based matching strategy is able to derive the correct change sequence in almost all (97 %) of the considered cases. For the similarity-based matching strategy we identify two reoccurring error patterns across different test suites. To address these patterns, we provide an extended similarity-based matching strategy that is able to reduce the occurrence frequency of the error patterns while introducing almost no performance overhead.
to avoid inconsistencies in the system. In approaches based on a Single Underlying Model
(SUM), inconsistencies are avoided by establishing the SUM as a single source of truth from
which views are projected. To synchronize updates from views to the SUM, delta-based
consistency preservation is commonly applied. This requires the views to provide fine-grained
change sequences which are used to incrementally update the SUM. However, the
functionality of providing these change sequences is rarely found in real-world applications.
Instead, only state-based differences are persisted. Therefore, it is desirable to also support
views which provide state-based differences in delta-based consistency preservation. This
can be achieved by estimating the fine-grained change sequences from the state-based
differences.
This thesis evaluates the quality of estimated change sequences in the context of model
consistency preservation. To derive such sequences, matching elements across the compared
models need to be identified and their differences need to be computed. We evaluate
a sequence derivation strategy that matches elements based on their unique identifier
and one that establishes a similarity metric between elements based on the elements’
features. As an evaluation baseline, different test suites are created. Each test consists of
an initial and changed version of both a UML class diagram and consistent Java source
code. Using the different strategies, we derive and propagate change sequences based on
the state-based difference of the UML view and evaluate the outcome in both domains.
The results show that the identity-based matching strategy is able to derive the correct
change sequence in almost all (97 %) of the considered cases. For the similarity-based
matching strategy we identify two reoccurring error patterns across different test suites.
To address these patterns, we provide an extended similarity-based matching strategy that
is able to reduce the occurrence frequency of the error patterns while introducing almost
no performance overhead.
}}
}}

Version vom 17. Juni 2021, 07:31 Uhr

Vortragende(r) Jan Wittler
Vortragstyp Masterarbeit
Betreuer(in) Timur Sağlam
Termin Fr 25. Juni 2021
Vortragsmodus
Kurzfassung In view-based software development, views may share concepts and thus contain redundant or dependent information. Keeping the individual views synchronized is a crucial property to avoid inconsistencies in the system. In approaches based on a Single Underlying Model (SUM), inconsistencies are avoided by establishing the SUM as a single source of truth from which views are projected. To synchronize updates from views to the SUM, delta-based consistency preservation is commonly applied. This requires the views to provide fine-grained change sequences which are used to incrementally update the SUM. However, the functionality of providing these change sequences is rarely found in real-world applications. Instead, only state-based differences are persisted. Therefore, it is desirable to also support views which provide state-based differences in delta-based consistency preservation. This can be achieved by estimating the fine-grained change sequences from the state-based differences.

This thesis evaluates the quality of estimated change sequences in the context of model consistency preservation. To derive such sequences, matching elements across the compared models need to be identified and their differences need to be computed. We evaluate a sequence derivation strategy that matches elements based on their unique identifier and one that establishes a similarity metric between elements based on the elements’ features. As an evaluation baseline, different test suites are created. Each test consists of an initial and changed version of both a UML class diagram and consistent Java source code. Using the different strategies, we derive and propagate change sequences based on the state-based difference of the UML view and evaluate the outcome in both domains. The results show that the identity-based matching strategy is able to derive the correct change sequence in almost all (97 %) of the considered cases. For the similarity-based matching strategy we identify two reoccurring error patterns across different test suites. To address these patterns, we provide an extended similarity-based matching strategy that is able to reduce the occurrence frequency of the error patterns while introducing almost no performance overhead.