Tải bản đầy đủ (.pdf) (57 trang)

Lecture Software process improvement: Lesson 43A - Dr. Ghulam Ahmad Farrukh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (242.63 KB, 57 trang )

Process Metrics
Lecture # 43­A

1


Process Quality Metrics

2


Process Metrics
• Process metrics are those that can be used 
for improving the software development 
and maintenance processes
• Examples include the effectiveness of 
defect removal during development, the 
pattern of testing defect arrival, and the 
response time of the fix process
3


• Compared to end­product quality metrics, 
process quality metrics are less formally 
defined, and their practices vary greatly 
among software developers
• Some organizations pay little attention to 
process quality metrics, while others have 
well­established software metrics programs 
that cover various parameters in each phase 
of the development cycle


4


Process Metrics

5


Process Metrics






Defect density
Defect arrival rate
Test effectiveness
Defects by phase
Defect removal effectiveness

6


Defect Density ­ 1
• Software defect density never follows the 
uniform distribution. It is an indication of 
defect injection in code or other software 
products
• If a piece of code or a product has higher 

testing defects, either it is due to more 
effective testing or it is because of higher 
latent defects in the code
7


• It is also possible that the more defects 
found during testing, the more defects will 
be found later

8


Defect Density

9


Defect Density
• Defects per KLOC (or other denominator)

10


• This simple metric of defect density is a 
good indicator of quality while the software 
is still under testing
• It is especially useful to monitor subsequent 
releases of the same product within the 
same development organization

• Therefore, release­to­release comparisons 
are not contaminated by other extraneous 
factors
11


Defect Arrival Rate

12


Defect Arrival Rate
• It is the number of defects found during 
testing measured at regular intervals over 
some period of time

13


Defect Arrival Rate – 1 
• Rather than a single value, a set of values is 
associated with this metric
• When plotted on a graph, the data may rise, 
indicating a positive defect arrival rate; it 
may stay flat, indicating a constant defect 
arrival rate; or decrease, indicating a 
negative defect arrival rate

14



Defect Arrival Rate – 2
• Interpretation of the results of this metric 
can be very difficult
• Intuitively, one might interpret a negative 
defect arrival rate to indicate that the 
product is improving since the number of 
new defects found is declining over time
• To validate this interpretation, you must 
eliminate certain possible causes for the 
decline

15


Defect Arrival Rate – 3
• For example, it could be that test 
effectiveness is declining over time
• In other words, the tests may only be 
effective at uncovering certain types of 
problems. Once those problems have been 
found, the tests are no longer effective

16


Defect Arrival Rate – 4
• Another possibility is that the test 
organization is understaffed and 
consequently is unable to adequately test 

the product between measurement intervals
• They focus their efforts during the first 
interval on performing stress tests that 
expose many problems, followed by 
executing system tests during the next 
interval where fewer problems are 
17
uncovered


Test Effectiveness
• To measure test effectiveness, take the 
number of defects found by formal tests and 
divide by the total number of formal tests
• TE = Dn / Tn

18


Test Effectiveness ­ 2
• When calculated at regular intervals and 
plotted, test effectiveness can be observed 
over some period of time
• If the graph rises over time, test 
effectiveness may be improving. On the 
other hand, if the graph is falling over time, 
test effectiveness may be waning
19



Defects by Phase

20


Defects by Phase
• The defects by phase metric is a variation of 
the defect arrival rate metric
• At the conclusion of each discreet phase of 
the development process, a count of the 
new defects is taken and plotted to observe 
a trend

21


Defects by Phase ­ 1
• It is much less expensive in terms of 
resources and reputation to eliminate 
defects early instead of fix late
• At the conclusion of each discreet phase of 
the development process, graph is plotted to 
observe a trend

22


Defects by Phase ­ 2
• If the graph appears to be rising, you might 
infer that the methods used for defect 

detection and removal during the earlier 
phases are not effective since the rate at 
which new defects are being discovered is 
increasing
• On the other hand, if the graph appears to 
be falling, you might conclude that early 
defect detection and removal is effective 23


Defects by Phase ­ 3
• Explain the snowball effect

24


Defect Removal Effectiveness

25


×