27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Figure 1. An example to illustrate the process of CIA<br />

3.1 Setup<br />

We use the subject NanoXML 1 as our research object.<br />

NanoXML is a small XML parser for Java. We extracted<br />

four consecutive versions of NanoXML from its CV S<br />

repository for evaluation. There are about 26 classes, 245<br />

methods, and 7631 lines of code for NanoXML. During the<br />

evolution of these versions, there is a basic version (V 0)<br />

from which to start.<br />

The focus of our evaluation is on the accuracy of the CIA<br />

technique. The accuracy of the CIA is in terms of precision<br />

(P ) and recall (R). Precision is an inverse measure of<br />

false-positives while recall is an inverse measure of falsenegatives.<br />

They are widely used in an information retrieval<br />

scenario [2], defined as follows:<br />

P =<br />

|Estimated Impact Set|<br />

R =<br />

Here, Actual Impact Set is the set of methods which are<br />

really changed during versions evolution. This is obtained<br />

by comparing the changed methods between consecutive<br />

program versions. Estimated Impact Set is the set of methods<br />

estimated based on the change set using the CIA technique.<br />

As we can not obtain the information that which<br />

changed methods are pre-actively changed to cope with the<br />

change request and which changed methods are reactively<br />

changed to cope with the impacts induced by these changes,<br />

a statistical testing of our CIA technique with a variation of<br />

the percentage of the number of changed methods ranging<br />

from 10% to 50% of the total number of change methods is<br />

performed for each program transaction. In the study, the<br />

average number of the methods in the change set for each<br />

program transaction (i.e., V i − >V i+1 ) is shown in the first<br />

column in Table 1.<br />

3.2 Results<br />

|Actual Impact Set ∩ Estimated Impact Set|<br />

|Actual Impact Set ∩ Estimated Impact Set|<br />

|Actual Impact Set|<br />

During the process of the evaluation, we should first find<br />

appropriate values for the threshold ɛ and θ. For space limi-<br />

1 http://nanoxml.sourceforge.net/orig<br />

tation, we only provide some results with high quality here.<br />

More details of the preliminary evaluation results are available<br />

online 2 . Based on the empirical results, the precision<br />

and recall of both IIS and FIS are reasonable and better<br />

with the range of ɛ =2, 3, 4, 5, θ =0.2, 0.3, 0.4, 0.5. So the<br />

experimental results only show the precision and recall of<br />

these threshold ranges, as shown in Table 1. In addition, for<br />

comparison, we also present the precision and recall of the<br />

impact set computed based on traditional call graph based<br />

CIA technique (TCG) [3]. In the following, we discuss the<br />

data collected from the case study.<br />

First, we see whether different threshold values have impact<br />

on the accuracy of our CIA. In Table 1, the third column<br />

shows different ɛ values. The threshold ɛ indicates the<br />

cohesion of the relationship among the methods and is used<br />

to control the precision of the initial impact set. From this<br />

table, we see that in most cases, with the increase of the ɛ<br />

values, the recall of both the IIS and FISis also increased,<br />

but their precision values are decreased. From these results,<br />

we see that the FIS relies on the IIS, i.e., if the IIS<br />

is better, the FIS is better. Thus, the ɛ threshold has impact<br />

on both the IIS and FIS generated by our CIA technique.<br />

Then, we see the impact of the θ threshold on our<br />

CIA technique. This threshold relies on the quality of the<br />

IIS, and is used to indicate the possibility of the methods<br />

potentially affected by the IIS. As Table 1 shows, with<br />

the increase of the θ values, the precision of the FIS is also<br />

increased, but the recall is decreased. For example, for<br />

transaction V 0− >V1, in case of ɛ =3, when θ =0.2, the<br />

precision and recall of FIS is 0.51 and 0.84, respectively.<br />

When θ =0.3, its precision is increased to 0.57, but its recall<br />

is decreased to 0.79. With the increase of θ values, the<br />

same phenomenon occurs. So the effectiveness of the CIA<br />

technique is also affected by the θ threshold. In addition,<br />

we see an interesting phenomenon in Table 1, i.e., for different<br />

transactions of the versions evolution, the precision<br />

and recall of the impact sets with the same ɛ and θ threshold<br />

value are different. For example, the precision and recall for<br />

2 http://ise.seu.edu.cn/people/XiaobingSun/seke<strong>2012</strong>.xls<br />

10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!