An introduction to Agile Estimating and how it can be used to measure the size and length of work.
Agile estimating & planning is a way of measuring the size and time it takes to complete a task. This technique is used by Agile teams in Enterprise and can be utilised in the same way by Start-ups not just for software but for all areas of the business. In this talk I will show you how estimating & planning works by:
- Writing effective user stories
- Writing tests to validate stories (acceptance criteria)
- Using story points to work out the size of a task
- Estimating using Planning Poker
- Using Story Points to calculate a team’s velocity (speed of work)
- Using a team’s velocity to calculate project length
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Agile Estimating & Planning by Amaad Qureshi
1.
2. About Me
Amaad Qureshi
Business Development Manager – Learning Connexions
Certified ScrumMaster, Certified Scrum Product Owner
Organiser – Agile Connexions Meet-up Group
Co-organiser – Agile 101, AppsJuction Meet-up Groups
Member: Agile Alliance, Scrum Alliance, BCS The Chartered Institute
for IT
Finalist Agile Awards – ‘Person Who has done most to promote Agile in
2015’
3. About Learning Connexions
We are a high-end training company
based in the UK
We deliver certified agile and technical
training with world-class trainers to
Bucharest & Cluj
We run community workshops through
Agile Connexions Romania Meet-up
group
All our courses are dedicated to the
learning experience and making training
interactive and engaging
5. What is Agile Estimating?
Agile Estimating is a method to measure how long it will take to complete a
task
This is done By
Using a teams experience and productivity to derive length and cost
How
By utilising Story Points to work out a teams velocity
7. Lets Start with User Stories
User Stories are a way of breaking down a project into measurable tasks
that allow you to effectively plan the length of the project and deliver
value to the product/client.
User stories are usually written on post it’s and ask 3 things.
8. User Stories …
Acceptance Criteria (tests) are written on the back of user stories, usually
as 3 or 4 bullet points.
These form the Definition of Done (the tests need to be satisfied for the
task to be completed.
10. Story Points
Story Points tell you how long a user story will take:
Story points are assigned to user stories by the team carrying out the
task
Story Points are usually assigned using Fibonacci Numbers: 0, 1, 2, 3, 5,
8, 13, 20, 40 and 100
The value story points represent are ‘effort’
For example:
A login screen is a 2.
A search feature is an 8.
14. How to Estimate
We know…
That three islands are about the same distance (12) away
That another island is about twice as far away
We don’t know…
How long it will take to sail a distance of 12
But we do know…
That we can sail to all the islands 12 away in about the same time
That it will take twice as long to the farther island
17. No reliance on actual distances
We can now reliably estimate how long it will take to get to each of
the four islands.
Even though we still don’t know how far away each island is.
How to Estimate
22. Benefits of Planning Poker
Those who will do the work, estimate the work
Estimators are required to justify estimates
Focuses most estimates within an approximate one order of
magnitude
Combining of individual estimates through group discussion leads to
better estimates
Emphasizes relative rather than absolute estimating
Estimates are constrained to a set of values so we don’t waste time in
meaningless arguments
Everyone’s opinion is heard
It’s quick and fun
25. 1. Arrange yourselves in groups
2. Your task is to put the animals in
order of size
3. Assign Zoo Points to estimate
4. Estimate as a group and decide how
many Zoo points each animal should
be assigned
5. If group estimates are different,
discuss then re- estimate
6. Put animals in order of size highest to
lowest
Zoo Game
26. Think about:
1. The discussions you just had in
your groups?
2. Was there high estimates and low
estimates?
3. How did you
decide/compromise?
4. Did your estimates synch up?
(was a 3 zoo point animal the
same size as 1+2 zoo point
animal?)
Zoo Game
27. Estimating Tips
Gut Feeling: use your instinct
Estimate by Analogy: estimating
by comparing
Triangulate: Estimating by
verifying
(is a 3 point story the same as a
1 and a 2 point story)
Disaggregation: If you cant
agree on an estimate try
breaking the user story down
into a smaller story
29. Duration of Project
1. Work out estimates (story
points) for all user story's in a
project
2. Add up all story points to work
out project length
30. Duration of Project
3. After first few iterations
(development stages)
work out how many
story points are
completed per
hour/day to work out
length of task.
e.g. If a team on avg. completes
2 story points per day:
Velocity is = story points / time
taken
If there are 80 story points in a
project than you can estimate
that it will take 40 days to
complete the project.
31. Duration of Project
Every time you start new projects, use the average velocity of past projects as
a estimate for projected length of new projects.
Past Projects Total Story Points for project
(x)
Team average
Story Points
per/day (y)
Length of
project (x/y)
a 80 4 20 days
b 70 5 14 days
c 85 5 17 days
The more you estimate, the more accurate you will get!
33. Clean Code Workshop – Cluj Sat 7th Nov
What you will learn:
The impact of bad code
How to make your code
consistent
How to communicate within
your development team
Naming, comments and
function best practices
Why the aesthetics of your code
matters!
The workshop will be a mix of
theoretical explanations and
practical code examples written
in Java and/or Ruby.