Zachování záznamu rozhodnutí o architektuře (ADR)

Záznam rozhodnutí o architektuře je jedním z nejdůležitějších dodávek architekta řešení. Vaše architektura je akumulací vašich rozhodnutí, takže ADR efektivně zaznamenává, jak a proč systém získal svou současnou podobu.

ADR dokumentuje všechna klíčová rozhodnutí, včetně alternativ, které jste vyloučili, pro architektonicky významné požadavky. Zahrnout pouze volby, které mají vliv na strukturu systému, klíčové atributy kvality nebo jsou obtížně obrácené. Každá položka zachycuje kontext, odůvodnění a důsledky rozhodnutí, které zahrnuje požadavky a omezení do zdokumentovaných účinků rozhodnutí.

Implementovat ADR

Spusťte ADR na nástupu úlohy a udržujte ji po celou dobu životnosti úlohy. Pro úlohy brownfieldu by měl být zahájen ADR a pokud jsou data dostupná, měla by být generována retrospektivně na základě známých minulých rozhodnutí. ADR slouží jako protokol pouze pro přidávání. Nevracejte se zpět a upravujte přijaté záznamy. Pokud se rozhodnutí změní, napište nový záznam, který nahrazuje původní záznam a propojí dva dohromady. Tento přístup zachovává historii vašeho myšlení a zjasňuje, kdy a proč se směr přesunul. Záznam se rozšiřuje nad rámec počátečního návrhu a zahrnuje aspekty návrhu s ohledem na budoucí funkční a nefunkční požadavky.

Navrhované charakteristiky jednotlivého záznamu

  • Být konzistentní s anatomií každého záznamu. Navrhujte šablonu záznamu a konzistentně ji sledujte.

    Záznam by měl obsahovat konzistentní prvky, jako jsou:

    • Příkaz problému s kontextem
    • Zvažované možnosti
    • Výsledek rozhodnutí
      • Zahrnout důležité kompromisy provedené s tímto rozhodnutím
      • Zaznamená úroveň spolehlivosti rozhodnutí. Někdy je architektonické významné rozhodnutí učiněno s relativně nízkou důvěrou. Zdokumentování stavu nízké důvěry může být užitečné pro budoucí rozhodnutí o znovuhodnocení.
    • Stav, jako je navrhovaný, přijatý nebo nahrazený. Stav sledování zjasňuje aktuální stav každého rozhodnutí, zejména s rostoucím počtem rozhodnutí.
  • Rozdělte jedno rozhodnutí na několik, pokud rozhodnutí o architektuře povede k několika fázím, jako jsou krátkodobé, střední a dlouhodobé přístupy. Zaznamenejte jednotlivé fáze jako vlastní záznam rozhodnutí.

  • Vyhněte se skrytí důsledků rozhodnutí úmyslně nebo omylem.

  • Vždy uveďte kontext a odůvodnění. Záznam bez odůvodnění ztratí svoji hodnotu v průběhu času, protože účastníci nemůžou vyhodnotit, jestli se rozhodnutí stále použije, když se změní okolnosti.

  • Udržujte záznamy stručné, asertivní, věcné a faktické.

  • Vyhněte se tomu, aby se záznamy o rozhodnutích staly průvodci návrhu. Pokud je k dispozici více odůvodnění nebo návrhu, uveďte odkaz na dokument jako doplňkový materiál, ale rozhodnutí musí být jasné a samostatné bez daného materiálu.

Úložiště dokumentace k úlohě

Tento protokol by měl být snadno dostupný a volně uložený v dokumentaci k úloze. Rozhodnutí, které se udělalo, ale nikdy nezaznamenáno, bude pravděpodobně zapomenuto, což povede k opakovaným diskusím nebo pozdějším změnám, které neúmyslně odporují původnímu záměru.

Architekt může týmu úloh pomoct dosáhnout doporučení efektivity provozu tím, že pomáhá vytvořit a udržovat úložiště dokumentů a prostředků. Architekti pomáhají týmům umístit všechny své prostředky do úložiště, jako je například tento protokol rozhodnutí. Podporují také jednotné přijetí jediného zdroje pravdivých informací, které týmy používají pro referenci, audity a reakce na incidenty.

Další kroky

Další materiály

Příklady šablon najdete v Architectural Decision Records GitHub organizaci.