A Catalogue of Game-Specific Anti-Patterns

06/23/2020
by   Vartika Agrahari, et al.
0

With the ever-increasing use of games, game developers are expected to write efficient code supporting several qualities such as security, maintainability, and performance. However, lack of time and continuous need to update the features of games may result in bad practices that may affect the functional and non-functional requirements of the game. These bad practices are often termed as Anti-patterns, which can cause technical debt, poor program comprehension, and can lead to several issues during software maintenance. While there exists empirical research on games, we are not aware of any work on understanding and cataloguing anti-patterns in games. Thus, we propose a catalogue of game-specific anti-patterns by mining commits, pull requests, and issues from 229 popular GitHub game repositories. We use regular expressions to create an initial dataset of open-source games and did thematic analysis on text records for cataloguing game-specific anti-patterns. We applied LDA (Latent Dirichlet Allocation) to validate further and refine the categories. We present a catalogue of 11 anti-patterns with a total of 20 subcategories involved in it and provide examples for them. We believe this catalogue would help game developers in making educated decisions during game development that can result in enhanced quality of games.

READ FULL TEXT

page 16

page 26

page 27

research
02/13/2020

An Exploratory Study of Code Smells in Web Games

With the continuous growth of the internet market, games are becoming mo...
research
02/13/2022

Video Game Project Management Anti-patterns

Project Management anti-patterns are well-documented in the software-eng...
research
07/18/2021

IDEAL: An Open-Source Identifier Name Appraisal Tool

Developers must comprehend the code they will maintain, meaning that the...
research
12/15/2022

Improving Developers' Understanding of Regex Denial of Service Tools through Anti-Patterns and Fix Strategies

Regular expressions are used for diverse purposes, including input valid...
research
10/19/2020

Warrior1: A Performance Sanitizer for C++

This paper presents Warrior1, a tool that detects performance anti-patte...
research
08/13/2018

Automated Refactoring: Can They Pass The Turing Test?

Refactoring is a maintenance activity that aims to improve design qualit...
research
09/22/2020

DeepIaC: Deep Learning-Based Linguistic Anti-pattern Detection in IaC

Linguistic anti-patterns are recurring poor practices concerning inconsi...

Please sign up or login with your details

Forgot password? Click here to reset