Why Re-Use?

  • Increase software productivity
  • Improve software system interoperability
  • Develop software with fewer people
  • Move personnel more easily from project to project
  • Reduce software development and maintenance costs
  • Produce more standardized software
  • Produce better quality software and provide a powerful competitive advantage
  • Increase system reliability
  • Reduce overall process risk


Reuse can occur at different levels:

  • Application system reuse
  • Sub-system reuse
  • Module or object reuse
  • Function reuse


Component based software engineering, by contrast to object-oriented programming, is the building of software systems from reusable parts, and offers the potential to radically improve the way in which software is developed. It promises increased reuse leading to higher quality.    

Reuse software itself will shorten the lead time and together with the use open source software will reduce time to market and design cost significantly.