Refactoring UML Models

  • Gerson Sunyé
  • Damien Pollet
  • Yves Le Traon
  • Jean-Marc Jézéquel
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2185)


Software developers spend most of their time modifying and maintaining existing products. This is because systems, and consequently their design, are in perpetual evolution before they die. Nevertheless, dealing with this evolution is a complex task. Before evolving a system, structural modifications are often required. The goal of this kind of modification is to make certain elements more extensible, permitting the addition of new features. However, designers are seldom able to evaluate the impact, on the whole model, of a single modification. That is, they cannot precisely verify if a change modifies the behavior of the modeled system. A possible solution for this problem is to provide designers with a set of basic transformations, which can ensure behavior preservation. These transformations, also known as refactorings, can then be used, step by step, to improve the design of the system. In this paper we present a set of refactorings and explain how they can be designed so as to preserve the behavior of a UML model. Some of these refactorings are illustrated with examples.


Class Diagram Composite State Action Semantic Outgoing Transition Entry Action 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Updated joint initial submission against the action semantics for uml rfp.Google Scholar
  2. 2.
    Kent Beck. Extreme Programming Explained: Embracing Change. Addison-Wesley, 1999.Google Scholar
  3. 3.
    Paul Bergstein. Maintainance of object-oriented systems during structural schema evolution. TAPOS, 3(3):185–212, 1997.Google Scholar
  4. 4.
    John Brant and Don Roberts. Refactoring techniques and tools (Plenary talk). In Smalltalk Solutions, New York, NY, 1999.Google Scholar
  5. 5.
    F. P. Brooks. The Mitical Man-Month: Essays on Software Engineering. Addison-Wesley, Reading, Mass, 1982.Google Scholar
  6. 6.
    Eduardo Casais. Managing Evolutuin in Object Oriented Environments: An Algorithmic Approach. Phd thesis, University of Geneva, 1991.Google Scholar
  7. 7.
    Mel Cinnéide and Paddy Nixon. A methodology for the automated introduction of design patterns. In International Conference on Software Maintenance, Oxford, 1999.Google Scholar
  8. 8.
    Desmond D’Souza and Alan Wills. Objects, Components and Frameworks With UML: The Catalysis Approach. Addison-Wesley, 1998.Google Scholar
  9. 9.
    W. Griswold. Program restructuring as an aid to software maintenance, 1991.Google Scholar
  10. 10.
    Walter Hursch. Maintaining Consistency and Behavior of Object-Oriented Systems during Evolution. Phd thesis, Northeastern University, June 1995.Google Scholar
  11. 11.
    Anneke Kleppe, Jos Warmer, and Steve Cook. Informal formality? the Object Constraint Language and its application in the UML metamodel. In Jean Bézivin and Pierre-Alain Muller, editors, The Unified Modeling Language, UML’98-Beyond the Notation. First International Workshop, Mulhouse, France, June 1998, pages 127–136, 1998.Google Scholar
  12. 12.
    William F. Opdyke. Refactoring Object-Oriented Frameworks. PhD thesis, University of Illinois, Urbana-Champaign, 1992. Tech. Report UIUCDCS-R-92-1759.Google Scholar
  13. 13.
    Donald Roberts. Practical Analysis for Refactoring. PhD thesis, University of Illinois, 1999.Google Scholar
  14. 14.
    Donald Roberts, J. Brant, and Ralph Johnson. A refactoring tool for smalltalk. Theory and Practice of Object Systems, 3(4), 1997.Google Scholar
  15. 15.
    G. Sunyé, A. Le Guennec, and J.-M. Jézéquel. Design pattern application in UML. In E. Bertino, editor, ECOOP’2000 proceedings, number 1850, pages 44–62. Lecture Notes in Computer Science, Springer Verlag, June 2000.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Gerson Sunyé
    • 1
  • Damien Pollet
    • 1
  • Yves Le Traon
    • 1
  • Jean-Marc Jézéquel
    • 1
  1. 1.IRISA, Campus de BeaulieuRennes CedexFrance

Personalised recommendations