public business secrets

Post navigation

Gamification in Software Development

During the last three years gamification became quite popular in everyday applications, e.g. marketing or social media. A simple, but often observed technique is to award users with badges for specific actions and achievements. This technique can be used in pretty simple ways, e.g. member titles in forums based on the number of posts, but may also be rather elaborate, e.g. StackOverflow’s system of granting badges to users based on on their reputation and other aspects. Some companies even announced to, or already do, include gamification aspects in consumer and business software, e.g. SAP or Microsoft.

Besides adding fun and a little competition to everyday activities, gamification can also be useful by encouraging users to explore the features of software and, by doing so, discover functionality they are yet unaware of*.

Considering software development, there are also some gamification plugins for IDEs and other tools, which are worth to take a look at. The following provides an incomplete list:

Jenkins Continuous Integration Game: A rather simple gamification plugin, in which users can score by triggering successful build or adding tests (and in turn are punished with negative scores for breaking the build).

Related

8 thoughts on “Gamification in Software Development”

I just checked the Jenkins Plugin, which looks really nice and provides some fun doing unit testing and fixing failing builds even if you werent the one who broke it.
But I think that there are also some problems, especially with the Jenkins plugin. Jira, Visual Studio and Eclips mainly focus on achievements because of using new features, coding with a given style or doing things in a way you normally wouldnt.
When you are doing TDD and use the Jenkins plugin then you will be punished after you checked in a failing acceptance test which should be the start of each feature. I think this will result in developers waiting to check-in until they finished the feature or not committing failing tests.
I would prefer only positive rewards for adding a new test, making an existing test pass, fixing a failing built, …

Hi Tobias,
I agree that the default configuration of the Jenkins plugin may see a bit clumsy. If I remember correctly, you can alter and extend the rules to meet your requirements without having to dig too deep in the plugin’s internals.
Would be interesting to see different customized rule sets. So, if you happen to customize them, would you mind sharing them?

I agree, during the last few years gamification became quite popular in everyday applications because it is a use in game-thinking and game mechanics in non-game contexts. I think last few years was best years for games in market.