2013 22nd Australian Software Engineering Conference (ASWEC) (2013)
Hawthorne, Victoria, Australia
June 4, 2013 to June 7, 2013
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ASWEC.2013.12
Dynamic program analysis tools serve many important software engineering tasks such as profiling, debugging, testing, program comprehension, and reverse engineering. Many dynamic analysis tools rely on program instrumentation and are implemented using low-level instrumentation libraries, resulting in tedious and error-prone tool development. The recently released Domain-Specific Language for Instrumentation (DiSL) was designed to boost the productivity of tool developers targeting the Java Virtual Machine, without impairing the performance of the resulting tools. DiSL offers high-level programming abstractions especially designed for development of instrumentation-based dynamic analysis tools. In this paper, we present a controlled experiment aimed at quantifying the impact of the DiSL programming model and high-level abstractions on the development of dynamic program analysis instrumentations. The experiment results show that compared with a prevailing, state-of-the-art instrumentation library, the DiSL users were able to complete instrumentation development tasks faster, and with more correct results.
Instruments, Java, Libraries, Programming, Context, Productivity, Writing
A. Sarimbekov et al., "Productive Development of Dynamic Program Analysis Tools with DiSL," 2013 22nd Australian Software Engineering Conference (ASWEC), Hawthorne, Victoria, Australia, 2013, pp. 11-19.