Architecture Decision Record

Active theme: Light

← Templat rekod keputusan

Templat rekod keputusan oleh Jeff Tyree dan Art Akerman

Ini ialah templat huraian keputusan seni bina yang diterbitkan dalam "Architecture Decisions: Demystifying Architecture" by Jeff Tyree and Art Akerman, Capital One Financial.

  • Isu (Issue): Huraikan isu reka bentuk seni bina yang anda tangani, tanpa meninggalkan sebarang soalan tentang mengapa anda menangani isu ini sekarang. Dengan pendekatan minimalis, tangani dan dokumenkan hanya isu yang perlu ditangani pada pelbagai titik dalam kitaran hayat.

  • Keputusan (Decision): Nyatakan dengan jelas hala tuju seni bina—iaitu, pendirian yang telah anda pilih.

  • Status (Status): Status keputusan, seperti belum selesai, diputuskan atau diluluskan.

  • Kumpulan (Group): Anda boleh menggunakan pengelompokan mudah—seperti integrasi, pembentangan, data dan sebagainya—untuk membantu mengatur set keputusan. Anda juga boleh menggunakan ontologi seni bina yang lebih canggih, seperti ontologi John Kyaruzi dan Jan van Katwijk, yang merangkumi kategori yang lebih abstrak seperti peristiwa, kalendar dan lokasi. Contohnya, menggunakan ontologi ini, anda akan mengelompokkan keputusan yang berkaitan dengan kejadian di mana sistem memerlukan maklumat di bawah peristiwa.

  • Andaian (Assumptions): Huraikan dengan jelas andaian asas dalam persekitaran di mana anda membuat keputusan—kos, jadual, teknologi dan sebagainya. Perhatikan bahawa kekangan persekitaran (seperti piawaian teknologi yang diterima, seni bina perusahaan, corak yang biasa digunakan dan sebagainya) mungkin mengehadkan alternatif yang anda pertimbangkan.

  • Kekangan (Constraints): Rakam sebarang kekangan tambahan kepada persekitaran yang mungkin dikenakan oleh alternatif yang dipilih (keputusan).

  • Pendirian (Positions): Senaraikan pendirian (pilihan atau alternatif yang boleh dilaksanakan) yang anda pertimbangkan. Ini selalunya memerlukan penjelasan panjang, kadangkala malah model dan gambar rajah. Ini bukan senarai lengkap. Walau bagaimanapun, anda tidak mahu mendengar soalan "Adakah anda terfikir tentang...?" semasa semakan akhir; ini membawa kepada kehilangan kredibiliti dan mempersoalkan keputusan seni bina lain. Bahagian ini juga membantu memastikan anda telah mendengar pendapat orang lain; menyatakan pendapat lain secara jelas membantu mendaftarkan penyokong mereka dalam keputusan anda.

  • Hujah (Argument): Gariskan mengapa anda memilih sesuatu pendirian, termasuk perkara seperti kos pelaksanaan, kos pemilikan keseluruhan, masa ke pasaran dan ketersediaan sumber pembangunan yang diperlukan. Ini mungkin sama pentingnya dengan keputusan itu sendiri.

  • Implikasi (Implications): Keputusan datang dengan banyak implikasi, seperti yang ditandakan oleh metamodel REMAP. Contohnya, keputusan mungkin memperkenalkan keperluan untuk membuat keputusan lain, mencipta keperluan baharu atau mengubah suai keperluan sedia ada; mengenakan kekangan tambahan kepada persekitaran; memerlukan rundingan semula skop atau jadual dengan pelanggan; atau memerlukan latihan kakitangan tambahan. Memahami dan menyatakan implikasi keputusan anda dengan jelas boleh sangat berkesan dalam mendapatkan persetujuan dan mencipta peta jalan untuk pelaksanaan seni bina.

  • Keputusan berkaitan (Related decisions): Jelas bahawa banyak keputusan saling berkaitan; anda boleh menyenaraikannya di sini. Walau bagaimanapun, kami mendapati bahawa dalam amalan, matriks kebolehjejakan, pokok keputusan atau metamodel lebih berguna. Metamodel berguna untuk menunjukkan hubungan kompleks secara gambar rajah (seperti model Rose).

  • Keperluan berkaitan (Related requirements): Keputusan perlu didorong oleh perniagaan. Untuk menunjukkan akauntabiliti, petakan keputusan anda secara jelas kepada objektif atau keperluan. Anda boleh menyenaraikan keperluan berkaitan ini di sini, tetapi kami mendapati lebih mudah untuk merujuk matriks kebolehjejakan. Anda boleh menilai sumbangan setiap keputusan seni bina dalam memenuhi setiap keperluan, dan kemudian menilai sejauh mana keperluan itu dipenuhi merentasi semua keputusan. Jika keputusan tidak menyumbang kepada memenuhi keperluan, jangan buat keputusan itu.

  • Artifak berkaitan (Related artifacts): Senaraikan dokumen seni bina, reka bentuk atau skop berkaitan yang dipengaruhi oleh keputusan ini.

  • Prinsip berkaitan (Related principles): Jika perusahaan mempunyai set prinsip yang dipersetujui, pastikan keputusan itu konsisten dengan satu atau lebih daripadanya. Ini membantu memastikan penjajaran merentasi domain atau sistem.

  • Nota (Notes): Oleh kerana proses membuat keputusan boleh mengambil masa beberapa minggu, kami mendapati berguna untuk merakam nota dan isu yang dibincangkan pasukan semasa proses sosialisasi.