Essential software architecture - Gorton, Ian, 1962- (Springer, 2006)