Design for Reuse
Changes in the application domain
   Most application domains change continually, e.g.,
because of business opportunities, external changes
(such as new laws), mergers and take-overs, new groups
of users, etc., etc.,
It is rarely feasible to implement a completely new system
when the application domain changes.  Therefore existing
systems must be modified.  This may involve extensive
restructuring.
34