Reusability Index: A Measure for Assessing Software Assets Reusability

The reusability of assets is usually measured through reusability indices. However, these indices either do not synthesize their constituent metrics into an aggregate or they do not capture all facets of reusability, such as structural characteristics, external qualities, and their documentation. To alleviate these shortcomings, we introduce a reusability index (REI) as a synthesis of various software metrics that cover a number of related reusability aspects. Furthermore, we evaluate its ability to quantify reuse, by comparing it to existing indices through a case study on 15 reusable open-source assets (i.e., libraries and frameworks). The results of the study suggest that the proposed index presents the highest predictive and discriminative power, it is the most consistent in ranking reusable assets, and the most strongly correlated to their levels of reuse.

[1]  Ioannis Stamelos,et al.  Layer assessment of object-oriented software: A metric facilitating white-box reuse , 2013, J. Syst. Softw..

[2]  Robert C. Martin Agile Software Development, Principles, Patterns, and Practices , 2002 .

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

[4]  T. R. Gopalakrishnan Nair,et al.  Estimation of software reusability: an engineering approach , 2010, SOEN.

[5]  Andy P. Field,et al.  Discovering Statistics Using Ibm Spss Statistics , 2017 .

[6]  Apostolos Ampatzoglou,et al.  An Embedded Multiple-Case Study on OSS Design Quality Assessment across Domains , 2013, 2013 ACM / IEEE International Symposium on Empirical Software Engineering and Measurement.

[7]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[8]  Ioannis Stamelos,et al.  Quantifying Reuse in OSS: A Large-Scale Empirical Study , 2014, Int. J. Open Source Softw. Process..

[9]  Ioannis Stamelos,et al.  A Bayesian Belief Network for Modeling Open Source Software Maintenance Productivity , 2016, OSS.

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

[11]  Elvira-Maria Arvanitou,et al.  A mapping study on design-time quality attributes and metrics , 2017, J. Syst. Softw..

[12]  Ian H. Witten,et al.  The WEKA data mining software: an update , 2009, SKDD.

[13]  Ioannis Stamelos,et al.  A methodology on extracting reusable software candidate components from open source games , 2012, MindTrek.

[14]  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).

[15]  Oliver Hummel,et al.  Structuring Software Reusability Metrics for Component-Based Software Development , 2012, ICSEA 2012.

[16]  Austen Rainer,et al.  Case Study Research in Software Engineering - Guidelines and Examples , 2012 .