Feedback-directed instrumentation for deployed JavaScript applications

Magnus Madsen, Frank Tip, Esben Sparre Andreasen, Koushik Sen, Anders Møller

Research output: Contribution to book/anthology/report/proceedingArticle in proceedingsResearchpeer-review

16 Citations (Scopus)
275 Downloads (Pure)

Abstract

Many bugs in JavaScript applications manifest themselves as objects that have incorrect property values when a failure occurs. For this type of error, stack traces and log files are often insuffcient for diagnosing problems. In such cases, it is helpful for developers to know the control ow path from the creation of an object to a crashing statement. Such crash paths are useful for understanding where the object originated and whether any properties of the object were corrupted since its creation. We present a feedback-directed instrumentation technique for computing crash paths that allows the instrumentation overhead to be distributed over a crowd of users and to re-duce it for users who do not encounter the crash. We imple-mented our technique in a tool, Crowdie, and evaluated it on 10 real-world issues for which error messages and stack traces are insuffcient to isolate the problem. Our results show that feedback-directed instrumentation requires 5% to 25% of the program to be instrumented, that the same crash must be observed 3 to 10 times to discover the crash path, and that feedback-directed instrumentation typically slows down execution by a factor 2x{9x compared to 8x{90x for an approach where applications are fully instrumented.

Original languageEnglish
Title of host publicationProceedings - 2016 IEEE/ACM 38th IEEE International Conference on Software Engineering Companion, ICSE 2016 : ICSE 2016
Number of pages12
Place of publicationNew York, NY, USA
PublisherAssociation for Computing Machinery
Publication date2016
Pages899-910
ISBN (Electronic)978-1-4503-3900-1
DOIs
Publication statusPublished - 2016
EventThe 38th International Conference on Software Engineering - Austin, United States
Duration: 14 May 201622 May 2016
Conference number: 38
http://2016.icse.cs.txstate.edu/

Conference

ConferenceThe 38th International Conference on Software Engineering
Number38
Country/TerritoryUnited States
CityAustin
Period14/05/201622/05/2016
Internet address

Fingerprint

Dive into the research topics of 'Feedback-directed instrumentation for deployed JavaScript applications'. Together they form a unique fingerprint.

Cite this