The purpose of the installation phase is to define the most effective approach to roll out your finished system.
Maintenance is the never-ending task of refining, updating, and rewriting the finished system in response to problems and new requirements.
The key tasks of the installation phase include:
- Reviewing the finished application with users
- Using the use case model and subsystem dependency diagram to plan the rollout of completed system(s)
- Coordinating manual and automated portions of the system
- Training users on the features and mechanics of the system
In contrast, the tasks of the maintenance phase look very much like the original development cycle:
- Revise the description of the users' expectations
- Add and/or revise system features
- Revise the architecture
- Revise the design
- Revise the construction choices
- Buy, build, or reorganize implementation elements
- Reintegrate new implementations with existing systems
- Retrain
- Reinstall
The installation phase is not the time to abandon the development process. Whenever a problem is encountered with an application, you must stick to the process. Return to the problem definition phase. Identify where things went wrong and work the process through to construction again.
Likewise, once a system is in place, it is easy to slip into fix-it mode and abandon the thought process that created the system. Return to the process.
Evaluate where the problem first appears and follow the process through to correct the models and improve the solution. Remember that iterative enhancement and refinement never stop.