What we have learned about software engineering expertise
- 150 Downloads
A knowledge elicitation project was conducted to provide material for a course in software system debugging skills. Although the results confirmed aspects of the general model of human expertise in the cognitive science literature, focusing on the critical role of strategy, of creating a cognitive model of the problem domain, and of metacognition, there also were less expected findings. In particular, the importance of social skills was highlighted, even for so technical a task as code reading. In the industrial environment, expert debuggers are aware of the social contexts both of the environment in which the original code was written and in which the debugging is being done. This knowledge is useful in selecting paths of investigation and also in making efficient use of human resources in debugging.
KeywordsInterpersonal Skill Search Path Bell Laboratory Code Reading Code Comment
Unable to display preview. Download preview PDF.
- Glaser, R. & Chi, M. T. H. 1988. Overview. in Chi, M. T. H., Glaser, R., & Farr, M.J. The nature of expertise, Hillsdale, N.J.:Erlbaum.Google Scholar
- Freeman, J., Riedl, T., Weitzenfeld, J. S. & Musa, J. 1991. Instruction for Software Engineering Expertise. Fifth SEI Conference of Software Engineering Education.Google Scholar
- Klein, G. A. 1989. Utility of the Critical Decision Method for eliciting knowledge from expert C debuggers. Proprietary to Klein Associates and Bell laboratories.Google Scholar
- Klein, G.A., Calderwood, R., & MacGregor, D. 1989. Critical Decision Method for eliciting knowledge. IEEE Transactions on systems, man, and cybernetics. 19.462–472.Google Scholar
- Weitzenfeld, J.S., Klein, G. A., Riedl, T., Freeman, J. T., Musa, J. 1991. Knowledge elicitation for software engineering expertise. Fifth SEI Conference of Software Engineering Education.Google Scholar