|
ABSTRACT
In this paper, we explore the concept of code readability and investigate its relation to software quality. With data collected from human annotators, we derive associations between a simple set of local code features and human notions of readability. Using those features, we construct an automated readability measure and show that it can be 80% effective, and better than a human on average, at predicting readability judgments. Furthermore, we show that this metric correlates strongly with two traditional measures of software quality, code changes and defect reports. Finally, we discuss the implications of this study on programming language design and engineering practice. For example, our data suggests that comments, in of themselves, are less important than simple blank lines to local judgments of readability.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
K. Aggarwal, Y. Singh, and J. K. Chhabra. An integrated measure of software maintainability. Reliability and Maintainability Symposium, 2002. Proceedings. Annual, pages 235--241, September 2002.
|
| |
2
|
|
| |
3
|
P. Anderson and T. Teitelbaum. Software inspection using codesurfer. WISE '01: Proceeding of the First workshop on inspection in software engineering, July 2001.
|
 |
4
|
|
| |
5
|
|
| |
6
|
L. W. Cannon, R. A. Elliott, L. W. Kirchho, J. H. Miller, J. M. Milner, R. W. Mitze, E. P. Schan, N. O. Whittington, H. Spencer, D. Keppel, , and M. Brader. Recommended C Style and Coding Standards: Revision 6.0. Specialized Systems Consultants, Inc., Seattle, Washington, June 1990.
|
 |
7
|
Thomas J. Cheatham , Jungsoon P. Yoo , Nancy J. Wahl, Software testing: a machine learning experiment, Proceedings of the 1995 ACM 23rd annual conference on Computer science, p.135-141, February 28-March 02, 1995, Nashville, Tennessee, United States
[doi> 10.1145/259526.259548]
|
| |
8
|
|
| |
9
|
T. Copeland. PMD Applied. Centennial Books, Alexandria, VA, USA, 2005.
|
| |
10
|
|
 |
11
|
|
| |
12
|
R. F. Flesch. A new readability yardstick. Journal of Applied Psychology, 32:221--233, 1948.
|
| |
13
|
|
| |
14
|
J. Frederick P. Brooks. The Mythical Man-Month: Essays on Software Engineering, 20th Anniversary Edition. Addison-Wesley Professional, August 1995.
|
| |
15
|
A. Goncalves. Get acquainted with the new advanced features of junit 4. DevX http://www.devx.com/Java/Article/31983, 2006.
|
| |
16
|
James Gosling , Bill Joy , Guy Steele , Gilad Bracha, Java Language Specification, Second Edition: The Java Series, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 2000
|
| |
17
|
|
| |
18
|
R. Gunning. The Technique of Clear Writing. McGraw-Hill International Book Co, New York, 1952.
|
 |
19
|
|
| |
20
|
|
| |
21
|
G. Holmes, A. Donkin, and I. Witten. Weka: A machine learning workbench. Proceedings of the Second Australia and New Zealand Conference on Intelligent Information Systems, 1994.
|
 |
22
|
|
| |
23
|
|
| |
24
|
J. P. Kinciad and E. A. Smith. Derivation and validation of the automated readability index for use with technical materials. Human Factors, 12:457--464, 1970.
|
 |
25
|
|
 |
26
|
|
| |
27
|
R. Kohavi. A study of cross-validation and bootstrap for accuracy estimation and model selection. International Joint Conference on Artificial Intelligence, 14(2):1137--1145, 1995.
|
| |
28
|
R. Likert. A technique for the measurement of attitudes. Archives of Psychology, 140:44{53, 1932.
|
 |
29
|
|
| |
30
|
S. MacHaffie, R. McLeod, B. Roberts, P. Todd, and L. Anderson. A readability metric for computer-generated mathematics. Technical report, Saltire Software, http://www.saltire.com/equation.html, retrieved 2007.
|
| |
31
|
G. H. McLaughlin. Smog grading -- a new readability. Journal of Reading, May 1969.
|
 |
32
|
|
| |
33
|
|
 |
34
|
|
| |
35
|
|
| |
36
|
|
| |
37
|
P. A. Relf. Tool assisted identifier naming for improved software readability: an empirical study. Empirical Software Engineering, 2005. 2005 International Symposium on, November 2005.
|
| |
38
|
|
| |
39
|
C. Simonyi. Hungarian notation. MSDN Library, November 1999.
|
| |
40
|
S. E. Stemler. A comparison of consensus, consistency, and measurement approaches to estimating interrater reliability. Practical Assessment, Research and Evaluation, 9(4), 2004.
|
| |
41
|
|
| |
42
|
|
| |
43
|
|
| |
44
|
|
|