volume_mute

Refactoring Architecture vs. Components

publish date2026/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


Quizzes you can take where this question appears