z-logo
open-access-imgOpen Access
A Content Assist based Approach for Providing Rationale of Method Change for Object Oriented Programming
Author(s) -
Amit S. Ami,
Shariful Islam
Publication year - 2015
Publication title -
international journal of information engineering and electronic business
Language(s) - English
Resource type - Journals
eISSN - 2074-9023
pISSN - 2074-9031
DOI - 10.5815/ijieeb.2015.01.07
Subject(s) - computer science , software engineering , task (project management) , process (computing) , code (set theory) , granularity , source code , software development , software , eclipse , code review , object (grammar) , software maintenance , focus (optics) , programming language , software quality , systems engineering , artificial intelligence , physics , set (abstract data type) , optics , astronomy , engineering
Software engineering requires modification of code during development and maintenance phase. During modification, a difficult task is to understand rationale of changed code. Present Integrated Development Environments (IDEs) attempt to help this by providing features integrated with different types of repositories. However, these features still consume developer's time as he has to switch from editor to another window for this purpose. Moreover, these features focus on elements available in present version of code, thus increasing the difficulty of finding rationale of an element removed or modified earlier. Leveraging different sources for providing information through code completion menus has been shown to be valuable, even when compared to standalone counterparts offering similar functionalities in literature. Literature also shows that it is one of the most used features for consuming information within IDE. Based on that, we prepare an Eclipse plug-in and a framework that allows providing reason of code change, at method granularity, across versions through a new code completion menu in IDE. These allow a software engineer to gain insight about rationale of removed or modified methods which are otherwise not available in present version of code. Professional software engineers participated in our empirical evaluation process and we observed that more than 80% participants considered this to be a useful approach for saving time and effort to understand rationale of method change. Later, based on their feedback, the plug-in and framework is modified to incorporate chronological factors. We perform quasi experimental evaluation with professional software engineers. It is found that time required to find rationale of method change is reduced to at least half compared to usual amount of time required for all the software engineers who participated in the quantitative evaluation. Index Terms—Software engineering, Mining software repositories, experimental software engineering.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom