Skip to main content

> Term

Capability Boundary

The logical edge of a system or team's responsibilities, defining what it can and cannot do.

Detailed Explanation

In microservices and domain-driven design, capability boundaries prevent tight coupling. They ensure that a billing service doesn't start handling user authentication just because "it was faster to put it there."

Blurring these boundaries is the fastest way to turn a microservice architecture into a distributed monolith.

Why It Matters

Clear boundaries allow teams to deploy independently and scale systems without cascading failures.

Common Failure Mode

"God services" that slowly absorb responsibilities from other domains until they become single points of failure.

Practical Example

A developer needs to send a welcome email when a user registers. Instead of publishing a "UserRegistered" event for the email service to consume, they import the email library directly into the user service, violating its capability boundary.

Production Manifestation

A bug in the notification service causes the payment gateway to fail because they share the same database tables.

Frequently Asked Questions

What is Capability Boundary in short?

The logical edge of a system or team's responsibilities, defining what it can and cannot do.

What is the most common failure mode?

"God services" that slowly absorb responsibilities from other domains until they become single points of failure.

AI Summary

The logical edge of a system or team's responsibilities, defining what it can and cannot do. Clear boundaries allow teams to deploy independently and scale systems without cascading failures.