Architecture Decision Record

Active theme: Light

← แม่แบบบันทึกการตัดสินใจ

แม่แบบบันทึกการตัดสินใจด้านสถาปัตยกรรม (ADR)

นี่คือแม่แบบสำหรับ ADR ของ EdgeX Foundry

แหล่งที่มา: https://docs.edgexfoundry.org/2.3/design/adr/template/

ผู้เสนอ

ระบุรายชื่อผู้เสนอ ADR

รูปแบบ:

  • ชื่อ (องค์กร)

บันทึกการเปลี่ยนแปลง

ระบุการเปลี่ยนแปลงของเอกสาร รวมถึงสถานะ วันที่ และ URL ของ pull request

สถานะเป็นหนึ่งใน: pending, approved, amended, deprecated

วันที่เป็นสตริง ISO 8601 (YYYY-MM-DD)

PR คือ pull request ที่ส่งการเปลี่ยนแปลง และมีข้อมูลเช่น diff ผู้มีส่วนร่วม และผู้ทบทวน

รูปแบบ:

  • [สถานะของ ADR เช่น approved, amended ฯลฯ](URL ของ pull request) YYYY-MM-DD

กรณีใช้งานที่อ้างอิง

ระบุเอกสารกรณีใช้งาน / ข้อกำหนดที่เกี่ยวข้องทั้งหมด

ADR ต้องมีกรณีใช้งานที่เกี่ยวข้องและได้รับอนุมัติอย่างน้อยหนึ่งรายการ

รูปแบบ:

  • [ชื่อกรณีใช้งาน](URL)

เพิ่มคำอธิบายหาก ADR ไม่ครอบคลุมข้อกำหนดทั้งหมดของกรณีใช้งาน

บริบท

อธิบาย:

  • ทำไมการออกแบบจึงมีนัยสำคัญด้านสถาปัตยกรรม - ทำไมจึงต้องมี ADR (แทนที่จะเป็นเพียง issue และ PR เพื่อแก้ปัญหา)

  • แนวทางการออกแบบระดับสูง (รายละเอียดอยู่ในการออกแบบที่เสนอด้านล่าง)

การออกแบบที่เสนอ

รายละเอียดของการออกแบบ (หากเป็นไปได้โดยไม่ลงลึกถึงการนำไปใช้)

ภาพรวมของ:

  • บริการ/โมดูลที่ได้รับผลกระทบ (เปลี่ยนแปลง)

  • บริการ/โมดูลใหม่ที่เพิ่มเข้ามา

  • ผลกระทบต่อโมเดลและ DTO (เปลี่ยน/เพิ่ม/ลบ)

  • ผลกระทบต่อ API (เปลี่ยน/เพิ่ม/ลบ)

  • ผลกระทบต่อการกำหนดค่าส่วนกลาง (ส่วนใหม่ เปลี่ยน/เพิ่ม/ลบ)

  • ผลกระทบต่อ devops

ข้อพิจารณา

บันทึกทางเลือก ข้อกังวล ประเด็นข้างเคียงหรือที่เกี่ยวข้อง และคำถามที่ถูกยกขึ้นในการอภิปราย ADR

ระบุว่าได้รับการแก้ไขหรือบรรเทาแล้วหรือไม่ และอย่างไร

การตัดสินใจ

บันทึกรายละเอียดการนำไปใช้ที่สำคัญที่ตกลงกัน ข้อควรระวัง ข้อพิจารณาในอนาคต และประเด็นการออกแบบที่เหลือหรือเลื่อนออกไป

บันทึกส่วนของข้อกำหนดที่การออกแบบที่เสนอไม่ได้ตอบสนอง

ADR อื่นที่เกี่ยวข้อง

ระบุ ADR ที่เกี่ยวข้อง เช่น การตัดสินใจด้านการออกแบบสำหรับส่วนย่อยของฟีเจอร์ การออกแบบที่ล้าสมัยจากการออกแบบนี้ ฯลฯ

รูปแบบ:

  • [ชื่อ ADR](URL) - ความเกี่ยวข้อง

ข้อมูลอ้างอิง

ระบุข้อมูลอ้างอิงเพิ่มเติม

รูปแบบ:

  • [ชื่อ](URL)