Refactoring is a powerful technique to improve the quality of software models including implementation code. The software developer applies successively so-called refactoring rules on the current software model and transforms it into a new model. Ideally, the application of a refactoring rule preserves the semantics of the model, on which it is applied. In this paper, we present a simple criterion and a proof technique for the semantic preservation of refactoring rules that are defined for UML class diagrams and OCL constraints. Our approach is based on a novel formalization of the OCL semantics in form of graph transformation rules. We illustrate our approach using the refactoring rule MoveAttribute.
%0 Book Section
%1 baar_07_graphical
%A Baar, Thomas
%A Marković, Slavisa
%D 2007
%J Perspectives of Systems Informatics
%K 2007 \_hardcopy \_folder\_2 graph\_transformation ocl \_pdf semantic\_preservation uml refactoring
%P 70--83
%R http://dx.doi.org/10.1007/978-3-540-70881-0\_9
%T A Graphical Approach to Prove the Semantic Preservation of UML/OCL Refactoring Rules
%U http://dx.doi.org/10.1007/978-3-540-70881-0\_9
%X Refactoring is a powerful technique to improve the quality of software models including implementation code. The software developer applies successively so-called refactoring rules on the current software model and transforms it into a new model. Ideally, the application of a refactoring rule preserves the semantics of the model, on which it is applied. In this paper, we present a simple criterion and a proof technique for the semantic preservation of refactoring rules that are defined for UML class diagrams and OCL constraints. Our approach is based on a novel formalization of the OCL semantics in form of graph transformation rules. We illustrate our approach using the refactoring rule MoveAttribute.
@incollection{baar_07_graphical,
abstract = {Refactoring is a powerful technique to improve the quality of software models including implementation code. The software developer applies successively so-called refactoring rules on the current software model and transforms it into a new model. Ideally, the application of a refactoring rule preserves the semantics of the model, on which it is applied. In this paper, we present a simple criterion and a proof technique for the semantic preservation of refactoring rules that are defined for UML class diagrams and OCL constraints. Our approach is based on a novel formalization of the OCL semantics in form of graph transformation rules. We illustrate our approach using the refactoring rule MoveAttribute.},
added-at = {2009-03-10T04:38:08.000+0100},
author = {Baar, Thomas and Markovi\'{c}, Slavi\v{s}a},
biburl = {https://www.bibsonomy.org/bibtex/24e08b9070466eecdb4faa009d626c45c/leonardo},
citeulike-article-id = {1590046},
doi = {http://dx.doi.org/10.1007/978-3-540-70881-0\_9},
interhash = {ec6283d8475bda4d167edc46c7db0966},
intrahash = {4e08b9070466eecdb4faa009d626c45c},
journal = {Perspectives of Systems Informatics},
keywords = {2007 \_hardcopy \_folder\_2 graph\_transformation ocl \_pdf semantic\_preservation uml refactoring},
pages = {70--83},
posted-at = {2007-08-24 15:37:07},
priority = {4},
timestamp = {2009-03-10T04:38:08.000+0100},
title = {A Graphical Approach to Prove the Semantic Preservation of UML/OCL Refactoring Rules},
url = {http://dx.doi.org/10.1007/978-3-540-70881-0\_9},
year = 2007
}