A Metric for
Ray Buse ∙ Westley Weimer
“The quality that enables the observer to correctly
perceive the message”
Metrics for Natural Language
Flesch-Kincaid Grade Level
Automated Readability Index
Readability and Software
Code maintenance = 70% of lifecycle cost.
And most of maintenance effort is spent reading
But do we have any way to gain some level of
assurance in code readability?
Employing a simple set of local features, we can
derive, from a set of human judgments, an accurate
model of readability for code.
To what extent do humans agree on code
We know readability is important, but can we create
a predictive model of it?
What could such a model teach us?
Acquiring Human Readability Judgments
Extracting a Model
Correlation with External Notions of Software
Readability and the Software Lifecycle
We can automatically judge readability about as
well as the “average” human can
This notion of readability shows significant
The output of a bug finder
Self-reported program maturity
We may also learn more about software readability
by looking at the predictive power of our model’s