Skip to content

Architecture Decision Records (ADRs)

Overview

This directory contains Architecture Decision Records (ADRs) for the Kyan Exchange project. ADRs are documents that capture important architectural decisions, along with their context and consequences.

What is an ADR?

An ADR is a document that captures an important architectural decision made along with its context and consequences. Architecture decisions are design choices that address significant requirements and constraints. They often involve trade-offs and have a significant impact on the system's structure, behavior, or development.

ADR Process

  1. Create a new ADR: Use the yarn create-adr command to create a new ADR from a template.
  2. Write the ADR: Fill in the template with the appropriate details.
  3. Review: Have the ADR reviewed by team members.
  4. Acceptance: Update the status to "Accepted" when the decision is finalized.
  5. Implementation: Implement the decision in the codebase.
  6. Revision: If a decision is superseded, create a new ADR and reference the old one.

ADR Format

Each ADR follows this structure:

  • Title: A short phrase describing the decision
  • Status: Proposed, Accepted, Deprecated, or Superseded
  • Date: When the decision was last updated
  • Context: The problem being addressed and relevant factors
  • Decision: The chosen approach and rationale
  • Consequences: Outcomes of the decision, both positive and negative
  • Alternatives Considered: Other options and why they were rejected
  • References: Links to supporting documentation or related ADRs

Current ADRs

Here is a list of current ADRs:

Further Reading