Standard Article

Software Reusability

  1. Soo Dong Kim

Published Online: 16 MAR 2009

DOI: 10.1002/9780470050118.ecse397

Wiley Encyclopedia of Computer Science and Engineering

Wiley Encyclopedia of Computer Science and Engineering

How to Cite

Kim, S. D. 2009. Software Reusability. Wiley Encyclopedia of Computer Science and Engineering. 2679–2689.

Author Information

  1. Soongsil University, Department of Computer Science, Seoul, Korea

Publication History

  1. Published Online: 16 MAR 2009


As a key strategy to overcome the software crisis, software reuse is an attempt to reuse software assets in building high-quality software in a cost-efficient way. Software reuse technology has been evolved through generations of programming paradigms. In this article, we first define seven dimensions for software reusability: abstraction, interface visibility, interface role, granularity, adaptability, bind persistency, and acquisition. With these, we observe the evolution of reuse technology. For each programming paradigm, its key reuse constructs are discussed, and a technical assessment for its reusability is given. In addition, we observe the reusability of design patterns and architectural styles. Finally, we derive key trends in software reusability from the technical assessments on reuse technologies and their evolution.


  • software reuse;
  • reusability;
  • reuse criteria;
  • reuse dimension;
  • reuse paradigm;
  • reuse trends;
  • reuse assessment;
  • design pattern