Layered system

By layering the components, we ensure that each component does not know about the layers that its neighbors connect to. This promotes good security in order to have good boundary walls. It also allows legacy systems to be protected if they are consumed in your architecture, and it allows you to protect new systems:

With the layered approach, it leads to many hops between systems, but you have the security boundaries, and components can be updated individually.

Get Mastering ASP.NET Web API now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.