Question: what are the major factors that affect software maintenance?
Answer: Application Domain. If the application of the program is defined and well understood, the system requirements may be definitive and maintenance due to changing needs minimized. ... 
Staff Stability. ... 
Program Lifetime. ... 
Dependence on External Environment. ... 
Hardware Stability.