Patterns of Enterprise Application Architecture By Martin Fowler (2002) Chapter 1: Layering A basic example of layering: FTP < TCP < IP < Ethernet Benefis of layering: You can understand a layer without knowing much about the others. Minimize dependencies.