Review of STONE READER  • • •  2020 Resolutions       all posts in Archive

Agile - How to Estimate Story Point

This was what I was trying to do 8 years ago, but according to our current developing situation, still seems quite correct.

Estimate by Story Point

Why Story Point

In Agile, We can estimate Stroies by TIME and STORY POINT.

Product Owner always want to know the exact time when can we release a story, they usually hoping we can estimate by TIME, how many hours we can finish it. As always, as time goes on, they will find no one can deliver on time.

Basically, the desire of control time is sick. But that won’t helping speed up developing one bit. So, drop it. Use Story Point is trying to let go. Just try to understand what we are, what we can do.

How to Estimate Story Point

Story point means all the efforts needed to complete a story, thus including design, code, document, testing and deployment.

We assign a number to story which means complexity. What I was trained and what my best practice is, never using sequential number as: 1, 2, 3, 4, 5 … Cause we can never make an accurate estimate for complex problem, sequence number just trying to mimic estimate by time.

When complexity increasing, means some thing alrady out of control, we need plan a little time for it. **The suggested Story Point Number are: 1, 3, 5, 8, 13, 20, 40, ? (Unknown) **

The meaning of these numbers:

Each development team will have different understanding of these numbers. And we also need some time to have better understanding of ours too. The REAL Meaning of these number can only be realized by yourself while practicing. Here just a example to start.

Story point ? (unknown)

When we think one story is unknown, means don’t have clear understanding of the problem, and don’t know even how to start.

It means we need more research to have a big pircture first.

Story point 1

Story point 1 means, we familiar with the issue, we know exactly what to do, the problem is very easy.

The time is under control, usually won’t have any risk to delay release schedule.

Story point 3

3 means it’s a little complex than 1, but not too difficult.

Based on current code, we just need some small changes. And this change won’t have big impact on other codes. Risk still under control.

Story point 5 & 8

5 and 8 are the base line of all the numbers.

Usually it means the effort to finish a complete feature or requirement. 5 means we are confident of what we are working on. 8 means there’s some uncertainty and we need a little more research.

5,8 stories usually is one or two weeks work.

Story point 13

13 is a huge story, we can not make a whole picture, and many new stuff will jump out while developing.

May need one whole sprint to finish it.

Story point 20

20 means the problem is very very complex, we dont have clear picture of it.

we can’t make sure to deliver in one sprint. If possiblem, should split it into smaller stories.

Story point 40

When story point more than 20, means we can never have good estimation anymore, we must break it down.

This number should only kept in backlog, and we should never start working on it.

P.S.

  • Never try to enwind TIME with Story Point, they don’t have directly connection.
  • Story point is estimated by team, but different developer will have different complexity, so estimated time could be differnt.
  • The meaning of Story Point Number will be changing as time goes on. Stories will be comming easier, numbers could mean totally different stull as time goes by.
  • Quantity makes different, Three point one stories are not story point 3, it could be 5, cause stories may have connections which increasing complexity.
  • No pressure, we have ORIGIN ESTIMATION, while developing, we can change the value freely