1) Control over system’s day-to-day functions
Corrective Maintenance
initial repair is temporary, not best fix
2) Control over system modification
Adaptive Maintenance
complier is enhanced by the addition of debugger alter menus, icons, or functions key to choose it
3) Perfecting existing acceptable functions
Perfective Maintenance
Check doc, design, code and tests for opportunities to improve
4) Preventing system performance from degrading
Preventive Maintenance
more in term of prevent failure