Please enable JavaScript.
Coggle requires JavaScript to display documents.
Software Evolution (Maintenance (Cost factor (Contract, Team stability,…
Software Evolution
Maintenance
Reasons
Fix bug
Operational change
Add new function
Cost factor
Contract
Team stability
Team skill
Software age and Structure
Expensive => Predict
Maintenability
Cost
Future change
Complexity
Complexity of control structures
Complexity of data structures
Object, method (procedure) and module size
Activities
Impact analysic
Release planning
Change implementation
‘Bad smells’ in code
Duplicate code
Long methods
Switch (case) statements
Data clumping
Speculative generality
Software Re-engineering
(for legacy system)
Advantages
Reduced risk
Reduced cost
Activities
Reverse engineering
Source code translation: easy to understand
Program structure improvement
Program modularisation
Data reengineering
Should be maintained?
Business value
Quality of
the application