paper

A Multiple Case Study on Reuse in Game Software Engineering

Abstract

Context: Game Software Engineering (GSE) is a specialized field at the intersection of software engineering and video game development. Reuse in GSE is particularly complex due to the iterative nature of game development and technical needs that arise in creating interactive digital experiences. Objective: This paper presents the first multi-case study on reuse in GSE, focusing on how reusable components are developed and maintained in game projects. The study aims to investigate reuse practices by analyzing multiple sources, including access to game projects, interviews with developers, focus groups, studio visits, and code analysis. Method: The study integrates various evidence sources to gain a comprehensive view of reuse in GSE. Data were gathered from interviews and focus groups, supplemented by direct observations during visits. Additionally, a recent proposal on software phylogenetics was applied to analyze source code, providing insights into reuse in game projects. Results: Our findings highlight the significance of prefabs in promoting reuse, especially in managing complex game objects. Prefabs emerged as a widely used element, confirmed by developer feedback and repository analysis. Software phylogenetics also revealed certain drawbacks. Conclusion: While prefabs play a relevant role enhance reusability, they can introduce redundancy, bugs, and unused components (dead prefabs). Understanding these limitations could inspire future research addressing such issues. Prefab-related practices in GSE could benefit other software engineering areas, encouraging broader reuse strategies.

Acknowledgements

  • VARIATIVA: Ministry of Economy and Competitiveness (MINECO) through the Spanish National R+D+i Plan and ERDF funds under Grant PID2021‑128695OB‑I00
  • Research Group T61_23R: Gobierno de Aragón (Spain)
  • VARNETICA: Spanish Ministry of Science, Innovation and Universities through the Spanish National R+D+i Plan under Grant CNS2023‑145422