Maintenance Process
Definition
The Maintenance Process is the structured sequence of steps followed when handling a maintenance request — from initial identification of the need for change, through to deployment of the fix/enhancement and closure.
Standard Maintenance Process Steps (per IEEE 1219 / ISO 14764)
1. Problem/Change Identification
A maintenance need is identified — via a bug report, user request, or proactive monitoring
2. Analysis
- Classify the request (Corrective/Adaptive/Perfective/Preventive)
- Perform impact analysis — determine affected modules, estimate cost/effort/risk
3. Design
- Design the modification — update relevant design documents (Structure Charts, Class Diagrams, DFDs) to reflect the change
4. Implementation
- Make the actual code changes
- Follow existing coding guidelines/standards
5. Testing (including Regression Testing)
- Test the specific change (unit/integration testing)
- Perform Regression Testing to ensure the change hasn't broken existing functionality
6. Delivery / Deployment
- Release the updated software (patch, new version, hotfix)
- Update relevant documentation
7. Closure / Review
- Close the maintenance request/ticket
- Document what was changed and why, for future reference
Identify → Analyze → Design → Implement → Test (+ Regression) → Deploy → Close
Key Difference from Original Development SDLC
Maintenance essentially runs a mini-SDLC for each change, but constrained by:
- The existing system's architecture (can't freely redesign from scratch)
- Need to avoid breaking existing functionality (hence the emphasis on Regression Testing)
- Often tighter timelines (especially for critical bug fixes)
Documentation Updates
Every maintenance change should be reflected in updated:
- SRS (if requirements changed)
- Design documents
- Code comments/documentation
- Test case repository
Exam tip: Draw the maintenance process as a flow diagram (Identify → Analyze → Design → Implement → Test → Deploy → Close) and emphasize that Regression Testing is a critical, maintenance-specific addition to the standard testing step.