Poker Meeting Agile
Planning poker, also called Scrum poker, is a consensus-based, gamified technique for estimating, mostly used to estimate effort or relative size of development goals in software development. In planning poker, members of the group make estimates by playing numbered cards face-down to the table, instead of speaking them aloud. The cards are revealed, and the estimates are then discussed. By hiding the figures in this way, the group can avoid the cognitive bias of anchoring, where the first number spoken aloud sets a precedent for subsequent estimates.
Planning poker is a variation of the Wideband delphi method. It is most commonly used in agile software development, in particular in Scrum and Extreme Programming.
The method was first defined and named by James Grenning in 2002[1] and later popularized by Mike Cohn in the book Agile Estimating and Planning,[2] whose company trade marked the term [3] and a digital online tool.[4]
Process[edit]
Rationale[edit]
One the most significant ceremony of any Agile Team is Daily Standup where the team members get together and plan for their day. But quite often the daily standup turns into a zombie status update meeting where team members come together to blurt out their updates and walk away to their desk without ever maximizing the benefit of that meet up. To start a poker planning session, the product owner or customer reads an agile user story or describes a feature to the estimators.
The reason to use planning poker is to avoid the influence of the other participants. If a number is spoken, it can sound like a suggestion and influence the other participants' sizing. Planning poker should force people to think independently and propose their numbers simultaneously. This is accomplished by requiring that all participants show their card at the same time.
Equipment[edit]
Planning poker is based on a list of features to be delivered, several copies of a deck of cards and optionally, an egg timer that can be used to limit time spent in discussion of each item.
The feature list, often a list of user stories, describes some software that needs to be developed.
The cards in the deck have numbers on them. A typical deck has cards showing the Fibonacci sequence including a zero: 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89; other decks use similar progressions with a fixed ratio between each value such as 1, 2, 4, 8, etc.
The reason for using the Fibonacci sequence instead of simply doubling each subsequent value is because estimating a task as exactly double the effort as another task is misleadingly precise. A task which is about twice as much effort as a 5, has to be evaluated as either a bit less than double (8) or a bit more than double (13).
Several commercially available decks use the sequence: 0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 100, and optionally a ? (unsure), an infinity symbol (this task cannot be completed) and a coffee cup (I need a break, and I will make the rest of the team coffee). The reason for not exactly following the Fibonacci sequence after 13 is because someone once said to Mike Cohn 'You must be very certain to have estimated that task as 21 instead of 20.' Using numbers with only a single digit of precision (except for 13) indicates the uncertainty in the estimation. Some organizations[which?] use standard playing cards of Ace, 2, 3, 5, 8 and king. Where king means: 'this item is too big or too complicated to estimate'. 'Throwing a king' ends discussion of the item for the current sprint.
Smartphones allow developers to use mobile apps instead of physical card decks. When teams are not in the same geographical locations, collaborative software can be used as replacement for physical cards.
Procedure[edit]
Agile Point Poker
At the estimation meeting, each estimator is given one deck of the cards. All decks have identical sets of cards in them.
The meeting proceeds as follows:
- A Moderator, who will not play, chairs the meeting.
- The Product Owner provides a short overview of one user story to be estimated. The team is given an opportunity to ask questions and discuss to clarify assumptions and risks. A summary of the discussion is recorded, e.g. by the Moderator.
- Each individual lays a card face down representing their estimate for the story. Units used vary - they can be days duration, ideal days or story points. During discussion, numbers must not be mentioned at all in relation to feature size to avoid anchoring.
- Everyone calls their cards simultaneously by turning them over.
- People with high estimates and low estimates are given a soap box to offer their justification for their estimate and then discussion continues.
- Repeat the estimation process until a consensus is reached. The developer who was likely to own the deliverable has a large portion of the 'consensus vote', although the Moderator can negotiate the consensus.
- To ensure that discussion is structured; the Moderator or the Product Owner may at any point turn over the egg timer and when it runs out all discussion must cease and another round of poker is played. The structure in the conversation is re-introduced by the soap boxes.
The cards are numbered as they are to account for the fact that the longer an estimate is, the more uncertainty it contains. Thus, if a developer wants to play a 6 he is forced to reconsider and either work through that some of the perceived uncertainty does not exist and play a 5, or accept a conservative estimate accounting for the uncertainty and play an 8.
Benefits[edit]
A study by Moløkken-Østvold and Haugen[5] reported that planning poker provided accurate estimates of programming task completion time, although estimates by any individual developer who entered a task into the task tracker was just as accurate. Tasks discussed during planning poker rounds took longer to complete than those not discussed and included more code deletions, suggesting that planning poker caused more attention to code quality. Planning poker was considered by the study participants to be effective at facilitating team coordination and discussion of implementation strategies.
See also[edit]
- Comparison of Scrum software, which generally has support for planning poker, either included or as an optional add-on.
References[edit]
- ^'Wingman Software Planning Poker - The Original Paper'. wingman-sw.com. Retrieved 5 July 2017.
- ^Mike Cohn (November 2005). 'Agile Estimating and Planning'. Mountain Goat Software. Retrieved 1 February 2008.
- ^'Planning poker - Trademark, Service Mark #3473287'. Trademark Status & Document Retrieval (TSDR). 15 January 2008. Retrieved 26 May 2014.
- ^Cohn, Mike. 'Planning Poker Cards: Effective Agile Planning and Estimation'. Mountain Goat Software. Mountain Goat Software. Retrieved 30 March 2016.
- ^K Moløkken-Østvold, NC Haugen (10–13 April 2007). 'Combining Estimates with Planning Poker—An Empirical Study'. 18th Australian Software Engineering Conference. IEEE: 349–58. doi:10.1109/ASWEC.2007.15. ISBN978-0-7695-2778-9.
- Mike Cohn (2005). Agile Estimating and Planning (1 ed.). Prentice Hall PTR. ISBN978-0-13-147941-8.
Agile Planning Poker online, free
Planning Poker (also known as Scrum Poker) is a very popular technique proposed in 2002 by James Grenning. Each player uses a set of cards with Fibonacci sequence numbers on it to estimate the overall effort of a task in Story Points.
Planning Poker procedure
Agile Poker App
Take in mind that with great popularity came multiple variations of this technique, each team tend to adapt it for their needs. Classic procedure is as follows:
- The Product Owner provides a short overview of a user story that will be estimated by the team. The team can ask questions. Potential clarifications can influence the initial scope.
- Everyone from the team picks one card from his set (1, 2, 3, 5, 8, 13 …) and lays it face down in front of him.
- When everyone is ready, the team is turning over cards.
- Members with the highest and lowest estimates should justify their votes and discussion continues.
- Repeat steps 2-4 until a consensus is reached.
Mind the fact, that consensus doesn’t necessarily mean that everyone needs to put the same number. The team might just agree to disagree and put the average or largest number as an estimate.
When to use Planning Poker?
With a strong focus on the discussion, this approach helps to spread the common knowledge of user stories across the team. So Planning Poker is ideal for Scrum Teams, preferably when it is unknown which developer will deal with the issue.
This method shows high accuracy in estimations.
Agile Planning Poker
What are the disadvantages?
Poker Meeting Agile Strategy
Although Planning Poker deals well with new features it throttles when it comes to unknown or uncertain things such as research or bugs.
Poker Meeting Agile Training
Another important factor is that this is rather time-consuming. From my experience estimating one task often takes more than 15 minutes and the bigger team the longer it takes to find the consensus.