Incentive compatibility and systematic software reuse

Abstract Systematic software reuse has emerged as a promising route to improved software development productivity and quality. Many large corporations have initiated systematic reuse programs, and many reuse frameworks have been developed to guide organizations in these efforts. Yet, in spite of this, systematic reuse in practice has been difficult to achieve. In this paper we argue that a key inhibitor has been the incentive conflict inherent in traditional programs of reuse. We reach this conclusion based on an analysis of interview data gathered from 15 projects across eight different sites in a company once viewed as a leader in the reuse movement. We found that one key contributor to the absence of widespread systematic reuse in this firm was a perception among project teams that reuse was incompatible with prevailing project team priorities and incentives, such as to complete projects on time and within budget. Based on this finding, we undertake a survey of different approaches to establishing reuse described in the literature, and analyze them to determine whether incentive incompatibility is inherent in the nature of software reuse for larger organizations. We conclude that it is not, and provide guidance on how such organizations can design an incentive-compatible program of reuse, i.e., one that generates a climate in which developers and teams view reuse as having a more favorable “value proposition” according to the prevailing incentives operating at the team level.

[1]  J. E. Gaffney,et al.  Software reuse—key to enhanced productivity: some quantitative models , 1989 .

[2]  Jeffrey S. Poulin,et al.  Populating software repositories: Incentives and domain-specific software , 1995, J. Syst. Softw..

[3]  Martin L. Griss,et al.  Making Reuse Work At Hewlett-Packard , 1995, IEEE Softw..

[4]  Christopher J. Fox,et al.  Quality Improvement Using A Software Reuse Failure Modes Model , 1996, IEEE Trans. Software Eng..

[5]  Ted Davis,et al.  The reuse capability model: a basis for improving an organization's reuse capability , 1993, [1993] Proceedings Advances in Software Reuse.

[6]  Dorothy Leon Ard-Barton Implementation Characteristics of Organizational Innovations , 1988 .

[7]  Wayne C. Lim,et al.  Effects of reuse on quality, productivity, and economics , 1994, IEEE Software.

[8]  Kathleen M. Eisenhardt,et al.  Control: Organizational and Economic Approaches , 1985 .

[9]  Rajiv D. Banker,et al.  Performance Evaluation Metrics for Information Systems Development: A Principal-Agent Model , 2015, Inf. Syst. Res..

[10]  David C. Rine,et al.  Investments in reusable software. A study of software reuse investment success factors , 1998, J. Syst. Softw..

[11]  E. Rogers,et al.  Diffusion of Innovations , 1964 .

[12]  John E. Gaffney,et al.  A general economics model of software reuse , 1992, International Conference on Software Engineering.

[13]  J. A. Ness,et al.  Tapping the Full Potential of ABC , 1995 .

[14]  David N. Card,et al.  Why do so many reuse programs fail? , 1994, IEEE Software.

[15]  Chris F. Kemerer,et al.  The Illusory Diffusion of Innovation: An Examination of Assimilation Gaps , 1999, Inf. Syst. Res..

[16]  Rebecca Joos Software reuse at Motorola , 1994, IEEE Software.

[17]  Bertrand Meyer,et al.  Object Success , 1995 .

[18]  Charles W. Krueger,et al.  Software reuse , 1992, CSUR.

[19]  Brian Henderson-Sellers,et al.  Cyclomatic Complexity: theme and variations , 1993, Australas. J. Inf. Syst..

[20]  Victor R. Basili,et al.  Identifying and qualifying reusable software components , 1991, Computer.

[21]  Shari Lawrence Pfleeger Measuring Reuse: A Cautionary Tale , 1996, IEEE Softw..

[22]  Martin Griss,et al.  The Economics of Software Reuse (Panel) , 1991, Conference on Object-Oriented Programming Systems, Languages, and Applications.

[23]  Shari Lawrence Pfleeger,et al.  Economics of reuse: issues and alternatives , 1990 .

[24]  Roy Rada,et al.  Standardizing reuse , 1997, CACM.

[25]  Chris F. Kemerer,et al.  Activity Based Costing for Component-Based Software Development , 2002, Inf. Technol. Manag..

[26]  Sadahiro Isoda,et al.  Experiences of a software reuse project , 1995, J. Syst. Softw..

[27]  Yeong R. Kim,et al.  Software Reuse: Survey and Research Directions , 1997, J. Manag. Inf. Syst..

[28]  Shari Lawrence Pfleeger,et al.  The economics of reuse: new approaches to modelling and assessing cost , 1994, Inf. Softw. Technol..

[29]  Martin L. Griss,et al.  Software Reuse: From Library to Factory , 1993, IBM Syst. J..

[30]  William G. Ouchi,et al.  Markets, Bureaucracies, and Clans. , 1980 .

[31]  Chris F. Kemerer,et al.  Object Technology and Reuse: Lessons from Early Adopters , 1997, Computer.

[32]  Steven P. Wartik,et al.  A phased reuse adoption model , 1999, J. Syst. Softw..

[33]  Ali Mili,et al.  Reusing Software: Issues and Research Directions , 1995, IEEE Trans. Software Eng..

[34]  Jeffrey S. Poulin,et al.  The Business Case for Software Reuse , 1993, IBM Syst. J..

[35]  Adele Goldberg,et al.  Succeeding With Objects: Decision Frameworks for Project Management , 1995 .

[36]  Terry Bollinger,et al.  Making reuse cost-effective , 1991, IEEE Software.

[37]  Michael A. Cusumano,et al.  A quantitative analysis of U.S. and Japanese practice and performance in software development , 1990 .

[38]  Danielle Fafchamps Organizational factors and reuse , 1994, IEEE Software.