Hybrid DOM-Sensitive Change Impact Analysis for JavaScript

Hybrid DOM-Sensitive Change Impact Analysis for JavaScript
复制标题

JavaScript 的混合 DOM 敏感变更影响分析

DOI:
10.4230/lipics.ecoop.2015.321
复制
发表时间:
2015
期刊:
--
影响因子:
--
通讯作者:
K. Pattabiraman
K. Pattabiraman
中科院分区:
--
文献类型:
--
作者:
Saba Alimadadi;A. Mesbah;K. Pattabiraman

文献摘要

被引文献

相似文献

JavaScript已经成为最流行的编程语言之一。然而,由于诸如与DOM的无缝交互、事件驱动和动态函数调用以及异步客户端/服务器通信之类的特性,在JavaScript应用程序上执行更改影响分析是具有挑战性的。我们首先进行了一个实证研究的变化传播,其结果表明,DOM相关的和动态特性的JavaScript需要考虑在分析中,因为它们影响变化的影响传播。我们提出了一个DOM敏感的混合变化的影响分析技术,通过静态和动态分析相结合的JavaScript。所提出的方法采用了一种新的排名算法,用于指示影响集中每个实体的重要性。我们的方法是在一个名为Tochal的工具中实现的。我们的评估结果表明,Tochal提供了一个更完整的分析相比,静态或动态的方法。此外,通过工业控制实验,我们发现Tochal帮助开发人员将任务完成时间提高了78%,准确率提高了223%。
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. We first perform an empirical study of change propagation, the results of which 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 by improving their task completion duration by 78% and accuracy by 223%.