Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Due to space limitations we present the 15 OSS projects that are used as a training set for the Backwards Linear Regression, together with the test set of the validation in Sect. 4.
- 2.
The number of downloads is retrieved from https://mvnrepository.com. The value is obtained by the “used by” artifacts tag which is expected to be more accurate.
- 3.
References
1061-1998: IEEE Standard for a Software Quality Metrics Methodology, IEEE Standards, IEEE Computer Society, 31 December 1998. Reaffirmed 9 December 2009
Ampatzoglou, A., Stamelos, I., Gkortzis, A., Deligiannis, I.: Methodology on extracting reusable software candidate components from open source games. In: Proceedings of the 16th International Academic MindTrek Conference, pp. 93–100. ACM, Finland (2012)
Ampatzoglou, A., Gkortzis, A., Charalampidou, S., Avgeriou, P.: An embedded multiple-case study on OSS design quality assessment across domains. In: 7th International Symposium on Empirical Software Engineering and Measurement (ESEM 2013), pp. 255–258. ACM/IEEE Computer Society, Baltimore, October 2013
Arvanitou, E.M., Ampatzoglou, A., Chatzigeorgiou, A., Galster, M., Avgeriou, P.: A mapping study on design-time quality attributes and metrics. J. Syst. Softw. 127, 52–77 (2017)
Bansiya, J., Davis, C.G.: A hierarchical model for object-oriented design quality assessment. IEEE Trans. Softw. Eng. 28(1), 4–17 (2002)
Bibi, S., Ampatzoglou, A., Stamelos, I.: A Bayesian belief network for modeling open source software maintenance productivity. In: Crowston, K., Hammouda, I., Lundell, B., Robles, G., Gamalielsson, J., Lindman, J. (eds.) OSS 2016. IAICT, vol. 472, pp. 32–44. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-39225-7_3
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994)
Constantinou, E., Ampatzoglou, A., Stamelos, I.: Quantifying reuse in OSS: a large-scale empirical study. Int. J. Open Source Softw. Process. (IJOSSP) 5, 1–19 (2014)
Field, A.: Discovering Statistics Using IBM SPSS Statistics. SAGE Publications Ltd., Thousand Oaks (2013)
Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., Witten, I.: The WEKA data mining software: an update. ACM SIGKDD Explor. Newsl. 11(1), 10–18 (2009)
Hristov, D.: Structuring software reusability metrics for component-based software development. In: 7th International Conference on Software Engineering Advances (2012)
Kakarontzas, G., Constantinou, E., Ampatzoglou, A., Stamelos, I.: Layer assessment of object-oriented software: a metric facilitating white-box reuse. J. Syst. Softw. 86(2), 349–366 (2013)
Martin, R.C.: Agile Software Development: Principles, Patterns and Practices. Prentice Hall, New Jersey (2003)
Nair, T.R.G., Selvarani, R.: Estimation of software reusability: an engineering approach. SIGSOFT Softw. Eng. Notes 35(1), 1–6 (2010)
Runeson, P., Höst, M., Rainer, A., Regnell, B.: Case Study Research in Software Engineering: Guidelines and Examples. John Wiley & Sons, New York (2012)
Sharma, A., Grover, P.S., Kumar, R.: Reusability assessment for software components. SIGSOFT Softw. Eng. Notes 34(2), 1–6 (2009)
Washizaki, H., Yamamoto, H., Fukazawa, Y.: A metrics suite for measuring reusability of software components. In: 9th International Software Metrics Symposium. IEEE (2003)
Acknowledgement
This work was financially supported by the action “Strengthening Human Resources Research Potential via Doctorate Research” of the Operational Program “Human Resources Development Program, Education and Lifelong Learning, 2014–2020”, implemented from State Scholarship Foundation (IKY) and co-financed by the European Social Fund and the Greek public (National Strategic Reference Framework (NSRF) 2014–2020).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Ampatzoglou, A., Bibi, S., Chatzigeorgiou, A., Avgeriou, P., Stamelos, I. (2018). Reusability Index: A Measure for Assessing Software Assets Reusability. In: Capilla, R., Gallina, B., Cetina, C. (eds) New Opportunities for Software Reuse. ICSR 2018. Lecture Notes in Computer Science(), vol 10826. Springer, Cham. https://doi.org/10.1007/978-3-319-90421-4_3
Download citation
DOI: https://doi.org/10.1007/978-3-319-90421-4_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-90420-7
Online ISBN: 978-3-319-90421-4
eBook Packages: Computer ScienceComputer Science (R0)