• Repairing any errors or faults in the design or the coding.
• Updating the design because of changes in the requirement.
• Updating of the design because of change in the environment.
Purpose: To allow the software to be adapted to the changes.
Output: Revised set of requirements, design and software.