Test Estimation Lecture Notes
Overview
Test estimation is a crucial part of testing, often viewed as a sub-project within the larger project. Test estimation helps determine the time and effort required for various testing tasks and cycles.
Work Breakdown Structure (WBS)
- Begin with a Work Breakdown Structure (WBS) that outlines:
- Stages
- Activities
- Tasks and Subtasks
- Identify phases of the testing cycle:
- Planning and Control
- Analysis and Design
- Implementation and Execution
- Evaluating Exit Criteria and Reporting
- Test Closure Activity
- Break down activities and tasks within each phase.
- Estimate the time required for tasks and subtasks to complete the testing cycle.
Estimation Techniques
Consultative Approach
- Input from experts and individual contributors such as technology experts, business experts, and testers.
- Prepare the WBS collaboratively.
- Team discusses effort, duration, dependencies, and resource requirements.
- Bottom-up approach: Starts at the task/subtask level and sums up to higher levels.
- Used when previous project metrics are unavailable.
- Disadvantage: Relies on individual estimations.
Matrix-Based Approach
- Uses metrics from past, similar projects for estimation.
- Includes:
- Developer-to-tester ratios
- Project size and complexity comparison
- Average time to execute test cases
- Mathematical Models: Use past data to estimate current project efforts. Considers factors like the number of test cases, defects, and time taken for execution and retesting.
- Advantage: More reliable; based on historical data.
Factors Affecting Test Effort
Product Factors
- Documentation: Poor or insufficient documentation increases test effort.
- Complexity: More complex projects require more effort.
- Size: Larger projects require more effort.
Process Factors
- Availability of Tools: Availability reduces manual effort.
- Development and Test Environment: Ready environments reduce setup time.
- Process Maturity: Mature processes reduce overall effort.
People Factors
- Team Skills: Skill availability (e.g., automation) affects effort. More skilled teams require less effort.
- Team Relationships: Good relationships can enhance productivity.
Time Factors
- Overall time constraints and deadlines can affect the required test effort.
Test Results Factors
- Number of defects found: More defects increase retesting and fixing effort.
- Retesting failures: Frequent failures in retests lead to more effort.
- Requirement changes: Changes and rework add to test effort.
Conclusion
Proper test estimation involves structured planning and understanding both the project and team capabilities. Choose the appropriate estimation technique (Consultative or Matrix-Based) based on data availability and project characteristics. Be mindful of the various factors affecting test efforts and plan efficiently to manage resources and timelines.