Business analysis estimation is a bit of a strange topic for most BAs.
We do study 8 to 10 techniques mentioned in various sources.
Most common techniques mentioned are:
Top-down estimation
Estimate efforts for components using hierarchical breakdown. Typically done when the budget is fixed.
Bottom-up estimation
Uses WBS to estimate deliverables, activities, tasks, and estimates from all involved stakeholders and rolls them up to get a total for all activities and tasks. It is easier to estimate smaller items than larger items, bottom-up estimating can produce MOST accurate and defensible estimates.
Parametric estimation
Uses a calibrated parametric model of element attributes. For example, if one use case takes 3 days to develop, it will take 60 days for developing 20 use cases. Estimate = Sum(fi*xi)
Rough order of magnitude (RoM) / Ballpark
Based on limited information, a high-level estimate with a very wide confidence interval. Typically based on history or expert judgment.
Rolling wave
Involves continual refinement of estimates. Estimate details for activities in the current iteration and extrapolate it for the entire scope of work. As the end of iteration approaches, estimates for the next iteration can be made and an initial estimate for all activities is refined.
Delphi estimation
Uses a combination of expert judgment and history. Include individual estimates, sharing estimates with experts and having several rounds until a consensus is reached.
PERT (Program Evaluation Review Technique)
Each component of estimate has 3 values:
• (M) Most likely estimate (3 days)
• (O) Optimistic or best-case scenario (2 days)
• (P) Pessimistic or worst-case scenario (7 days)
PERT estimate: (1 * Optimistic + 1 * Pessimistic + 4 * Most likely)/6 = (4*3+2+7)/6 = 3.5
Source: BABoK Version 3.0
However, when I look back at my own BA career and I ask many other BAs, most of us really seem clueless about BA estimation.
How is BA estimation different from development estimation?
BA essentially is a discovery process - you are not very sure what you will discover as you wade through the discovery process.
Development estimation happens on data which has reasonable clarity. Requirements are unlikely to fall into this category.
In many projects, most project managers even do not bother so much about BA estimation. The reason is possibly due to the fact that we run usually run short of development capacity, not BA capacity. One single BA can possibly provide enough requirements for 5 to 10 developers. So in many companies, especially agile projects, PM assigns 1 BA for 5 developers.
When I worked at Infosys, we followed a top-down approach where 15% of the overall project effort was assigned to BA. I have worked on short waterfall projects where an initial 2 to 3 weeks were allocated for BA work in a 6 month long projects.
Have you folks actually used other methods such as WBS?
WBS is probably good for development estimation than BA estimation.