For many projects (though not all) the system is eventually released into the live environment. Hopefully, once deployed, it will be in service as long as intended, perhaps for years or decades.
During this deployment, it may become necessary to change the system. Changes may be due to:
Additional features being required.
The system being migrated to a new operating platform.
The system being retired—data may need to be migrated or archived.
Planned upgrade to COTS-based systems.
New faults being found requiring fixing (these can be —hot fixes—).
Once changes have been made to the system, they will need to be tested (retesting), and it also will be necessary to conduct regression testing to ensure that the rest of the system ...