This morning was one of those mornings again. I am sure that you will be able to relate to the following …
We are racing down Hans Strydom Drive (exceeding the speed limit as usual). The school is a mere 5 km away, yet I feel like a racehorse galloping towards the finish line. My heart is beating in my throat and my children are encouraging me to illegally overtake some cars in order to get them to school on time! But it doesn’t matter what speed I drive, ALL the traffic lights are RED! And why did the Traffic Department choose today of all days to fill in potholes that have been there for the past six months?
I believe that managers very often feel like racehorses in their daily attempts to deliver projects on time, with the least possible incidents. It is just as challenging to be able to estimate the testing effort of a project as it is to get your children to school on time during peak hour traffic. The only difference is that if you know of all the factors that might influence your testing effort the test estimation is so much easier! (Keep the red traffic lights in mind!)
Test Point Analysis (TPA®) might be the answer to your testing estimation challenges. TPA® is a technique that you can apply to estimate high level tests (system testing and user acceptance testing). The estimated effort (hours) can include all the effort for completing all the phases of testing (preparation, specification, execution and completion). It can also include the management and control portion by a test manager.
To start a TPA® you first need to do a function point count – or use COSMIC-FFP b – that will indicate the functional size of the project to be tested. The functional size will be used as input to the TPA®. The function point count is derived by a technique called Function Point Analysis (FPA). The International Function Point User Group (IFPUG, 1994) has developed an internationally accepted function point standard. The function point count will include the effort for low-level testing, e.g. unit and integration testing.
COSMIC-FFP (Common Software Measurement International Consortium – Full Function Points) is a method of sizing the functional requirements of software and has been approved as an International Standard (ISO/IEC 19761:2003). Both FPA and COSMIC-FFP are complete topics and, unfortunately, we will not be able to discuss them in this article (please see additional resources at the end of this article).
The next important step to take is to identify all the quality characteristics and to identify the importance of the quality characteristics. This information

Figure 1 – Schematic presentation of the high level process for a TPA® (adapted from chapter 7 ‘Test Point Analysis’, The Testing Practitioner, page 96).
[If COSMIC-FFP is used to size the system, read Cosmic Functional Size Units (Cfsu) instead of Function Points (FP)]
A Dynamic Test Point is assigned to each individual function of the system to be tested. There are three factors that play a role in calculating the Dynamic Test Points:
| Df = (Ue + Uy + I + C)/20 * U |
Equation 1: Calculating the function dependant factors (Df)
(The Testing Practitioner, page 102)
| Quality Characteristic | Weighing factor | Rating | ||||
|---|---|---|---|---|---|---|
| 0 Not Important |
3 Relatively Important |
4 Normal Importance |
5 Very Important |
6 Extremely important |
||
| Functionality | 0.75 | |||||
| Security | 0.05 | |||||
| Usability | 0.10 | |||||
| Efficiency | 0.10 | |||||
For each dynamic quality characteristic that will be tested implicitly a value of 0.02 is added to the Dynamic Test Point
|
TPf = FPf * Df * Qd Where: |
Equation 2: Formula for Calculating the Dynamic Test Point (TPf)
(The Testing Practitioner, page105)
Quality characteristics can be tested statically by means of a checklist. A value of 16 is added to the Static Test Point Count (Qs) for each checklist that the test team uses to check certain qualities.
The information that we have now is:
| TP = sum total (TPf) + (FP * Qs) / 500 |
Equation 3 : Formula for calculating the total number of test points for the system (TP)
(The Testing Practitioner, page 106)
As the function point count indicates the size of the project under construction, the total number of test points indicates the size of the primary test work that needs to be done.
The skills factor indicates the level of experience that the testers and other test team members have. The less experienced the testers are, and the less product knowledge they have, the more time they will need to complete the testing. That is why it is so important to have a training plan to reduce the effort wasted due to insufficient skills. These skills include product knowledge, knowledge of tools that will be used during testing, testing knowledge, and analytical skills.
The skills factor has a value between 0.7 and 2.0. If the test team is highly skilled the skills factor will be 0.7 while a team with insufficient skills will have a value of 2.
According to TPA® the following environmental factors might affect the testing effort:
The information that we have now is
| PT = TP * S * E |
Equation 4 : Formula for calculating the primary test hours
(The Testing Practitioner, page 109)
The primary test hours indicates the effort for completing the primary testing activities: including specification, design, execution and completion. The primary test hours exclude management and control of the testing activities.
The bigger the team the more effort it will take to manage the project. When sizing the team, also keep the contractors, the part time testers and the test manager in mind.
The more tools are used to automate the management and planning process the less effort is necessary.
The information that we have now is
If we know the team size factor and the planning and control factor we are able to calculate the test management allowance.
| TM = PT * (T + C)/100 |
Equation 5 : Formula for calculating the allowance for test management (TM)
(adapted from The Testing Practitioner, page 110)
| TH = PT + TM |
Equation 6 : Formula for calculating the total number of test hours (TH)
(adapted from The Testing Practitioner, page 110)
The green light indicates factors that have a low risk on a project; the amber light indicates factors that have average risk and the red light indicates possible risk areas. Can you see the value of knowing all the red traffic lights on the estimation road? I am sure that the next time you are waiting at a red traffic light you will think of all the delays and time wasted if you don’t know exactly what to look for when you estimate for a project. Test point analysis, together with function point analysis, provides a sound basis for testing estimation… good luck with your next estimation attempt!
Corné Kruger
cornek@testdata.co.za
® TPA® is a registered trademark of Sogeti Nederland B.V.
Bibliography:
Additional Resources: