Calling Shots

Calling Shots

How much effort is required to complete a project? How long will a task take? These are the questions that everyone thinks about almost every workday.

For software project estimation, the most commonly employed technique is to estimate the coding portion and then apply the ratio to the other activities. Next, we sum up the estimates for all components and voila, we have the estimates ready to be served.

Below are 3 traps of this approach:

  1. Coding is just 1/6 of the problem and applying the ratios to the rest of the tasks can not always be the right approach.
  2. Even for the coding effort, the programming and debugging time is only 50% of the story. Downtime, higher priority unrelated tasks, meetings, documentation, company business, sickness, personal time, etc, account for the rest.
  3. In case there is a large number of tasks/components involved, summing up the effort does not give you the right effort.

Extrapolation of 100m dash shows that a person can run a mile in under 3 minutes and that sounds super human. Similarly, we can't just sum up the estimates for all the components. As the number of components increase the interactions between components and team members increases to an exponent of 1.5

No alt text provided for this image

Now a question for us to think about, if a project with a large team size takes a large number of months. Does it mean the project was complex or was it because more people were assigned to it?

This 8th instalment of the book, The Mythical Man-Month, is still as relevant as it was in the 1970s. Estimation is and will remain the most debated part of a project. Some people will think an estimate is more and some will think it is less. No matter how scientific or data-driven we make our estimates, it will always be a "guestimate".

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

Madhur Sharma的更多文章

  • The Weight Roller-Coaster

    The Weight Roller-Coaster

    Our body is amazing at precisely regulating many parameters, like temperature, blood pressure, etc. that enable life to…

    2 条评论
  • Hatching a Catastrophe

    Hatching a Catastrophe

    Often the disasters are caused due to termites, and not tornadoes. The project slippages are so small that it is…

  • The Whole and the Parts - Part 11 of 15

    The Whole and the Parts - Part 11 of 15

    How to Design the Bugs Out Bug proof the definition: The most damaging and subtle bugs arise during the designing of a…

  • Plan to Throw One Away

    Plan to Throw One Away

    In most of the projects, the first system built is barely usable, either it is too slow, clunky and/or too bulky. Once…

  • The Documentary Hypothesis

    The Documentary Hypothesis

    Why does everyone hate documentation and yet lays so much emphasis on it? This is the second chapter in this book that…

    2 条评论
  • The Tower of Babel

    The Tower of Babel

    This story takes place after the great floods when Noah’s ark saved a group of people to continue humanity. After…

  • Pass The Word

    Pass The Word

    How can a group of 10 designers maintain the conceptual integrity of the system which a team of 1000 is building?…

  • The Second System Effect

    The Second System Effect

    Scenario: You design your first system. You estimate the work against a budget using some estimation technique.

  • Aristocracy, Democracy & System Design

    Aristocracy, Democracy & System Design

    What is your preferred implementation strategy, a complex system with more functionality or a simple system with less…

  • The Surgical Team

    The Surgical Team

    The Pareto principle states that 80% of the work is done by 20% of the team. And every manager wants to staff their…

    2 条评论

社区洞察

其他会员也浏览了