>[!abstract] The intentional structuring of code to meet the system's needs, ensuring it delivers maximum value to the user with minimal resistance.
> What would the system’s structure need to be so that <some feature> would be no harder to implement than necessary?
> - [[Kent Beck]] [[The Trough of Despair blog post]]
![[Cost-value-balance.excalidraw.svg]]
It is important that we invest enough in our design that our system do not resist changes in an unnecessary amount. Likewise it is also important that we spent too many resources on creating a well designed system instead of creating direct value for the user of the system.