“Augur: Incorporating Hidden Dependencies and Variable Granularity in Change Impact Analysis” – SCAM 2016

The paper “Augur: Incorporating Hidden Dependencies and Variable Granularity in Change Impact Analysis” to appear in the proceedings of the 16th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM), co-located with International Conference on Software Maintenance and Evolution (ICSME) conference, to be held on 2-3 Oct 2016 in Raleigh, NC, U.S.A.

Abstract

Software change impact analysis (CIA) methods enable developers to understand potential impacts of a code change so that the change can be executed confidently without affecting reliability of the software. However, existing CIA approaches do not support CIA for all source code granularities. Additionally, they lack support for inter-granular change impact queries and hidden dependencies. This paper introduces Augur, an automated static code analysis-based CIA approach that addresses these shortcomings. Augur infers and maintains semantic and environment dependencies along with data and control dependencies between source code entities across granularities. Additionally, Augur uses Change Impact Query Language, a novel query language for impact analysis proposed in this paper, to support inter-granular CIA queries with batch querying feature. Augur has been realized as a Visual Studio extension called Augur-Tool. We have conducted quantitative evaluation
on two open-source and two industrial projects to assess the accuracy of the tool. Results from the evaluation indicate that Augur provides CIA with high accuracy (average precision 55% and average recall 85%).

Authors

Tushar Sharma and Girish Suryanarayana

Preprint

You may download the preprint of the paper from here.