Abstract
Consistency maintenance is paramount for software engineering, as it improves/guarantees the quality of artifacts (e.g., models) during maintenance and evolution. To perform this maintenance, consistency rules (CR) are commonly defined and applied to evaluate model elements according to desired properties. By empirical studies, it is known that CRs commonly evaluate similar model elements (e.g., multiple CRs checking the consistency of a UML class). Thus, we hypothesize that CRs can be used as a means to identify dependencies among inconsistencies and support consistency maintenance tasks. Currently, however, no study investigates to what extent dependencies can be identified and how they can be used to repair inconsistencies. In this paper, we explore dependencies between CRs to identify and group dependent inconsistencies. For that, we define a metamodel that allows dependencies to be expressed. Furthermore, we propose a consistency maintenance and dependency analysis mechanism that uses such a metamodel. Additionally, the approach generates repairs for the inconsistencies, considering the groups of dependencies to identify overlapping and conflicting repairs. To evaluate the approach, we conducted an empirical study with 48 UML models and 27 CRs. The results show that our approach identifies dependencies between inconsistencies (46% of the inconsistencies have dependencies), within a reasonable time, 10ms on average in the worst case. Results also show that dependent inconsistencies can be grouped and used together to identify repairs that are either overlapping (26% on average) or conflicting (58% on average).
| Original language | English |
|---|---|
| Title of host publication | International Conference on Software Analysis, Evolution and Reengineering (SANER) |
| Pages | 147-158 |
| Number of pages | 12 |
| ISBN (Electronic) | 9798350330663 |
| DOIs | |
| Publication status | Published - Mar 2024 |
Publication series
| Name | Proceedings - 2024 IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2024 |
|---|
Fields of science
- 102 Computer Sciences
- 102022 Software development
JKU Focus areas
- Digital Transformation
Prizes
-
IEEE Computer Society Distinguished Paper Award
Marchezan de Paula, L. (Recipient), Guez Assuncao, W. K. (Recipient), Herac, E. (Recipient), Shafiq, S. (Recipient) & Egyed, A. (Recipient), Mar 2024
Prize: Prize, award or honor
File
Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver