[Research] JISDLab: A web-based interactive literate debugging environment

Mr. Sakutaro Sugiyama, a master’s student of our laboratory, presented our paper at the 29th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER 2022), held online. This is a joint work with the research group of Prof. Ishio at NARA Institute of Science and Technology.

Authors: Sakutaro Sugiyama(Tokyo Tech), Takashi Kobayashi(Tokyo Tech), Kazumasa Shimari(Osaka Univ.), Takashi Ishio(NAIST)
Title: JISDLab: A web-based interactive literate debugging environment
Book Title: Proc. 29th IEEE International Conference onSoftware Analysis, Evolution and Reengineering (SANER 2022), pp. 486-490, Tool Track, Mar 15-18, 2022, Online (Honolulu, HI, USA).
The debugging process is a huge burden on developers, both in terms of time and mentality. Scriptable debugging approaches have been proposed to reduce the burden associated with such debugging work. Scriptable debuggers (SDs) enable to describe developers’ debugging process and share the debug scripts to reduce debugging effort. However, SDs require an execution environment for those scripts, and they are unable to manage ancillary information such as execution results and prerequisites for using the script in one place. We extend the existing scriptable debugging and propose an interactive literate debugging environment that enables reproducible bug reporting. The proposed method provides an executable script description that manipulates the debugger, information obtained through the debugger by executing the script, its visualization format, and the ability to save the information in the form of a document that includes explanatory text. By using these documents, it is possible to observe the detailed behavior of a program at runtime and to share the situation in which the focused behavior occurs among developers. In this paper, we describe our proposed interactive literate debugging environment and introduce our prototype tool, JISDLab, which is a web application using Jupyter. The sample debug script used in our demonstration scenario can be accessed via https://github.com/tklabgroup/JISDLab/blob/master/debugspace/case-SANER2022-tooldemo.ipynb