Towards proving preservation of behaviour of refactoring of UML models

Marc van Kempen, Michel R. V. Chaudron, Derrick G. Kourie, Andrew Boake · 2005

Abstract. Refactoring of a design before updating and modifying software has become an accepted practice in order to prepare the design for the upcoming changes. This paper describes a refactoring of the design of a particular application to illustrate a suggested approach. In this approach, we represent the design using UML, more specifically the structure using class diagrams, and the behaviour of each class using statecharts. Examining metrics of the specific design, we suggest a refactoring that changes a centralized control structure into one that employs more delegation, showing the refactored class and statechart diagrams. As preserving behaviour is one of the defining attributes of a refactoring, we use a csp-based formalism to describe the refactoring, and show that the refactoring indeed preserves behaviour.

Read the paper · More papers on PaperTik