Architectural design decisions Architectural design decisions
- การออกแบบทางสถาปัตยกรรมเป็นกระบวนการที่สร้างสรรค์สิ่งที่ยังไม่มี
- ดังนั้นกระบวนการจึงแตกต่างกัน ขึ้นอยู่กับชนิดของระบบที่กำลังพัฒนา
- อย่างไรก็ตามการตัดสินใจร่วมกันจากทุกฝ่ายที่เกี่ยวข้อง จะครอบคลุมกระบวนการออกแบบทั้งหมด
- การตัดสินใจเหล่านี้ส่งผลต่อคุณลักษณะที่เป็น non-functional ของระบบ Architectural design decisions Architecture reuse
- ระบบในโดเมนเดียวกัน มักมีสถาปัตยกรรมที่คล้ายคลึงกัน ซึ่งสะท้อนแนวคิดของโดเมน
- โดยทั่วไป application มักจะถูกพัฒนาขึ้นจากสถาปัตยกรรมที่เป็น core หลัก
- แล้วทำการปรับเปลี่ยนให้มีรูปแบบเฉพาะที่ตอบสนองความต้องการของลูกค้า
- สถาปัตยกรรมของระบบอาจได้รับการออกแบบจากสถาปัตยกรรมอย่างใดอย่างหนึ่งหรือแบบผสมผสาน
- วิธีการออกแบบสถาปัตยกรรม เรียกว่า pattern ซึ่งเป็นรูปแบบมาตรฐาน Architecture and system characteristics
- ประสิทธิภาพ (Performance)
- ใช้ component ที่มีขนาดใหญ่จะดีกว่า component ขนาดเล็ก
- ความมั่นคง (Security)
- ใช้สถาปัตยกรรมแบบลำดับชั้น (layered) โดยนำส่วนสำคัญกว่าไปไว้ด้านใน
- ความปลอดภัย (Safety)
- วางตำแหน่งส่วนที่เกี่ยวกับความปลอดภัยไว้ในตำแหน่งที่เหมาะสม และให้อยู่ในระบบย่อยที่มีจำนวนจำกัด
- ความพร้อมใช้งาน (Availability)
- อาจจะรวมถึงระบบสำรอง (redundant) และวิธีการรับมือกับความผิดพลาด (fault tolerance)
- การบำรุงรักษา (Maintainability)
- ใช้ components ขนาดเล็กที่สลับสับเปลี่ยนได้