Chapter 6 1 min read
Save

Software Maintenance and Evolution

Software Engineering · BCA · Updated Apr 23, 2026

Table of Contents

Software Maintenance and Evolution

Software maintenance modifies software after delivery. It typically consumes 60-80% of total software cost.

Types of Maintenance

Corrective: fixing bugs. Adaptive: modifying for new environments. Perfective: adding features. Preventive: restructuring code.

Lehman's Laws

Laws describe software evolution: continuing change, increasing complexity, self-regulation, conservation of stability, and familiarity.

Legacy Systems

Old systems still serving business needs. Options: keep, wrap, migrate, or replace. Risk and cost analysis guides decisions.

Reengineering

Restructures existing systems: inventory, reverse engineering, code restructuring, data reengineering, forward engineering.

Configuration Management

Controls changes: version control, change control, build management, release management.

Software Metrics

Product metrics (LOC, complexity), process metrics (defect density), project metrics (effort, cost).

Summary

Software maintenance is the longest and most expensive phase. Understanding maintenance types, evolution laws, and metrics enables effective long-term management.

Related Notes

Discussion

0 comments

Join the discussion

Log in to share your thoughts and help fellow students.

Log in to comment

No comments yet. Be the first to share your thoughts!