Refactoring State Machines

TitleRefactoring State Machines
Publication TypeConference Paper
Year of Publication2007
AuthorsRieger, M, Rompaey BV, Demeyer S
Conference NameSixth Nordic Pattern Languages of Programs Conference (VikingPloP)
Date Publishedsep

State machines are a common way of representing a variety of problems in computer science. For certain implementations of state machines, e.g. switch-statements, unattended growth can lead to overly complex and unmaintainable code. This paper presents a small, code-level pattern language which assists a maintainer in the different tasks of identifying, recovering, and refactoring of state machine implementations with the goal of applying some of the well known idioms and patterns that have been developed for the procedural and the object-oriented paradigm.