Several agile concepts have been applied in the game. The table below
lists some of them and describes how to do the same in Find the Bug! - Agile.
Please visit The Agile Manifesto
for more information.
Term
Agile concept
Game concept
Agile development
Requirements and solutions evolve through collaborating between self-organizing cross-functional teams
The players alternate between developer tasks and tester tasks
Continuous integration
Merge of all developer working copies to a shared mainline several times a day
Action whereby one player (tester) places components next to each other so that input and output match
Epic
Collections of related user stories
Rule tiles (or the ”epics of the game”)
Iterative development
Develop a system through repeated cycles (iterative) and in smaller portions at a time (incremental)
Action whereby one player (tester) plays a combination of codes and another player gives the result (product owner)
Pair programming
Two programmers work as pair, one writes code and the other reviews it
Action whereby a player takes codes similar to the codes of another player
Product owner
Responsible for representing the business in the development activity
The player creating a component with a hidden input and an open output
Repository
On-disk data structure which stores metadata for a set of files as well as a history of changes
Stock of code cubes, from which the players may replenish their hands
Retrospective
Held at the end of every iteration to look for ways to improve the process
End game phase whereby the players count their victory points and determine the winner
Scrum master
Facilitator of day-to-day operations of agile teams
Role of players in the game
Scrum meeting
Daily meeting where members tell what they did, what they will do and what impediments they see
Four actions or tasks available to the players each turn
Scrum of scrums
A technique to scale Scrum up to large groups (over a dozen people), consisting of dividing the groups into Agile teams of 5-10
The honor given to the winner (”scrum of scrums master”)
Sprint planning
Identify work and goal for sprint
Setup phase when the game is prepared and game end condition agreed
Story-driven modeling
Focus on concrete example scenarios, on how they may be represented as object diagrams, and on how they may evolve during scenario execution
Action whereby one player (product owner) creates a test case for the other players to test
Stub
A piece of code used to stand in for some other programming functionality
A card used to link output and input instead of a component
Technical lead
Software engineer in charge of one or more software projects
The player passing a component
Test-driven development
Write test case first, then produce code to pass test, and finally refactor code to acceptable standards
Game mechanism whereby the players need to find the right combination of codes to get victory points
Test lead
Test professional involved in the planning, monitoring, and control of the testing activities and tasks
Responsibility of players in the game (i.e. what to test and when)
User story
Description of what a user needs as part of the job function, typically in the form ”As a... I want... so that…"
Card telling which input that is needed to get a given output