Metrics based approach as it indicates from its name depends on the data accimulated over time from the use and development of the software. It is not complete without an expert based approach as they help each others to evaluate best possible test results.
Expert based approach depents on the testing team and their expertese. Having multi-talented and well experienced test experts in the team yield most test products possible. Do not forget that there is no superiority of one approach to another. They are like two feet to move together to walk properly.
According to ISTQB Foundation, there are two main approaches to test estimation in software testing: the metrics-based approach and the expert-based approach. Let’s explore each of these approaches, along with examples and use cases.
Metrics-Based Approach
The metrics-based approach uses historical data and quantitative measures to estimate testing efforts.
Analogy: Cooking from a Recipe
Think of this approach as following a detailed recipe. Just as a recipe specifies exact quantities of ingredients and cooking times based on past experiences, the metrics-based approach uses data from previous projects to estimate testing efforts.
Examples:
- Using the number of test cases executed per day in past projects to estimate how long it will take to run a new set of tests
- Calculating defect density (defects per line of code) from previous projects to predict the number of defects in a new project
Use Cases:
- Large organizations with extensive historical data
- Projects similar to ones completed in the past
- When objective, data-driven estimates are required for budgeting or resource allocation
Expert-Based Approach
The expert-based approach relies on the judgment and experience of testing professionals to estimate testing efforts.
Analogy: Wine Tasting
This approach is like a sommelier tasting wine. Just as an experienced wine expert can assess a wine’s quality based on their knowledge and experience, testing experts can estimate testing efforts based on their understanding of the project and past experiences.
Examples:
- A senior tester estimating how long it will take to test a new feature based on their experience with similar features
- A test manager predicting the number of testers needed for a project based on their understanding of the project’s complexity
Use Cases:
- New or unique projects where historical data isn’t available
- Small teams or organizations without extensive metrics
- When quick estimates are needed without time for detailed analysis
Comparing the Approaches
Aspect | Metrics-Based | Expert-Based |
---|---|---|
Basis | Historical data | Personal experience |
Accuracy | Generally more accurate for similar projects | Can be more accurate for unique projects |
Flexibility | Less flexible, relies on existing data | More flexible, can adapt to new situations |
Time to produce | Can be time-consuming to gather and analyze data | Can be quicker, especially for experienced professionals |
Objectivity | More objective | More subjective |
Combining the Approaches
In practice, many organizations use a combination of both approaches for more accurate estimations. For example:
- Use metrics-based approach to get an initial estimate
- Have experts review and adjust the estimate based on their knowledge of the specific project
- Compare the metrics-based and expert-based estimates to identify and resolve any significant discrepancies
By combining these approaches, teams can leverage both historical data and expert judgment to create more reliable test estimates.Remember, regardless of the approach used, test estimation is an ongoing process. As the project progresses and more information becomes available, estimates should be regularly reviewed and adjusted to ensure they remain accurate and useful for project planning and management.