Serious Refactoring Games

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 publicationProc. of the 52nd Hawaii International Conference on System Sciences (HICSS-52)
Editors Tung X. Bui
Place of PublicationWailea, Hawaii, USA
PublisherIEEE
Pages7691 - 7700
ISBN (Print)978-0-9981331-2-6
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