Serious Games for Software Refactoring

Thorsten Händler, Gustaf Neumann

Publication: Chapter in book/Conference proceedingContribution to conference proceedings

Abstract

Software design issues can severely impede software development and maintenance. Thus, it is
important for the success of software projects that developers are aware of bad smells in code
artifacts and improve their skills to reduce these issues via refactoring. However, software refactoring
is a complex activity and involves multiple tasks and aspects. Therefore, imparting competences
for identifying bad smells and refactoring code efficiently is challenging for software engineering
education and training. The approaches proposed for teaching software refactoring in recent years
mostly concentrate on small and artificial tasks and fall short in terms of higher level competences,
such as analysis and evaluation. In this paper, we investigate the possibilities and challenges of
designing serious games for software refactoring on real-world code artifacts. In particular, we propose
a game design, where students can compete either against a predefined benchmark (technical debt) or
against each other. In addition, we describe a lightweight architecture as the technical foundation for
the game design that integrates pre-existing analysis tools such as test frameworks and software-quality
analyzers. Finally, we provide an exemplary game scenario to illustrate the application of serious
games in a learning setting.
Original languageEnglish
Title of host publicationSoftware Engineering and Software Management 2019, Fachtagung des GI-Fachbereichs Softwaretechnik, SE 2019
Editors LNI
Place of PublicationStuttgart
PublisherSpringer
Pages181 - 182
DOIs
Publication statusPublished - 2019

Austrian Classification of Fields of Science and Technology (ÖFOS)

  • 102022 Software development
  • 102 not use (legacy)
  • 102015 Information systems
  • 502050 Business informatics

Cite this