agile estimating and planning
TRANSCRIPT
Agile Estimating and Planning
Luca Grulla
ESSAP
Varese,Italy, 4/7/2008
Why planning and not plan ?
But what do we really want ?
• Reduce the risk• Reduce uncertainty• Support better decision making• Establishing trust• Conveying information
Problems with traditional planning
• Traditional plans are created with the assumptions that all the identified activities will be completed. This means that work is typically prioritized and sequenced for the convenience of the dev team.
• The work is not prioritized by the value to the customers.
Project phases
• Inception• Release Planning• Iteration Planning
Bank CMS: Story #1
As a Customer Relationship Manager
I want to be able to send a welcome mail to every new customers
in order to welcome them to our bank
Ideal Days
• Easy to communicate• Don’t require bootstrapping
But…
• Can be subjective• Leads to questioning team’s productivity
Story Points
• Arbitrary unit that quantifies the 'difficulty' of a Story• Story points encourage cross-functional behavior• The conversion between Story Points and real time will change over
time as the team become more familiar the project (Velocity)
But…
• Difficult to get started• Estimated Velocity as part of release planning has to be boot
strapped in circumstances (at the start of projects) where there is nothing to use to judge the mapping between Story Points and effort
Velocity
• Number of story points completed per iteration• Define the actual capacity of delivering of the team• It’s the link between the size and the length of a project
Agile estimation techniques separate size from duration
Consistency vs Accuracy
Scale
• Powers of 2 (1, 2, 4, 8, 16…)• Fibonacci (1, 2, 3, 5, 8, 13…)• T-Shirt size (S, M, L, XL)
Bank CMS: Story #1
As a Customer Relationship Manager
I want to be able to send a welcome mail to every new customers
in order to welcome them to our bank
How to estimate
• The BA reads the story• The team makes questions to understand the story better• Every team member decides privately his estimate• All the member show the estimate at the same time• The higher and the lower discuss the reasons behind their decision• Repeat until the estimate converge
What are we also doing ?
• Exploring the technical solution space• Defining constraints• Discussing the requirements• Sharing different views of the problem
Iteration Planning
• According to the recent velocity (yesterday weather), the customer takes stories until the team bandwidth is full
Risk and Value
Low RiskHigh Value
High RiskHigh Value
Low RiskLow Value
High RiskLow Value
Risk
Value
Release Planning
• Can be feature-driven or time-driven• Based on the requested approach, you define your velocity and
then either your forecast the number of points (for a time-driven plan) or the length of the project (for a feature-driven plan)
Questions ?
References
• “Agile Estimating and Planning”, Mike Cohn