Synergies and tradeoffs in software reuse – a systematic mapping study

Software reuse is a broadly accepted practice to improve software development quality and productivity. Although an object of study in software engineering since the late sixties, achieving effective reuse remains challenging for many software development organizations. This paper reports a systematic mapping study on how reusability relates to other non‐functional requirements and how different contextual factors influence the success of a reuse initiative. The conclusion is that the relationships are discussed rather informally, and that human, organizational, and technological domain factors are extremely relevant to a particular reuse context. This mapping study highlights the need for further research to better understand how exactly the different non‐functional requirements and context factors affect reusability. Copyright © 2016 John Wiley & Sons, Ltd.

[1]  Antony Powell,et al.  A practical strategy for industrial reuse improvement , 1998, Softw. Process. Improv. Pract..

[2]  Ricardo Valerdi,et al.  A framework for reusing systems engineering products , 2013, Syst. Eng..

[3]  Manoj Kumar,et al.  Agent oriented requirements engineering for a data warehouse , 2009, SOEN.

[4]  Dietmar P. F. Möller,et al.  Systems and Software Engineering , 2016 .

[5]  David C. Rine,et al.  Success factors for software reuse that are applicable across domains and businesses , 1997, SAC '97.

[6]  Kai Petersen,et al.  Guidelines for conducting systematic mapping studies in software engineering: An update , 2015, Inf. Softw. Technol..

[7]  Albert Endres Lessons learned in an industrial software lab (software development) , 1993, IEEE Software.

[8]  Liam O'Brien,et al.  A comparison of software reuse in software development communities , 2011, 2011 Malaysian Conference in Software Engineering.

[9]  Carl G. Davis,et al.  A Hierarchical Model for Object-Oriented Design Quality Assessment , 2002, IEEE Trans. Software Eng..

[10]  Victor R. Basili,et al.  How reuse influences productivity in object-oriented systems , 1996, CACM.

[11]  Kai Petersen,et al.  Systematic Mapping Studies in Software Engineering , 2008, EASE.

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

[13]  Julio Cesar Sampaio do Prado Leite,et al.  On Non-Functional Requirements in Software Engineering , 2009, Conceptual Modeling: Foundations and Applications.

[14]  Roland Trauter Design-related reuse problems-an experience report , 1998, Proceedings. Fifth International Conference on Software Reuse (Cat. No.98TB100203).

[15]  Ajay S. Vinze,et al.  A qualitative model for barriers to software reuse adoption , 1999, ICIS.

[16]  Wing Lam,et al.  A taxonomy of domain-specific reuse problems and their resolutions—version 1.0 , 1996, SOEN.

[17]  Andrea Valerio,et al.  The evaluation of framework reusability , 1997, SIAP.

[18]  Claes Wohlin,et al.  On the reliability of mapping studies in software engineering , 2013, J. Syst. Softw..

[19]  Avadhesh Kumar,et al.  Assessment of reusability in aspect-oriented systems using fuzzy logic , 2010, SOEN.

[20]  William B. Frakes,et al.  Software reuse: metrics and models , 1996, CSUR.

[21]  Hironori Washizaki,et al.  A metrics suite for measuring reusability of software components , 2003, Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717).

[22]  Alan Oxley,et al.  A proposed reusability attribute model for aspect oriented software product line components , 2010, 2010 International Symposium on Information Technology.

[23]  K. P. Yglesias Technical forum: information reuse parallels software reuse , 1993 .

[24]  Reidar Conradi,et al.  An empirical investigation of software reuse benefits in a large telecom product , 2008, TSEM.

[25]  Derek L. Nazareth,et al.  A Cost-benefit-model For Systematic Software Reuse , 2002, ECIS.

[26]  Bhargava Mithra Konda,et al.  A Systematic Mapping Study on Software Reuse , 2010 .

[27]  Jan Bosch,et al.  Enablers and inhibitors for speed with reuse , 2012, SPLC '12.

