On a measure of program structure
Programming Symposium, Proceedings Colloque sur la Programmation
Modeling Maintenance Effort by Means of Dynamic Systems
CSMR '98 Proceedings of the 2nd Euromicro Conference on Software Maintenance and Reengineering ( CSMR'98)
MSR '05 Proceedings of the 2005 international workshop on Mining software repositories
Scents in Programs: Does Information Foraging Theory Apply to Program Maintenance?
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Metrics for Measuring the Quality of Modularization of Large-Scale Object-Oriented Software
IEEE Transactions on Software Engineering
Can developer-module networks predict failures?
Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering
Predicting faults using the complexity of code changes
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Secure open source collaboration: an empirical study of linus' law
Proceedings of the 16th ACM conference on Computer and communications security
Software Dependencies, Work Dependencies, and Their Impact on Failures
IEEE Transactions on Software Engineering
An Exploratory Study of Factors Influencing Change Entropy
ICPC '10 Proceedings of the 2010 IEEE 18th International Conference on Program Comprehension
A simpler model of software readability
Proceedings of the 8th Working Conference on Mining Software Repositories
Ownership, experience and defects: a fine-grained study of authorship
Proceedings of the 33rd International Conference on Software Engineering
Don't touch my code!: examining the effects of ownership on software quality
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Ecological inference in empirical software engineering
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Hi-index | 0.00 |
Work practices vary among software developers. Some are highly focused on a few artifacts; others make wide-ranging contributions. Similarly, some artifacts are mostly authored, or owned, by one or few developers; others have very wide ownership. Focus and ownership are related but different phenomena, both with strong effect on software quality. Prior studies have mostly targeted ownership; the measures of ownership used have generally been based on either simple counts, information-theoretic views of ownership, or social-network views of contribution patterns. We argue for a more general conceptual view that unifies developer focus and artifact ownership. We analogize the developer-artifact contribution network to a predator-prey food web, and draw upon ideas from ecology to produce a novel, and conceptually unified view of measuring focus and ownership. These measures relate to both cross-entropy and Kullback-Liebler divergence, and simultaneously provide two normalized measures of focus from both the developer and artifact perspectives. We argue that these measures are theoretically well-founded, and yield novel predictive, conceptual, and actionable value in software projects. We find that more focused developers introduce fewer defects than defocused developers. In contrast, files that receive narrowly focused activity are more likely to contain defects than other files.