How to accurately estimate? ?software development effort using story point?

How to accurately estimate software development effort using story point?

I am a great fan of Scrum, XP, and Lean. People often say agile matters more than Scrum, but for me, Scrum, XP, and Lean matter more than anything. But why? I believe practicing these better will help me become agile. Wait, why am I talking about Scrum, XP, or Lean when the topic is estimation? Oh, do you still think an accurate estimate is a topic to discuss?

Look at the heading of this article again and try to understand each word. Accurate estimate - This is an oxymoron, so it is impossible. Either you will have accurate data (after development) or an estimate (approximation) before you develop software. Software development is a learning process based on trial and error. Since learning can vary from person to person, the estimate for learning can't be the same for everyone. Since the process is based on trial and error, instead of investing too much in judging better estimation, go for a shorter feedback loop so you can check the trial's outcome frequently and adjust it. This is where empirical process control helps.

Ah! What about Story Point? Is it for estimating effort? No, this is to size your problem, which helps you forecast the size of the batch that you can pick for the next iteration. This is also relative estimate based on Wideband Delphi technique. You can learn about it here - https://en.wikipedia.org/wiki/Wideband_delphi

Can we translate these points into hours/days? Don't do it, but you will not listen to me. If you can do it, you know the solution, and no learning exists. Since there is no learning, there is no need for the empirical process.

Basically, an accurate estimate of software development efforts using story points is also a myth. I keep hearing the following during my workshop.

  • We use one story point to equal one workday in our company,
  • Our coach has helped us to split our requirement to a level where we estimate one story point equals 4 hours of work.
  • We have an organization-level standard where we apply one story point equal to 2.5 days of work.

My question - If you can estimate your effort in hours or days, then why do extra work to translate all these in story points further?

Regular answer - In Jira, there is a field for story points against the story, not hours and days, so we convert and put it there. I am not sure if Jira has a field for hours/days for a story, but why use Jira if it is not helping you do a better job? After all, tools are for helping us and not for creating impediments.

In summary, estimates are estimates and ofcouse with experiences we can judge better and improve our estimates but it is not going to be accurate estimate for complex software product development so stop chasing such dreams. Focus on faster learning cycle and avoid wasting your time.

Gnanasambandham Anbazhagan

Agile Coach SAFe SPC 6.0, SAFe RTE 6.0, CSP-CSM, CSP-CSPO

5 年

Good Thought Naveen.?

回复
Lal Ratnakar S.

Test Management IoT Software @ SEW Eurodrive | ISTQB, PSM 2, PSPO 1

5 年

I have one question.. the sprint is for maximum 4 weeks.. let's say I have one on 2 weeks.. if we say sprint in number of days.. so why not story points.. how one will estimate the work need to be done in 2 weeks if we don't relate to story points.... how can we relate story points with number of days in sprint..

回复
Lal Ratnakar S.

Test Management IoT Software @ SEW Eurodrive | ISTQB, PSM 2, PSPO 1

5 年

Like your thought.?

回复

This is very essential understanding for every team. "Is it for estimating effort? No this is to size your problem that help in judging size of batch that you can pick for next iteration to try."

Sankar Balasubramanian

Senior Manager | Functional Architect (Transversal Solution Architect) at Renault Nissan Tech

7 年

Good.. Thought Provoking !

要查看或添加评论,请登录

Naveen Kumar Singh的更多文章

社区洞察

其他会员也浏览了