skip to main content
research-article

An empirical investigation of software reuse benefits in a large telecom product

Published: 27 June 2008 Publication History

Abstract

Background. This article describes a case study on the benefits of software reuse in a large telecom product. The reused components were developed in-house and shared in a product-family approach. Methods. Quantitative data mined from company repositories are combined with other quantitative data and qualitative observations. Results. We observed significantly lower fault density and less modified code between successive releases of the reused components. Reuse and standardization of software architecture and processes allowed easier transfer of development when organizational changes happened. Conclusions. The study adds to the evidence of quality benefits of large-scale reuse programs and explores organizational motivations and outcomes.

References

[1]
Baldassarre, M. T., Bianchi, A., Caivano, D., and Visaggio, G. 2005. An industrial case study on reuse oriented development. In Proceedings of the 21st IEEE International Conference on Software Maintenance (ICSM'05), 283--292.
[2]
Basili, V. R. 1990. Viewing maintenance as reuse-oriented software development. IEEE Softw. 7, 1, 19--25.
[3]
Basili, V. R., Briand, L. C., and Melo, W. L. 1996. How software reuse influences productivity in object-oriented systems. Comm. ACM 39, 10, 104--116.
[4]
Bosch, J. 2000. Design and Use of Software Architecture: Adpoting and Evolving a Product-Line Approach. Addison-Wesley.
[5]
Böckle, G., Clements, P., Mcgregor, J. D., Muthig, D., and Schmid, K. 2004. Calculating ROI for software product lines. IEEE Software 21, 3, 23--31.
[6]
Clements, P. and Northrop, L. M. 2001. Software Product Lines: Practices and Patterns. Addison-Wesley.
[7]
Cooper, D. R. and Schindler, P. S. 2001. Business Research Methods. McGraw-Hill International, 7th edition.
[8]
Crnkovic, I. and Larsen, M. 2002. Building Reliable Component-Based Software Systems. Artech House Publishers.
[9]
Devanbu, P., Karstu, S., Melo, W., and Thomas, W. 1996. Analytical and empirical evaluation of software reuse metrics. In Proceedings of the 18th International Conference on Software Engineering (ICSE'96), 189--199.
[10]
Dybå, T., Kampenes, V., and Sjøberg, D. I. K. 2006. A systematic review of statistical power in software engineering experiments. J. Inform. Softw. Tech. 48, 8, 745--755.
[11]
Fenton, N. E. and Ohlsson, N. 2000. Quantitative analysis of faults and failures in a complex software system. IEEE Trans. Softw. Eng. 26, 8, 797--814.
[12]
Flyvbjerg, B. 2004. Five misunderstandings about case-study research. In Seale, C., Gobo, G., Gubrium, J. F. and Silverman, D. Qualitative Research Practice. London and Thousand Oaks, CA, Sage. 420--434.
[13]
Frakes, W. B. and Terry, C. 1996. Software reuse: metrics and models. ACM Comput. Surv. 28, 2, 415--435.
[14]
Frakes, W. B. and Succi, G. 2001. An industrial study of reuse, quality and productivity. J. Syst. Softw. 57, 99--106.
[15]
Gigerenzer, G. Mindless statistics. J. Socio-Eco. 33, 587--606.
[16]
Glass, R. L. 2001. Frequently forgotten fundamental facts about software engineering. IEEE Softw. 18, 3, 112, 110--111.
[17]
Glass, R. L. 2002. Predicting future maintenance cost, and how we're doing it wrong. IEEE Softw. 19, 6, 112, 111.
[18]
Graves, T. L., Karr, A. F., Marronm, J. S., and Siy, H. 2000. Predicting fault incidence using software change history. IEEE Trans. Softw. Eng. 26, 7, 653--661.
[19]
Hallsteinsen, S. and Paci, M. (Eds.) 1997. Experiences in Software Evolution and Reuse. IESE 2005. http://www.jese.fraunhofer.de/phg/iese/index.jsp Springer.
[20]
IESE. 2005. http://www.iese.fraunhofer.de/fhg/iese/index.jsp.
[21]
Jacobson, I. Griss, M., and Jonsson, P. 1997. Software Reuse: Architecture, Process and Organization for Business Success. ACM Press.
[22]
Johnson, R. E. and Foote, B. 1998. Designing reusable classes. J. Object-Oriented Prog. 1, 3, 26--49.
[23]
Karlsson, E.-A. (Ed.) 1995. Software Reuse, a Holistic Approach. John Wiley & Sons.
[24]
Kitchenham, B. A., Pickard, L., and Pfleeger, S. L. 1995. Case studies for method and tool evaluation. IEEE Softw. 12, 4, 52--62.
[25]
Kitchenham, B. A. and Pickard, L. M. 1998. Evaluating software engineering methods and tools, part 10: designing and running a quantitative case study. ACM SIGSOFT Softw. Eng. Notes 23, 3, 20--22.
[26]
Kitchenham, B. A., Kutay, C., Jeffery, R., and Connaughton, C. 2006. Lessons learned from the analysis of large-scale corporate databases. In Proceedings of the 28th International Conference on Software Engineering and Co-located Workshops (ICSE'06), Experience Papers, 439--444.
[27]
Kline, R. B. 2004. Beyond Significance Testing. Reforming Data Analysis Methods in Behavioural Research. American Psychological Association.
[28]
Krueger, C. 2002. Eliminating the adoption barrier. IEEE Softw. 19, 4, 29--31.
[29]
Lee, A. S. and Baskerville, R. L. 2003. Generalizing generalizability in information systems research. Inform. Syst. Res. 14, 3, 221--243.
[30]
Lim, W. C. 1996. Reuse economics: a comparison of seventeen models and directions for future research. In Proceedings of the 4th Intl Conference on Software Reuse (ICSR'96), 41--50.
[31]
Lim, W. C. 1994. Effect of reuse on quality, productivity and economics. IEEE Softw. 11, 5, 23--30.
[32]
Malaiya, K. Y. and Denton, J. 2000. Module size distribution and defect density. In Proceedings of the 11th International Symposium on Software Reliability Engineering (ISSRE'00), 62--71.
[33]
Mcgregor, J. D., Northrop, L. M., Jarred, S., and Pohl, K. 2002. Initiating software product lines. IEEE Softw. 19, 4, 24--27.
[34]
Mcilroy, D. 1969. Mass-produced software components. In Proceedings of Software Engineering Concepts and Techniques, 1968 NATO Conference on Software Engineering, Buxton, J.M., Naur, P., Randell, B. (eds.), 138--155, available through Petroceli/Charter, New York, 1969.
[35]
Mili, A., Fowler Chmiel, S., Gottumkkala, R., and Zhang, L. 2000. An integrated cost model for software reuse. In Proceedings of the 22nd International Conference on Software Engineering (ICSE'00), 157--166.
[36]
Mintzberg, H. 1993. Structure in Fives: Designing Effective Organizations. Prentice Hall. Cited in
[37]
Mockus, A., Zhang, P., and Li, P. L. 2005. Predictors of customer perceived software quality. In Proceedings of the 27th International Conference on Software Engineering (ICSE'05), 225--233.
[38]
Mohagheghi, P., Conradi, R., Killi, O. M., and Schwarz, H. 2004. An empirical study of software reuse vs. defect-density and stability. In Proceedings of the 26th International Conference on Software Engineering (ICSE'04), 282--292.
[39]
Mohagheghi, P. and Conradi, R. 2004. An empirical study of software change: origin, acceptance rate, and functionality vs. quality attributes. In Proceedings of the ACM-IEEE International Symposium on Empirical Software Engineering (ISESE'04), 7--16.
[40]
Mohagheghi, P. 2004. The Impact of Software Reuse and Incremental Development on the Quality of Large Systems. PhD thesis, NTNU, http://www.idi.ntnu.no/grupper/su/publ/phd/mohagheghi-thesis-10jul04-final.pdf. ISBN 82-471-6408-6.
[41]
Mohagheghi, P., Conradi, R., and Børretzen, J. A. 2006. Revisiting the problem of using problem reports for quality assessment. In Proceedings of the 28th International Conference on Software Engineering and Co-located Workshops (ICSE'06), 4th Workshop on Software Quality (WoSQ), 45--50.
[42]
Mohagheghi, P. and Conradi, R. 2007. Quality, productivity and economic benefits of software reuse: a review of industrial studies. Empir. Softw. Eng. J. 12, 15, 471--516.
[43]
Morisio, M., Romano, D., and Stamews, I. 2002. Quality, productivity, and learning in framework-based development: an exploratory case study. IEEE Trans. Softw. Eng. 28, 9, 876--888.
[44]
Ostrand, T. J. and Weyuker, E. J. 2002. The Distribution of faults in a large industrial software system. In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA'02), ACM SIGSOFT Softw. Eng. Notes 27, 4, 55--64.
[45]
Ostrand, T. J., Weyuker, E. J., and Bell, R. M. 2004. Where the bugs are. In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA'04), ACM SIGSOFT Softw. Eng. Notes 29, 4, 86--96.
[46]
Pfleeger, S. L. 2005. Soup or art? The role of evidential force in empirical software engineering. IEEE Softw. 22, 1, 66--73.
[47]
Ramachandran, M. and Fleischer, W. 1996. Design for large scale software reuse: an industrial case study. In Proceedings of the 4th International Conference on Software Reuse (ICSR'96), 104--111.
[48]
Ramesh, V., Glass, R. L., and Vessey, I. 2004. Research in computer science: an empirical study. J. Syst. Softw. 70, 165--176.
[49]
Rational 2005. IBM Rational Software http://www-306.ibm.com/software/rational/
[50]
Rosenberg, J. 1997. Some misconceptions about lines of code. In Proceedings of the 4th International Symposium on Software Metrics (Metrics'97), 137--142.
[51]
Schwarz, H. and Killi, O. M. 2003. An Empirical Study of Quality Attributes of the GSN System at Ericsson. NTNU master's thesis, NTNU. http://www.idi.ntnu.no/grupper/su/su-diploma-2003/index.html
[52]
SEI 2005. http://www.sei.cmu.edu/.
[53]
Selby, W. 2005. Enabling reuse-based software development of large-scale systems. IEEE Trans. Softw. Eng. 31, 6, 495--510.
[54]
SEVO 2004. http://www.idi.ntnu.no/grupper/su/sevo/.
[55]
SPIQ - Software Process Improvement for better Quality 2000. http://www.geomatikk.no/spiq/.
[56]
Succi, G., Benedicenti, L., and Vernazza, T. 2001. Analysis of the effects of software reuse on customer satisfaction in an RPG environment. IEEE Trans. Softw. Eng. 27, 5, 473--479.
[57]
Thomas, W. M., Delis, A., and Basili, V. R. 1997. An analysis of errors in a reuse-oriented development environment. J. Syst. Softw. 38, 3, 211--224.
[58]
Yin, R. K. 2003. Case Study Research, Design and Methods. Sage Publications.
[59]
Zhang, W. and Jarzabek, S. 2005. Reuse without compromising performance: industrial experience from RPG software product line for mobile devices. In Proceedings of the 9th International Software Product Line Conference (SPLC'05), 57--69.

Cited By

View all
  • (2024)Understanding and evaluating software reuse costs and benefits from industrial cases—A systematic literature reviewInformation and Software Technology10.1016/j.infsof.2024.107451171:COnline publication date: 1-Jul-2024
  • (2022)Don’t Reinvent the Wheel: Towards Automatic Replacement of Custom Implementations with APIs2022 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME55016.2022.00046(394-398)Online publication date: Oct-2022
  • (2021)Overcoming metric diversity in meta-analysis for software engineering: proposed approach and a case study on its usage on the effects of software reuseProceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3468264.3473488(1677-1679)Online publication date: 20-Aug-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Software Engineering and Methodology
ACM Transactions on Software Engineering and Methodology  Volume 17, Issue 3
June 2008
133 pages
ISSN:1049-331X
EISSN:1557-7392
DOI:10.1145/1363102
Issue’s Table of Contents
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]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 27 June 2008
Accepted: 01 March 2007
Revised: 01 January 2006
Received: 01 February 2005
Published in TOSEM Volume 17, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Software reuse
  2. fault density
  3. product family
  4. risks
  5. standardization

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

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

Other Metrics

Citations

Cited By

View all
  • (2024)Understanding and evaluating software reuse costs and benefits from industrial cases—A systematic literature reviewInformation and Software Technology10.1016/j.infsof.2024.107451171:COnline publication date: 1-Jul-2024
  • (2022)Don’t Reinvent the Wheel: Towards Automatic Replacement of Custom Implementations with APIs2022 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME55016.2022.00046(394-398)Online publication date: Oct-2022
  • (2021)Overcoming metric diversity in meta-analysis for software engineering: proposed approach and a case study on its usage on the effects of software reuseProceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3468264.3473488(1677-1679)Online publication date: 20-Aug-2021
  • (2020)The state of adoption and the challenges of systematic variability management in industryEmpirical Software Engineering10.1007/s10664-019-09787-625:3(1755-1797)Online publication date: 4-Apr-2020
  • (2019)Reusing Code from StackOverflow: The Effect on Technical Debt2019 45th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)10.1109/SEAA.2019.00022(87-91)Online publication date: Aug-2019
  • (2018)What software reuse benefits have been transferred to the industry? A systematic mapping studyInformation and Software Technology10.1016/j.infsof.2018.06.003103(1-21)Online publication date: Nov-2018
  • (2018)Monitoring and Maintenance of Telecommunication Systems: Challenges and Research PerspectivesEngineering Software Systems: Research and Praxis10.1007/978-3-319-99617-2_11(166-172)Online publication date: 1-Sep-2018
  • (2017)Unit Verification Effects on Reused Components in Sequential Project Releases2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)10.1109/SEAA.2017.63(74-82)Online publication date: Aug-2017
  • (2017)A Mathematical Model for Evaluation of Data Analytics Implementation Alternatives2017 IEEE 21st International Enterprise Distributed Object Computing Workshop (EDOCW)10.1109/EDOCW.2017.21(79-84)Online publication date: Oct-2017
  • (2017)Evaluation of Application Architecture Change Cases: Building Blocks Reusability Assessment MethodBusiness Information Systems Workshops10.1007/978-3-319-69023-0_14(150-162)Online publication date: 18-Oct-2017
  • Show More Cited By

View Options

Login options

Full Access

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