D5
DAY 5: 13 REASONS — PART 2 Ch 2 · Human, Org & Business Drivers (Reasons 7–13)
DAY 5 OF 7 · PHASE 1 CHAPTER 2 DEEP-DIVE PEOPLE, ORG & BUSINESS

13 เหตุผลทางวิศวกรรม:
ด้านคน, องค์กร & การลงทุน (REASONS 7–13)

ซอฟต์แวร์ไม่ใช่แค่เรื่องของโค้ด แต่ถูกหล่อหลอมด้วยมนุษย์ โครงสร้างทีม และเป้าหมายทางธุรกิจ เจาะลึก 7 เหตุผลที่ครอบคลุม Conway's Law, Walking Skeleton, การประเมินงบประมาณ, Software Product Lines, และการเปลี่ยนผ่านสู่ Assembly over Creation

SECTION 1.1 ORGANIZATIONAL & BUSINESS FOUNDATIONS

เจาะลึก 7 เหตุผลฝั่งคน, องค์กร & ธุรกิจ (Reasons 7–13)

เหตุผลที่ 7 ถึง 13 อธิบายว่าสถาปัตยกรรมกำหนดโครงสร้างทีม การประเมินงบประมาณ การนำไปใช้ซ้ำ และวินัยทางวิศวกรรมอย่างไร

Human & Business Drivers
REASON 7

7. Influences Organizational Structure

สถาปัตยกรรมกำหนดโครงสร้างทีม: การแบ่งงานในโครงการ (Work-Breakdown Structure: WBS) จะอิงกับ Work Assignment Structure ของสถาปัตยกรรมโดยตรง เช่น ทีม UI, ทีม Backend, ทีม Data

