Mert Özen Further With Every Line

Blog

Mert Özen's blog posts on software development, backend, frontend, and DevOps.

Series
3 posts found #adr
Keeping Decisions Alive: Decision Logs, Architecture Reviews and the Advice Process
Software Architecture PART 07

Keeping Decisions Alive: Decision Logs, Architecture Reviews and the Advice Process

A decision log only works while it stays discoverable and is reviewed regularly: a generated index, a supersede chain checked in CI, calendar and condition triggers and a 30-minute monthly review. A C# tool that audits Bookstore's 15-ADR log, the advice process and the architecture advisory forum, the maintenance status of ADR tools at the time of writing, and a minimum process for a team of six.

8 Nov 2026 12 min 5
Writing ADRs: Decision Records with the Nygard Template, MADR 4.0 and Y-Statements
Software Architecture PART 02

Writing ADRs: Decision Records with the Nygard Template, MADR 4.0 and Y-Statements

A good ADR records not just the decision but the question it answers, the options it was made against, the accepted cost and when to reopen it, and it is never edited once decided. Nygard's five-section template, the sections and front matter of MADR 4.0.0, a rejected decision record, Y-statements, the status lifecycle and a real script that enforces immutability in PRs.

8 Nov 2026 15 min 5
What Is an Architecture Decision? Recognizing Architecturally Significant Choices
Software Architecture PART 01

What Is an Architecture Decision? Recognizing Architecturally Significant Choices

A decision is architectural, and deserves a record, when it is expensive to reverse, reaches several modules or the system boundary, or moves a prioritized quality attribute scenario. We classify ten decisions from Bookstore's first months with these three criteria in C#, and discuss which deserve an ADR, a design doc or a PR description, who owns the decision, and what unrecorded decisions cost.

8 Nov 2026 11 min 3
Blog Map