Video Game Bad Smells: What They Are and How Developers Perceive Them

被引:6
作者
Nardone, Vittoria [1 ]
Muse, Biruk [2 ]
Abidi, Mouna [2 ]
Khomh, Foutse [2 ]
Di Penta, Massimiliano [1 ]
机构
[1] Univ Sannio, Benevento, Italy
[2] Polytech Montreal, Montreal, PQ, Canada
关键词
Video games; bad smells; Q&A forums; empirical study; CODE;
D O I
10.1145/3563214
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Video games represent a substantial and increasing share of the softwaremarket. However, their development is particularly challenging as it requires multi-faceted knowledge, which is not consolidated in computer science education yet. This article aims at defining a catalog of bad smells related to video game development. To achieve this goal, we mined discussions on general-purpose and video game-specific forums. After querying such a forum, we adopted an open coding strategy on a statistically significant sample of 572 discussions, stratified over different forums. As a result, we obtained a catalog of 28 bad smells, organized into five categories, covering problems related to game design and logic, physics, animation, rendering, or multiplayer. Then, we assessed the perceived relevance of such bad smells by surveying 76 game development professionals. The survey respondents agreed with the identified bad smells but also provided us with further insights about the discussed smells. Upon reporting results, we discuss bad smell examples, their consequences, as well as possible mitigation/fixing strategies and trade-offs to be pursued by developers. The catalog can be used not only as a guideline for developers and educators but also can pave the way toward better automated tool support for video game developers.
引用
收藏
页数:35
相关论文
共 62 条
[1]   An Empirical Study of the Impact of Two Antipatterns, Blob and Spaghetti Code, On Program Comprehension [J].
Abbes, Marwen ;
Khomh, Foutse ;
Gueheneuc, Yann-Gael ;
Antoniol, Giuliano .
2011 15TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING (CSMR), 2011, :181-190
[2]  
Agrahari Vartika, 2022, P 15 INNOVATIONS SOF, DOI [10.1145/3511430.3511436, DOI 10.1145/3511430.3511436]
[3]   Evaluation of object-oriented design patterns in game development [J].
Ampatzoglou, Apostolos ;
Chatzigeorgiou, Alexander .
INFORMATION AND SOFTWARE TECHNOLOGY, 2007, 49 (05) :445-454
[4]  
Ampatzoglou Apostolos, 2011, P 15 INT ACAD MINDTR, P214, DOI [10.1145/2181037.2181074, DOI 10.1145/2181037.2181074]
[5]   A Framework for integrating software design patterns with game design framework [J].
Barakat, Nahla H. .
PROCEEDINGS OF 2019 8TH INTERNATIONAL CONFERENCE ON SOFTWARE AND INFORMATION ENGINEERING (ICSIE 2019), 2019, :47-50
[6]   Analysis of Multi-Dimensional Code Couplings [J].
Beck, Fabian .
2013 29TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM), 2013, :560-565
[7]  
Berg Marklund Bjorn, 2019, Computer Games Journal, V8, P179, DOI 10.1007/s40869-019-00085-1
[8]   Video Game Development in a Rush: A Survey of the Global Game Jam Participants [J].
Borg, Markus ;
Garousi, Vahid ;
Mahmoud, Anas ;
Olsson, Thomas ;
Stalberg, Oskar .
IEEE TRANSACTIONS ON GAMES, 2020, 12 (03) :246-259
[9]   Detecting Video Game-Specific Bad Smells in Unity Projects [J].
Borrelli, Antonio ;
Nardone, Vittoria ;
Di Lucca, Giuseppe A. ;
Canfora, Gerardo ;
Di Penta, Massimiliano .
2020 IEEE/ACM 17TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES, MSR, 2020, :198-208
[10]  
Brandse Michael, 2013, COMMUN COMPUT PHYS, V373, P398, DOI [10.1007/978-3-642-39473-7_80, DOI 10.1007/978-3-642-39473-7_80]