Fundamentals of Software Architecture : An Engineering Approach by Neal Ford and
eBay