Solution Architecture Practice

Comprehensive guide to software architecture frameworks, patterns, and best practices

View project on GitHub

MADR Template

Markdown Architectural Decision Records (MADR) template.

[Short title of solved problem and solution]

  • Status: [Proposed Rejected Accepted Deprecated Superseded]
  • Deciders: [List everyone involved in the decision]
  • Date: [YYYY-MM-DD when the decision was last updated]
  • Technical Story: [Ticket/Issue URL]

Context and Problem Statement

[Describe the context and problem statement, e.g., in free form using two to three sentences. You may want to articulate the problem in form of a question.]

Decision Drivers

  • [Driver 1, e.g., a force, facing concern, …]
  • [Driver 2, e.g., a force, facing concern, …]
  • …

Considered Options

  • [Option 1]
  • [Option 2]
  • [Option 3]
  • …

Decision Outcome

Chosen option: “[Option 1]”, because [justification. e.g., only option which meets k.o. criterion decision driver which resolves force {force} … comes out best (see below)].

Positive Consequences

  • [e.g., improvement of quality attribute satisfaction, follow-up decisions required, …]
  • …

Negative Consequences

  • [e.g., compromising quality attribute, follow-up decisions required, …]
  • …

Pros and Cons of the Options

[Option 1]

[Example Description Pointer to more information …]
  • Good, because [argument a]
  • Good, because [argument b]
  • Bad, because [argument c]
  • …

[Option 2]

[Example Description Pointer to more information …]
  • Good, because [argument a]
  • Good, because [argument b]
  • Bad, because [argument c]
  • …

[Option 3]

[Example Description Pointer to more information …]
  • Good, because [argument a]
  • Good, because [argument b]
  • Bad, because [argument c]
  • …
  • [Link type] [Link to ADR]
  • …

Template Version: 1.0 (Based on MADR 3.0.0)
Last Updated: November 2025