Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Using UML Action Semantics for Executable Modeling and Beyond
CAiSE '01 Proceedings of the 13th International Conference on Advanced Information Systems Engineering
NODe '02 Revised Papers from the International Conference NetObjectDays on Objects, Components, Architectures, Services, and Applications for a Networked World
The Rational Unified Process: An Introduction
The Rational Unified Process: An Introduction
A Survey of Software Refactoring
IEEE Transactions on Software Engineering
Transforming OCL constraints: a context change approach
Proceedings of the 2006 ACM symposium on Applied computing
A Static Semantics for Alloy and its Impact in Refactorings
Electronic Notes in Theoretical Computer Science (ENTCS)
Transformation techniques for OCL constraints
Science of Computer Programming
Transformation techniques for OCL constraints
Science of Computer Programming
Specifying Domain-Specific Refactorings for AndroMDA Based on Graph Transformation
Applications of Graph Transformations with Industrial Relevance
A graphical approach to prove the semantic preservation of UML/OCL refactoring rules
PSI'06 Proceedings of the 6th international Andrei Ershov memorial conference on Perspectives of systems informatics
On the usage of concrete syntax in model transformation rules
PSI'06 Proceedings of the 6th international Andrei Ershov memorial conference on Perspectives of systems informatics
Multi-view composition language for software product line requirements
SLE'09 Proceedings of the Second international conference on Software Language Engineering
OCL and graph-transformations: a symbiotic alliance to alleviate the frame problem
MoDELS'05 Proceedings of the 2005 international conference on Satellite Events at the MoDELS
On the use of graph transformations for model refactoring
GTTSE'05 Proceedings of the 2005 international conference on Generative and Transformational Techniques in Software Engineering
Definition and correct refinement of operation specifications
Dependable Systems
Elucidative development for model-based documentation
TOOLS'12 Proceedings of the 50th international conference on Objects, Models, Components, Patterns
An expressive aspect composition language for UML state diagrams
MODELS'07 Proceedings of the 10th international conference on Model Driven Engineering Languages and Systems
Metamodel adaptation and model co-adaptation
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Constraint-based specification of model transformations
Journal of Systems and Software
Hi-index | 0.00 |
Refactoring of UML class diagrams is an emerging research topic and heavily inspired by refactoring of program code written in object-oriented implementation languages. Current class diagram refactoring techniques concentrate on the diagrammatic part but neglect OCL constraints that might become syntactically incorrect by changing the underlying class diagram. This paper formalizes the most important refactoring rules for class diagrams and classifies them with respect to their impact on annotated OCL constraints. For refactoring rules, whose application on class diagrams could make attached OCL constraints incorrect, we formally describe how the OCL constraints have to be refactored to preserve their syntactical correctness. Our refactoring rules are defined in the graph-grammar based formalism proposed by the QVT Merge Group for the specification of model transformations.