"Gamifying" Software Engineering and Maintenance
Success of software development and maintenance life cycle activities are governed by several individual behavioral aspects like timeliness, ideation, participation, team work, enthusiasm, voluntary culture, co-creation, quality control, and more.
Apart from dealing with the complexity of software, managing behavioral and motivational levels of the team and getting tricky things done can sometime become a challenge.
You can use Gamification to make some of the activities exciting. Design your Gamification program in such a way that you find out what are the difficult or mundane activities, which activities need incentives to be completed on time, which activities can be completed through crowd sourcing and so on.
Some of the software engineering and maintenance activities that can be brought under the purview of Gamification are,
• Requirements - reducing change management
• Architecture modeling and Design -
• Coding - adhering to the established coding standards
• Reviews and Testing - detecting defects, fixing bugs
• Project Management activities - delivering project on time on budget
• Maintenance Tickets - closing tickets during maintenance phase
• Knowledge management - knowledge sharing within team
Almost all of the above activities can be brought under rewards based Gamification whereas some of the activities like Requirements understanding, Architecture modeling and design, Testing can be made exciting by playing simulation Games.
Interestingly Microsoft Visual Studio 2012 has introduced badges, leaderboards where a developer gets a badge based on his work and then he can publish that on his Facebook page.
Having Gamification ingrained as part of Software development process would help in dealing with motivational challenges.
 Visual Studio Achievements Program Brings Gamification to Development, Jeffrey Meisner
P.S - if you have missed our earlier blogs, you can read our take on Gamification here