Ch9. Evolution Short
Ch9. Evolution Short
Evolution processes
Software maintenance
Evolution
The stage in a software system’s life cycle where it is in
operational use and is evolving as new requirements are
proposed and implemented in the system.
Servicing
At this stage, the software remains useful but the only changes
made are those required to keep it operational i.e. bug fixes and
changes to reflect changes in the software’s environment. No
new functionality is added.
Phase-out
The software may still be used but no further changes are made
to it.
Fault repairs
Changing a system to fix bugs/vulnerabilities and correct
deficiencies in the way meets its requirements.
Environmental adaptation
Maintenance to adapt software to a different operating
environment
Changing a system so that it operates in a different environment
(computer, OS, etc.) from its initial implementation.
Functionality addition and modification
Modifying the system to satisfy new requirements.
Duplicate code
The same or very similar code may be included at different
places in a program. This can be removed and implemented as
a single method or function that is called as required.
Long methods
If a method is too long, it should be redesigned as a number of
shorter methods.
Data clumping
Data clumps occur when the same group of data items (fields in
classes, parameters in methods) re-occur in several places in a
program. These can often be replaced with an object that
encapsulates all of the data.