Building Usage Contexts During Program Comprehension

Building Usage Contexts During Program Comprehension
复制标题

在程序理解期间构建使用上下文

DOI:
10.1109/icpc.2006.14
复制
发表时间:
2006
期刊:
14th IEEE International Conference on Program Comprehension (ICPC'06)
影响因子:
--
通讯作者:
C. Görg
C. Görg
中科院分区:
--
文献类型:
--
作者:
Chris Parnin;C. Görg

文献摘要

被引文献

相似文献

软件开发人员经常同时处理多个项目。即使只有一个项目在进行中,每天的干扰也会打断开发工作。因此,开发人员花费了大量的精力来恢复他们的上下文。通过上下文,我们关注代码中与正在修复或增强的特定错误相关的类和方法。上下文由程序根据一组表示(windows包含源代码、命令执行和数据文件)来具体化;然而,仅仅保存最新的上下文是不够的。即使在处理单个任务时,程序员在扩展理解时也会在不同的上下文之间切换,当他们决定进行更改时,他们可能不得不访问多个上下文,以解决所有可能的连锁反应。因此,我们希望记录上下文的历史,并能够根据当前任务的要求检索它们。我们引入了一种新技术,从程序员与IDE的交互中获取上下文,该上下文由一组与当前任务相关的方法组成。在此背景下,我们演示了如何提高程序员恢复与任务相关的精神状态的能力,并通过推荐系统促进对软件的探索
Software developers often work on multiple simultaneous projects. Even when only a single project is underway, everyday distractions interrupt the development effort. Consequently, developers spend significant effort pursuing recovery of their context. By context, we focus on the classes and methods within the code that are relevant to a specific bug being fixed or enhancement made. Context is reified by a program in terms of a set of presentations (windows a containing source code, command executions, and data files); however, it is not enough to save the latest context. Even when working on a single task, programmers flip between contexts as they extend their understanding, and when they decide on a change, they may have to visit several contexts in order to address all possible ripple effects. Consequently, we would like to record a history of contexts and be able to retrieve them as demanded by the current task. We introduce a novel technique to obtain a context, consisting of a set of methods relevant for the current task, from a programmer's interactions with an IDE. Using this context, we demonstrate how to improve the ability of a programmer to recover the mental state associated with tasks and to facilitate the exploration of software through recommendation systems