The notion of refactoring - transforming the sourcecode of an object-oriented program without changing its external behaviour - has been studied intensively within the last decade. This diversity has created a plethora of toy-examples, cases and code snippets, which make it hard to assess the current state-of-the-art. Moreover, due to this diversity, there is currently no accepted way of teaching good refactoring practices, despite the acknowledgment in the software engineering body of knowledge. Therefore, this paper presents a common example - the LAN simulation - which has been used by a number of European Universities for both research and teaching purposes.
Citation:
Serge Demeyer, Filip Van Rysselberghe, Tudor Girba, Jacek Ratzinger, Radu Marinescu, Tom Mens, Bart Du Bois, Dirk Janssens, Stephane Ducasse, Michele Lanza, Matthias Rieger, Harald Gall, Mohammad El-Ramly, "The LAN-simulation: A Refactoring Teaching Example," iwpse, pp.123-134, Eighth International Workshop on Principles of Software Evolution (IWPSE'05), 2005