arrow
返回

Understanding JavaScript Event-Based Interactions with Clematis

delete2016-05-16
delete4
PRE
AI
S
Saba Alimadadi *
S
Sheldon Sequeira
A
Ali Mesbah
K
Karthik Pattabiraman
DOI:10.1145/2876441delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Web applications have become one of the fastest-growing types of software systems today. Despite their popularity, understanding the behavior of modern web applications is still a challenging endeavor for developers during development and maintenance tasks. The challenges mainly stem from the dynamic, event-driven, and asynchronous nature of the JavaScript language. We propose a generic technique for capturing low-level event-based interactions in a web application and mapping those to a higher-level behavioral model. This model is then transformed into an interactive visualization, representing episodes of triggered causal and temporal events, related JavaScript code executions, and their impact on the dynamic DOM state. Our approach, implemented in a tool called CLEMATIS, allows developers to easily understand the complex dynamic behavior of their application at three different semantic levels of granularity. Furthermore, CLEMATIS helps developers bridge the gap between test cases and program code by localizing the fault related to a test assertion. The results of our industrial controlled experiment show that CLEMATIS is capable of improving the comprehension task accuracy by 157% while reducing the task completion time by 47%. A follow-up experiment reveals that CLEMATIS improves the fault localization accuracy of developers by a factor of two.
Keyword:
Design
Algorithms
Experimentation
Program comprehension
event-based interactions
JavaScript
web applications
fault localization
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

A
ACM Transactions on Software Engineering and Methodology
IF:
6.2
论文数:
1.2K
被引数:
3.4K

机构

U
University of British Columbia
学者数:
7.0W
论文数: 6.1W
被引数: 8.6W