Maintainability and reusability: The relationships - AL-Badareen, Anas Bassam; Selamat, Mohd Hasan; Din, Jamilah; A. Jabar, Marzanah; Turaev, Sherzod (2012)
Software maintenance is the process of modifying software product either for correction, enhancement, or adaptation. Software reuse is a process of adapting software system or part of it in other software product. However, maintenance process required understandable and modifiable software to be performed efficiently, whereas the reusability required software able to be used for different systems and platforms. The reusable software is classified in two main types, Black box and white box. The black box reuse considers the using of software product without any modification. The white box reuse modifies the existing software product/asset in order to be used in the new system. The models of software quality evaluate these characteristics from different perspectives, and mixed up between these definitions is occurred. This paper discusses the difference between software maintenance and software reuse from the perspective of software process and quality. Consequently, the reusability is different from maintainability, although they share common characteristics. Moreover, the reusability of the software product is different based on the type of the software whether it’s a component based or open source software.