Title
Effective identifier names for comprehension and memory.
Abstract
Readers of programs have two main sources of domain information: identifier names and comments. When functions are uncommented, as many are, comprehension is almost exclusively dependent on the identifier names. Assuming that writers of programs want to create quality identifiers (e.g., identifiers that include relevant domain knowledge), one must ask how should they go about it. For example, do the initials of a concept name provide enough information to represent the concept? If not, and a longer identifier is needed, is an abbreviation satisfactory or does the concept need to be captured in an identifier that includes full words? What is the effect of longer identifiers on limited short term memory capacity? Results from a study designed to investigate these questions are reported. The study involved over 100 programmers who were asked to describe 12 differ- ent functions and then recall identifiers that appeared in each function. The functions used three different levels of identi- fiers: single letters, abbreviations, and full words. Responses allow the extent of comprehension associated with the differ- ent levels to be studied along with their impact on memory. The functions used in the study include standard computer science textbook algorithms and functions extracted from production code. The results show that full-word identifi-
Year
DOI
Venue
2007
10.1007/s11334-007-0031-2
Innovations in Systems and Software Engineering
Keywords
Field
DocType
study design,short term memory,product code,software quality,domain knowledge
Ask price,Identifier,Information retrieval,Domain knowledge,Computer science,Natural language processing,Artificial intelligence,Program comprehension,Software quality,Short-term memory,Recall,Comprehension
Journal
Volume
Issue
ISSN
3
4
1614-5054
Citations 
PageRank 
References 
45
1.55
13
Authors
4
Name
Order
Citations
PageRank
Dawn Lawrie168544.50
Christopher Morrell2944.52
Henry A. Feild332918.08
David Binkley41325.44