Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof....

16
Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied Sciences Munich Department of Mathematics and Computer Science 3/7/2016 About me Work experience as a software engineer at sd&m (now Capgemini). PhD at Technical University Munich (TUM). Since 2009 at University of Applied Sciences in Munich. Teaching: – Programming (in Java), Software Engineering, Requirements Engineering Research: – Requirements Elicitation, Process Models, Agile Software Development … 2 Department of Computer Science and Mathematics

Transcript of Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof....

Page 1: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

Gamification in Software

Engineering

Prof. Dr. Ulrike Hammerschall

University of Applied Sciences Munich

Department of Mathematics and Computer Science

3/7/2016

About me

� Work experience as a software engineer at sd&m (now

Capgemini).

� PhD at Technical University Munich (TUM).

� Since 2009 at University of Applied Sciences in Munich.

� Teaching:

– Programming (in Java), Software Engineering, Requirements

Engineering

� Research:

– Requirements Elicitation, Process Models, Agile Software

Development …

2

Department of Computer Science and Mathematics

Page 2: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

The question …

3

Department of Computer Science and Mathematics

Can we use gamification to improve the

software development process?

3/7/2016

Gamification in the Gartner hype cycle - is

the hype over?

4

Department of Computer Science and Mathematics

http://edulearning2.blogspot.de

Page 3: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Topics

� What is gamification?

� Dynamics, mechanics and components

� Why gamification works

� The gamification process

5

Department of Computer Science and Mathematics

3/7/2016

What is gamification and what is it for?

6

Department of Computer Science and Mathematics

„The use of game elements and game-design techniques in non-

game contexts.“

[Werbach, 2012]

� Motivate behaviour change

� Motivate engagement

� Motivate learning processes

� Motivate problem solving (in teams)

Page 4: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Stack Overflow – ask, help … and get

recognized

7

Department of Computer Science and Mathematics

http://stackoverflow.com/

ask, help, and win

badges as recognition

3/7/2016

Planning Poker – estimate user stories

8

Department of Computer Science and Mathematics

Find agreement about estimated

effort for user stories.

Game duration up to three

rounds per user story

Page 5: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

The Quality Language Game – improve

application quality

9

Department of Computer Science and Mathematics

http://www.tricode.nl/Updates/Blogs/the-early-adopters---gamifying-agile-series-46-bdetail

Find localization bugs in

Graphical User Interface

3/7/2016

Topics

� What is gamification?

� Dynamics, mechanics and components

� Why gamification works

� The gamification process

10

Department of Computer Science and Mathematics

Page 6: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Game elements - Dynamics

11

Department of Computer Science and Mathematics

Relationships …

Constraints NarrativeEmotions Progression

Components

Mechanics

Dynamics: large-scale objectives of the game

3/7/2016

Game elements - Mechanics

12

Department of Computer Science and Mathematics

Feedback Rewards

Resources Transactions

Turns Win States

Challenges CompetitionChance Cooperation

Dynamics

Components

Mechanics: basic processes to drive the game

Page 7: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Game Elements - Components

13

Department of Computer Science and Mathematics

Collections

Quests

Content

Unlocking

Virtual Goods

Points

Combat Gifting

Leaderboards

Teams

Levels

Social Graphs …

Achievements BadgesAvatars Boss Fights

Mechanics

Dynamics

Components: basic building blocks

3/7/2016

Game elements - EpicWin

14

Department of Computer Science and Mathematics

Collections QuestsContent

Unlocking

Virtual GoodsPointsLeaderboards Levels

Avatars

Components: basic building blocks

Feedback RewardsResources Chance

Mechanics: basic processes to drive the game

Relationships NarrativeEmotions Progression

Dynamics: large-scale objectives of the game

Page 8: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Game elements – Stack Overflow

15

Department of Computer Science and Mathematics

PointsLeaderboards Levels Badges

Components: basic building blocks

Feedback Rewards

Mechanics: basic processes to drive the game

Constraints Progression

Dynamics: large-scale objectives of the game

3/7/2016

Game elements – Planning Poker

16

Department of Computer Science and Mathematics

PointsCombat Teams

Components: basic building blocks

Feedback Turns

Mechanics: basic processes to drive the game

Constraints Relationships

Dynamics: large-scale objectives of the game

Cooperation

Page 9: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Game elements – Quality Language Game

17

Department of Computer Science and Mathematics

AchievementsLevels Leaderboards

Components: basic building blocks

Rewards Chance

Mechanics: basic processes to drive the game

Progression Relationships

Dynamics: large-scale objectives of the game

Cooperation Competition

3/7/2016

Topics

� What is gamification?

� Dynamics, mechanics and components

� Why gamification works

� The gamification process

18

Department of Computer Science and Mathematics

