UML Model Refactoring : Support for Maintenance of Executable UML Models

One of the inevitable negative effects of software evolution is design erosion. Refactoring is a technique that aims at counteracting this phenomenon by successively improving the design of software without changing its observable behaviour. Design erosion occurs also in the context of executable UM...

Full description

Bibliographic Details
Main Author: Dobrzanski, Lukasz
Format: Others
Language:English
Published: Blekinge Tekniska Högskola, Avdelningen för programvarusystem 2005
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:bth-5715
Description
Summary:One of the inevitable negative effects of software evolution is design erosion. Refactoring is a technique that aims at counteracting this phenomenon by successively improving the design of software without changing its observable behaviour. Design erosion occurs also in the context of executable UML models, i.e. models that are detailed enough to be automatically compiled to executable applications. This thesis presents results of a study on applying refactoring to the area of maintenance of executable UML models. It contains an overview of recent approaches to UML model refactoring and to executable modelling, followed by identification of refactoring areas in models built in Telelogic TAU, a state-of-the art UML CASE tool. It proposes a systematic approach to specification of both executable UML model refactorings as well as associated bad smells in models. Additionally, it shows how refactorings can be implemented in Telelogic TAU.