This Enterprise Architecture Pattern is a generic, reusable design solution to a common architectural problem. Patterns are not finished designs but a template for solving a problem. The concept originated in building architecture and was first published in Christopher Alexander's book Design Patterns. They were then implemented in the software industry and extensively used by the software engineering domain to solve commonly recurring software engineering problems, even though the nature of the issues appeared to be quite different on the surface.