Essential Software Architecture - Gorton, Ian (Springer, 2011)