Microservices rules #7: Design loosely design-time coupled services - part 1
You are receiving this email because you subscribed to microservices.io.
Considering migrating a monolith to microservices? Struggling with the microservice architecture? I can help: architecture consulting and workshops. Learn more
My Explore DDD conference workshop, April 14-15, 2025, Denver - Designing microservices: responsibilities, APIs and collaborations. Learn more and enroll.
My DDD EU conference workshop, June 2-3, Antwerp, Belgium - Designing microservices: responsibilities, APIs and collaborations. Early bird pricing until March 31, 2025. Learn more and enroll.
Enroll in my distributed data pattterns (aka. service collaboration patterns) self-paced bootcamp. Use coupon RPPPOGHM to sign up for $95 (valid until March 26th, 2025). Learn more and enroll.
Microservices rules #7: Design loosely design-time coupled services - part 1
This is another article in the series about microservices rules: what good looks like, which are a set of principles and practices for using microservices effectively. The articles in the series are:
1. Practice continuous delivery/deployment
2. Implement fast, automated deployment pipelines
4. Provide a great developer experience (DevEx)
5. Use a deliberative design process
6. Design independently deployable services
7. Design loosely coupled services - part 1
8. Design testable services
9. Develop observable services
10. Big/risky change => smaller/safer and (ideally easily) reversible changes - part 1 - incremental architecture modernization, part 2 - continuous deployment, part 3 - canary releases, part 4 - incrementally migrating users, part 5 - smaller user stories
11.Track and improve software metrics and KPIs
Microservices rules #7 is design loosely design-time coupled services. Loose design-time coupling is a defining characteristic of the microservice architecture. Many of the benefits of the microservice architecture are due to loose design-time coupling. But more generally, loose design-time coupling is an essential property of well-designed software, not just microservices.
In this article, I explain the concept of design-time coupling and the related concept of cohesion. You will learn about the benefits of loose design-time coupling. In a follow up article, I will describe how to design loosely design-time coupled software. I also discuss how to detect tight design-time coupling. Let’s start by looking at how a key goal of software design is minimizing design-time coupling and maximizing cohesion.
Read more (This post is for paying subscribers only)
Older messages
Reminder: The importance of flow state for developers
Friday, March 7, 2025
You are receiving this email because you subscribed to microservices.io. Considering migrating a monolith to microservices? Struggling with the microservice architecture? I can help: architecture
The importance of flow state for developers
Wednesday, March 5, 2025
You are receiving this email because you subscribed to microservices.io. Considering migrating a monolith to microservices? Struggling with the microservice architecture? I can help: architecture
Reminder: What developer productivity metrics actually measure
Thursday, February 27, 2025
You are receiving this email because you subscribed to microservices.io. Considering migrating a monolith to microservices? Struggling with the microservice architecture? I can help: architecture
Microservices rules: what good looks like
Thursday, February 27, 2025
You are receiving this email because you subscribed to microservices.io. Considering migrating a monolith to microservices? Struggling with the microservice architecture? I can help: architecture
Reminder: Microservices rules: what good looks like
Thursday, February 27, 2025
You are receiving this email because you subscribed to microservices.io. Considering migrating a monolith to microservices? Struggling with the microservice architecture? I can help: architecture
You Might Also Like
Web Almanac: JS; syntactic quirks; Parcel v2.14.0; Bun v1.2.5; Node.js on Discord; Node v20.19.0
Wednesday, March 19, 2025
We have 9 links for you - the latest on JavaScript and tools The easiest security tool you will ever install. socket.dev Sponsor Socket's developer-first platform detects and blocks malicious
[Report] 69% of Attacks Bypass Defenses
Wednesday, March 19, 2025
69% of attacks go undetected. Breach and Attack Simulation pinpoints you where your defenses fail—before attackers do. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
11 Windows apps I always trash 🗑️
Wednesday, March 19, 2025
Forget SaaS; Change this TV setting; Amazon Spring Sale deals -- ZDNET ZDNET Tech Today - US March 19, 2025 delete key The 11 Microsoft apps I ditch on every new Windows install - and the 11 I keep A
⚙️ Nvidia's 'incredible' demand
Wednesday, March 19, 2025
Plus: The DNA of organized crime
Post from Syncfusion Blogs on 03/19/2025
Wednesday, March 19, 2025
New blogs from Syncfusion ® Analyze Stock Market Trends with React DataGrid for Smart Trading By Mohammed Farook J This blog explains how to create a robust trading analysis app using the React
Unpatched Windows Zero-Day Flaw Exploited by 11 State-Sponsored Threat Groups Since 2017
Wednesday, March 19, 2025
THN Daily Updates Newsletter cover ChatGPT Prompts Book - Precision Prompts, Priming, Training & AI Writing Techniques for Mortals:Crafting Precision Prompts and Exploring AI Writing with ChatGPT (
😬 6 Reasons to Avoid Buying a Used Phone — Why You Should Learn Scripting
Wednesday, March 19, 2025
Also: Oura Ring 4 Review, and More! How-To Geek Logo March 19, 2025 Did You Know Mosquitoes have a measurable and clear preference for people with type O blood. ⌚️ Pebble Is Back It's Wednesday!
The Sequence Engineering #513: A Deep Dive Into OpenAI's New Tools for Developing AI Agents
Wednesday, March 19, 2025
Responses API, file and web search and multi agent coordination are some of the key capabilities of the new stack. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
BetterDev #276 - IO devices and latency
Wednesday, March 19, 2025
Better Dev #276 Mar 18, 2025 Hi all, This week the github action tj-actions/changed-files are compromise and steeling credential of github action env. I had always found the concept of trusting randome