Patterns of enterprise application architecture - Fowler, Martin (Addison-Wesley signature series, 2008)