• Welcome to the Guide
    • How to use this Guide
    • Frequently Asked Questions
      • Understanding Architecture
      • Architecture Characteristics
      • Architecture Styles
      • Visualizing Architecture
      • Architecture Process
      • Sample Architecture
      • What is an Architecture Characteristic?
      • Identifying Characteristics
      • Availability
      • Interoperability
      • Modifiability
      • Performance
      • Security
      • Testability
      • Usability
      • Scalability
      • Modeling and Analysis
      • Measuring and Governing
      • Addressing Characteristics
      • Catalog
      • Foundations
      • Layered Monolith
      • Modular Monolith
      • Pipeline Monolith
      • Microkernel Monolith
      • Service-Based
      • Event-Driven
      • Space-Based
      • Orchestration-Driven
      • Microservices-Based
      • Selecting a Style
      • What is Domain Driven Design?
      • What is the business domain?
      • Modeling Business Domain
      • Domain Model Building Blocks
      • Bounded Contexts
      • Integration of Bounded Contexts
      • Discovering Domains and Contexts
      • Domains Evolution
      • Best Practices
      • Applying DDD in Practice
      • What is Coupling?
      • What is Modularity?
      • Dimensions of Coupling
      • Balancing Coupling
      • What is Component?
      • Defining components
      • What is a Service?
      • Sharing
      • Managing Operational Data
      • Managing Analytical Data
      • Managing Distributed Workflows
      • Contracts
      • Trade off analysis
      • Overview
      • Diagraming and Presenting
      • Producing Architectural Models
      • Architectural Description
      • Architectural Decisions Records
      • Documentation Management
    • Team
    • Value Streams
    • Engineering
    • Product
    • Company
    • Alignment
    • Goals
    • Role Overview
    • Classification
    • Collaboration
    • Career
      • Modeling Overview
        • Overview
        • C4 Model
        • Viewpoints and Perspectives
        • 4+1
        • TOGAF
        • Overview
        • C4 Notation
        • Flowchart
        • Event Storming
        • UML
        • Archimate
      • Visual
      • Written
      • Spoken
      • Effective
      • Documentation
      • Remote
      • Multi Culture
      • What Is a Requirement?
      • How to Collect Requirements?
      • Business Use Cases
      • Collecting Scenarios
      • Selecting Requirements
      • Writing Requirements
      • Functional Requirements
      • Non-Functional Requirements
      • Testing Requirements
      • Communicating Requirements
      • Facilitation Overview
      • Leadership Overview
      • Management Overview
      • Overview
      • Overview
      • Overview
      • Overview
    • Guide
    • Blog
    • Courses
    • Authors
    • Udemy
    • SubstackSubstack Streamline Icon: https://streamlinehq.com
    • GitHub
  • to navigate
  • to select
  • to close
    • Home
    • Architecture
    • Boundaries
    On this page
    border_all

    Boundaries

    Learn how to design and evolve boundaries in software systems—coupling, modularity, components, services, data ownership, distributed workflows, contracts, and trade-off analysis—so your architecture stays changeable, reliable, and aligned with the business.

    article

    What is Coupling?

    Coupling is the way parts of a software system depend on each other; this article explains what …

    article

    What is Modularity?

    This article explains what modularity is, how it turns systems into evolvable building blocks, and …

    article

    Dimensions of Coupling

    This article explains what the Dimensions of Coupling are, breaking coupling into what is shared, …

    article

    Balancing Coupling

    This article explains what balancing coupling is, combining strength, distance, and volatility to …

    article

    What is Component?

    This article explains what a software component is, how it encapsulates responsibility behind clear …

    article

    Defining components

    This article explains what a software component is, how to define components as responsible building …

    article

    What is a Service?

    This article explains what a Service is, clarifying how it differs from a component and how service …

    article

    Sharing

    This article explains what sharing and reuse mean in distributed architectures, how different reuse …

    article

    Managing Operational Data

    This article explains what managing operational data is, how to split and own it in distributed …

    article

    Managing Analytical Data

    This article explains what managing analytical data is, how to move from brittle central warehouses …

    article

    Managing Distributed Workflows

    This article explains what managing distributed workflows is, how orchestration and choreography …

    article

    Contracts

    This article explains what Contracts are, how their strictness shapes coupling between components …

    article

    Trade off analysis

    This article explains what Trade-Off Analysis is, how to build your own decision matrices, and how …


    © 2026 Software Architecture Guild | Built with Lotus Docs | Privacy & Cookies Policy | Manage Cookie Preferences

    We use cookies to improve your experience and collect analytics data. By accepting, you agree to our use of cookies. Please read our Privacy & Cookies Policy for more details.