Page 10: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Motivation – a driver for gamification

19

Department of Computer Science and Mathematics

Positive intrinsic motivation:

I really want to read this book.

Amotivation

I don‘t care about reading or not this book.

Positive extrinsic motivation:

I want to read the book, because I want to impress my friends.

Negative extrinsic motivation:

I have to read this book or I will fail class.

Negative intrinsic motivation:

I don‘t want to read this book.

Ga

mific

atio

n

he

lps

to

incre

ase

mo

tiva

tio

n

Desire

d

Behaviour

3/7/2016

Self-Determination Theory – a theory on

intrinsic motivation

� SDT: Human beings are

inherently proactive with a

strong desire to growth.

� Precondition is a feeling of

– Competence

– Autonomy

– Relatedness

� Intrinsic motivators!

20

Department of Computer Science and Mathematics

[Ryan, 2000]

Competence: learning, self-

improving

Autonomy control, choice,

decisions

Relatednessinteraction, sharing,

social connections

Page 11: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Game elements as intrinsic motivators

21

Department of Computer Science and Mathematics

� progression

� rewards, challenges,

feedback

� quests, points,

badges, levels

� free choice to enter the

game.

� free choice how to play

the game.

� different story lines

based on decisions.

� relationships

� competition,

cooperation

� leaderboards, teams

� sharing in social

networks

Relatednessinteraction, sharing,

social connections

Autonomy control, choice,

decisions

Competence: learning, self-

improving

3/7/2016

Back to my question …

22

Department of Computer Science and Mathematics

Can we use gamification to improve the

software development process?

Page 12: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

… and a possible answer

� Whenever a high motivation would improve results and

the task that has to be done is not motivating by itself.

– find and validate the best requirements for your system.

– improve the quality of your artefacts (software / documentation).

– find in a team the best solution for a problem that cannot be

solved by automation.

– encourage team building and working in a team.

– share and improve knowledge in a team.

– …

23

Department of Computer Science and Mathematics

3/7/2016

Topics

� What is gamification?

� Dynamics, mechanics and components

� Why gamification works

� The gamification process

24

Department of Computer Science and Mathematics

Page 13: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

Things that good games do well

� Encourage problem solving

� Sustain interest from novice to expert to master

� break down challenges into manageable steps

� promote team work

� give players a sense of control

� personalize experience to each participant

� reduce fear of failure

� cultivate a confident and optimistic attitude

25

Department of Computer Science and Mathematics

3/7/2016

Process to gamification [Werbach, 2012]

� Define your (Business) goals

� Delineate target behaviour

� Describe your players

� Devise your activity cycles

� Don‘t forget the fun

� Deploy the tools

26

Department of Computer Science and Mathematics

Motivation

Feedback

Action

Page 14: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

A few thoughts on gamification

� Gamification is not only about points, badges and

leaderboards.

� Gamification can be a powerful instrument if properly

applied.

� Gamification can be discouraging if used in a wrong

way.

� Any game – even the best - gets boring after a while, if

there are no changes.

� Use game elements but don‘t talk about it!

27

Department of Computer Science and Mathematics

3/7/2016

28

Department of Computer Science and Mathematics

Research into human motivation demonstrates that

people will feel motivated by well-designed game

features.

[Werbach, 2012]

Page 15: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

3/7/2016

A good start to learn more about

gamification…

29

Department of Computer Science and Mathematics

3/7/2016

References

� [Werbach, 2012] Kevin Werbach, Dan Hunter: For the Win. How Game Thinking

Can Revolutionize your Business. Wharton digital press, 2012

� [Kapp, 2012] Karl M. Kapp: The Gamification of Learning and Instruction. Pfeiffer,

2012

� [Hohmann, 2006] Luke Hohmann, Innovation Games: Creating Breakthrough

Products Through Collaborative Play, Addison Wesley professional, 1 edition 2006.

� [Koster, 2013] Ralph Koster, A Theory of Fun for Game Design, O‘Reilly, second

edition, 2013.

� [Deterding, 2011] Deterding, S. et al., From game design elements to gamefulness.

In: Lugmayr, A., Franssila, H., Safran, C., Hammouda, I. (eds.) the 15th International

Academic MindTrek Conference, p. 9, 2011

� [Ryan, 2000] Richard M. Ryan, & Edward L. Deci, Self-Determination Theory and

the Facilitation of Intrinsic Motivation, Social Development, and Well-Being. In:

American Psychologist 55, 68–78. 2000

30

Department of Computer Science and Mathematics

Page 16: Gamification in Software Engineering · 2016-12-25 · Gamification in Software Engineering Prof. Dr. Ulrike Hammerschall University of Applied SciencesMunich Department of Mathematics

Thank you for your attention!