Core Idea

Architecture Decision Anti-Patterns are dysfunctional behaviors that undermine the architecture decision-making process, leading to poor decisions, repeated debates, lost context, and inability to evaluate outcomes. The three primary anti-patterns are Covering Your Assets, Groundhog Day, and Email-Driven Architecture.

What Are Architecture Decision Anti-Patterns?

Definition: Architecture decisions shape the long-term structure, characteristics, and constraints of software systems. However, the process of making those decisions can be just as important as the decisions themselves. Architecture Decision Anti-Patterns are recurring dysfunctional patterns in how architectural decisions are made, documented, and communicated.

Process Anti-Patterns: Unlike technical anti-patterns (like Big Ball of Mud or God Objects), these are process anti-patterns:

  • Failures in the social and organizational mechanisms around decision-making
  • Manifest when architects and teams fail to establish:
    • Clear decision-making processes
    • Documentation standards
    • Accountability mechanisms

Three Critical Anti-Patterns (Richards and Ford):

1. Covering Your Assets:

  • Making decisions without clear justification or reasoning
  • Leaving room to blame others or avoid accountability if the decision later proves problematic
  • Prioritizes personal protection over sound architectural reasoning
  • Decisions are deliberately vague or non-committal
  • Architect can later claim “I never actually recommended that” or “you misunderstood my position”

2. Groundhog Day:

  • Repeatedly debating the same architectural decisions because they were never formally documented or communicated
  • Example: Teams find themselves re-arguing whether to use microservices versus a monolith, or which message broker to use, because no record exists of the previous decision and its rationale
  • New team members raise the same questions
  • Triggers the same debates, consuming time and energy without producing new insights

3. Email-Driven Architecture:

  • Making critical architectural decisions through informal email threads, Slack messages, or hallway conversations
  • The decision context, alternatives considered, and rationale are scattered across communication channels
  • Impossible to reconstruct why a decision was made
  • Example: Six months later, when someone asks “why did we choose this approach?”, the answer is buried in a thread no one can find, or in the memory of someone who has since left the team

Common Root Cause: These anti-patterns share a common root cause:

  • The absence of structured decision-making processes and documentation
  • Without formal Architecture Decision Records (ADRs) or equivalent mechanisms, teams fall into these dysfunctional patterns by default

Why This Matters

Architecture Decision Anti-Patterns create severe long-term consequences:

  • Lost institutional knowledge: When decisions aren’t documented, only those present at the time understand the reasoning. As team members leave, context disappears.
  • Repeated debates: Without records, teams re-argue the same questions, wasting time and creating frustration.
  • Inability to evaluate decisions: If you don’t know why a decision was made, you can’t assess whether it achieved its goals or whether circumstances have changed enough to warrant revisiting it.
  • Eroded trust: When decisions lack transparency and accountability, developers lose faith in architects, creating organizational friction.
  • Poor onboarding: New team members can’t understand existing architectural choices, leading to proposals that contradict established patterns.

Avoiding these anti-patterns requires deliberate investment in decision documentation practices like Architecture Decision Records (ADRs), which capture the status, context, decision, and consequences of each significant architectural choice.

Sources

Note

This content was drafted with assistance from AI tools for research, organization, and initial content generation. All final content has been reviewed, fact-checked, and edited by the author to ensure accuracy and alignment with the author’s intentions and perspective.