Planning Poker is a team building activity for achieving group consensus. It is used by agile software development teams to estimate how long a certain amount of work will take to complete.
The goal of planning poker is to make sure each person on the development team actively participates in the estimation process and contributes his or her knowledge. The activity is especially useful for projects in which there can be a lot of unknown variables and multiple areas of expertise are required in order to get an accurate estimate.
Poker sessions are usually attended by the development team, the project's business owner and a facilitator. Before the planning session begins, the facilitator gathers the development team around a table and hands out a deck of special cards to each member -- this is where the name poker comes from. The facilitator and the business owner do not get cards.
Each card has a number that corresponds to the number of days required to complete a specific amount of work. For example, the lowest card in the deck might say ½ (half a day) and the highest card in the deck might say 21 (one month.) The middle cards are often numbers in the Fibonacci sequence (1, 2, 3, 5, 8, 13). Each deck will also contain a card that represents the concept that work is going to take an unreasonable amount of time to complete. Typically, that card contains a symbol for infinity or an image depicting the gates of hell.
The facilitator begins the planning poker session by reading a description of the software component (story) that the team is estimating time-to-build. Each developer selects a card from his deck that corresponds to the number of days he feels it will take to complete the work and places his card face down on the table. Once the last card has been thrown down, the facilitator flips all the cards over. If every card is the same, there is consensus and the facilitator moves on to the next user story.
Most likely, however, some cards will be different from others. At this point, the facilitator’s job is to moderate a discussion and invite the developers who threw high and low cards to explain their rationale. The business owner’s role at this time is to answer questions.
After a predetermined amount of time – or at the facilitator’s discretion – developers will once again be asked to select cards. The process is repeated until the group achieves consensus or the facilitator decides that consensus cannot be reached and the story must be broken down into simpler parts before the project can move forward.
Planning poker, which was first described in a paper by James Grenning in 2002, is a more informal version the Wideband Delphi Method, an approach to achieving consensus developed by the RAND Corporation in the 1940s. Although planning poker is most often associated with software development, the activity can be used with any group that needs to estimate the time it will take to complete a project.