|
| This Article | ||
| ||
| Share | ||
| Bibliographic References | ||
| Add to: | ||
| | ||
| Search | ||
| ||
| ASCII Text | x | ||
| Dawn Lawrie, Christopher Morrell, Henry Feild, David Binkley, "What?s in a Name? A Study of Identifiers," International Conference on Program Comprehension, pp. 3-12, 14th IEEE International Conference on Program Comprehension (ICPC'06), 2006. | |||
| BibTex | x | ||
| @article{ 10.1109/ICPC.2006.51, author = {Dawn Lawrie and Christopher Morrell and Henry Feild and David Binkley}, title = {What?s in a Name? A Study of Identifiers}, journal ={International Conference on Program Comprehension}, volume = {0}, year = {2006}, isbn = {0-7695-2601-2}, pages = {3-12}, doi = {http://doi.ieeecomputersociety.org/10.1109/ICPC.2006.51}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, } | |||
| RefWorks Procite/RefMan/Endnote | x | ||
| TY - CONF JO - International Conference on Program Comprehension TI - What?s in a Name? A Study of Identifiers SN - 0-7695-2601-2 SP3 EP12 A1 - Dawn Lawrie, A1 - Christopher Morrell, A1 - Henry Feild, A1 - David Binkley, PY - 2006 KW - null VL - 0 JA - International Conference on Program Comprehension ER - | |||
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., include relevant domain knowledge) 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?
Results from a study designed to investigate these questions are reported. The study involved over 100 programmers who were asked to describe twelve different functions. The functions used three different "levels" of identifiers: single letters, abbreviations, and full words. Responses allow the level of comprehension associated with the different levels to be studied.
The functions include standard algorithms studied in computer science courses as well as functions extracted from production code. The results show that full word identifiers lead to the best comprehension; however, in many cases, there is no statistical difference between full words and abbreviations.
