Strategic directions in constraint programming
ACM Computing Surveys (CSUR) - Special ACM 50th-anniversary issue: strategic directions in computing research
ICSE '91 Proceedings of the 13th international conference on Software engineering
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
A generic approach to supporting diagram differencing and merging for collaborative design
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Instant consistency checking for the UML
Proceedings of the 28th international conference on Software engineering
A Change-based Approach to Software Evolution
Electronic Notes in Theoretical Computer Science (ENTCS)
Support for Managing Design-Time Decisions
IEEE Transactions on Software Engineering
Fixing Inconsistencies in UML Design Models
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Of Changes and their History: Some Ideas for Future IDEs
WCRE '08 Proceedings of the 2008 15th Working Conference on Reverse Engineering
Hi-index | 0.00 |
There are many reasons why modeling tools support the undoing of model changes. However, the sequential undoing is no longer useful for interrelated, multi-diagrammatic modeling languages where model changes in one diagram may also affect other diagrams. This paper introduces selective undoing of model changes where the designer decides which model elements to undo and our approach automatically suggests related changes in other diagrams that should be undone also. Our approach identifies dependencies among model changes through standard consistency and well-formedness constraints. It then investigates whether an undo causes inconsistencies and uses the dependencies to explore which other model changes to undo to preserve consistency. Our approach is fully automated and correct with respect to the constraints provided. Our approach is also applicable to legacy models provided what the models were version controlled. We demonstrate our approach's scalability and correctness based on empirical evidence for a range of large, third party models. The undoing is as complete and correct as the constraints are complete and correct.