Refactoring object-oriented frameworks
Refactoring object-oriented frameworks
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A Survey of Software Refactoring
IEEE Transactions on Software Engineering
Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
Algebraic reasoning for object-oriented programming
Science of Computer Programming - Special issue on program transformation
Object ownership and containment
Object ownership and containment
Ownership confinement ensures representation independence for object-oriented programs
Journal of the ACM (JACM)
Relational lenses: a language for updatable views
Proceedings of the twenty-fifth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
Model-driven Development of Complex Software: A Research Roadmap
FOSE '07 2007 Future of Software Engineering
A Static Semantics for Alloy and its Impact in Refactorings
Electronic Notes in Theoretical Computer Science (ENTCS)
Model Synchronisation: Definitions for Round-Trip Engineering
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
Algebraic Models for Bidirectional Model Synchronization
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
Design Space of Heterogeneous Synchronization
Generative and Transformational Techniques in Software Engineering II
A Landscape of Bidirectional Model Transformations
Generative and Transformational Techniques in Software Engineering II
A Complete Set of Object Modeling Laws for Alloy
Formal Methods: Foundations and Applications
An Abstract Equivalence Notion for Object Models
Electronic Notes in Theoretical Computer Science (ENTCS)
Formal model-driven program refactoring
FASE'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering
Tracking behavioral constraints during object-oriented software evolution
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
Hi-index | 0.00 |
Object models provide abstract information about software structure, but their maintenance is difficult after refactoring takes place. In Model-Driven Development (MDD), effective transferral of model refactoring changes to programs is problematic, especially if these programs are subject to developer manipulation. Consequently, code-driven approaches end up being adopted. We formalize a theory of synchronizers, which are sequences of behavior-preserving program transformations. This theory makes use of invariant-based refactoring, the key idea behind synchronizers. We also establish and prove a soundness theorem for synchronizers. By uncovering the formal requirements for correct refactoring synchronization, the proved properties point out issues - regarding consistency, refactoring automation and quality - that recur in several MDD settings that employ object models.