This Article 
 Bibliographic References 
 Add to: 
Success and Failure Factors in Software Reuse
April 2002 (vol. 28 no. 4)
pp. 340-357

This paper aims at identifying some of the key factors in adopting or running a company-wide software reuse program. Key factors are derived from empirical evidence of reuse practices, as emerged from a survey of projects for the introduction of reuse in European companies: 24 such projects performed from 1994 to 1997 were analyzed using structured interviews. The projects were undertaken in both large and small companies, working in a variety of business domains, and using both object-oriented and procedural development approaches. Most of them produce software with high commonality between applications, and have at least reasonably mature processes. Despite that apparent potential for success, around one-third of the projects failed. Three main causes of failure were not introducing reuse-specific processes, not modifying nonreuse processes, and not considering human factors. The root cause was a lack of commitment by top management, or nonawareness of the importance of those factors, often coupled with the belief that using the object-oriented approach or setting up a repository seamlessly is all that is necessary to achieve success in reuse. Conversely, successes were achieved when, given a potential for reuse because of commonality among applications, management committed to introducing reuse processes, modifying nonreuse processes, and addressing human factors. While addressing those three issues turned out to be essential, the lower-level details of how to address them varied greatly: for instance, companies produced large-grained or small-grained reusable assets, did or did not perform domain analysis, did or did not use dedicated reuse groups, used specific tools for the repository or no tools. As far as these choices are concerned, the key point seems to be the sustainability of the approach and its suitability to the context of the company.

[1] J. Bayer, O. Flege, and P. Knauber, “PuLSE: A Methodology to Develop Software Product Lines,” Proc. Symp. Software Reusability (SSR '99), May 1999.
[2] L. Breiman, J. Friedman, R. Olshen, and C. Stone, Classification and Regression Trees. Wadsworth, 1984.
[3] B.W. Boehm, “Economic Analysis of Software Technology Investments,” Analytical Methods in Software Eng. Economics, T. Gulledge and W. Hutzler eds., 1993.
[4] D. Card, “Why Do So Many Reuse Programs Fail?” IEEE Software, pp. 114-115, Sept. 1994.
[5] ESI, The Vasie Project, 1998. Available athttp://www.esi.esVASIE.
[6] ESSI Software Best Practice, Summaries of ESSI Projects, European Commission Directorate General XIII, 1997. Available at .
[7] B. Everitt, Cluster Analysis, third ed. John Wiley, 1993.
[8] D. Fafchamps, “Organizational Factors and Reuse,” IEEE Software, pp. 31-41, Sept. 1994.
[9] R.C. Fichman and C.F. Kemerer, "Object Technology and Reuse: Lessons from Early Adopters," Computer, vol. 30, no. 10, Oct. 1997, pp. 47-59.
[10] W. Frakes and C. Fox, "Sixteen Questions about Software Reuse," Comm. ACM, June 1995, pp. 75-87.
[11] W.B. Frakes and C.J. Fox, “Quality Improvement Using a Software Reuse Failures Model,” IEEE Trans. Software Eng., vol. 23, no. 4, pp. 274-279, Apr. 1996.
[12] W.B. Frakes and S. Isoda, “Success Factors of Systematic Reuse,” IEEE Software, pp. 14-19, Sept. 1994.
[13] M.L. Griss, “Software Reuse: From Library to Factory,” IBM System J., vol. 32, no. 4, 1993.
[14] M.L. Griss and M. Wosser, “Making Reuse Work at Hewlett-Packard,” IEEE Software, pp. 105-107, Jan. 1995.
[15] M.L. Griss, “Software Reuse: Objects and Frameworks are not Enough,” Object Magazine, pp. 77-87, Feb. 1995.
[16] M.L. Griss, P. Jonsson, and I. Jacobson, Software Reuse. Addison-Wesley, 1997.
[17] S. Isoda, “Experiences of a Software Reuse Project,” J. System and Software, vol. 30, no. 3, pp. 171-186, Sept. 1995.
[18] R. Joos, “Software Reuse at Motorola,” IEEE Software, pp. 42-47, Sept. 1994.
[19] C.M. Judd, E.R. Smith, and L.H. Kidder, Research Methods in Social Relations, sixth ed. Holt Rinehart and Winston, 1991.
[20] B. Kain, “Pragmatics of Reuse in the Enterprise,” Object Magazine, pp. 55-58, Feb. 1994.
[21] E.A. Karlsson, Software Reuse. John Wiley&Sons, 1995.
[22] C. Krueger, “Software Reuse,” ACM Computing Surveys, June 1992, pp. 131‐183.
[23] W.C. Lim, "Effects of Reuse on Quality, Productivity, and Economics," IEEE Software, Sept. 1994, pp. 23-30.
[24] N.Y. Lee and C.R. Litecky, “An Empirical Study of Software Reuse with Special Attention to Ada,” IEEE Trans. Software Eng., vol. 23, no. 9, pp. 537-549, Sept. 1997.
[25] H. Mili, F. Mili, and A. Mili, Reusing Software: Issues and Research Directions IEEE Trans. Software Eng., vol. 21, no. 6, pp. 528-562, June 1995.
[26] M. Morisio, C. Tully, and M. Ezran, “Diversity in Reuse Processes,” IEEE Software, pp. 56-63, July/Aug. 2000.
[27] M. Paci and S. Hallsteinsen, Experiences in Software Evolution and Reuse, 1997.
[28] A. Porter and R. Selby, "Empirically Guided Software Development Using Metric-Based Classification Trees," IEEE Software, no. 7, pp. 46-54, 1990.
[29] J. Poulin, "Reuse: "Been There, Done That," Comm. ACM, Vol. 42, No. 5, May 1999, pp. 98-100.
[30] J. Poulin, Measuring Software Reuse. Addison Wesley, 1996.
[31] J. Poulin, “Populating Software Repositories: Incentives and Domain-Specific Software,” J. System and Software, vol. 30, no. 3, pp. 187-199, Sept. 1995.
[32] D. Rine and R. Sonnemann, "Investments in Reusable Software: A Study of Software Reuse Investment Success Factors," to appear in J. Systems and Software, 1997
[33] B.C. Seaman, “Qualitative Methods in Empirical Studies of Software Engineering,” IEEE Trans. Software Eng., vol. 25, no. 4, pp. 557-572, July 1999.
[34] W. Tracz, “Confessions of a Used-Program Salesman: Lessons Learnt,” Proc. Symp. Software Reliability, (SSR 95), pp. 11-13, 1995.
[35] D.M. Weiss and C.T.R. Lai, Software Product-Line Engineering: A Family-Based Software Development Approach. Addison-Wesley, 1999.

Index Terms:
survey, software reuse, empirical study
M. Morisio, M. Ezran, C. Tully, "Success and Failure Factors in Software Reuse," IEEE Transactions on Software Engineering, vol. 28, no. 4, pp. 340-357, April 2002, doi:10.1109/TSE.2002.995420
Usage of this product signifies your acceptance of the Terms of Use.