‘The Game’ User Guide

Introduction

The concept of ‘gamification’ is a simple one. To apply game design to non-game applications in order to make them more fun and engaging. Gamification has been used successfully across forums such as those maintained by Microsoft (http://social.microsoft.com/Forums) in order to encourage contributor participation and reward them for achieving a number of points and achievements. The result of this has been a flourishing forum community. ‘The Game’ is a solution for Microsoft Dynamics CRM2011 that contains a framework to enable the system administrator (or game administrator) to gamify their CRM application. The objective of gamification in the context of Microsoft Dynamics CRM is to drive user adoption by incentivising the users and hopefully making using CRM more fun!

Why not use the standard goals functionality? Goals are a valuable tool in tracking progress over time for a specific entity centric objective. Multiple goals are required when the user’s key performance indicators involve more than just progressing a single entity. By using the framework contained in this solution, actions across all entities can contribute to the user’s game points score and this can be supplemented by achievements to give a more holistic view of how the user is performing. The Game is intended to supplement goals functionality by providing a means to generate rewards for achieving the goal targets.

The solution comprises a series of entities, workflows and workflow templates to record and administer a ‘Game’ so that users may attain ranks and achievements by meeting workflow criteria. Although the framework and concepts are simple, the crucial aspect is identifying a balanced set of measures which reflect the objectives of the business and award the users fairly. Once these measures are identified (e.g. to win an opportunity, to resolve a case, to complete a service activity on time) then workflow must be created to generate game points or achievements accordingly.

Components and Concepts

The Game entities are all accessible from within the 'Settings' area of the sitemap.

Games

The Game entity holds information such as which users are playing the game, the available ranks and promotion order and shows a leader board of user’s points and achievements. A single game could be played by all users or several games could be created, one per team or department for example. This enables different ranks and achievements to be awarded to reflect different working practices per team/department. For example, a ‘Sales Game’ and a ‘Service Game’ could use different workflows to create different game points and achievements and allow the user to attain different ranks.

Ranks

Ranks are used to define the attainment level that a user has reached via the accumulation of game points. The rank simply holds a name and a logo to display on the game leader board/user form. Each time the ‘Current Game Points’ value changes on a user’s record, an evaluation workflow will check to establish of the user should be promoted to the next rank. Up to 10 ranks may be defined against a game record by default. The administrator could configure more however with simple customization and extension of the workflow ‘The Game: Check/Promote Rank’.

Achievement Types

Achievement Types are the types of awards that are given for defined actions. Whereas ranks are granted for the accumulation of game points over time, achievements can provide special rewards for completing specific actions (i.e. a new Surface PC or $500 bonus). Achievement Types also have fields to total the number of achievements awarded and limit the number of achievements to be awarded. This could be used for example in a scenario where a gift or bonus is granted for the first 10 opportunities won with a value of $500k or higher. Achievement Types also have an image url which appears on the leader board.

Achievements

Achievements are individual instances of the Achievement Types being awarded to a player during a game. The achievements are summarised and displayed besides the user on the game leader board.

Game Points

Game Points are records created by workflow that contain a value (number of points) which in turn trigger workflow to increment the number of game points summarised on the user record. There is a global option-set on the game points entity for 'action type'. This is intended to be customised to aid in reporting / charting the volume of points gained by action type. The game administrator must ensure that the workflows that generate game points set the action type accordingly.

Installation

The Game is packaged as a solution file that must be imported into Microsoft Dynamics CRM2011 (Settings > Solutions > Import). Both managed and unmanaged versions are available for download. If you wish to uninstall The Game then the managed solution will provide an easier path in achieving that. Use the unmanaged solution if there is a requirement to drastically alter the framework.

Getting Started

Assign Security Roles & Field Security Profiles

There are 2 security roles; ‘The Game Administrator’ and ‘The Game Player’. These grant privileges to the game entities. There are also 2 field security profiles; ‘The Game Administrator’ and ‘The Game Player’. These control access to the secured fields on the user record. Assign both sets of security roles & field security profiles to the participating users accordingly.

Create the Ranks

Create a series of rank records to provide a promotional structure to your game. Rather than simple ‘level 1 to 10’ why not be more imaginative and use a military or fantasy theme? Two Workflows are included (on demand against the game entity) called ‘The Game: Generate Navy Ranks’ and 'The Game: Generate Regal Ranks' to provide a quick way to generate and attach these to an existing game record.

Create a Game

Create a game record and attach the ranks to be used. If one of the aforementioned workflows are used (navy or regal) these will be automatically created and linked to the game. Also define the game points ‘To’ values for each rank level so the workflow can determine when a user is eligible for promotion. Finally add the players (users) who are taking part in the game.

Create Achievement Types

Achievement Types are not required to commence a game and indeed may be introduced and withdrawn during the game. If achievement types are created at the outset however, the users may be more excited or driven to achieve certain objectives. Achievement Types could also be introduced secretly to add an element of surprise/excitement. An on-demand workflow has been added to the Achievement Type called 'The Game: Generate Example Achievement Types' and this will create some Achievement Types with icons linked.

Create Workflows to Generate Game Points/Achievements

The Game solution contains several workflow templates (prefixed with ‘The Game TEMPLATE:’ – don’t forget the default view in Microsoft Dynamics CRM2011 is for active processes NOT process templates!) to help give the administrator a jump start with creating the workflows that will create game points and achievement records. It is strongly advisable to think and define what objectives and behaviour the business wishes to reward prior to configuring the game workflows. If there isn’t a template available for the entity upon which you wish to base your reward triggers, please study an existing template in terms of the workflow’s structure before building a new workflow from scratch.

Game Administration

Monitoring the Game

The game entity contains a combination of charts and a Silverlight leader board in order to monitor player performance and view the latest real time scores. The user record also has a form which displays game related information including the current rank, game points and achievements gained.

Moving a user between games

If a user is to move between games then the game administrator must judge whether to retain the points achieved in the previous game. The points on the user record are held in a secured field so only the game administrator may change this. The user’s rank should also be amended to reflect the new rank. This can be automated simply by changing the ‘current game’ on the user record. A workflow will then check the points against the current game and apply the correct rank to the user. Achievements may also be transferred to the new game by bulk editing the achievement records and updating the game lookup value.

Ending a Game

A game doesn’t have to end but in the event that a game does need to end, the process to follow is to simply remove the users from the game. The game history will be retained through the achievement and game points records and these will still be visible when viewing the charts on the game record. The Leader board however will cease to display data as this relies upon the players being linked to the game.

Further Customization Suggestions

The Game is not intended to be a ‘one size fits all’ solution. The intention is to provide a data structure, example workflow and method to monitor the game’s progress so that the game administrator has a starting point to implement a game that closely fits their user adoption objectives and encourages specific actions.

  • The main area that may require further configuration or customisation is the generation of achievements and game points. The example workflow templates provide basic examples of workflow that can trigger the generation of the aforementioned records but many businesses will have more complex behaviours that warrant game points or achievement rewards. For example, a user may be rewarded for maintaining an average number of calls completed per day and for a calculation such as this, a plugin would be required.
  • Goals as mentioned earlier are very good at tracking long term behaviour and there is no reason why workflow could not be added to the goal in order to trigger game points or achievements when an actual value equals or exceeds the target value. Two workflow templates are included called 'The Game TEMPLATE: Create Points for Achieving Goal' and 'The Game TEMPLATE: Create Points for Achieving Stretch Target'.
  • Activity Feeds are an optional solution for on-premise deployments but come pre-installed with CRMOnline subscriptions (See here for further information http://msdn.microsoft.com/en-us/library/hh547452.aspx). When achievements are awarded or maybe promotions attained, workflow could be added to generate Post records in order to display in the activity feeds display.
  • Add more ranks. If more than 10 ranks are required, the game entity can be customized to include extra rank lookups and 'to' points levels. The workflow that evaluates the user's game points and decided if a promotion is warranted would also need to be extended. Finally new icons would be needed to ensure the leader board shows images. To do this, create new image type web resources. It is recommended to use images that are 36x36 pixels in size and png file type. The following codeplex solution is designed to quickly create image web resources and is strongly recommended; http://crmiconator.codeplex.com/
  • When a user is promoted or when they receive an achievement, it may be a good idea to add email steps in the corresponding workflow to notify them and possibly generate follow up tasks to remind the game administrator to arrange for the prize to be purchased or add an appointment for the award ceremony!

Release Notes

V5.0.0.0 Initial release to web.


 

Further Reading & Resources

A resource for gamification thoughts and industry specific examples.

A great book to tell you all you need to know about workflow and dialogs in Microsoft Dynamics CRM2011

A treasure trove of CRM information, specifically, check out chapter 7 for thoughts on establishing goals.

If you intend to add many new icons to your game deployment then this tool will save you a lot of time

 

Last edited Oct 24, 2012 at 8:17 AM by rboyers, version 9

Comments

No comments yet.