What is Estimation?
We do estimation everyday! For example, going from home to office, going for interview tomorrow, or when we build a house we estimate how long it will take to be built etc. We do estimations about time, cost, effort, duration, resources and other things. For Projects, we do project estimations and for testing we do test estimations. Without proper estimations, projects become riskier. They have cost overrun, schedule overrun, low margins, etcWhat we do in Estimation?
So when we do estimation, we quantify the outcome. Rather than having a rough idea about some activity, its better to quantify it. Quantify the cost, time, resources.People involved in estimation:
Project Manager :- takes care of the overall estimation activity.
Seniors :- provide input on assumptions, risks involved, constraints.
Program Management :- verifies and consolidates the estimation data at organizational level.
Senior Management :- approves the project at organizational level.
Customers :- approves the estimates provided by you. They also provide inputs and requirements for which estimates are provided.
Uncertainty in Estimation!
Estimation is very much associative with uncertainty. This uncertainty is high during initial phase of project (when requirements are not clear or freezed). So initially we may estimate that a project will run for 50 weeks OR 10 weeks, whereas the actual time for its execution/completion actually takes 25 weeks.Next, when requirements get freezed, and we define the scope of project, even then the Re-estimated data has 50% of uncertainty in it.
So, when do we do Estimation?
Estimation spans the entire project life cycle. At the start of a project, we can prepare for estimation. This means to collect historical data for similar projects, requirements breakdown, brainstorming, estimation approach. Next we actually start preparing estimates. Then, once the project kicks off, we do compare the estimated with the actual at different milestones during project execution. And if required, re-estimation is also done. For example, if requirements change, scope changes, project characteristics have changed. Once the project is closed, we gather data from the project to be used as historical data with in the organization and that helps in improving the estimation process.Estimation Techniques?
Bottom Up Strategy:-Prepare a Work Breakdown Structure, define the tasks to be performed in an activity, provide effort to do each task at a granular level. That gives you the estimates. You estimate the duration, dependencies and resources. Here team members, seniors, experts collectively give estimates. This strategy is good for New projects, and for projects where you do not have any historical data.
Top Down Strategy :-
Use your experience, or historical data to provide estimates for projects. Here project size and complexity also plays a vital role and we take the information from past experience to draw out estimates. Average effort per test case in the past projects is also taken into account.
In majority, most of the projects take top down approach for test estimation.
To be Continued....

No comments:
Post a Comment