arXivDaily arXiv每日学术速递 周一至周五更新
北美退伍军人节(Veterans Day),12 日无更新
arXiv 2109.02682cs.SEcs.HC
收藏

程序设计中的编辑-运行行为与编译

Edit-Run Behavior in Programming and Debugging

Abdulaziz Alaboudi, Thomas D. LaToza

摘要:

当开发人员编程和调试时,他们不断地编辑和运行代码,这种行为称为编辑-运行周期。虽然诸如实时编程之类的技术旨在支持这种行为,但人们对编辑-运行周期本身的特性知之甚少。为了弥补这一差距,我们分析了11名专业开发人员28小时的编程和调试工作,其中包括3000多个开发活动。我们将活动映射到编辑或运行步骤,构建了581个调试和207个编程编辑-运行循环。我们发现编辑-运行周期很频繁。开发人员在修复缺陷之前平均编辑和运行程序7次,在引入缺陷之前平均编辑和运行程序2次。开发人员在编程时再次运行程序比调试时等待的时间更长,编程的平均周期长度为3分钟,调试为1分钟。大多数周期涉及对单个文件的编辑,之后开发人员运行程序以观察对最终输出的影响。编辑-运行周期包括编辑和运行之外的活动,例如在文件之间导航,咨询资源或与其他IDE功能交互,这要长得多,平均长度为5分钟,而不是1.5分钟。最后,我们讨论了工具的设计建议,以使编辑-运行周期更加流畅。

英文摘要:

As developers program and debug, they continuously edit and run their code, a behavior known as edit-run cycles. While techniques such as live programming are intended to support this behavior, little is known about the characteristics of edit-run cycles themselves. To bridge this gap, we analyzed 28 hours of programming and debugging work from 11 professional developers which encompassed over three thousand development activities. We mapped activities to edit or run steps, constructing 581 debugging and 207 programming edit-run cycles. We found that edit-run cycles are frequent. Developers edit and run the program, on average, 7 times before fixing a defect and twice before introducing a defect. Developers waited longer before again running the program when programming than debugging, with a mean cycle length of 3 minutes for programming and 1 minute for debugging. Most cycles involved an edit to a single file after which a developer ran the program to observe the impact on the final output. Edit-run cycles which included activities beyond edit and run, such as navigating between files, consulting resources, or interacting with other IDE features, were much longer, with a mean length of 5 minutes, rather than 1.5 minutes. We conclude with a discussion of design recommendations for tools to enable more fluidity in edit-run cycles.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