The initial stage of program comprehension
International Journal of Man-Machine Studies
Extracting concepts from file names: a new file clustering criterion
Proceedings of the 20th international conference on Software engineering
Eye tracking in web search tasks: design implications
ETRA '02 Proceedings of the 2002 symposium on Eye tracking research & applications
Restructuring Program Identifier Names
ICSM '00 Proceedings of the International Conference on Software Maintenance (ICSM'00)
WebGazeAnalyzer: a system for capturing and analyzing web reading behavior using eye gaze
CHI '05 Extended Abstracts on Human Factors in Computing Systems
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Toward mining "concept keywords" from identifiers in large software projects
MSR '05 Proceedings of the 2005 international workshop on Mining software repositories
A Survey of Controlled Experiments in Software Engineering
IEEE Transactions on Software Engineering
An eye-tracking methodology for characterizing program comprehension processes
Proceedings of the 2006 symposium on Eye tracking research & applications
Analyzing individual performance of source code review using reviewers' eye movement
Proceedings of the 2006 symposium on Eye tracking research & applications
Detecting low usability web pages using quantitative data of users' behavior
Proceedings of the 28th international conference on Software engineering
What's in a Name? A Study of Identifiers
ICPC '06 Proceedings of the 14th IEEE International Conference on Program Comprehension
TAUPE: towards understanding program comprehension
CASCON '06 Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research
Eye Tracking Methodology: Theory and Practice
Eye Tracking Methodology: Theory and Practice
What are you looking for?: an eye-tracking study of information usage in web search
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Assessing the Comprehension of UML Class Diagrams via Eye Tracking
ICPC '07 Proceedings of the 15th IEEE International Conference on Program Comprehension
Proceedings of the 2008 symposium on Eye tracking research & applications
Temporal eye-tracking data: evolution of debugging strategies with multiple representations
Proceedings of the 2008 symposium on Eye tracking research & applications
DRESREM 2: An Analysis System for Multi-document Software Review Using Reviewers' Eye Movements
ICSEA '08 Proceedings of the 2008 The Third International Conference on Software Engineering Advances
Identifier length and limited programmer memory
Science of Computer Programming
Usability evaluation methods: mind the gaps
Proceedings of the 2009 Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists
Impact of the visitor pattern on program comprehension and maintenance
ESEM '09 Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement
Empirical Software Engineering
An Eye Tracking Study on camelCase and under_score Identifier Styles
ICPC '10 Proceedings of the 2010 IEEE 18th International Conference on Program Comprehension
Estimating the Optimal Number of Latent Concepts in Source Code Analysis
SCAM '10 Proceedings of the 2010 10th IEEE Working Conference on Source Code Analysis and Manipulation
An eye tracking study on the effects of layout in understanding the role of design patterns
ICSM '10 Proceedings of the 2010 IEEE International Conference on Software Maintenance
Exploring the Influence of Identifier Names on Code Quality: An Empirical Study
CSMR '10 Proceedings of the 2010 14th European Conference on Software Maintenance and Reengineering
Empirical Studies of Programming Knowledge
IEEE Transactions on Software Engineering
Hi-index | 0.00 |
A family of studies investigating the impact of program identifier style on human comprehension is presented. Two popular identifier styles are examined, namely camel case and underscore. The underlying hypothesis is that identifier style affects the speed and accuracy of comprehending source code. To investigate this hypothesis, five studies were designed and conducted. The first study, which investigates how well humans read identifiers in the two different styles, focuses on low-level readability issues. The remaining four studies build on the first to focus on the semantic implications of identifier style. The studies involve 150 participants with varied demographics from two different universities. A range of experimental methods is used in the studies including timed testing, read aloud, and eye tracking. These methods produce a broad set of measurements and appropriate statistical methods, such as regression models and Generalized Linear Mixed Models (GLMMs), are applied to analyze the results. While unexpected, the results demonstrate that the tasks of reading and comprehending source code is fundamentally different from those of reading and comprehending natural language. Furthermore, as the task becomes similar to reading prose, the results become similar to work on reading natural language text. For more "source focused" tasks, experienced software developers appear to be less affected by identifier style; however, beginners benefit from the use of camel casing with respect to accuracy and effort.