Does anyone use a rule of thumb basis to estimate the effort required for testing as a percentage of the effort required for development? And if so what percentage do you use?
Statistically speaking, testing occupies 20 percent of the overall development time for a single-component application, 20 to 30 percent for a two-component application and 30 to 35 percent for an application with GUI. For a distributed application with GUI the number can be as high as 35 to 50 percent.
Once we have estimated the SDE, Software Testing Effort (STE) is estimated as 40 to 50 percent of the development .
This estimation technique consists of breaking down the project into basic component tasks. Then, assign one of three given time estimations for each component: Optimistic (a), Pessimistic (b), and Realistic (r). Then, to determine the time estimate (E), use this formula: E = (A + 4xR + B)/6.
From my experience, 25% effort is spent on Analysis; 50% for Design, Development and Unit Test; remaining 25% for testing. Most projects will fit within a +/-10% variance of this rule of thumb depending on the nature of the project, knowledge of resources, quality of inputs & outputs, etc. One can add a project management overhead within these percentages or as an overhead on top within a 10-15% range.
The Google Testing Blog discussed this problem recently:
So a naive answer is that writing test carries a 10% tax. But, we pay taxes in order to get something in return.
(snip)
These benefits translate to real value today as well as tomorrow. I write tests, because the additional benefits I get more than offset the additional cost of 10%. Even if I don't include the long term benefits, the value I get from test today are well worth it. I am faster in developing code with test. How much, well that depends on the complexity of the code. The more complex the thing you are trying to build is (more ifs/loops/dependencies) the greater the benefit of tests are.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With