DocumentCode :
1202832
Title :
Cognitive heuristics in software engineering applying and extending anchoring and adjustment to artifact reuse
Author :
Parsons, Jeffrey ; Saunders, Chad
Author_Institution :
Fac. of Bus. Adm., Memorial Univ. of Newfoundland, St. John´´s, Nfld., Canada
Volume :
30
Issue :
12
fYear :
2004
Firstpage :
873
Lastpage :
888
Abstract :
The extensive literature on reuse in software engineering has focused on technical and organizational factors, largely ignoring cognitive characteristics of individual developers. Despite anecdotal evidence that cognitive heuristics play a role in successful artifact reuse, few empirical studies have explored this relationship. This paper proposes how a cognitive heuristic, called anchoring, and the resulting adjustment bias can be adapted and extended to predict issues that might arise when developers reuse code and/or designs. The research proposes that anchoring and adjustment can be manifested in three ways: propagation of errors in reuse artifacts, failure to include requested functionality absent from reuse artifacts, and inclusion of unrequested functionality present in reuse artifacts. Results from two empirical studies are presented. The first study examines reuse of object classes in a programming task, using a combination of practicing programmers and students. The second study uses a database design task with student participants. Results from both studies indicate that anchoring occurs. Specifically, there is strong evidence that developers tend to use the extraneous functionality in the artifacts they are reusing and some evidence of anchoring to errors and omissions in reused artifacts. Implications of these findings for both practice and future research are explored.
Keywords :
formal specification; human factors; object-oriented programming; psychology; software libraries; software reusability; cognitive heuristics; database design task; human factor; programming task; requirement specification; reusable libraries; reusable software; software design; software engineering; software psychology; Application software; Computer Society; Databases; Human factors; Object oriented modeling; Programming profession; Psychology; Software engineering; Software libraries; Software reusability;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2004.94
Filename :
1377186
Link To Document :
بازگشت