Estimation techniques

Estimating how long it would take to get the job done is not easy, even travelling from point A to point B takes a lot of assumption and risks into consideration.

Whether it is ballpark estimation or otherwise you need to use some formal technique, different projects need different kind of estimation and we are going to look into few of them.

Lets do ballpark estimation for a website with static pages but requires login.

WBS(Work breakdown structure):-
In this approach work is broken down to lowest level possible. What remains at the bottom nodes is lost of task which when combined achieves the final goal.

In above we have broken down end result into tasks and estimated tasks at various levels, with above in place we now know how many man days are required from various people and plan accordingly.

Having an estimate ready helps in better resource and release planning.

Its not always possible is recommended to do collaborative estimation(from different teams involved Dev/Test/Management)

PERT(Three point estimation):-
 PERT is estimation technique where we consider 3 estimates, we time required in best case/likely/worst case.

More the difference between worst and best more is the risk, to understand this let us estimate development part from WBS.


From the above we know that estimating page creation is big risk as difference between Best case and Worst case is too high, we may either do estimation as above or seek more clarification before estimating as it is more likely to fail given ambiguity.
Standard deviation is calculated to determine how good our estimation is formula for the same is as below:-

 SD = (Worst - Best)/6
 SD = (200 -30)/6 = 28.33 for Human Secret static page.

Function point:-
Function point is technique to estimate size of the application, in this technique requirement is broken into small sizable functions for estimation.

In function point we define complexity for each task, project team decides how many function points a  complexity would carry, they also determine how many hours for each function point which will be used to derive below matrix

(1-Simple,3-Medium,5-Complex)

Above figure gives complexity for each task we calculate total function points and calculate total hours required based on function point obtained and number of hours defined by the project for 1 function point. 1 FP = 6 hours in our case.

In addition to above 3 methods we always add hours to estimates in order to avoid contingency if any. Assumptions and risks are to be estimated and evaluated else it can hamper your delivery. Once you have estimates in do validation around it to ensure assumption and risk has been considered to possible extent.

Comments

Popular posts from this blog

RabbitMQ setup and cluster configuration on a windows network

Gitflow using source tree

Component analysis for application security

Analyse log using plug and play FileBeat

Introduction to Blazor

What Interview Is/Is Not for an interviewer

.NET MAUI and Blazor to create windows/web and mobile application (.NET 6.0)

Azure

WCAG Accessibility

Clean Architecture