Concepedia

TLDR

Programmers in large software systems spend excessive time searching artifacts and frequently switch tasks, wasting valuable effort. The study introduces a mechanism to capture, model, and persist task‑relevant elements and relations. The mechanism builds a task context by monitoring activity, extracting artifact relationships, and integrating with IDE features, validated in a longitudinal field study of Mylar on Eclipse. Using Mylar, 16 industry programmers showed a statistically significant productivity improvement.

Abstract

When working on a large software system, a programmer typically spends an inordinate amount of time sifting through thousands of artifacts to find just the subset of information needed to complete an assigned task. All too often, before completing the task the programmer must switch to working on a different task. These task switches waste time as the programmer must repeatedly find and identify the information relevant to the task-at-hand. In this paper, we present a mechanism that captures, models, and persists the elements and relations relevant to a task. We show how our task context model reduces information overload and focuses a programmer's work by filtering and ranking the information presented by the development environment. A task context is created by monitoring a programmer's activity and extracting the structural relationships of program artifacts. Operations on task contexts integrate with development environment features, such as structure display, search, and change management. We have validated our approach with a longitudinal field study of Mylar, our implementation of task context for the Eclipse development environment. We report a statistically significant improvement in the productivity of 16 industry programmers who voluntarily used Mylar for their daily work.

References

YearCitations

Page 1