Program comprehension is an essential activity in software engineering. Not only does it often challenge professionals, but it can also hinder novices from advancing their programming skills. Gaze, an emerging modality in developer tools, has so far primarily been utilized to improve our understanding of programmers' visual attention and as a means to reason about programmers' cognitive processes. There has been limited exploration of integrating gaze-based assistance into development environments to support programmers, despite the tight links between attention and gaze. We also know that joint attention is important in collaboration, further suggesting that there is value in exploring collective gaze. In this paper, we investigate the effect of visualizing gaze patterns gathered from experts to novice programmers to assist them with program comprehension in a new codebase. To this end, we present GazePrinter, designed to provide gaze-orienting visual cues informed by experts to aid novices with program comprehension. We present the results of a mixed-methods study conducted with 40 novices to study the effects of using GazePrinter for program comprehension tasks. The study included a survey, a controlled experiment, and interviews. We found that visualization of expert gaze can have a significant effect on novice programmers' behavior in terms of which path they take through the code base; with GazePrinter, novices took a path closer to the path taken by experts. We also found indications of reduced time and cognitive load among novices using GazePrinter.


翻译:程序理解是软件工程中的一项基本活动。它不仅常常给专业人员带来挑战,也可能阻碍新手提升编程技能。凝视作为一种开发者工具中的新兴模态,迄今为止主要被用于增进我们对程序员视觉注意力的理解,并作为推理程序员认知过程的手段。尽管注意力与凝视之间存在紧密联系,将基于凝视的辅助功能集成到开发环境中以支持程序员的研究仍十分有限。我们还知道,共同注意力在协作中至关重要,这进一步表明探索集体凝视的价值。在本文中,我们研究了将专家收集的凝视模式可视化对新手程序员的影响,以帮助他们在新的代码库中进行程序理解。为此,我们提出了GazePrinter,旨在提供由专家知情且引导凝视的视觉线索,以辅助新手进行程序理解。我们展示了一项混合方法研究的结果,该研究对40名新手进行了观察,以探索使用GazePrinter进行程序理解任务的效果。研究包括问卷调查、对照实验和访谈。我们发现,专家凝视的可视化对新手程序员的行为有显著影响,体现在他们遍历代码库的路径上;使用GazePrinter时,新手会采取更接近专家路径的路线。我们还发现,使用GazePrinter的新手在时间和认知负荷方面有所减少的迹象。

0
下载
关闭预览

相关内容

程序员可以指在程序设计与互联网某个专业领域中的专业人士或是从事软件撰写,程序开发、维护的专业人员。
视频理解:从几何与语义表征到统一模型架构
专知会员服务
20+阅读 · 3月21日
【CVPR2022】GaTector:凝视对象预测的统一框架
专知会员服务
10+阅读 · 2022年3月24日
可解释强化学习,Explainable Reinforcement Learning: A Survey
专知会员服务
132+阅读 · 2020年5月14日
技术 | 强化学习入门以及代码实现
AI100
51+阅读 · 2017年8月26日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
4+阅读 · 2015年12月31日
国家自然科学基金
7+阅读 · 2014年12月31日
国家自然科学基金
12+阅读 · 2014年12月31日
VIP会员
最新内容
综述 | 3D场景图:开放挑战与未来方向
专知会员服务
6+阅读 · 6月22日
21世纪的无人机战争
专知会员服务
4+阅读 · 6月22日
《量子技术的军事任务技术适配与利用》
专知会员服务
5+阅读 · 6月22日
美国从乌克兰无人机战争中学习经验
专知会员服务
7+阅读 · 6月21日
ICML 2026 | 面向视觉语言模型的语义鲁棒性认证
专知会员服务
5+阅读 · 6月21日
相关基金
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
4+阅读 · 2015年12月31日
国家自然科学基金
7+阅读 · 2014年12月31日
国家自然科学基金
12+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员