[28]  Christopher Scaffidi,et al.  Towards mining informal online data to guide component-reuse decisions , 2013, CBSE '13.

[29]  Johan Margono,et al.  Software Reuse Economics: Cost-benefit Analysis On A Large-scale Ada Project , 1992, International Conference on Software Engineering.

[30]  Donald R. Jones,et al.  A multi-level analysis of factors affecting software developers' intention to reuse software assets: An empirical investigation , 2007, Inf. Manag..

[31]  Soo Dong Kim,et al.  A framework for evaluating reusability of core asset in product line engineering , 2007, Inf. Softw. Technol..

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

[33]  Sadahiro Isoda,et al.  Experience report on software reuse project: its structure, activities, and statistical results , 1992, International Conference on Software Engineering.

[34]  Kevin J. Dooley,et al.  A performance measure for software reuse projects , 1999 .

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

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

[37]  Marco A. Wehrmeister,et al.  A Case Study to Evaluate Pros/Cons of Aspect- and Object-Oriented Paradigms to Model Distributed Embedded Real-Time Systems , 2008, 2008 5th International Workshop on Model-based Methodologies for Pervasive and Embedded Software.

[38]  Silvio Romero de Lemos Meira,et al.  A comparative study on software reuse metrics and economic models from a traceability perspective , 2005, IRI -2005 IEEE International Conference on Information Reuse and Integration, Conf, 2005..

[39]  Jeffrey S. Poulin,et al.  Technical opinion: reuse: been there, done that , 1999, CACM.

[40]  Nam-Yong Lee,et al.  An Empirical Study of Software Reuse with Special Attention to Ada , 1997, IEEE Trans. Software Eng..

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

[42]  Fazal-e Amin,et al.  REUSABILITY ASSESSMENT OF OPEN SOURCE COMPONENTS FOR SOFTWARE PRODUCT LINES , 2011 .

[43]  Will Tracz,et al.  Software reuse myths , 1988, SOEN.

[44]  B. G. Geetha,et al.  Reducing Efforts on Software Project Management using Software Package Reusability , 2009, 2009 IEEE International Advance Computing Conference.

[45]  Deepak Goyal,et al.  A hierarchical model for object-oriented design quality assessment , 2015 .

[46]  P. S. Grover,et al.  Reusability assessment for software components , 2009, SOEN.

[47]  Reghu Anguswamy,et al.  A study of reusability, complexity, and reuse design principles , 2012, Proceedings of the 2012 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement.

[48]  Pearl Brereton,et al.  Systematic literature reviews in software engineering - A systematic literature review , 2009, Inf. Softw. Technol..

[49]  Ajay S. Vinze,et al.  Barriers to adoption of software reuse: A qualitative study , 2003, Inf. Manag..

[50]  Nader Nada,et al.  Three empirical studies of a software reuse reference model , 2000, Softw. Pract. Exp..

[51]  Anna Grimán,et al.  Ontology Proposal for Quality Oriented Reuse , 2006, 2006 IEEE International Conference on Information Reuse & Integration.

[52]  Pavol Návrat,et al.  Software Reuse: Principles, Patterns, Prospects , 1997 .

[53]  Letha H. Etzkorn,et al.  Automated reusability quality analysis of OO legacy software , 2001, Inf. Softw. Technol..

[54]  Muthu Ramachandran,et al.  Software reuse guidelines , 2005, IRI -2005 IEEE International Conference on Information Reuse and Integration, Conf, 2005..

[55]  Soo Dong Kim,et al.  Framework for evaluating reusability of Component-as-a-Service (CaaS) , 2013, 2013 5th International Workshop on Principles of Engineering Service-Oriented Systems (PESOS).

[56]  Alexander Egyed,et al.  A systematic mapping study of search-based software engineering for software product lines , 2015, Inf. Softw. Technol..

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

[58]  Sadahiro Isoda,et al.  Success factors of systematic reuse , 1994, IEEE Software.

[59]  Arun Sharma,et al.  A soft computing based approach to estimate reusability of software components , 2010, ACM SIGSOFT Softw. Eng. Notes.

