Fundamentals of Software Architecture
Mark Richards & Neal Ford
Software Architecture Patterns
Mark Richards