Reminder: The evolution of the Microservice Architecture pattern language
You are receiving this email because you subscribed to microservices.io
In November, I'll be teaching public workshops in Berlin and Milan. I hope you will enroll.
My service collaboration patterns online bootcamp is available at a discount. Use coupon CCMHVSFB to sign up for $95 (valid until November 8th, 2024). There are deeper discounts for buying multiple seats.
The microservice architecture pattern language is ten years old. Here's a talk I recently gave about its evolution.
The evolution of the Microservice Architecture pattern language
It’s been 10 years since I began writing the Microservice Architecture pattern language. Here’s a presentation that I gave at the recent Pattern Languages of Programs, People & Practices (PLoP 2024) conference on the evolution of the pattern language.
Introduction to the pattern language
Patterns have played a major role in my thinking for decades and it was great to discuss the evolution of the pattern language with the patterns community. Since the audience came from a variety of fields - not just software development - I started by explaining the core concepts of software architecture and architectural styles, highlighting the importance of non-functional requirements like runtime behavior and ease of development. I then introduced the Microservice Architecture, an architectural style that enables fast flow – a way of working that allows teams to deliver continuous streams of small changes, fostering rapid feedback and learning.
The pattern language, which I started developing back in 2014, provides guidance to developers navigating the complexities of implementing a Microservice Architecture, helping them decide whether it is a good fit for their application, and address the various challenges that arise.
The evolution of pattern language
A key part of the presentation discussed the evolution of the pattern language over the years. It wasn’t a carefully planned process; it grew organically based on practical experiences and feedback.
Anti-patterns of microservices adoption
I shared how I introduced the anti-patterns of microservice adoption, based on my observations, to help developers avoid common pitfalls. I also explained how key definitions within the pattern language were refined over time, leading to a clearer understanding of core concepts like loosely coupled and independent deployable services.
About dark energy and dark matter forces
One of the more interesting developments of the pattern language was the introduction of dark energy and dark matter as metaphors for the forces that shape architectural decisions. Dark energy, representing forces pushing for smaller, more independent services, resulting in improved team autonomy and agility. Dark matter, on the other hand, represents the forces that encourage larger services, even a monolith, in order to avoid the downsides of a distributed architecture. These opposing forces create a constant tension in architectural design and architects must carefully balance them.
Your context determines the strength of dark energy and dark matter forces
It’s important to remember that the context plays a crucial role in determining the strength and relevance of these forces. The size and structure of the development team, the nature of the application, and the capabilities of the deployment pipeline all influence the architectural choices.
Beyond patterns
Moving beyond simply applying predefined patterns, I introduced Assemblage, which is a deliberative process for designing a microservice architecture.
The future of the pattern language
Looking ahead, I outlined several improvements for the pattern language. These include refining the terminology used to describe the roles within a pattern’s solution, simplifying the treatment of database architecture patterns, and exploring the relationship between patterns and Team Topologies.
While the focus is often on microservices, I also emphasized that monolithic architectures are still valid and valuable for many applications contexts. Applying principles like modularity and minimizing build-time coupling can even help create well-designed, modular monoliths that are easier to maintain and evolve.
The presentation concluded by emphasizing the continued relevance of the pattern language, the need for ongoing adaptation to keep pace with new knowledge and changes in the technology landscape, and the importance of using precise language to effectively communicate architectural concepts.
Slides
.Need help with accelerating software delivery?
I’m available to help your organization improve agility and competitiveness through better software architecture: training workshops, architecture reviews, etc.
Learn more about how I can help
Older messages
The evolution of the Microservice Architecture pattern language
Tuesday, October 29, 2024
You are receiving this email because you subscribed to microservices.io In November, I'll be teaching public workshops in Berlin and Milan. I hope you will enroll. My service collaboration patterns
Reminder: Architectural patterns for modular monoliths that enable fast flow
Thursday, September 12, 2024
You are receiving this email because you subscribed to microservices.io This month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team
Architectural patterns for modular monoliths that enable fast flow
Tuesday, September 10, 2024
You are receiving this email because you subscribed to microservices.io This month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team
Reminder: Architecting microservices for fast, sustainable flow
Thursday, September 5, 2024
You are receiving this email because you subscribed to microservices.io This month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team
Architecting microservices for fast, sustainable flow
Tuesday, September 3, 2024
You are receiving this email because you subscribed to microservices.io This month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team
You Might Also Like
Spyglass Dispatch: Comcast's SpinCo Out Hunting • NVIDIA Makes Mint • The Fate of Chrome • Amazon Shows New 'Show' • End of Around the Horn • Writing on the Web
Thursday, November 21, 2024
Comcast's SpinCo Out Hunting • NVIDIA Makes Mint • The Fate of Chrome • Amazon Shows New 'Show' • End of Around the Horn • Writing on the Web The Spyglass Dispatch is a free newsletter sent
Issue 340 - Elon Musk hints at a new model for large families
Thursday, November 21, 2024
View this email in your browser If you are just now finding out about Tesletter, you can subscribe here! If you already know Tesletter and want to support us, check out our Patreon page Issue 340 -
Data Science Weekly - Issue 574
Thursday, November 21, 2024
Curated news, articles and jobs related to Data Science, AI, & Machine Learning ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
Programmer Weekly - Issue 232
Thursday, November 21, 2024
View this email in your browser Programmer Weekly Welcome to issue 232 of Programmer Weekly. Let's get straight to the links this week. Quote of the Week "Writing software is a very intense,
Better - An AI Powered Code Reviewer
Thursday, November 21, 2024
Top Tech Content sent at Noon! How the world collects web data Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, November 21, 2024? The HackerNoon
Python Weekly - Issue 677
Thursday, November 21, 2024
View this email in your browser Python Weekly Welcome to issue 677 of Python Weekly. Let's get straight to the links this week. From Our Sponsor Get Your Weekly Dose of Programming A weekly
Web Tools #592 - JS Libraries, Git/CLI Tools, Media/SVG
Thursday, November 21, 2024
WEB VERSION Issue #592 • November 21, 2024 Advertisement Deploy AMD Instinct™ MI300X on Vultr AMD Instinct MI300X accelerators are now available on the Vultr cloud platform. With thousands of AMD
Stop Using the Wrong State Management in Jetpack Compose
Thursday, November 21, 2024
View in browser 🔖 Articles Benchmark Insights: Direct State Propagation vs. Lambda-based State in Jetpack Compose Here, we'll dive into some benchmark analysis on the state propagation approach in
wpmail.me issue#694
Thursday, November 21, 2024
wpMail.me wpmail.me issue#694 - The weekly WordPress newsletter. No spam, no nonsense. - November 21, 2024 Is this email not displaying correctly? View it in your browser. News & Articles State of
Turn off Google AI with two letters
Thursday, November 21, 2024
$250 off M4 MacBook; Linux Foundation marks 20 years; Bluesky tips -- ZDNET ZDNET Tech Today - US November 21, 2024 laptop This absurdly simple trick turns off AI in your Google Search results There