ขณะนี้ฉันกำลังปรับปรุงเอกสารการออกแบบเพื่อให้ถูกต้องและทันสมัยสำหรับนักพัฒนาในอนาคต
ขณะนี้เอกสารมุ่งเน้นไปที่ข้อเท็จจริงเท่านั้นนำเสนอว่าการออกแบบเป็นอย่างไร ไม่มีเหตุผลสำหรับการตัดสินใจใด ๆ ที่นำเสนอ ฉันเชื่อว่ามันเป็นสิ่งสำคัญในการรวบรวมเหตุผลเพื่อให้นักพัฒนาทราบว่าทำไมบางสิ่งเป็นอย่างที่มันเป็นเพราะอาจจะส่งผลต่อการตัดสินใจในอนาคต ฉันไม่สามารถเพิ่มเหตุผลสำหรับการตัดสินใจออกแบบทั้งหมดโดยเฉพาะอย่างยิ่งที่ทำก่อนที่ฉันจะเริ่มทำงานในโครงการ แต่ฉันทำสิ่งที่ฉันสามารถทำได้ในแผนกนี้
อย่างไรก็ตามการตัดสินใจในการออกแบบบางประการเป็นการตัดสินใจที่ไม่ดีอย่างน่าเคารพเนื่องจากความต้องการของโครงการ มีบางอย่างที่ดีเช่นกัน
ความคิดเริ่มต้นของฉันคือฉันควรรวมการอภิปรายปัญหาการออกแบบและการแก้ปัญหาที่อาจเกิดขึ้นหรือแก้ไขปัญหาเหล่านี้เพื่อมุ่งเน้นความสนใจของผู้ดูแลในอนาคต แต่ฉันไม่แน่ใจว่าเอกสารการออกแบบเป็นสถานที่สำหรับการอภิปรายและข้อมูลประเภทนี้หรือไม่ ฉันไม่ต้องการให้การออกแบบ "คำวิจารณ์" เพื่อสโนว์บอลเป็น "การฉีกการออกแบบใหม่นี้" เนื่องจากคนอื่นทำงานในระบบนี้และอัปเดตเอกสารเนื่องจากไม่เหมาะสมอย่างชัดเจน
ผู้จัดการของฉันจะสนับสนุนการตัดสินใจอย่างใดอย่างหนึ่งดังนั้นมันขึ้นอยู่กับฉัน ไม่ว่าฉันจะใช้วิธีการใดเอกสารที่ผลิตจะเป็นเวอร์ชันอย่างเป็นทางการและให้กับนักพัฒนาที่ทำงานในระบบโดยทั่วไปก่อนที่พวกเขาจะได้รับมอบหมายให้ทำงานพัฒนา คาดว่าผู้พัฒนาใหม่จะทำความคุ้นเคยกับเอกสารที่เกี่ยวข้องกับระบบซอฟต์แวร์ที่กำหนดไว้ก่อนที่จะเริ่มการพัฒนา
คำถาม:
- เอกสารการออกแบบควรยึดติดกับข้อเท็จจริงดิบ ("นี่คือการออกแบบ") และเหตุผล ("นี่คือเหตุผลที่นี่คือการออกแบบ") หรือควรใช้เพื่อชี้ให้เห็นปัญหาที่ไม่บกพร่องด้วยการออกแบบที่อาจเป็นปัญหาสำหรับ นักพัฒนาในอนาคต?
- หากไม่ควรใช้เอกสารการออกแบบเพื่อบันทึกข้อมูลนี้ควรใช้เอกสารประเภทใดและควรมีการอภิปรายเกี่ยวกับเหตุผลในการออกแบบการแลกเปลี่ยนและปัญหาที่ทราบ (ซึ่งไม่ใช่ข้อบกพร่องเนื่องจากมีการติดตามข้อบกพร่อง) ใช้เครื่องมืออื่น ๆ )?