กฎของคอนเวย์ (Conway's Law):

โครงสร้างระบบมักลอกเลียนโครงสร้างการสื่อสารขององค์กร เมื่อมอบหมายงานแล้ว สถาปัตยกรรมส่วนนั้นจะถูก "แช่แข็ง" (Freeze) และแก้ไขข้ามทีมได้ยากมากเพราะผูกกับสัญญาและสายบังคับบัญชา

"Conway's Law: โครงสร้างโค้ด สะท้อนโครงสร้างทีม"
REASON 8

8. Enabling Incremental Development

พัฒนาแบบค่อยเป็นค่อยไป: สถาปัตยกรรมเปิดทางให้สร้าง "Walking Skeleton" (ระบบโครงกระดูก) ที่เชื่อมต่อการสื่อสารหัว-ท้ายครบถ้วนแต่ยังไม่มีฟังก์ชันสมบูรณ์

กลไกทางวิศวกรรม:

ช่วยให้ทีมสร้าง Minimum Viable Product (MVP) และต่อเติมผ่าน Plug-ins/Extensions ได้ตั้งแต่ต้น ลดความเสี่ยงจากการเอาระบบทั้งหมดมารวมกันตอนท้าย (Big Bang Integration)

"Walking Skeleton: สร้างโครงกระดูกแล้วค่อยใส่เนื้อ"
REASON 9

9. Cost and Schedule Estimates

ประมาณการงบประมาณและเวลา: การประเมิน Top-down จากผู้บริหารมักลอยเกินไป ส่วน Bottom-up จากโปรแกรมเมอร์รายคนมักมองไม่เห็นผลกระทบภาพรวม

กลไกทางวิศวกรรม:

สถาปัตยกรรมย่อยระบบเป็นโมดูลที่มีขอบเขตความรับผิดชอบชัดเจน ช่วยให้เกิดการหาข้อตกลงร่วมกัน (Consensus) ระหว่างตัวเลข Top-down และ Bottom-up ทำให้ได้ตัวเลขที่แม่นยำที่สุด

"ตัวเลขแม่นยำ เกิดจาก Consensus Top-Down + Bottom-Up"
REASON 10

10. Transferable, Reusable Model (Product Lines)

สถาปัตยกรรมใช้ซ้ำทั้งตระกูล: การ Reuse โค้ดให้ประโยชน์ระดับหนึ่ง แต่การทำ Software Product Lines (SPL) ดึงทั้งสถาปัตยกรรมและแบบแปลนไปใช้ซ้ำ ให้ผลตอบแทนทางธุรกิจมหาศาล

กลไกทางวิศวกรรม:

สถาปนิกจำแนกโครงสร้างออกเป็นส่วนที่คงที่ร่วมกัน (Core/Fixed Assets) และจุดแปรผัน (Variabilities) เพื่อสร้างแอปพลิเคชันตระกูลเดียวกันหลายแอปด้วยต้นทุนและเวลาที่ต่ำลงอย่างมาก

"ลงทุนครั้งเดียว ได้สถาปัตยกรรมใช้ซ้ำทั้งตระกูลแอป"
REASON 11

11. Incorporating Independent Elements

เน้นการประกอบแทนการสร้างเอง: โลกยุคใหม่เปลี่ยนจาก Creation (เขียนโค้ดเองทุกบรรทัด) สู่ Assembly over Creation โดยนำ COTS, Open Source และ Cloud Services มาต่อกัน

กลไกทางวิศวกรรม:

สถาปัตยกรรมทำหน้าที่กำหนดมาตรฐาน Interface เพื่อเชื่อมชิ้นส่วนภายนอกเข้าด้วยกัน และป้องกันปัญหา Vendor Lock-in ผ่านแนวคิด Open Systems

"ประกอบของที่มีอยู่ (Assembly) ดีกว่านั่งเขียนเองทั้งหมด"
REASON 12

12. Restricting Design Vocabulary

จำกัดทางเลือกเพื่อสร้างวินัย: "Software engineer is not an artiste... engineering is about discipline" วิศวกรซอฟต์แวร์ไม่ใช่นักวาดภาพที่ทำงานตามอารมณ์ แต่ต้องการระเบียบวินัย

กลไกทางวิศวกรรม:

สถาปนิกจำกัดทางเลือกการออกแบบ (Restrict Vocabulary) โดยบังคับให้ใช้เฉพาะ Architectural Tactics และ Patterns ที่ผ่านการพิสูจน์แล้ว เพื่อให้ระบบคงที่และควบคุมความซับซ้อนได้

"จำกัดทางเลือกด้วย Tactics & Patterns เพื่อสร้างวินัย"
REASON 13

13. A Basis for Training & Onboarding

คัมภีร์ปฐมนิเทศสมาชิกใหม่: สถาปัตยกรรมและผัง Views ต่างๆ คือเอกสารชิ้นแรกในการสอนงานนักพัฒนาใหม่ เพื่อให้เห็นภาพรวมและเริ่มงานได้ทันทีโดยไม่หลงทิศทาง

• Module View: สอนว่าใครทำอะไร ทีมไหนดูแลโค้ดส่วนไหน และโฟลเดอร์จัดเก็บอย่างไร
• C&C View: อธิบายพฤติกรรมการทำงานขณะรัน ข้อมูลส่งผ่าน API และ Queue เส้นทางใด
• Allocation View: ชี้แจงตำแหน่งเซิร์ฟเวอร์ คลาวด์ และสภาพแวดล้อมจริงที่แอปติดตั้งอยู่
"คัมภีร์ปฐมนิเทศ พานักพัฒนาใหม่เข้าสู่โครงการ"
SECTION 1.2 RETENTION MATRIX

Memory Matrix สรุปเหตุผลที่ 7–13 (สูตรจำง่าย)

สรุปหัวข้อ Catchphrase และตัวอย่างประยุกต์ใช้งานจริงในองค์กร เพื่อใช้อ้างอิงขณะวิเคราะห์ระบบและโครงสร้างทีม

ข้อที่ ชื่อหัวข้อหลัก คำจำง่าย (Catchphrase) ตัวอย่างการประยุกต์ใช้งานจริง
7 Organizational Structure "Conway's Law: โครงสร้างโค้ด สะท้อนโครงสร้างทีม" แยกทีมพัฒนาเป็นทีม Frontend, Backend, Database ตามโมดูลในสถาปัตยกรรม
8 Incremental Development "Walking Skeleton: สร้างโครงกระดูกแล้วค่อยใส่เนื้อ" สร้างระบบขึ้นโครงสื่อสารเปล่าๆ ให้รันผ่านตั้งแต่ Sprint แรก แล้วค่อยเติมฟังก์ชัน
9 Cost & Schedule Estimates "ตัวเลขแม่นยำ เกิดจาก Consensus Top-Down + Bottom-Up" PM และ Dev นำผัง WBS จากสถาปัตยกรรมมาประเมินแมนเดย์ร่วมกัน
10 Product Line Reuse "ลงทุนครั้งเดียว ได้สถาปัตยกรรมใช้ซ้ำทั้งตระกูลแอป" ทำ Core Architecture กลางสำหรับแอปพลิเคชันธนาคาร แล้วปรับ Variabilities ตามแต่ละประเทศ
11 Independently Developed Elements "ประกอบของที่มีอยู่ (Assembly) ดีกว่านั่งเขียนเองทั้งหมด" ดึง COTS และ Open Source มาต่อผ่าน API และป้องกัน Vendor Lock-in ด้วย Open Systems
12 Restrict Design Vocabulary "จำกัดทางเลือกด้วย Tactics & Patterns เพื่อสร้างวินัย" ห้ามทีมเขียนวิธีสื่อสารแปลกๆ เอง แต่บังคับให้ใช้ Publish-Subscribe Pattern เท่านั้น
13 Basis for Training "คัมภีร์ปฐมนิเทศ พานักพัฒนาใหม่เข้าสู่โครงการ" ใช้ Module View และ C&C View สอนงานนักพัฒนาใหม่ให้เข้าใจภาพรวมระบบในวันแรก
SECTION 2 FULL EXAM SUITE (20 QUESTIONS)

ควิซทดสอบความรู้ 20 ข้อ (Day 5 Quiz)

ทดสอบความแม่นยำด้าน 7 เหตุผลฝั่งคน องค์กร และธุรกิจ พร้อมระบบตรวจคำตอบและคำอธิบายละเอียดทันที

ทำแล้ว: 0 / 20 ข้อ
คะแนน: 0 / 20 (0%)
SECTION 3 QUICK LOOKUP MATRIX

สารบัญเฉลยเร็ว 20 ข้อ (Fast Answer Key Matrix)

ตารางสรุปคำตอบตัวอักษรของทั้ง 20 ข้อเพื่อใช้อ้างอิงและตรวจทานอย่างรวดเร็ว

20 / 20 Verified Key
ข้อ 1 B
ข้อ 2 A
ข้อ 3 A
ข้อ 4 B
ข้อ 5 B
ข้อ 6 B
ข้อ 7 C
ข้อ 8 A
ข้อ 9 B
ข้อ 10 B
ข้อ 11 A
ข้อ 12 A
ข้อ 13 B
ข้อ 14 D
ข้อ 15 B
ข้อ 16 A
ข้อ 17 A
ข้อ 18 B
ข้อ 19 A
ข้อ 20 B
คัดลอกข้อความเรียบร้อย