This practical guide seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes, and how seemingly small changes can affect a system's properties.
Just Enough Software Architecture
Marshall & Brainerd
A Risk-Driven Approach
Management & Computers