Abstract: Software reuse is the use of existing software or software components to build new software and reuse ideas with the ability to combine independent software components to form a larger unit of software. The key idea in software reuse is domain engineering. Most software systems are not new but they are the variations of the already built software systems. Software reuse improves the quality and productivity of the software production process. This paper briefly summarizes the current research status in the field of software reuse and major research contributions. Some future directions for research in software reuse are also discussed.

Keywords: Software reuse, Domain engineering, Software components.