— Template for problem with solution —

  • Status: {proposed | rejected | accepted | deprecated | … | superseded by LINK_TO_OTHER_ADR} (OPTIONAL)

  • Deciders: {list everyone involved in the decision} (OPTIONAL)

  • Date: {YYYY-MM-DD when the decision was last updated} (OPTIONAL)

Technical Story: {description | ticket/issue URL} (OPTIONAL)

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 (OPTIONAL)

  • {driver 1, e.g., a force, facing concern, …}

  • {driver 2, e.g., a force, facing concern, …}

  • {numbers of drivers can vary}

Considered Options

  • {option 1}

  • {option 2}

  • {option 3}

  • {numbers of options can vary}

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 (OPTIONAL)

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

Negative Consequences (OPTIONAL)

  • {e.g., compromising quality attribute, follow-up decisions required, …}

Pros and Cons of the Options (OPTIONAL)

{option 1}

  • Good, because {argument a}

  • Good, because {argument b}

  • Bad, because {argument c}

  • {numbers of pros and cons can vary}

{option 2}

  • Good, because {argument a}

  • Good, because {argument b}

  • Bad, because {argument c}

  • {numbers of pros and cons can vary}

{option 3}

  • Good, because {argument a}

  • Good, because {argument b}

  • Bad, because {argument c}

  • {numbers of pros and cons can vary}