Debugging software failures often demands significant time and effort. Program slicing is a technique that can help developers fast track the debugging process by allowing them to focus only on the code relevant to the failure. However, despite the effectiveness of slicing, these techniques are not integrated into modern IDEs. Instead, most, if not all, current slicing tools are launched from the command line and produce log files as output. Developers thus have to switch between the IDE and command line tools, manually correlating the log file results with their source code, which hinders the adoption of the slicing-based debugging approaches in practice.
To address this challenge, we developed a plugin extending the debugger of IntelliJ IDEA – one of the most popular IDEs – with slicing capabilities. We named our slicing-based debugger extension Slicer4D. Slicer4D offers a user-friendly interface for developers to perform dynamic slicing and further enhances the debugging experience by focusing the developers’ attention only on the parts of the code relevant to the failure. Additionally, Slicer4D is designed in an extensible way, to support integration of a variety of slicing techniques. We hope our tool will pave the way to enhancing developer productivity by seamlessly incorporating dynamic slicing into a familiar development environment.
Tue 29 OctDisplayed time zone: Pacific Time (US & Canada) change
16:30 - 17:30 | Program analysis 1Research Papers / Tool Demonstrations at Compagno Chair(s): Mugdha Khedkar Heinz Nixdorf Institute at Paderborn University | ||
16:30 15mTalk | Parf: Adaptive Parameter Tuning for Abstract Interpretation Research Papers Zhongyi Wang Zhejiang University, China, Linyu Yang Zhejiang University, Mingshuai Chen Zhejiang University, Yixuan Bu Zhejiang University, Zhiyang Li Zhejiang University, Qiuye Wang Fermat Labs, Huawei Inc., Shengchao Qin Fermat Labs, Huawei, Xiao Yi Fermat Labs, Huawei Inc., Jianwei Yin Zhejiang University | ||
16:45 15mTalk | Discovering Likely Program Invariants for Persistent Memory Research Papers Zunchen Huang , Srivatsan Ravi University of Southern California, Chao Wang University of Southern California | ||
17:00 10mTalk | flowR: A Static Program Slicer for R Tool Demonstrations | ||
17:10 10mTalk | Slicer4D: A Slicing-based Debugger for Java Tool Demonstrations Sahar Badihi University of British Columbia, Canada, Sami Nourji The University of British Columbia, Julia Rubin The University of British Columbia Pre-print |