Publication | Closed Access
Program understanding behaviour during enhancement of large‐scale software
75
Citations
0
References
1997
Year
Software MaintenanceEmpirical Software Engineering ResearchEngineeringProgram AnalysisInformation NeedsField StudySoftware SystemsProgram ComprehensionSoftware EngineeringProgram TransformationSoftware ProcessSoftware PracticeComputer ScienceInformation ManagementProgram Understanding BehaviourSoftware AnalysisEnhancement TaskSoftware Evolution
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.