Debugging Revisited: Toward Understanding the Debugging Needs of Contemporary Software Developers

Debugging Revisited: Toward Understanding the Debugging Needs of Contemporary Software Developers
复制标题

重新审视调试:了解当代软件开发人员的调试需求

DOI:
--
复制
发表时间:
2013
期刊:
2013 ACM / IEEE International Symposium on Empirical Software Engineering and Measurement
影响因子:
--
通讯作者:
Gina Venolia
Gina Venolia
中科院分区:
--
文献类型:
--
作者:
L. Layman;Madeline Diep;M. Nagappan;J. Singer;R. Deline;Gina Venolia

文献摘要

被引文献

相似文献

我们对专业开发人员如何定义调试以及他们在工业环境中面临的挑战知之甚少。为了开始探索专业调试的挑战和需求,我们对微软的15位专业软件工程师进行了采访和分析。本研究的目标是:1)了解专业开发人员目前如何使用信息和工具进行调试,2)确定当代软件开发领域(Web服务,多线程/多核编程)中调试的新挑战,以及3)确定这些专业人员所需的调试支持的改进。访谈被编码,以确定最常见的信息资源,技术,挑战,以及开发人员所阐述的调试需求。该研究揭示了专业人员面临的几个调试挑战,包括:1)假设工具和软件环境的交互是调试困难的来源,2)日志文件信息对Web服务准确调试的影响,以及3)顺序人类思维过程和多线程环境的非顺序执行之间的不匹配是困难的来源。受访者还描述了对支持调试的工具所需的改进,其中许多已在研究中讨论过,但尚未转化为实践。
We know surprisingly little about how professional developers define debugging and the challenges they face in industrial environments. To begin exploring professional debugging challenges and needs, we conducted and analyzed interviews with 15 professional software engineers at Microsoft. The goals of this study are: 1) to understand how professional developers currently use information and tools to debug, 2) to identify new challenges in debugging in contemporary software development domains (web services, multithreaded/multicore programming), and 3) to identify the improvements in debugging support desired by these professionals that are needed from research. The interviews were coded to identify the most common information resources, techniques, challenges, and needs for debugging as articulated by the developers. The study reveals several debugging challenges faced by professionals, including: 1) the interaction of hypothesis instrumentation and software environment as a source of debugging difficulty, 2) the impact of log file information on accurate debugging of web services, and 3) the mismatch between the sequential human thought process and the non-sequential execution of multithreaded environments as source of difficulty. The interviewees also describe desired improvements to tools to support debugging, many of which have been discussed in research but not transitioned to practice.