Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions adr/adr-process.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# ADR Process

## Overview

When writing/maintaining software, developers often have to make architectural design decisions. In the BigBone project,
we use Architectural Decision Records (ADRs) to log the outcome of the decision-making process behind. ADRs are
typically created for design decisions that address a functional or non-functional requirement that is architecturally
significant. Hence, we can view them as journals, akin to meeting outcome summaries or discussion notes. ADRs help
future developers to better understand why things are done in a particular way.

## Process

## ADR Creation

The process for discussing architectural or design topics is initiated by first identifying a need for discussing it.
Once the team has agreed that there is a real need for having an in-depth discussion, the process is initiated as
follows:

1. The initiator of the topic creates a new discussion thread under the "Architecture & Design" category. The topic is
discussed on the discussion thread and members agree on a decision to be taken.
2. The outcome of the discussion should be recorded in a new ADR inside the `/adr` folder. Please use the provided
template for this (`adr-template.md`). Give your ADR a meaningful name, such as `0001-exception-handling.md`. For
every future ADR, the number should be incremented by 1.
3. Also please place a link in the discussion thread that points to the newly created ADR.
4. If concrete action needs to be taken, please open issues for all of them and refer to the ADR.

## ADR Review



## More on ADRs

- https://adr.github.io/
- https://www.ozimmer.ch/practices/2023/04/03/ADRCreation.html
- https://docs.aws.amazon.com/prescriptive-guidance/latest/architectural-decision-records/adr-process.html
22 changes: 22 additions & 0 deletions adr/adr-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# ADR <Four digit number>: <Title>

## Status

The status of this ADR. Valid statuses are:

- Proposed: ADRs in the Proposed state are ready for review.
- Accepted: An ADR which was accepted by the team.
- Rejected: An ADR which was rejected by the team.
- Superseded: An ADR which was replaced by a newer one.

## Context

What is the issue that we're seeing that is motivating this decision or change?

Comment on lines +12 to +15
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Context" should probably include a link to the discussion thread that led to the ADR.

## Decision

What is the change that we're proposing and/or doing?

## Consequences

What becomes easier or more difficult to do because of this change?
Loading