Information Technology Reference
In-Depth Information
...
TPA-Based Effort Estimation Implementation
You will find many techniques from universities, research organizations, training
institutes, and other sources, but mind you, they are more of a theoretical nature
and may not have practical significance. You may not be able to practice them in
your on-the-job assignments, as they may lack something that constitutes the dif-
ference between theory and practice.
Effort estimation for software test projects is difficult because test projects com-
prise many different kinds of tasks. You have functional testing, automation testing,
automation scripts, performance testing, security testing, compatibility testing, and
so on. The approach for estimating effort for each of these tasks is different.
Many organizations and individuals have made efforts to create a standard
approach for making effort estimation for these tasks. But no single approach has
ever become a standard model. That is why there are so many estimation techniques
out there and organizations use their own method of estimation depending on their
needs and convenience.
However, one practical technique that is being used by many software services
companies is presented here. Basically this approach is based on the TPA model.
First, identify each activity or task in the project. Then, estimate the effort for each
of these tasks. Finally, sum up effort estimates for these tasks. This will be the total
effort required for the entire project.
Test effort may differ from one project to another; nevertheless, the same tech-
nique can be used for effort estimation.
Here are the steps for estimation:
1. Identify different stages of the test life cycle
2. Identify all the activities for each test life cycle
3. Estimate size for each phase
4. Estimate effort for each phase
5. Estimate effort for regression cycle
6. Compute total testing effort
4.3.1 Identify Test Life Cycle Stages
Of course the testing effort for a project can be conveniently divided into different
stages. With process standardization over the years, the following software testing
life cycle stages are the most commonly used these days:
1. Test requirement
2. Test case design
3. Test script development
4. Test case execution
5. Test result analysis and documentation
Search WWH ::




Custom Search