How to build robust web applications by isolating different areas of concerns into different layers. The typical four-layer architecture is presented (the presentation layer, the service layer, the persistence layer and the domain model) along with an in-depth discussion on the role and responsabilities of each single layer.

Web application architecture from Ilio Catallo