Software reuse is the process of creating software systems from existing software rather than building them from scratch. The goal is the use of reusable components as building blocks in new systems with modifications occurring in a controlled way. The reuse of software components is the key to improve productivity and quality levels in software engineering. One of the most promising approaches to reduce costs and improve reliability is component-based development, which aims to allow new applications to be assembled from prefabricated parts rather than coded from scratch. Software reuse involves building software that is reusable by design and building with reusable software. Software reuse includes reusing both the products of previous software projects and the processes deployed to produce them, leading to a wide spectrum of reuse approaches, from the building blocks (reusing products) approach, on one hand to the generative or reusable processor (reusing processes), on the other.
"Software Reusable Components With Repository System,"
International Journal of Computer Science and Informatics: Vol. 1
, Article 3.
Available at: https://www.interscience.in/ijcsi/vol1/iss2/3