Category Archives: Gamification

Tquila’s Gamification Engine: Under the Hood


Gamification with TquilaAs Iain mentioned in an earlier post, we’ve been busy building a gamification engine on the Salesforce platform for a client.

In this post I dig a little deeper into how the engine works.

Design considerations
Having gathered requirements from the client, we first considered off-the-shelf gamification apps. Looking at what was already available gave us some great additional ideas – but also confirmed that we needed to create a bespoke solution.

As we designed the bespoke app, we kept a few key elements in mind:

  • It had to be flexible: our client’s business embraces change, so the gamification engine had to as well. It should be easy for an admin to modify the rules that award points and badges.
  • It had to deliver in real time: users want instant gratification, so they need immediate notification when they’re awarded new points and badges.
  • It had to be fun and sexy: users expect slick, engaging experiences. In order to successfully drive the end business goal – increased collaboration and productivity – the system has to make users love using it.

How the engine works
The first step is stakeholders deciding which activities they’d like to gamify.

Then an admin user accesses the Gamification Admin Console, and defines the specific actions that will be gamified – for example, “Lead Creation” or “Contact Phone Updates”. The admin then allocates points, based on specific activities and different users’ roles.

The next step is badge and trophy creation: uploading icons for each new badge and trophy, and defining achievement rules and weightings for each group of users.

The rule definition is fairly simple. Using common operators like AND, OR, NOT, SUM, the admin creates functions that include actions and weighting that users must fulfil in order to win an award.

For example: in order to achieve the “Lead-Gen Leader” badge, a user has to create 50 leads and update all the phone numbers for the leads. To set this up the admin would define the rules as:

AND(50″Lead Creation”, 50″Contact Lead Phone Update”).

To keep the evaluation process simple, the functions are compiled into an easy-to-process tree dataset. Using the Composite Pattern, whenever a new badge is created, the dataset is loaded and the evaluation is carried out invoking the same interface on different nodes, whose implementation depends on node types: AND, OR, NOT, SUM, etc.

Keeping users engaged: What they see
Each user has a “Social User Profile”, which acts as their gamification and achievements dashboard. Here they can see which badges and trophies they’ve achieved, future goals, points, trends and their activity timeline.

To simplify navigation and tap into users’ competitive spirit, we created a number of widgets, like friends and rivals.

To support the engaging UI, we added some different kinds of notifications. An element of instant gratification is important, but users don’t want to feel inundated, or suffer from email overload. So we’ve balanced different levels of on-screen notification. We built a nifty javascript framework that collects notifications and displays them in Salesforce – either as subtle animations or full-screen events, depending on the achievement.

If you’re interested in finding out more about Tquila’s approach to gamification, please get in touch! We’ll follow up with a code-centric post soon, which will give you more insight into the structure of our system and design decisions we’ve made.

Tagged , , ,

We’re building a gamification engine on Salesforce!


Tquila loves gamificationPiow piow! Gamification is so hot right now. In fact it’s probably too hot, with many online services adding badges and a leader-board to their sites without always thinking about the business value. Its popularity means there are also a lot of misconceptions about gamification (How can I make my accounting app more like World Of Warcraft? Can I bring Angry Birds into my sales pipeline?).

So what is gamification? Gamification is about bringing elements of what make games fun, addictive and rewarding in to every-day business applications. Why? Because if you can harness even a part of the energy users put in to games like Plants vs Zombies (yes really), you can super-charge your customer activity and employee performance.

Recently I’ve been working with a team at Tquila on some exciting new gamification features aimed at driving specific user behaviours within Salesforce. We’re not just adding trophies, we’re starting from business goals and working up from there. We’ve pinpointed different behaviours we want to encourage (initially around capturing quality contact data) and have built a bespoke engine to help our clients change their focus over time.

Why didn’t we use one of the myriad of gamification add-ons currently available? Because we spent time understanding our client, and nothing out-of-the-box was going to get them where they wanted to go. Cost was also a factor: why pay a monthly fee per user for something quite generic? Instead, we created a bespoke gamification engine that’s easy for the client to manage – and we’re all really excited with the results.

We’ll continue the rollout in the coming months, and we’re looking forward to sharing the lessons we’ve learned. My colleague Dario has driven the technical design, and is keen to share information on the engine itself. If you’re interested in learning more about gamification, this book by Kevin Werbach came out in October last year, and is an excellent start.

Tagged , , ,