Skip to main content

What are the differences between enterprise architecture styles, patterns, and design patterns?

Compare architectural styles, patterns, and design patterns, and get some real-world guidance in our top 15 design articles of 2022.
Image
Yellow and grey scaffolding tower

Photo by Mikael Blomkvist from Pexels

I frequently see the question: What are architectural patterns, styles, and designs? These terms are often not clear, and different people give them different meanings.

[ Check out Red Hat's Portfolio Architecture Center for a wide variety of reference architectures you can use. ]

Below, I'll try to define them a bit more precisely.

Architectural styles

This is the highest level of abstraction. In broad strokes, architectural designs instruct us on how to structure our code. The highest level of granularity describes the application's layers and high-level modules and how they relate to and interact with one another. Some examples of architectural styles are monolith, layered, event-driven, and self-contained systems.

Architectural patterns

These patterns represent a way to implement an architectural style, in the sense that we can do this regularly. Some examples are how to separate the user interface (UI) and data, how internal modules will interact with each other, and what layers we will use. Patterns answer these types of questions. They usually have an impact on the code base, in terms of how to structure the code inside. Some architectural pattern examples are model-view-presenter (MVP), model-view-controller (MVC), Model–view–viewmodel (MVVM), and microkernel.

[ Learn more about ​​​​​​​validated patterns. ]

Design patterns

These are different from architectural patterns in that they are more focused on a smaller area of the code base and have a smaller influence (focus on a local problem). These might include limiting the creation of a class to only one object (singleton pattern) or notifying all dependent objects when the internal state of an object is changed (observer pattern). Some examples include singleton, strategy, and factory-design patterns.

Learn more

Because this is such a popular topic among enterprise architects, Enable Architect published many articles in 2022 on architectural patterns, styles, and designs. If you'd like to learn more about applying these methods in your own enterprise architecture, read the following 15 articles to satisfy your curiosity.

Do you have knowledge to share about enterprise architecture design? If so, consider writing about it for Enable Architect. Join our community and share your insight to help others on their architecture journey.

Author’s photo

Milan Milanović

Dr. Milan Milanović has been working at 3MD since September 2022. He has over 18 years of experience in the software industry, working in different domains and several tech stacks, including web-tier technologies, .NET and Java platforms, and mobile and distributed computing technologies. More about me

Navigate the shifting technology landscape. Read An architect's guide to multicloud infrastructure.

OUR BEST CONTENT, DELIVERED TO YOUR INBOX

Privacy Statement