Skip to content
Surf Wiki
Save to docs
technology/software-engineering

From Surf Wiki (app.surf) — the open knowledge base

Reusability

Quality of software relevant to reuse


Summary

Quality of software relevant to reuse

In computer programming, reusability describes the quality of a software asset that affects its ability to be used in a software system for which it was not specifically designed. An asset that is easy to reuse and provides utility is considered to have high reusability. A related concept, leverage involves modifying an existing asset to meet system requirements.

The ability to reuse can be viewed as the ability to build larger things from smaller parts, and to identify commonality among the parts. Reusability is often a required characteristic of platform software. Reusability brings several aspects to software development that do not need to be considered when reusability is not required.

Reusability may be impacted by various DevOps aspects including: build, packaging, distribution, installation, configuration, deployment, maintenance and upgrade. If these aspects are not considered, software may seem to be reusable based on its design, but may not be reusable in practice.

Many reuse design principles were developed at the WISR workshops. Although lacking consensus candidate design features for software reuse include:

  • Adaptable
  • Brief (small size)
  • Consistency
  • Correctness
  • Extensibility
  • Fast
  • Flexible
  • Generic
  • Localization of volatile/changeable design assumptions
  • Modularity
  • Orthogonality
  • Simple (low complexity)
  • Stability under changing requirements

References

References

  1. (October 22, 2014). "What is Software Reuse". Lombard Hill Group.
  2. (1995-01-20). "Design for Reuse and Object Oriented Reuse Methods". Umcs.maine.edu.
Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Reusability — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report