Cowboys, ankle sprains, and keepers of quality: how is video game development different from software development?

Author(s): Emerson Murphy-Hill North Carolina State University, USA, Thomas Zimmermann Microsoft Research, USA, Nachiappan Nagappan Microsoft Research, USA
Venue: International Conference on Software Engineering
Date: 2014

Type of Experiement: Survey/Multi-Case Study
Sample Size: 14
Class/Experience Level: Professional
Participant Selection: Chose subjects from LinkedIn that fit the knowledge portfolio that they needed.
Data Collection Method: Survey


This paper focuses on how the differences between game development and other software development are often overlooked. Generally "good" practices in software development are not always "good" practices for game developers or should be handled in the same manner. For example, game developers are hesitant to use automated testing because due to the nature of game development, these tests quickly become obsolete due to the shifting creative desires from the game designers.

The study selected participants that had both game and non-game development experience through searching on LinkedIn within the "Game Development" group. They interviewed participants until they reached saturation, or were not discovering any new differences, which occurred at 14 interviewees. The study concluded a few important differences between game and non-game development. First, functional requirements are better suited for non-game development over game development, in a game development environment, game designers are stating features that are subjective, and based in artistic achievement, so often the designers are not entirely certain how they want the feature to behave. Design was another important distinction that the study pointed out. Game development often puts less architectural design as a planning activity because the game producer will be constantly changing things, so a very thought out design can be thrown out on a whim. Another key finding from the study was that while software quality is important in both games and non-games, the implementation of testing differs significantly. Games tend to be tested at a "game play level" so instead of using automated, low-level testing, testing in games tends to be done at a high-level through human play testing or through scripts simulating what a human would do.

The main objective of the study was to prove to the reader that video game development makes up a significant part of the modern software industry, yet there are very few empirical studies done on games. It encourages researching and understanding the differences between traditional software development and game development so that developers will be better equipped for the domain that they are working in.