Projects per year
Abstract
Measuring and estimating the reusability of software components is important towards finding reusable candidates. Researchers have shown that software metrics can be effectively used to assess software reusability. This work provides a systematic literature review to investigate the main factors that influence software reusability and how these identified factors can be quantified using software metrics. This paper also investigates tool availability of the identified software metrics. Based on the extensive study, we narrowed down 44 factors that could positively or negatively affect the reusability of software systems. In term of software metrics, we report our findings through five main families of metrics, namely coupling, cohesion, complexity, inheritance, and size. We found that most of the metrics examine reusability at the class-level, and the availability of software tools is limited. Furthermore, not all reusability affecting factors are equally impactful to assess the reusability of software components. While existing studies often discussed the impact of complexity towards software reusability, we found that only a handful of complexity metrics were meant for assessing reusability. We have identified several open challenges and gaps in the area, in particular lack of quantifiable measurement for reusability, limited software tools, and limited metrics that directly measure reusability.
Original language | English |
---|---|
Pages (from-to) | 1416-1458 |
Number of pages | 43 |
Journal | Software: Practice and Experience |
Volume | 51 |
Issue number | 6 |
DOIs | |
Publication status | Published - Jun 2021 |
Keywords
- reusability affecting factors
- software metrics
- software quality
- software reusability
- systematic literature review
Projects
- 1 Finished
-
A Big Data Analytics Approach for Identifying Reuse-Proneness of Object-Oriented Classes in Source Code Management Systems
Chun Yong, C., Lee, S. P., Lim, J. & Ho, P. W. C.
1/01/19 → 30/09/21
Project: Research