Some References Related to the Cost of Code Reading, Software Comprehension and Software Maintenance
You'll often hear us say that developers today typically spend 50% or more on code reading. Why do we say that?
We know this because there are consistent references in the peer reviewed literature that document this. And we also know this because we informally asked several thousand developers. In fact, I urge you to try it yourself with your colleagues: ask them if they agree that they spend 50% or more of their time reading code.
In the meantime, here are some references:
Marvin Zelkowitz, Alan Shaw and John Gannon, Principles of software engineering and design, 1979. "67% spent on software mainetnance"
Victor Basili. Evolving and Packaging Reading Technologies. Journal Systems and Software 38(1) p. 3—12, 1997. Quote: "50% effort spent in reading the code"
Robert L. Glass. Frequently forgotten fundamental facts about software engineering. IEEE Software. Volume 18. Issue 3. 2001. Quote: "Maintenance typically consumes about 40 to 80 percent (60 percent average) of software costs."
Andrew J. Ko, Htet Aung, and Brad A. Myers. Eliciting design requirements for maintenance-oriented IDEs: a detailed study of corrective and perfective maintenance tasks. Proceedings of the 27th international Conference on Software Engineering (ICSE '05). ACM. 126-135. 2005. Quote: "At least 35% effort spent on understanding"
Thomas D. LaToza, Gina Venolia, and Robert DeLine. Maintaining mental models: a study of developer work habits. Proceedings of the 28th International Conference on Software Engineering (ICSE '06), p. 492—501, ACM. 2006. Quote: "66% of developers stated that understanding the code is the biggest development problem; 82% stated that it takes a lot of effort to understand the existing code"
Minelli, Roberto and and, Andrea Mocci and Lanza, Michele. I Know What You Did Last Summer: An Investigation of How Developers Spend Their Time. Proceedings of the 2015 IEEE 23rd International Conference on Program Comprehension 2015 (ICPC'15). Quote: "Program understanding is as expected the dominant activity, but as we see our analysis attributes to it even more importance than what the common knowledge suggests, reaching a value of roughly 70%"
Xin Xia, Lingfeng Bao, David Lo, Zhenchang Xing, Ahmed Hassan, Shanping Li. Measuring Program Comprehension: A Large-Scale Field Study with Professionals. IEEE Transactions on Software Engineering, 2017. Quotes: "On average developers spend ~58% of their time on program comprehension activities" "followed by navigation (23.96%)"