There are various methods for estimating testing effort.
Here are few testing efforts that we can discuss.
1) Work Break Down Structure:
This method is a bottom up estimation technique.
Here the testing activities are broken down to smallest possible tasks as is technically feasible. The efforts are estimated for each tasks. The efforts are then summed up to get total effort for the project.
PS: If any one has more details on this, please feel free to add more information.
2) Three point estimate:
In this type of estimation method, the estimator have to specify pessimistic, optimistic and most probable values for each tasks. Estimation is then done using the formulae:
{(Most probable value * 4) + (Pessimistic Value + Optimistic value)} / 6.
The efforts are then summed up to get total effort.
PS: If any one has more information on how pessimistic, optimistic and most probable values are decided, please let us know.
3) Task complexity based estimation
The tasks are classified into simple, complex and averege tasks. Efforts are then calculated for these tasks. These efforts are summed up to get final estimation effort.
4) Use case point method of estimation:
Consider these tables:
Unadjusted Actor Weights (UAW):
Actor No of UC Factor UAW
B2CUser 15 2 30
Subscribers 13 2 26
Admin Users 4 2 8
____________________________________
Total UAW= 64
____________________________________
Here, those who interact with the system are known as actors.
Depending on the complexity of the actor, factor are assosicated with each of them.
Number of use cases and factors are multiplied to get UAW i.e Unadjusted Actor Weights.
UAW's for each actor are summed up, to get total UAW.
Unadjusted Use Case Weights (UUCW):
UseCase Type Factor Reason
Login C 15 Server
Support Request VC 20 External System Query
User Creation A 10
Support Req Mgmt S 5 Code reuse
Fix Notification S 5 Trivial
_________________________________________________
Total UUCW = 55
_________________________________________________
Here S = Simple, A = Average, C = Complex and VC = Very Complex
Here, depending on the usecase, it is classified as simple, average, complex and very complex.
Factor's are associated with each use case depending on the complexity.
These factors are summed up to get the total UUCW i.e Unadjusted Use Case Weights.
Now
Unadjusted Use Case Point,
UUCP = UAW + UUCW
=> 64 + 55
=>119
Therfore UUCP = 119.
Now, we will calculate AUCP, i.e Adjusted Use Case Point
AUCP = UUCP * [0.65 + (0.01 * TEF)]
What is this TEF in the equation?
TEF is called as Technical Environment Factor.
We will now calculate this technical environment factor.
Consider the below table:
Factor Description Value Weight Extended Value
T1 Test Tools 5 3 15
T2 Doc Inputs 5 5 25
T3 Dev Env 2 1 2
T4 Test Env 3 1 3
T5 Test Ware Reuse 3 2 6
T6 Distributed System 4 4 16
T7 Performance Objectives 2 1 2
T8 Security Features 4 2 8
T9 Complex Interfacing 5 2 10
___________________________________________________________
Total Technical Environment Factor= 87
___________________________________________________________
Now,
AUCP = UUCP [0.65 + (0.01 * TEF)]
=> 119 [0.65 + (0.01 * 87)]
=> 180.88
Therefore AUCP = 180.88
There will be a conversion factor associated with each kind of testing. (I am not aware of conversion factor except for the testing, that has been used in this example. If any one is aware of conversion factors for different types of testing, please let me know)
Final Effort = AUCP * Conversion Factor
=> 180.88 * 13
=> 2351.44
Project complexity needs 15% of total effort and 10% spent in coordination and management activity.
Project complexity = 15% ( 2351.44) = 352.716
Coordination and management = 10% (2351.44) = 235.144
Therefore
Total effort= 2351.44 + 352.716 + 235.144
367 Man Days.
Therefore, Total effort = 367 Man Days