Recently, someone asked me about the project estimated effort percentage that should be allocated to software testing. The essence of my reply is as follows:
There is no “magic” formula to estimate the effort percentage for software testing although some companies do use some sort of a formula to guide their estimation. Here are some tips to guide arriving at a percentage while keeping the uniqueness of the project in mind:
1. Consider the size of the project. Projects with a bigger size tend to be substantially (if not exponentially) more complex than small projects. Bigger projects may require several cycles of testing and bug fixing.
2. Consider the risks faced in the project:
a. Is the project in a domain that is new for the project team? There is the danger of mis-interpreting the requirements in such a case.
b. Are the developers (relatively) new to the technology?
c. Is the project dependent on third-party components, tools or services?
d Are the client, end-users and other stakeholders new to the team or not easily approachable to the team due to any reason?
3. Search historical data on similar projects.
4. Your company may have a (rough) formula to arrive at the effort percentage. Talk to other project managers and test managers to find out about any formula in vogue.
5. Consider the consequences of a variance from the estimated effort. Would it be possible to absorb an effort slippage internally (within the company) or externally (in agreement with the client)?
6. Consider the expectations of the stakeholders. A client may not agree to a high percentage. In such a case, clarify with the company management that effort overruns would be absorbed internally without issue.
I read somewhere before that many people allocate between 10% and 29% to software testing. However, use the tips above to guide you to your own estimate.