In John Stenbeck’s book “PMI-ACP and Certified Scrum Professional Exam Prep and Desk Reference”, he creates an “agile project management process grid” which describes 87 processes used in agile project management. These processes are divided into five process groups (Initiate, Plan, Iterate, Control, and Close), which are analogous to the five process groups in traditional project management, and seven knowledge areas which can be mapped, more or less, onto the ten knowledge areas in traditional project management.
Today’s post is about the process 3.9 Sizing, which is part of the Adaptive Planning knowledge area. When sorting out the various user stories that the development team is working on, there are two dimensions to be aware of. The first dimension is that of “priority”, and the process of sorting out user stories based on priority is process 1.7 Prioritization. The second dimension is that of “size”, and the process of sorting out user stories based on “size” is this process 3.9 Sizing.
I talked about this process in the last post, and wanted to continue the discussion in this post with an introduction to “planning poker.” Let’s say that you have created a set of user stories, and your next task is to “size” them, that is, to define the relative development effort required to complete each story.
Planning poker is a process which can help in this sizing effort. Before explaining the process, a preliminary explanation of the Fibonacci sequence is needed.
This is a sequence generated by taking the pair of numbers 1 and 1 and adding them to make 2. Then the last of the pair, 1, is added to the sum, 2, to get the next number in the sequence, or 3. Then 2 and 3 are added to make 5, 3 and 5 are added to make 8, 5 and 8 are added to make 13, etc.
Although this is desca0 ribed as a mathematical sequence, as Pythagoras would say, “all is based on number,” and the Fibonacci sequence appears in nature in forms such as spirals or fractals (shapes that show self-similarity at varying scales, such as clouds, leaves, mountains, etc.). It is because they are found in nature, and the fact that man often imitates nature in art, that these numbers inform the architecture of civilizations as diverse as the ancient Greeks to modern-day Africa. Why are they used in agile? Because they form a very human, intuitive way of comparing various quantities.
Now with that introduction to Fibonacci numbers out of the way, let me explain how Planning Poker works. Out of all the user stories, the team chooses a story that approximates a midpoint, and this is called a “medium” size user story, and assigned a numeric value of 8 story points. Then the remainder of the stories are estimated using Fibonacci sequence numbers such as 1, 2, 3, or 5 for smaller stories, and 13 or 21 for larger stories. Each player has a deck of numbers with Fibonacci sequence numbers on it, and gets a vote for each user story. The votes are revealed, and discussion and re-voting as necessary are done until there is a team consensus on the size of each story.
In the next post, I will discuss how the three elements of a cross-functional team, planning poker, and Fibonacci numbers can help reduce three significant risks associated with estimating and sizing (processes 3.8 and 3.9).
Filed under: Uncategorized |
Leave a Reply