reuse of commercial off-the-shelf software | because - developing anything reusable is seen as not directly benefiting the current customer
- If a developer has painstakingly developed a high-quality reusable component, but management only rewards the efforts of people who create the more visible 'final product', then that developer will be reluctant to spend time on reusable components in the future
- Efforts at creating reusable software are often done in a hurry and without enough attention to quality. People thus lose confidence in the resulting components, and in the concepts of reuse and reusability
| as extensive in software engineering projects as might be desirable | take a standard email application and add a feature that would always update the 'address book' with data from the corporate employee and client databases | if software developers reuse existing good-quality components, and also contribute to reusable components that others can use | | taking complete applications and adapting them to the needs of the client by adding a small amount of extra software that makes the applications behave in special ways the client wants | to reduce the large cost associated with developing the same thing over and over again | one of the keys to successful software development | because of a vicious circle: Developers do not develop high quality reusable components, so there is nothing to reuse. Since there is nothing to reuse, software developers take so much time to develop applications that they lack time to invest in reusable frameworks or libraries | 3.1 - Reuse: Building on the Work and Experience of Others | reuse of applications |