Abstract

This paper reports on a software understanding field study during the enhancement of large-scale software. The participants were professional software maintenance personnel from industry. The paper reports on the general understanding process, the kinds of actions programmers preferred during the enhancement task, the level of abstraction at which they were working, and role of hypotheses in the enhancement strategies they used. The results of the observations are also interpreted in terms of the information needs of these personnel during the enhancement task. We found that programmers work predominantly at the code and algorithmic levels with differences depending on the stage of the enhancement. They frequently switch between levels of abstraction. The programmers' main concerns are with what software does and how this is accomplished, not why software was built a certain way. These questions guide the work process. There was strong indication that memory (over)load is an issue. This is, of course, related to the size of the software. Information is sought and cross-referenced from a variety of sources from application domain concepts to code-related information, outpacing current maintenance environments' capabilities which are mostly stratified by information sources, making cross-referencing difficult. © 1997 John Wiley & Sons, Ltd.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call