Understanding asynchronous interactions in full-stack JavaScript
Autor: | Karthik Pattabiraman, Ali Mesbah, Saba Alimadadi |
---|---|
Rok vydání: | 2016 |
Předmět: |
Unobtrusive JavaScript
Computer science Programming language Program comprehension 020207 software engineering 02 engineering and technology JavaScript computer.software_genre Asynchronous communication 020204 information systems Server 0202 electrical engineering electronic engineering information engineering Callback computer Server-side computer.programming_language |
Zdroj: | ICSE |
DOI: | 10.1145/2884781.2884864 |
Popis: | JavaScript has become one of the most popular languages in practice. Developers now use JavaScript not only for the client-side but also for server-side programming, leading to "full-stack" applications written entirely in JavaScript. Understanding such applications is challenging for developers, due to the temporal and implicit relations of asynchronous and event-driven entities spread over the client and server side. We propose a technique for capturing a behavioural model of full-stack JavaScript applications' execution. The model is temporal and context-sensitive to accommodate asynchronous events, as well as the scheduling and execution of lifelines of callbacks. We present a visualization of the model to facilitate program understanding for developers. We implement our approach in a tool, called Sahand, and evaluate it through a controlled experiment. The results show that Sahand improves developers' performance in completing program comprehension tasks by increasing their accuracy by a factor of three. |
Databáze: | OpenAIRE |
Externí odkaz: |