Mastering Success: Predicting Resources, Time, and Costs estimates!

Mastering Success: Predicting Resources, Time, and Costs estimates!

It is necessary to have at least a rough estimation of total costs for testing activities as well as test completion dates. Test estimation is used to estimate the effort, cost and timelines for testing. Some teams use their past experiences and also apply judgments by various informal techniques such as 4:1 ratio -

4:1 ratio implies that for every 4 hours of development work, there is typically 1 hour of testing or quality assurance work.

These are informal estimation guideline and may vary based on the complexity of the project, the quality requirements, the experience of the team, and the specific context of the software being developed.

Accurately estimating testing effort and timeline helps in planning the project better.

The test estimates must:

  • Include inputs from experienced testers
  • Have been approved by or have consensus of all participants
  • Furnish quantified values of costs to be incurred, resources to be needed, tasks to be performed and people to be involved
  • Provide cost, time and effort estimation for every activity

Best practices in project management for estimating effort are well established. Test estimation uses the same best practices in test activities required for a project.

It should include all testing activities given below:

Management teams are usually most interested in test execution timelines because software testing is usually on the critical path of a project plan.

But estimation of test execution is not easy to produce as well as doubtful, if software quality is low or worse, unknown.

The estimates are also affected by how familiar the estimator is with the system.

How many test cases will be required during testing is usually guesstimated. But this works if product has less defects.

So, all assumptions used in the estimation process must be documented.

Factors affecting Test Estimation

Many factors can affect cost incurred, effort required and duration of testing. Estimates must be made by considering all possible factors, some of which are:

  • Expected quality level of the product
  • Size of system that must be tested
  • Statistics from earlier testing projects, enhanced with standard data from test projects of other organizations or industry standards
  • Different processes like testing strategy, product lifecycle, precision of project estimates, etc.
  • Infrastructure like testing tools, data and environments, project documents, work products from testing that may be reused
  • People like managers, technical and non-technical leaders, commitment level of senior management, project team skill and stability, correlation with other teams, domain knowledge, etc.
  • Degree of complication in processes, technology used and stakeholder number and involvement
  • Need for skill enhancement or infrastructure upgradation
  • Requirement of new processes, tools or techniques to be developed
  • Requirement of procuring customized hardware or large quantities of testware
  • Compliance with new documentation standards
  • Time sensitive test data

While making estimates, Test Manager should take into consideration the quality and stability of software that will be delivered to them for testing.

If best practices like continuous integration and unit test automation are used in the development phase, it will result in the reduction of 50% of the defects before it goes for testing.

Agile methodology also has been reported to produce high quality product for testing by removing defects.

Test Estimation Techniques

Estimates owner may take a top-down or bottom-up approach to test estimation using one or more of these methods:

  1. Prior experience and knowledgeable guesses
  2. Work Breakdown Structure (WBS)
  3. Holding multiple sessions like Wide Band Delphi on estimation
  4. Organizational standards and adopted best practices
  5. Ratio of number of project staff to number of testers
  6. Historical data regarding cost, effort, duration, regression cycles, etc. from previous testing projects
  7. Industry benchmarks and models like function points, etc.

Once an estimation is done, it must be reported to the management, together with supporting data for arriving at those estimates.

There might be some discussions after this, resulting in estimate revisions.

In an ideal scenario, the final estimate should balance the expectations of both the organization and the project team in terms of product quality, project schedules, budgets and product features.

It must be remembered that any estimate is prepared on the availability of data at that instance. In the preliminary stages of the project, the amount of available information would be quite less.

If more relevant information is received as the project progresses, the estimates must be updated to keep them correct.

You can review the explanation for estimation techniques in software testing given in the Foundation level for testers against the one provided above for Test Managers, to see how they differ in the knowledge expected from each level.


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

Muhammad Farhan的更多文章

社区洞察

其他会员也浏览了