Content deleted Content added
NASA software reuse site moved |
No edit summary |
||
Line 18:
Another, newer means is to use software "[[Source code generation|generator]]s", programs which can create new programs of a certain type, based on a set of parameters that users choose. Fields of study about such systems are [[generative programming]] and [[metaprogramming]].
==Types of reuse==
* Opportunistic reuse - While getting ready to begin a project, the team realizes that there are existing components that they can reuse.
* Planned reuse - A team strategically designs components so that they'll be reusable in future projects.
There are other ways to categorize reuse, considering a make vs. buy decision:
* Internal reuse - A team reuses its own components. This may be a business decision, since the team may want to control a component critical to the project.
* External reuse - A team may choose to buy a third-party component. Buying a third-party component typically costs the team 1 to 20 percent of what it would cost to develop internally {{Harvard citation | McConnell | 1996}}. The team must also consider the time it takes to find, learn and integrate the component.
==See also==
|