IEEE Transactions on Software Engineering
Cognitive processing differences between novice and expert computer programmers
International Journal of Man-Machine Studies
Some strategies of reuse in an object-oriented programming environment
CHI '89 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
A formal evaluation of knowledge elicitation techniques for expert systems: domain 1
Proceedings of Expert Systems '87 on Research and Development in Expert Systems IV
The nature and development of programming plans
International Journal of Man-Machine Studies
Introduction: the Kittle House manifesto
Designing interaction
CHI '92 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Clustering Algorithms
Software Reusability: Delivering productivity gains or short cuts
INTERACT '90 Proceedings of the IFIP TC13 Third Interational Conference on Human-Computer Interaction
A multi-institutional investigation of computer science seniors' knowledge of programming concepts
Proceedings of the 36th SIGCSE technical symposium on Computer science education
What novice programmers don't know
Proceedings of the first international workshop on Computing education research
Journal of Computing Sciences in Colleges
Objects of our desire: empirical research on object-oriented development
Human-Computer Interaction
Teaching the novice programmer: A study of instructional sequences and perception
Education and Information Technologies
Hi-index | 0.00 |
This article reports a study of the use of card sorts in the categorization of fragments of object-oriented (OO) programs. We are interested in the way in which programmers think about code so that we might attempt to provide support for browsing and reuse activities within OO environments. As a consequence, we have been exploring the use of knowledge acquisition techniques in order to elicit programmers' knowledge about code. The study reported here required expert and novice programmers to sort through several cards, each containing a fragment of code. In the case of the expert group, half of the subjects were familiar with the code, and half were not. The subjects sorted the cards according to any criteria they felt were appropriate. Our results showed, contrary to our expectations, that experts tended to focus on the functional relations between the code fragments and that the novices were much more concerned with objects and inheritance relations. Moreover, those experts who were familiar with the code also appeared to focus to a greater degree on functional information compared to those who were unfamiliar with the code, who derived classifications based on object and class relations. We discuss these results in terms of the existing body of knowledge about expertise in procedural programming and with respect to the claims that have been made about the naturalness of conceiving the world in terms of objects and their relations. Last, we suggest several directions for future research into the psychological mechanisms that might underpin OO design and programming.