[60]  Li Ying,et al.  Test Case Reusability Metrics Model , 2010, 2010 2nd International Conference on Computer Technology and Development.

[61]  John Favaro,et al.  What price reusability?: a case study , 1991, SETA1.

[62]  A. Krishnan,et al.  Overview analysis of reusability metrics in software development for risk reduction , 2010, 2010 International Conference on Innovative Computing Technologies (ICICT).

[63]  Pearl Brereton,et al.  Performing systematic literature reviews in software engineering , 2006, ICSE.

[64]  Carlos José Pereira de Lucena,et al.  On the Reuse and Maintenance of Aspect-Oriented Software: An Assessment Framework , 2003, SBES.

[65]  Kathryn P. Yglesias Information Reuse Parallels Software Reuse , 1993, IBM Syst. J..

[66]  Fevzi Belli,et al.  Dependability and Software Reuse -- Coupling Them by an Industrial Standard , 2013, 2013 IEEE Seventh International Conference on Software Security and Reliability Companion.

[67]  Reidar Conradi,et al.  An empirical study of developers views on software reuse in statoil ASA , 2006, ISESE '06.

[68]  Raymond A. Paul Metrics-guided reuse , 1995, Proceedings of 7th IEEE International Conference on Tools with Artificial Intelligence.

[69]  Khurram Mustafa,et al.  An Empirical Validation of Object Oriented Design Quality Metrics , 2007, J. King Saud Univ. Comput. Inf. Sci..

[70]  Silvio Romero de Lemos Meira,et al.  A software component quality framework , 2010, ACM SIGSOFT Softw. Eng. Notes.

[71]  Stephane Doublait Standard reuse practices: many myths vs. a reality , 1997, STAN.

[72]  Yogesh Singh,et al.  Software reusability assessment using soft computing techniques , 2011, SOEN.

[73]  Reghu Anguswamy,et al.  Factors Affecting the Design and Use of Reusable Components , 2013 .

[74]  Reidar Conradi,et al.  Quality, productivity and economic benefits of software reuse: a review of industrial studies , 2007, Empirical Software Engineering.

[75]  Uday R. Kulkarni,et al.  Strategies for Software Reuse: A Principal Component Analysis of Reuse Practices , 2003, IEEE Trans. Software Eng..

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

[77]  Renata Pontin de Mattos Fortes,et al.  Software reuse: The Brazilian industry scenario , 2008, J. Syst. Softw..

[78]  Sherzod Turaev,et al.  Reusable software component life cycle , 2011 .

[79]  Juan Manuel Dodero,et al.  Metrics-based evaluation of learning object reusability , 2011, Software Quality Journal.

[80]  Fazal-e-Amin,et al.  An evolutionary study of reusability in Open Source Software , 2012, 2012 International Conference on Computer & Information Science (ICCIS).

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

[82]  L. P. Babenko Reuse problems in software engineering , 1999 .

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

[84]  Chris F. Kemerer,et al.  Incentive compatibility and systematic software reuse , 2001, J. Syst. Softw..

[85]  Antony Powell,et al.  A practical strategy for industrial reuse improvement , 1998, Softw. Process. Improv. Pract..

[86]  Fatma Dandashi,et al.  A method for assessing the reusability of object-oriented code using a validated set of automated measurements , 2002, SAC '02.

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

[88]  Marcus A. Rothenberger,et al.  Project-Level Reuse Factors: Drivers for Variation within Software Development Environments , 2003, Decis. Sci..

[89]  Reidar Conradi,et al.  The REBOOT approach to software reuse , 1995, J. Syst. Softw..

[90]  Maurizio Morisio,et al.  Success and Failure Factors in Software Reuse , 2002, IEEE Trans. Software Eng..

[91]  Christopher J. Fox,et al.  Sixteen questions about software reuse , 1995, CACM.

[92]  Robert L. Glass,et al.  Reuse: What's Wrong with This Picture? , 1998, IEEE Softw..