Understanding Debugging as Episodes: A Case Study on Performance Bugs in Configurable Software Systems
Context: Debugging performance bugs in configurable software systems is a complex and time-consuming task that requires not only fixing a bug, but also understanding its root cause. While there is a vast body of literature on debugging strategies, there is no consensus on general debugging strategies. This makes it difficult to provide concrete guidance for developers, especially for debugging configuration-dependent performance bugs.
Objective: The goal of our work is to alleviate this situation by providing an framework to describe debugging strategies in a more general, unifying way.
Method: To this end, we conducted a user study with 12 professional developers who debugged a performance bug in a real-world configural system. To observe developers in an unobstructive way, we provided them with an immersive virtual reality tool, SoftVR, giving them a large degree of freedom to choose the preferred debugging strategies.
Result: The results show that existing strategies are too coarse-grained and intermixed to identify successful approaches. In the subsequent qualitative analysis, we developed a coding framework to reason about debugging approaches. With this framework, we identified five goal-oriented episodes that developers employ, which they also confirmed in subsequent interviews.
Impact: Our work provides guidance on a unified description of debugging strategies, allowing researchers a common base to study debugging and practitioners and teachers guidance on successful debugging strategies.
Mon 23 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 12:30 | PerformanceDemonstrations / Research Papers / Ideas, Visions and Reflections / Journal First / Industry Papers at Vega Chair(s): Philipp Leitner Chalmers | University of Gothenburg | ||
10:30 20mTalk | Accuracy Can Lie: On the Impact of Surrogate Model in Configuration Tuning Journal First Pengzhou Chen University of electronic science and technology of China, Jingzhi Gong University of Leeds, Tao Chen University of Birmingham | ||
10:50 20mTalk | Understanding Debugging as Episodes: A Case Study on Performance Bugs in Configurable Software Systems Research Papers Max Weber Leipzig University, Alina Mailach Leipzig University, Sven Apel Saarland University, Janet Siegmund Chemnitz University of Technology, Raimund Dachselt Technical University of Dresden, Norbert Siegmund Leipzig University DOI | ||
11:10 20mTalk | Towards Understanding Performance Bugs in Popular Data Science Libraries Research Papers Haowen Yang The Chinese University of Hong Kong, Shenzhen (CUHK-Shenzhen), Zhengda Li The Chinese University of Hong Kong, Shenzhen, Zhiqing Zhong The Chinese University of Hong Kong, Shenzhen (CUHK-Shenzhen), Xiaoying Tang hinese University of Hong Kong, Shenzhen, Pinjia He Chinese University of Hong Kong, Shenzhen DOI | ||
11:30 20mTalk | When Should I Run My Application Benchmark?: Studying Cloud Performance Variability for the Case of Stream Processing Applications Industry Papers Sören Henning Dynatrace Research, Adriano Vogel , Esteban Pérez Wohlfeil Dynatrace Research, Otmar Ertl Dynatrace Research, Rick Rabiser LIT CPS, Johannes Kepler University Linz DOI Pre-print | ||
11:50 10mTalk | LitmusKt: Concurrency Stress Testing for Kotlin Demonstrations Denis Lochmelis Constructor University Bremen, JetBrains Research, Evgenii Moiseenko JetBrains Research, Yaroslav Golubev JetBrains Research, Anton Podkopaev JetBrains Research, Constructor University DOI Pre-print | ||
12:00 10mTalk | Breaking the Loop: AWARE is the New MAPE-K Ideas, Visions and Reflections | ||
12:10 20mTalk | COFFE: A Code Efficiency Benchmark for Code Generation Research Papers Yun Peng The Chinese University of Hong Kong, Jun Wan Zhejiang University, Yichen LI The Chinese University of Hong Kong, Xiaoxue Ren Zhejiang University DOI |
Vega is close to the registration desk.
Facing the registration desk, its entrance is on the left, close to the hotel side entrance.