Published Online: 16 MAR 2009
Copyright © 2007 by John Wiley & Sons, Inc.
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.
- 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;
- reuse criteria;
- reuse dimension;
- reuse paradigm;
- reuse trends;
- reuse assessment;
- design pattern