volume_mute
Refactoring Architecture vs. Components
publish date: 2026/06/11 07:37:14.353147 UTC
volume_mute
Why is refactoring a system architecture considered significantly more expensive than refactoring individual components?
Correct Answer
Because architectural changes affect the overall structure, the interfaces between many components, and how the system is deployed - touching many parts of the system simultaneously, unlike component-level refactoring which is relatively localised
Explanation
While refactoring components in response to changes is usually relatively easy, refactoring a system architecture is likely to be expensive. Architectural changes affect the overall structure, the interfaces between many components, and deployment. This is why even agile processes should establish an overall system architecture early - incremental development of architectures is not usually successful.
Reference
Software Engineering, Ian Sommerville, 10th edition
