This document discusses using gamification strategies to increase engagement and drive desired behaviors in agile software development teams. It provides examples of gamification programs and tools that can be used, such as Agile Leagues and games to promote continuous improvement. The document then outlines a seven-step process for implementing an agile gamification program, including defining target behaviors, getting approval, knowing the players, and making constant adjustments based on metrics. Peer review of activities is suggested to prevent cheating and ensure tasks are completed as agreed. The document recommends focusing on intrinsic rather than extrinsic rewards for software development work.
One of thecore strategies is to reward players who complete some
valuable activities with points and badges.
Other approaches also exist, like using some game elements of
competition to stimulate employee performance, or making some
tasks more engaging like games
(by adding a narrative, for example).
Agile gives usmany opportunities to improve and challenges to
overcome.
If you are an agilist, you may be facing some difficulties, including:
1. Teamwork and communication (you want more);
2. Meeting attendance (could be better);
3. Agile technical practices (Testing, Refactor, Emergent Design, TDD,
BDD, etc);
4. Boosting continuous improvement;
5. Influencing self-organization.
5.
Agile Gamification refersto the use of game mechanics and
rewards in an agile software development setting to increase
team engagement and drive desired behaviors.
And by using the gamification strategies, we surely can gamify
agile software development frameworks and methodologies like
Scrum and XP.
Examples of Agile Gamification programs and tools:
Agile Leagues: an open-source gamification platform for
gamifying agile teams;
Mastering TDD – Test Wizards: a program for boosting test-
driven development (TDD) or other technical practices;
Sugar Kit – Training Teams: an approach for training teams in
new technologies;
Building continuous improvement – Metrics Ecosystem with
LEGO: a game for creating a culture of continuous improvement.
7.
1. State yourbusiness goals
Start by answering stating your business
objectives. Which problems do you want to
address? Which practices do you want to
boost?
2. Define your target behaviors
Think about what you want your team to do.
What behaviors do you want to stimulate?
Which activities are they going to perform?
8.
3. Get approval
Whenstarting a gamification program, it is important
to get approval from both your superiors and the
players. Remember that you cannot force someone to
play. Play is a voluntary activity!
4. Know the players
If it is your team, you probably already know them very
well. But anyway, you can ask them suggestions and
what they are expecting from your gamification
program. It is also a good idea to run (ask them) the
bartle test of gamer psychology to better determine
their characteristics.
9.
5. Build orbuy it
Decide whether your going to build or buy your gamification
program. If you decide to build it, there are several gamification
frameworks out there that can help you focus on your busineses
objectives only and forget about specific gamification mechanics
(like badges and leaderboards – believe me, they can be hard to
implement). You can also try Agile Leagues (please contact me to
request access).
6. Run and measure
Start running your program and make sure to measure the actions
performed by the players. If it is a software, it will be easier. You
can track several attributes and player behaviors. There are also
some things that cannot be tracked, and that’s why you should
interview your players and ask for their input.
10.
7. Constantlymake adjustments
Do not forget to inspect, adapt, and
constantly improve the experience. Add new
content, fix bugs, increase feedback, change
the rules to make it more difficult. Don’t
forget to consider the metrics and attributes
measured in the previous step.
11.
Define the activitiesthat you want your colleagues or coachees to perform
more often, and then group them into domains (areas of improvement).
Examples of domains include:
Collaboration
Communication
Meetings
Software engineering
Testing
Examples of activities include:
Write unit tests
Write test before code
Read about design patterns
Demonstrate a feature in the sprint review meeting
Pair program for 1 hour
12.
Players aregoing to report their actions manually by telling the gamification
program (probably software) what they are doing. How can we prevent cheating
and ensure that all activities are executed as agreed?
Peer activity review is about spreading the responsibility of reviewing the activities
throughout the team. Instead of a manager/mentor/leader checking whether the
players have actually completed the actions, the team members themselves will be
responsible for that. For example:
Say Josh reported a unit test activity and added a description: "I wrote a unit test
for component X." Rob, his colleague, knows that he is working on that
component, so Rob accepts the activity. Notice that Rob is not going to check
whether Josh actually wrote the test, because Rob trusts him.
The peer activity review mechanism has several benefits:
◦ It boosts self-organization and trust. Players are not going to feel that they are restricted to
the acceptance of a manager or game administrator.
◦ Little time is spent reviewing the activities, because the team members are the ones who
know best what everyone is doing.
◦ Self-regulation is boosted because the players themselves will establish their own stringent
standards for accepting or rejecting the activities.
◦ They will have fun because you can reward them for reviewing activities.
13.
Focus onintrinsic rewards. Extrinsic rewards
(money, stocks, prizes, and commissions) work
best for simple tasks. Software development is
complex and creative work, and people tend to
prefer intrinsic rewards over extrinsic ones
(intrinsic rewards include recognition, status,
altruism, honor, mastery, and purpose).
The classic triad of game elements used in
gamification is called PBL (points, badges, and
leaderboards). Most gamification programs apply
these components because they are highly
effective and they will likely help you achieve
your business objectives.
14.
Points:
They areused to encourage people to do things in
order to collect them.
The assumption is that people will buy more widgets
or work harder in exchange for points.
This is a simple approach that occasionally works to
motivate those people who like collecting things or
who like competing against each other.
Explicit and frequent feedback is a key element in
most good game design, and points provide feedback
quickly and easily.
By understanding the nature of points, you can use
them in ways that meet the objectives of your
gamified system.
15.
Badges:
Theseare a "chunkier" version of points. A badge is a visual
representation of some achievement within the gamified process.
◦ Example: A Unit Tester Badge for writing 1,000 unit tests.
Badges have five motivational characteristics:
They give you a goal.
They provide guidance as to what is possible within the system.
They provide visual markers of what the users are capable of.
They are virtual status symbols and affirmations of the personal
journey.
They are "tribal markers" in that users with the same badges will
feel connected.
We canexpect good results with Agile.
Moreover, we will have an even better
outcome with Agile gamification!
Both of them stimulate collaboration,
communication, teamwork, creativity,
improvement, and self-organization.
Agile gamification, if implemented correctly,
will be lever to boost motivation,
engagement, and behavioral change.