SE 6
SE 6
SE 6
UNIT 6
Software Maintenance
a) Corrective Maintenance
b) Adaptive Maintenance
c) Preventive Maintenance
d) Perfective Maintenance
a) Identification Phase:
In this phase, all the requests for modifications in the software are
identified and analysed.
b) Analysis Phase:
c) Design Phase:
Testing and test cases will also be done in order to check the
efficiency of software. Test cases are created for the validation
and verification of the system.
d) Implementation Phase
g) Delivery Phase:
Schedule Phase –
Programming Phase –
Test Phase –
Documentation Phase –
Release Phase –
Quick-Fix Model
This is quick and easy but ad hoc approach used for maintenance.
It quickly finds and fix the software without putting consideration
on size of the software.
“Regression testing tests both the modified code and other parts
of the program that may be affected by the program change It
serves many purposes:
increase confidence in the correctness of the modified program
locate errors in the modified program
preserve the quality and reliability of software
ensure the software’s continued operation
Cost factors:
Activities in re-engineering
1. Inventory Analysis:
2. Document reconstructing:
3. Reverse Engineering:
4. Code Reconstructing:
5. Data Restructuring:
6. Forward Engineering:
Configuration Management
The process of software development and maintenance is controlled is
called configuration management The configuration management is
different in development and maintenance phases of life cycle due to
different environments