This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
An Empirical Study of Software Reuse with Special Attention to Ada
September 1997 (vol. 23 no. 9)
pp. 537-549

Abstract—Over the past several decades, numerous software technologies have been developed for overcoming the software crisis. Among these technologies, reuse has been recognized as one of the most important software technologies. Recently, it has gained substantial attention as a possible solution to the software crisis in Ada and other software communities. The purpose of this empirical study is to examine how organizations actually exploit reuse technologies and evaluates how reuse factors affect the rate of reuse in an organization. This study is an attempt to enhance the measurement of the rate of reuse and the effectiveness of reuse by establishing conceptual foundations in the literature for reuse and conducting an empirical investigation of organizations using Ada technology. This study differentiated software reuse into six criteria: domain, human, tool, organization, software metrics, and environment. The results of this study show that the rate of reuse significantly depends upon reuse capability, software development effort, object-oriented design capability, repository development effort, Ada technology capability, and domain capability.

[1] R.D. Banker and R.J. Kauffman, "Reuse and Productivity in Integrated Computer-Aided Software Engineering: An Empirical Study," MIS Quarterly, vol. 15, no.3, Sept. 1991, pp. 375-401.
[2] V. Basili, "Software Development: A Paradigm for the Future," Proc. 13th Int'l Comp. Software Applications Conf., IEEE CS Press, Los Alamitos, Calif., 1989, pp. 471-485.
[3] V.R. Basili, "Viewing Maintenance as Reuse-Oriented Software Development," IEEE Software, vol. 7, no. 1, pp. 19-25, Jan. 1990.
[4] V.R. Basili, G. Caldiera, and G. Cantone, "A Reference Architecture for the Component Factory", ACM Trans. Software Eng. and Methodology, vol. 1, no. 1, pp. 53-80, Jan. 1992.
[5] V.R. Basili and H.D. Rombach, "The TAME Project: Towards Improvement-Oriented Software Environments," IEEE Trans. Software Eng., Vol. 14, No. 6, 1988, pp. 758-773.
[6] V.R. Basili and H.D. Rombach, "Toward A Comprehensive Framework for Reuse: A Reuse-Enabling Software Evolution Environment," Technical Report (CS-TR-2158), Computer Science Dept., Univ. of Maryland, College Park, Md., 1988.
[7] V.R. Basili, R.W. Selby, and D.H. Hutchens, "Experimentation in Software Engineering," IEEE Trans. Software Eng., vol. 12, pp. 733-743, 1986.
[8] D. Bauer, "A Reusable Parts Center," IBM Systems J., vol. 32, no. 4, pp. 620-624, 1993.
[9] E.V. Berard, "Software Reusability Cannot be Considered in a Vacuums," IEEE Proc. COMPCON, pp. 390-391,San Francisco, Calif., 1987.
[10] H. Beyer and K. Holtzblatt, "Calling Down The Lightning," IEEE Software, pp. 106-113, Sept. 1994.
[11] T.J. Biggerstaff and C. Richter, "Reusability Framework, Assessment, and Directions," IEEE Software, vol. 4, no. 2, pp. 41-49, Mar. 1987.
[12] T.J. Biggerstaff and A.J. Perlis, Software Reusability: Volume I: Concepts and Models. ACM Press, A Division of the Association for Computing Machinery, 1989.
[13] T.J. Biggerstaff and A.J. Perlis, Software Reusability: Volume II: Applications and Experience, ACM Press, A Division of the Association for Computing Machinery, 1989.
[14] B. Boehm, Software Engineering Economics, Prentice Hall, Upper Saddle River, N.J., 1981, pp. 533-535.
[15] B.W. Boehm, "A Spiral Model of Software Development and Enhancement," ACM SIGSOFT Software Eng. Notes, vol. 11, no. 4, pp. 14-24, Aug. 1986.
[16] B.W. Boehm, "Improving Software Productivity," Computer, vol. 20, no. 9, pp. 43-57, 1987.
[17] B. Boehm. and R. Ross, "Theory W Software Project Management: Principles and Examples," IEEE Trans. Software Eng., July 1989, pp. 902-916.
[18] G. Booch, Software Components with Ada. Benjamin-Cummings, 1987.
[19] G. Booch, Software Eng. with Ada, second edition. Benjamin/Cummings, 1987.
[20] G. Booch, "The Construction for Complex Systems from Reusable Software Components," Ada Technology for Command&Control by the AWIS Technology Council TRW Federal Systems Group, 1988.
[21] G. Booch, Object Oriented Design with Applications, Benjamin/Cummings Publishing Company, Inc., Redwood City, Calif., 1991.
[22] G. Booch, "Coming of Age in an Object-Oriented World," IEEE Software, pp. 33-41, Nov. 1994.
[23] G.M. Bowen, "An Organized, Devoted, Project-Wide Reuse Effort," ACM Ada Letters, vol. 12, no. 1, pp. 43-52, Jan./Feb. 1992.
[24] M.J. Cavaliere, "Reusable Code at the Hartford Insurance Group," IIT Proc. Workshop Reusability in Programming, 1983.
[25] G. Caldiera and V.R. Basili, "Identifying and Qualifying Reusable Software Components," Computer, pp .61-70, Feb. 1991.
[26] D. Card, “Why Do So Many Reuse Programs Fail?” IEEE Software, pp. 114-115, Sept. 1994.
[27] J.R. Cater, "Ada 9X Reusable Components, ACM Ada Letter, vol. 12, no. 2, pp. 91-96, Apr. 1992.
[28] R. Conn, "The Ada Software Repository," IEEE Proc. COMPCON, pp. 372-375,San Francisco, Calif., 1987.
[29] L.J. Cronbach, "Coefficient Alpha and The Internal Structure of Tests," Psychometrika vol. 16, pp. 297-334, 1951.
[30] B. Curtis, "Cognitive Issues in Reusability," Workshop on Reusability in Programming, ITT Programming, pp. 192-197, 1988.
[31] W.W. Daniel, Applied Nonparametric Statistic, second edition. Boston, Mass.: PWS-Kent, 1990.
[32] M. Diab, "Software Reuse Repository," IEEE Proc. Fourth Ann. Workshop Software Reuse,Reston, Va., 1991.
[33] J. Dog, "Cultural Barriers Slow Reusability," Datamation, vol. 35. no. 22, pp. 87-92, 1989.
[34] T.A. Durek, "Software Reuse Processes and Metrics," Unpublished Working Paper, TRW, System Division, Fairfax, Va., 1992.
[35] W.C. Emory and D.R. Cooper, Business Research Methods, fourth edition. Richard D. Irwin, Inc., 1991.
[36] D. Fafchamps, “Organizational Factors and Reuse,” IEEE Software, pp. 31-41, Sept. 1994.
[37] W.B. Frakes, "Software Reuse: Payoff and Transfer," Proc. AIAA Computing in Aerospace 8, pp. 829-831,Baltimore, Oct. 1991.
[38] W.B. Frakes, "Towards A Model of Design for Reuse," IEEE Proc. Fourth Ann. Workshop Software Reuse,Reston, Va., 1991.
[39] W. Frakes and C. Fox, "Sixteen Questions about Software Reuse," Comm. ACM, June 1995, pp. 75-87.
[40] W.B. Frakes and S. Isoda, “Success Factors of Systematic Reuse,” IEEE Software, pp. 14-19, Sept. 1994.
[41] W.B. Frakes and B.A. Nejmef, "Software Reuse Through Information Retrieval," IEEE Proc. COMPCON, pp. 380-384, 1987.
[42] W.B. Frakes and B.A. Nejmeh, "A Information System for Software Re-use," Proc. 10th Minnowbrook Workshop Software Reuse, pp. 142-151, 1987, Holmdel, N.J.: IEEE CS Press, 1988.
[43] M.L. Griss, “Software Reuse: From Library to Factory,” IBM System J., vol. 32, no. 4, 1993.
[44] M.L. Griss and M. Wosser, “Making Reuse Work at Hewlett-Packard,” IEEE Software, pp. 105-107, Jan. 1995.
[45] J.F. Hair, R.E. Anderson, and R.T. Tatham, Multivariate Data Analysis with Readings, second edition, p. 189. Macmillan, 1987.
[46] B. Henderson-Sellers and C. Freeman, "Cataloguing and Classification for Object Libraries," ACM SIGSOFT, Software Eng. Notes, vol. 17, no. 1, pp. 62-64, 1992.
[47] S. Henninger, "Using Iterative Refinement to Find Reusable Software," IEEE Software, pp. 48-59, Sept. 1994.
[48] E. Horowitz and J.B. Munson, "An Expansive View of Reusable Software," IEEE Trans. Software Eng., vol. 10, no. 5, pp. 477-487, 1984.
[49] C. Joes, "Globalization of Software Supply and Demand," IEEE Software, pp. 17-23, Nov. 1994.
[50] T.C. Jones, "Reusability in Programming: A Survey of the State-of-the Art," IEEE Trans. Software Eng., vol. 10, no. 5, pp. 484-494, 1984.
[51] R. Joos, "Software Reuse in an Industrial Environment," IEEE Proc. Fourth Ann. Workshop Software Reuse,Reston, Va., 1991.
[52] R. Joos, “Software Reuse at Motorola,” IEEE Software, pp. 42-47, Sept. 1994.
[53] J.C. Knight, "CASE Up On MIS Agenda," Software Magazine, pp. 32-36, Aug. 1989.
[54] J.C. Knight, "Reuse as a Technique for Achieving High Reliability," Proc. Third Ann. Workshop: Methods and Tools for Reuse,Syracuse, New York, June, 1990.
[55] J.C. Knight, "Issues in the Certification of Reusable Parts," IEEE Proc. Fourth Ann. Workshop Software Reuse,Reston, Va., 1991.
[56] P. Koltun and A. Hudson, "A Reuse Maturity Model," IEEE Proc. Fourth Ann. Workshop Software Reuse,Reston, Va., 1991.
[57] C. Krueger, “Software Reuse,” ACM Computing Surveys, June 1992, pp. 131‐183.
[58] R.G. Lanergan and C.A. Grasso, "Software Engineering with Reusable Designs and Code," IEEE Trans. Software Eng., vol. 10, no. 5 pp. 498-501, 1984.
[59] N.Y. Lee, "An Empirical Study of Software Reuse Processes and Reusable Software Components with Special Attention to Ada," doctoral dissertation, Mississippi State Univ., Dec. 1993.
[60] E. Lieblein, "The Department of Defense Software Initiative-A Status Report," Comm. ACM, vol. 29, no. 8, pp. 734-743, 1986.
[61] W.C. Lim, "Effects of Reuse on Quality, Productivity, and Economics," IEEE Software, Sept. 1994, pp. 23-30.
[62] R. Martin, G. Jackoway, and C. Ranganathan, "Software Reuse Across Continents," IEEE Proc. Fourth Ann. Workshop Software Reuse,Reston, Va., 1991.
[63] Y. Matsumoto, "Some Experience in Promoting Reusable Software: Presentation in Higher Abstract Levels," IEEE Trans. Software Eng., vol. 10, no. 5, pp. 502-512, 1984.
[64] C. McClure, "The Three R's of Software Automation: Re-engineering, Repository," Reusability.Englewood Cliffs, N.J.: Prentice Hall, 1992.
[65] B. Meyer, "Reusability: The CASE for Object-Oriented Design," IEEE Software, vol. 4, no. 2, pp. 50-63, 1987.
[66] J. Moad, "Cultural Barriers Slow Reusability," Datamation, vol. 53, no. 22, Nov.15, pp. 87-92, 1989.
[67] J.S. Morrison, Software Reuse in Japan. Technology Transfer International, Inc., 6736 War Eagle Place, Colorado Springs, Col., 1992.
[68] P.A. Oberndorf, "The Common Ada Programming Support Environment (APSE) Interface Set (CAIS)," IEEE Trans. Software Eng., vol. 14, no. 6, pp. 742-748, 1988.
[69] J. O'Connor, C. Mansour, and J. Turner-Harris, G.H. Campbell JR., "Reuse in Command -Control Systems," IEEE Software, pp. 70-79, Sept. 1994.
[70] O. Oskarsson, "Reusability of Modules with Strictly Logical Data and Devices: a Case Study," ITT Proc. Reusability in Programming, 1983.
[71] J.S. Poulin, J.M. Caruso, and D.R. Hancock, "The Business Case for Software Reuse," IBM Systems J., vol. 32, no. 4, pp. 567-594, 1993.
[72] R. Prieto-Diaz, "Making Software Reuse Work: An Implementation Model," ACM SIGSOFT Software Eng. Notes, vol. 16, no. 3, pp. 61-68, 1991.
[73] R. Prieto-Diaz, "Status Report: Software Reusability," IEEE Software, pp. 61-66, May 1993.
[74] R. Prieto-Diaz and P. Freeman, "Classifying Software for Reusability," IEEE Software, pp. 6-16, 1987.
[75] P.D. Rogers, "A Taxonomy for Ada Software Components," PhD dissertation, Univ. of Houston, 1987.
[76] R.W. Selby, "Quantitative Studies of Software Reuse," Dept. of Information and Computer Science, Univ. of California at Irvine, 1987. (The National Science Foundation under grant CCR-8704311 with cooperation from the Defense Advanced Research Projects Agency under ARPA order 6108, program code 7T10).
[77] D. Sims, "US Funds Large R&D Program on Reuse," IEEE Software, pp. 107-109, July 1994.
[78] T.A. Standish, "An Essay on Software Reuse," IEEE Trans. Software Eng., vol. 10, no. 5, pp. 494-497, 1984.
[79] W. Staringer, "Constructing Applications from Reusable Components, IEEE Software, pp. 61-68, Sept. 1994.
[80] J.R. Tirso and H. Gregorius, "Management of Reuse at IBM," IBM Systems J., vol. 32, no. 4, pp. 612-615, 1993.
[81] W.J. Tracz, "Ada Reusability Efforts: A Survey of the State of the Practice," Proc. Fifth Ann. Joint Conf. Ada Technology and Washington Ada Symp., 1987.
[82] W.J. Tracz, "Software Reuse: Motivators and Inhibitors," IEEE Proc. of COMPCON, pp. 358-363,San Francisco, Calif., 1987.
[83] W.J. Tracz and S. Edwards, "Implementation Working Group Report," Reuse in Practice Workshop, Software Eng. Inst., Pittsburgh, Penn., 1989.
[84] G. Visaggio, "Process Improvement Through Data Reuse," IEEE Software, pp. 76-85, July 1994.
[85] M. Wasmund, "Implementing Critical Success Factors in Software Reuse," IBM Systems J., vol. 32, p. 606, 1993.
[86] P. Wegner, "Varieties of Reusability," Proc. ITT Workshop Reusability in Programming, pp. 30-44,Newport, RI, Sept. 1983.
[87] P. Wegner, "Capital-Intensive Software Technology," IEEE Software, vol. 1, no. 3, pp. 43-45, July 1984.
[88] B.W. Weide and W.F. Ogden, “Recasting Algorithms to Encourage Reuse,” IEEE Software, vol. 11, no. 5, Sept. 1994.
[89] S.N. Woodfield, D.W. Embley, and D.T. Scott, "Can Programmers Reuse Software?" IEEE Software, vol. 4, no. 4, pp. 52-59, 1987.
[90] S.N. Woodfield and D.W. Embley, "A Knowledge Structure for Reusing Abstract data Types," Proc. Ninth Int'l Conf. Software Eng., pp. 360-365,Monterey, Calif., Mar. 1987.
[91] K.P. Yglesias, "Information Reuse Parallels Software Reuse," IBM Systems J., vol. 32, no. 4, pp. 615-620, 1993.

Index Terms:
Ada, repository, software engineering, software metrics, software reuse, object-oriented technology, factor analysis, multiple regression analysis.
Citation:
Nam-Yong Lee, Charles R. Litecky, "An Empirical Study of Software Reuse with Special Attention to Ada," IEEE Transactions on Software Engineering, vol. 23, no. 9, pp. 537-549, Sept. 1997, doi:10.1109/32.629492
Usage of this product signifies your acceptance of the Terms of Use.