When I started my career as a software developer, I was often asked by my development manager to modify code written by colleagues. This was a common practice in our shop. As a result, many modules were touched by many hands. One particular module, written by a former employee, was dreaded by all. It had a lot of technical debt [1], including variables named after his numerous girlfriends and the brands of cigarettes that he smoked.
In this paper, we are offered fresh insights and convincing evidence to show that managing software this way is not a best practice. The research defines two measures--developer focus and module ownership--and then demonstrates the effect of these measures on software quality. Developer focus examines the limits of human attention and cognition. I recall a moment when “the bits started falling out of my brain” when one of my modules reached 5,000 lines of code. Low module ownership means too many contributors. The authors of this paper use a predator/prey model and Kullback-Liebler statistics to make the case for change.
To the many managers who believe that statistics is the leading cause of smoking, I recommend reading Goleman’s recent book on the importance of focus from a general perspective [1], and Cappel, Prybutok, and Varghese’s study on the importance of attention to detail from a technical perspective [2]. These works support the important findings in this paper that should lead to better software management and software quality practices.