|
本帖最后由 lzz 于 2011-3-1 16:28 编辑
1. Test Estimation Principles
The test estimation is different from other project estimations, because the number of failures is not known in advance—though it can be estimated as well. The number of necessary iterations before the completion criteria are met is usually not known either. As a rule of thumb, at least three iterations must be reckoned with—one is definitely not enough, unless the completion criterion is a simple execution of all test cases, and independent of the number of outstanding faults and coverage
The estimation must include:
1)Time to produce incident registrations
2)Possible time to wait for fault analysis
3)Possible time to wait for fault correction
4)Time for retest and regression test (minimunm three interations!)
Experience in the testing business shows that 50% of the original number of faults remains after correction. These are distributed like this:
Remaining faults after correction 20%
Unveiled faults after correction 10%
New faults after correction 20%
These are general experience numbers. It's important that you collect your own metrics!
2. The Estimation Process
1). Define the purpose of the estimation—Is this estimation the first approach, for a proposal, or for detailed planning?
2). Plan the estimating task—Estimation is not a two-minute task; set sufficient time aside for it.
3). Write down the basis for the estimation—Here the scope and the size of the work are determined, and all factors that may influence
the estimates are registered. This includes factors related to the nature of the processes we are working by, the nature of the project
we are working in, the people we are working with, and any risks we are facing.
4). Break down the work—This is the work breakdown (i.e., the listing of all the tasks to estimate). Do this as well as possible in relation to
the purpose.
5). Estimate—Use more than one technique as appropriate.
6). Compare with reality and reestimate—This is the ongoing monitoring and control of how the work that we have estimated is actually going.
3. Estimation Techniques
1) FIA(finger in the air) or best guess
2) Experience-based estimation
3) Analogies and experts
4) Delphi technique
5) Three-point estimation (successive calculation)
6) Model-based estimation
7) Function points
8) Test points
9) Percentage distribution
10) Use cases
4.From Estimations to Plan and Back Again
The estimating does not stop with the preparation of the first schedule. Once the actual testing has started—from the first planning activities and onwards,we need to frequently monitor how realities correspond to the estimates.Based on the new information gathered through the monitoring, we must reestimate,when the deviations between estimates and reality get too large to stay in control. Only when all the testing activities are completed can we stop the monitoring and re-estimation.
5.Get Your Own Measurements
In order to get better estimates we need to collect actual data. The more empirical data we have, the better will the estimates be. In general we can say that (almost) any data is better than no data. From an organizational point of view it must be checked that all completed projects collect data, and the usage of these data must, of course, also be enforced. |
|