skip to main content
10.1145/1985793.1985860acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Ownership, experience and defects: a fine-grained study of authorship

Published: 21 May 2011 Publication History

Abstract

Recent research indicates that "people" factors such as ownership, experience, organizational structure, and geographic distribution have a big impact on software quality. Understanding these factors, and properly deploying people resources can help managers improve quality outcomes. This paper considers the impact of code ownership and developer experience on software quality. In a large project, a file might be entirely owned by a single developer, or worked on by many. Some previous research indicates that more developers working on a file might lead to more defects. Prior research considered this phenomenon at the level of modules or files, and thus does not tease apart and study the effect of contributions of different developers to each module or file. We exploit a modern version control system to examine this issue at a fine-grained level. Using version history, we examine contributions to code fragments that are actually repaired to fix bugs. Are these code fragments "implicated" in bugs the result of contributions from many? or from one? Does experience matter? What type of experience? We find that implicated code is more strongly associated with a single developer's contribution; our findings also indicate that an author's specialized experience in the target file is more important than general experience. Our findings suggest that quality control efforts could be profitably targeted at changes made by single developers with limited prior experience on that file.

References

[1]
Software errors cost u.s. economy $59.5 billion annually, http://www.nist.gov/public_affairs/releases/n02-10.htm.
[2]
Identifying reasons for software changes using historic databases, volume 0, Los Alamitos, CA, USA, August 2002. IEEE Computer Society.
[3]
Succession: Measuring transfer of code and developer productivity, Washington, DC, USA, June 2009. IEEE Computer Society.
[4]
L. Argote. Organizational Learning: Creating, Retaining, and Transferring Knowledge. Kluwer Academic Publishers, Norwell, MA, USA, 1999.
[5]
L. Argote, S. L. Beckman, and D. Epple. The persistence and transfer of learning in industrial settings. Manage. Sci., 36(2):140--154, 1990.
[6]
A. Bachmann and A. Bernstein. Software process data quality and characteristics: a historical view on open and closed source projects. In IWPSE-Evol '09, 2009.
[7]
R. D. Banker, G. B. Davis, and S. A. Slaughter. Software development practices, software complexity, and software maintenance performance: A field study. MANAGEMENT SCIENCE, 44(4):433--450, April 1998.
[8]
K. Beck. Embracing change with extreme programming. IEEE computer, 32(10):70--77, 1999.
[9]
J. Berkus. The 5 types of open source projects, 2007. March 20, 2007. http://www.powerpostgresql.com/5_types.
[10]
C. Bird, A. Bachmann, E. Aune, J. Duffy, A. Bernstein, V. Filkov, and P. Devanbu. Fair and balanced?: bias in bug-fix datasets. In ESEC/FSE '09, pages 121--130, New York, NY, USA, 2009. ACM.
[11]
C. Bird, N. Nagappan, B. Murphy, H. Gall, and P. Devanbu. An analysis of the effect of code ownership on software quality across windows, eclipse, and firefox. Technical report, University of California, Davis, 2010. Submitted to FSE 2010. http://wwwcsif.cs.ucdavis.edu/~bird/.
[12]
C. Bird, P. Rigby, E. Barr, D. Hamilton, D. German, and P. Devanbu. The Promises and Perils of Mining Git. In MSR 2009, 2009.
[13]
W. Boh, S. Slaughter, and J. Espinosa. Learning from experience in software development: A multilevel analysis. Management Science, 53(8):1315--1331, 2007.
[14]
F. Brooks. The mythical man-month. Addison-Wesley, 1995.
[15]
M. Cataldo, P. Wagstrom, J. Herbsleb, and K. Carley. Identification of coordination requirements: implications for the Design of collaboration and awareness tools. Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work, pages 353--362, 2006.
[16]
B. Curtis and H. Iscoe. N.(1988). A field study of the software design process for large systems. Communications of the ACM, 31(11):1268--1287.
[17]
B. Curtis, H. Krasner, and N. Iscoe. A field study of the software design process for large systems. communication of the ACM, 31(11):1268--1287, 1988.
[18]
B. Curtis, E. M. Soloway, R. E. Brooks, J. B. Black, K. Ehrlich, and H. R. Ramsey. Software psychology: the need for an interdisciplinary program. pages 150--164, 1987.
[19]
E. Darr, L. Argote, and D. Epple. The acquisition, transfer, and depreciation of knowledge in service organizations: Productivity in franchises. Management Science, 41(11):1750--1762, 1995.
[20]
J. A. Espinosa. Shared mental models and coordination in large-scale, distributed software development. PhD thesis, Pittsburgh, PA, USA, 2002.
[21]
M. Fischer, M. Pinzger, and H. Gall. Populating a release history database from version control and bug tracking systems. In ICSM '03, pages 23+, Washington, DC, USA, 2003. IEEE Computer Society.
[22]
D. Freedman. Ecological inference and the ecological fallacy. International encyclopedia of the social and behavioral sciences, pages 4027--4030, 2004.
[23]
T. Fritz, G. C. Murphy, and E. Hill. Does a programmer's activity indicate knowledge of code? In ESEC-FSE '07, pages 341--350, New York, NY, USA, 2007. ACM.
[24]
T. Girba, A. Kuhn, M. Seeberger, and S. Ducasse. How developers drive software evolution. In Eighth International Workshop on Principles of Software Evolution (IWPSE'05), pages 113--122, Washington, DC, USA, 2005. IEEE.
[25]
T. L. Graves, A. F. Karr, J. S. Marron, and H. Siy. Predicting fault incidence using software change history. IEEE Trans. Softw. Eng., 26(7):653--661, 2000.
[26]
J. D. Herbsleb and A. Mockus. An empirical study of speed and communication in globally distributed software development. IEEE Trans. Softw. Eng., 29(6):481--494, 2003.
[27]
S. Kan. Metrics and models in software quality engineering. Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA, 2002.
[28]
S. Kim, K. Pan, and E. E. J. Whitehead. Memories of bug fixes. In SIGSOFT '06/FSE-14, pages 35--45, New York, NY, USA, 2006. ACM.
[29]
S. Kim, T. Zimmermann, K. Pan, and J. Jr. Automatic identification of bug-introducing changes. In ASE '06, pages 81--90, Washington, DC, USA, 2006. IEEE Computer Society.
[30]
A. Meneely and L. Williams. Secure open source collaboration: an empirical study of linus' law. In CCS '09, pages 453--462, New York, NY, USA, 2009. ACM.
[31]
A. Mockus and D. M. Weiss. Predicting risk of software changes. Bell Labs Technical Journal, 5(2):169--180, 2000.
[32]
A. Mockus and D. M. Weiss. Predicting risk of software changes. Bell Labs Technical Journal, 5(2):169--180, 2000.
[33]
N. Nagappan, B. Murphy, and V. Basili. The influence of organizational structure on software quality: an empirical case study. In ICSE '08, pages 521--530. ACM, 2008.
[34]
M. Pinzger, N. Nagappan, and B. Murphy. Can developer-module networks predict failures? In SIGSOFT '08/FSE-16, pages 2--12, New York, NY, USA, 2008. ACM.
[35]
G. P. Pisano, R. M. J. Bohmer, and A. C. Edmondson. Organizational differences in rates of learning: Evidence from the adoption of minimally invasive cardiac surgery. Manage. Sci., 47(6):752--768, 2001.
[36]
J. Ratzinger, M. Pinzger, and H. Gall. Eq-mine: Predicting short-term defects for software evolution. In M. B. Dwyer and A. Lopes, editors, Fundamental Approaches to Software Engineering, volume 4422 of Lecture Notes in Computer Science, chapter 3, pages 12--26. Springer Berlin Heidelberg, Berlin, Heidelberg, 2007.
[37]
E. Raymond. The cathedral and the bazaar: musings on Linux and open source by an accidental revolutionary. O'Reilly & Associates, Inc. Sebastopol, CA, USA, 2001.
[38]
P. N. Robillard. The role of knowledge in software development. Communications of the ACM, 42(1):87--92, January 1999.
[39]
M. Sacks. On-the-Job Learning in the Software Industry. Corporate Culture and the Acquisition of Knowledge. Quorum Books, 88 Post Road West, Westport, CT 06881, 1994.
[40]
M. A. Schilling, P. Vidal, R. E. Ployhart, and A. Marangoni. Learning by doing something else: Variation, relatedness, and the learning curve. MANAGEMENT SCIENCE, 49(1):39--56, January 2003.
[41]
T. I. Seifert and B. Paech. Exploring the relationship of history characteristics and defect count: an empirical study. In DEFECTS '08, pages 11--15, New York, NY, USA, 2008. ACM.
[42]
R. Shatnawi and W. Li. The effectiveness of software metrics in identifying error-prone classes in post-release software evolution process. J. Syst. Softw., 81(11):1868--1882, 2008.
[43]
J. Śliwerski, T. Zimmermann, and A. Zeller. When do changes induce fixes? In MSR '05, pages 1--5. ACM, 2005.
[44]
D. Čubranić and G. C. Murphy. Hipikat: recommending pertinent software development artifacts. In ICSE '03, pages 408--418, Washington, DC, USA, 2003. IEEE Computer Society.
[45]
D. G. Wastell. Learning dysfunctions in information systems development: overcoming the social defenses with transitional objects. MIS Q., 23(4):581--600, 1999.
[46]
E. Weyuker, T. Ostrand, and R. Bell. Do too many cooks spoil the broth? using the number of developers to enhance defect prediction models. Empirical Software Engineering, 13(5):539--559, October 2008.
[47]
A. Zeller. Why Programs Fail, Second Edition: A Guide to Systematic Debugging. Morgan Kaufmann, 2 edition, June 2009.
[48]
Y. Zhou and H. Leung. Empirical analysis of object-oriented design metrics for predicting high and low severity faults. IEEE Trans. Softw. Eng., 32(10):771--789, 2006.

Cited By

View all
  • (2025)Refining Code-Line-Level Bugginess Identification: Getting the Best of Both Worlds by Fusing Syntactic and Semantic FeaturesACM Transactions on Software Engineering and Methodology10.1145/370745634:3(1-43)Online publication date: 23-Feb-2025
  • (2025)WIA-SZZ: Work item aware SZZEmpirical Software Engineering10.1007/s10664-025-10616-230:3Online publication date: 1-Mar-2025
  • (2024)Unveiling the Characteristics and Impact of Security Patch EvolutionProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering10.1145/3691620.3695488(1094-1106)Online publication date: 27-Oct-2024
  • Show More Cited By

Index Terms

  1. Ownership, experience and defects: a fine-grained study of authorship

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ICSE '11: Proceedings of the 33rd International Conference on Software Engineering
    May 2011
    1258 pages
    ISBN:9781450304450
    DOI:10.1145/1985793
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 21 May 2011

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. collaboration
    2. experience
    3. ownership
    4. software quality

    Qualifiers

    • Research-article

    Conference

    ICSE11
    Sponsor:
    ICSE11: International Conference on Software Engineering
    May 21 - 28, 2011
    HI, Waikiki, Honolulu, USA

    Acceptance Rates

    Overall Acceptance Rate 276 of 1,856 submissions, 15%

    Upcoming Conference

    ICSE 2025

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)34
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 08 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2025)Refining Code-Line-Level Bugginess Identification: Getting the Best of Both Worlds by Fusing Syntactic and Semantic FeaturesACM Transactions on Software Engineering and Methodology10.1145/370745634:3(1-43)Online publication date: 23-Feb-2025
    • (2025)WIA-SZZ: Work item aware SZZEmpirical Software Engineering10.1007/s10664-025-10616-230:3Online publication date: 1-Mar-2025
    • (2024)Unveiling the Characteristics and Impact of Security Patch EvolutionProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering10.1145/3691620.3695488(1094-1106)Online publication date: 27-Oct-2024
    • (2024)A Systematic Literature Review on the Influence of Enhanced Developer Experience on Developers' Productivity: Factors, Practices, and RecommendationsACM Computing Surveys10.1145/368729957:1(1-46)Online publication date: 7-Oct-2024
    • (2024)Enhancing Bug-Inducing Commit Identification: A Fine-Grained Semantic Analysis ApproachIEEE Transactions on Software Engineering10.1109/TSE.2024.346829650:11(3037-3052)Online publication date: Nov-2024
    • (2024)Navigating Expertise in Configurable Software Systems through the Maze of Variability2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER60148.2024.00053(450-454)Online publication date: 12-Mar-2024
    • (2024)Code Ownership: The Principles, Differences, and Their Associations with Software Quality2024 IEEE 35th International Symposium on Software Reliability Engineering (ISSRE)10.1109/ISSRE62328.2024.00044(379-390)Online publication date: 28-Oct-2024
    • (2024)Source code expert identification: Models and applicationInformation and Software Technology10.1016/j.infsof.2024.107445170(107445)Online publication date: Jun-2024
    • (2024)Metaheuristic-based cost-effective predictive modeling for DevOps project successApplied Soft Computing10.1016/j.asoc.2024.111834163:COnline publication date: 1-Sep-2024
    • (2024)The downside of functional constructs: a quantitative and qualitative analysis of their fix-inducing effectsEmpirical Software Engineering10.1007/s10664-024-10568-z30:1Online publication date: 22-Oct-2024
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media