Hybrid DOM-sensitive Change Impact Analysis for JavaScript

Saba Alimadadi, Ali Mesbah and Karthik Pattabiraman, To appear in the European Conference on Object Oriented Programming (ECOOP), 2015. (Acceptance Rate: 22.8%) [ PDF | Talk ]

Abstract: JavaScript has grown to be among the most popular programming languages.
However, performing change impact analysis on JavaScript applications is challenging due to features such as the seamless interplay with the DOM, event-driven and dynamic function calls, and asynchronous client/server communication. The results of our motivational empirical study show that the DOM-related and dynamic features of JavaScript need to be taken into consideration in the analysis since they affect change impact propagation. We propose a DOM-sensitive hybrid change impact analysis technique for JavaScript through a combination of static and dynamic analysis. The proposed approach incorporates a novel ranking algorithm for indicating the importance of each entity in the impact set. Our approach is implemented in a tool called TOCHAL. The results of our evaluation reveal that TOCHAL provides a more complete analysis compared to static or dynamic methods. Moreover, through an industrial controlled experiment, we find that TOCHAL helps developers to improve their maintenance task completion duration by 44% and accuracy by 70%.

This entry was posted in papers and tagged , , , , . Bookmark the permalink.