DocumentCode :
647230
Title :
On the effect of program exploration on maintenance tasks
Author :
Soh, Zephyrin ; Khomh, Foutse ; Gueheneuc, Yann-Gael ; Antoniol, Giuliano ; Adams, Bram
Author_Institution :
DGIGL, Ecole Polytech. de Montreal, Montréal, QC, Canada
fYear :
2013
fDate :
14-17 Oct. 2013
Firstpage :
391
Lastpage :
400
Abstract :
When developers perform a maintenance task, they follow an exploration strategy (ES) that is characterised by how they navigate through the program entities. Studying ES can help to assess how developers understand a program and perform a change task. Various factors could influence how developers explore a program and the way in which they explore a program may affect their performance for a certain task. In this paper, we investigate the ES followed by developers during maintenance tasks and assess the impact of these ES on the duration and effort spent by developers on the tasks. We want to know if developers frequently revisit one (or a set) of program entities (referenced exploration), or if they visit program entities with almost the same frequency (unreferenced exploration) when performing a maintenance task. We mine 1,705 Mylyn interaction histories (IH) from four open-source projects (ECF, Mylyn, PDE, and Eclipse Platform) and perform a user study to verify if both referenced exploration (RE) and unreferenced exploration (UE) were followed by some developers. Using the Gini inequality index on the number of revisits of program entities, we automatically classify interaction histories as RE and UE and perform an empirical study to measure the effect of program exploration on the task duration and effort. We report that, although a UE may require more exploration effort than a RE, a UE is on average 12.30% less time consuming than a RE.
Keywords :
pattern classification; project management; public domain software; software maintenance; ECF; ES; Eclipse platform; Gini inequality index; IH; Mylyn; Mylyn interaction histories; PDE; RE; UE; exploration strategy; interaction histories classification; maintenance tasks; open-source projects; program entity; program exploration; referenced exploration; unreferenced exploration; History; Indexes; Interrupters; Java; Maintenance engineering; Manuals; Navigation; Exploration Strategies; Interaction Histories; Mylyn; Program Exploration; Software Maintenance;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Reverse Engineering (WCRE), 2013 20th Working Conference on
Conference_Location :
Koblenz
Type :
conf
DOI :
10.1109/WCRE.2013.6671314
Filename :
6671314
Link To Document :
بازگشت