ตลอดทั้งเล่มนี้ เราได้แสดงให้เห็นว่าจะระบุ characteristics ที่สำคัญซึ่งสถาปัตยกรรมต้องรองรับได้อย่างไร จะเลือก architectural style ที่เหมาะสมที่สุดสำหรับ characteristics เหล่านั้นและสำหรับปัญหาทางธุรกิจได้อย่างไร จะตัดสินใจเรื่องสถาปัตยกรรมอย่างมีประสิทธิภาพได้อย่างไร และจะนำและชี้แนะทีมพัฒนาให้ implement สถาปัตยกรรมได้อย่างไร อย่างไรก็ตาม เพื่อให้สถาปัตยกรรมทำงานได้จริง มันต้องสอดคล้องกับแง่มุมอื่นๆ ของสภาพแวดล้อมทางเทคนิคและธุรกิจด้วย เราเรียกความสอดคล้องเหล่านี้ว่า intersections of architecture (จุดตัดของสถาปัตยกรรม)

ในบทนี้ เราจะพูดถึงจุดตัดสำคัญหลายจุดที่เกิดขึ้นเมื่อสร้างหรือตรวจสอบความถูกต้องของสถาปัตยกรรมซอฟต์แวร์

Implementation

การ implement สอดคล้องกับประเด็นทางสถาปัตยกรรมที่เกี่ยวกับ operational characteristics ข้อจำกัดทางสถาปัตยกรรม และโครงสร้างภายในของสถาปัตยกรรมหรือไม่?

Infrastructure

infrastructure และวิธีที่ deploy สถาปัตยกรรมสอดคล้องกับประเด็นด้าน operational ของสถาปัตยกรรม เช่น scalability, responsiveness, fault tolerance และ availability หรือไม่?

Data topologies

ความสอดคล้องหนึ่งที่มักถูกมองข้ามคือความสอดคล้องระหว่างจุดตัดของสถาปัตยกรรมกับ data topology และประเภทของข้อมูล data topology (monolithic, domain databases และ database per service) ต้องสอดคล้องอย่างเหมาะสมกับ architectural style เพื่อให้ระบบทำงานได้

Engineering practices

วิธีที่ทีมพัฒนาสร้าง ดูแลรักษา และทดสอบซอฟต์แวร์สอดคล้องกับสถาปัตยกรรมที่เกี่ยวข้องหรือไม่? deployment pipeline สอดคล้องกับ architectural style หรือไม่?

Team topologies

วิธีจัดโครงสร้างทีมสามารถส่งผลกระทบอย่างมากต่อสถาปัตยกรรม และในทางกลับกันก็เช่นกัน หากโครงสร้างทีมไม่สอดคล้องกับสถาปัตยกรรมอย่างเหมาะสม ทีมพัฒนามักจะประสบปัญหา แม้แต่การเปลี่ยนแปลงที่ง่ายที่สุดก็ยังท้าทาย

Systems integration

สถาปัตยกรรมต้องสื่อสารกับระบบหรือ service อื่นใดบ้าง? การไม่ใส่ใจจุดตัดนี้อาจส่งผลร้ายแรงในแง่ของการดูแลรักษา ความน่าเชื่อถือ และ operational characteristics เช่น scalability, responsiveness และ availability

The enterprise

สถาปัตยกรรมสอดคล้องกับ framework แนวปฏิบัติ หลักการชี้นำ และมาตรฐานทั่วทั้งองค์กรและ enterprise หรือไม่?

The business environment

สถาปัตยกรรมสอดคล้องกับสภาพแวดล้อมทางธุรกิจและ problem domain อย่างเหมาะสมหรือไม่? บ่อยครั้งที่สถาปนิกมองข้ามจุดตัดสำคัญนี้ ผลก็คือสถาปัตยกรรมไม่สามารถตอบสนองเป้าหมายหรือความต้องการของธุรกิจได้

Generative AI

การใช้งาน large language models (LLMs) ที่เพิ่มขึ้นส่งผลต่อสถาปัตยกรรมอย่างไร? จุดตัดนี้กำลังกลายเป็นเรื่องสำคัญอย่างรวดเร็ว เมื่อบริษัทต่างๆ นำ generative AI มาใช้ในระบบของตนมากขึ้น

ส่วนถัดไปจะอธิบายจุดตัดเหล่านี้โดยละเอียด