สารบัญ
📚 EP นี้เป็นตอนที่ 7 ของ mini-series Project Management 101 — สารบัญรวม อยู่ที่นี่
ตอนนี้เครื่องมือ classic — WBS, Gantt, CPM, PERT, EVA, MoSCoW — ที่ทุกตำราเรียน PMP สอน, ที่ CISA Domain 3 อ้างถึง, ที่บริษัทใหญ่ใช้จริง
ขนาดทีมที่เริ่มใช้: 15-50 คน — เล็กกว่านี้ overhead เกิน, ใหญ่กว่านี้ใช้ scaled framework เพิ่ม (EP.09)
แต่ละตัวเกิดในบริบทเฉพาะ (EP.01 เล่าประวัติ) — ตอนนี้เน้น “ใช้ยังไง” ภาษาคน
1. WBS — Work Breakdown Structure
ที่คนเข้าใจผิด: WBS = task list — ผิด
WBS คือการแบ่ง deliverable เป็นชิ้นย่อยลง — noun ไม่ใช่ verb
ตัวอย่าง: Project ติดตั้ง CRM
WBS:
1. CRM Implementation 1.1 Requirements 1.1.1 Sales requirements 1.1.2 Marketing requirements 1.1.3 Customer service requirements 1.2 Configuration 1.2.1 Account model 1.2.2 Contact model 1.2.3 Opportunity pipeline 1.3 Integration 1.3.1 ERP integration 1.3.2 Email integration 1.4 Migration 1.4.1 Data extraction (legacy) 1.4.2 Data transformation 1.4.3 Data load 1.5 Training 1.6 Go-liveทุก item เป็น deliverable (สิ่งที่ส่งมอบได้) ไม่ใช่ task
กฎสำคัญของ WBS
1. 100% rule — ทุก scope ต้องอยู่ใน WBS — ลืม = ไม่ได้ทำ 2. Deliverable-based — noun ไม่ใช่ verb (อย่าใส่ “design” “build” — ใส่ “Design document” “Built module”) 3. 8/80 rule — work package (leaf node) ใช้เวลา 8 ชั่วโมง — 80 ชั่วโมง ใหญ่กว่า split, เล็กกว่า รวม 4. Mutually exclusive — work package ห้าม overlap
WBS สร้างยังไง
Top-down decomposition:
- เริ่มจาก deliverable สุดท้าย (level 1)
- แบ่งเป็น major component (level 2)
- แบ่งต่อจนถึง work package (level 3-5)
- เลิก decompose เมื่อ:
- ใช้เวลา 8-80 ชั่วโมง
- มี clear deliverable
- Estimate ได้แม่นยำ
ทำไม WBS ต้องเป็น deliverable ไม่ใช่ task?
เพราะถ้าเป็น task — task list เปลี่ยนได้ตามวิธีทำ แต่ deliverable เป็นข้อตกลงกับลูกค้า
ลูกค้าซื้อ “Built module” — ไม่ได้ซื้อ “การพิมพ์โค้ด”
💡 Connect to CISA D3-24: CISA D3 พูดถึง “WBS ต้อง deliverable-based ไม่ใช่ task-based” — ตอนนี้คุณเข้าใจว่าทำไม
2. Gantt Chart — Visualize ตาราง
Origin: Henry Gantt 1910s (EP.01)
หน้าตา:
Activity Week 1 2 3 4 5 6 7 8─────────────────────────────────────────────────────Requirements [████████]Design [████]Development [████████]Testing [████████]Deployment [██]สิ่งที่ Gantt บอก:
- เมื่อไหร่ task เริ่ม + จบ
- Task ไหน parallel, task ไหน sequential
- ความยาว (duration) ของแต่ละ task
สิ่งที่ Gantt ไม่บอก:
- Dependencies (ทำไม task B ต้องรอ A) — Gantt บอกแค่ “B หลัง A”
- Critical path (อะไร critical, อะไรไม่)
- ทำไม task ใช้เวลานั้น
Modern Gantt (Microsoft Project, Asana, Monday.com)
เพิ่มของไว้ใน Gantt:
- Dependencies (arrow ระหว่าง bar)
- Critical path (ขีดสีแดง)
- % Complete (แถบสีในแท่ง)
- Milestone (เพชร ◆)
- Resource assignment
Gantt + WBS
Gantt มาจาก WBS — WBS บอก อะไร, Gantt บอก เมื่อไหร่
WBS: 1.4.1 Data extraction ↓Gantt: [████] week 5-63. CPM — Critical Path Method
Origin: DuPont 1957 (EP.01)
Concept ที่สำคัญที่สุดใน Project Scheduling
Critical Path = ห่วงโซ่กิจกรรมที่ห้ามล่าช้า
ถ้า activity ใน critical path ช้า 1 วัน — ทั้งโปรเจคช้า 1 วัน ถ้า activity ที่ไม่อยู่ใน critical path ช้า — อาจไม่กระทบ (มี slack)
ตัวอย่างง่ายๆ
Project มี 5 activities:
- A: 3 วัน (เริ่มต้น)
- B: 4 วัน (หลัง A)
- C: 2 วัน (หลัง A, parallel กับ B)
- D: 5 วัน (หลัง B)
- E: 1 วัน (หลัง C + D)
2 paths:
- Path 1: A → B → D → E = 3 + 4 + 5 + 1 = 13 วัน
- Path 2: A → C → E = 3 + 2 + 1 = 6 วัน
Critical path = Path 1 (ยาวสุด) Slack ของ C = 13 - 6 = 7 วัน (C ช้าได้ 7 วัน ก่อนกลายเป็น critical)
สูตร CPM
Forward pass (หา earliest start/finish):
- ES (Earliest Start) ของ task = max(EF ของ predecessors)
- EF (Earliest Finish) = ES + Duration
Backward pass (หา latest start/finish):
- LF (Latest Finish) ของ task = min(LS ของ successors)
- LS (Latest Start) = LF - Duration
Slack/Float = LS - ES (หรือ LF - EF — ค่าเดียวกัน)
Activity ที่อยู่ critical path: Slack = 0
ทำไม CPM สำคัญใน real life
1. Focus management attention — ใส่พลังงานกับ task ใน critical path ก่อน 2. Schedule compression — อยากเร่ง project? เร่งใน critical path เท่านั้น (เร่งใน non-critical = wasted) 3. Risk management — task ใน critical path = high risk, ต้องมี mitigation
4. PERT — Program Evaluation Review Technique
Origin: US Navy Polaris missile 1958 (EP.01)
Difference จาก CPM
CPM ใช้ fixed duration — แม่นยำ ใช้กับงานที่เคยทำมาก่อน
PERT ใช้ probabilistic duration — สำหรับงานที่ไม่แน่นอน
PERT estimate (3-point estimation)
ทุก activity มี 3 ค่า:
- O (Optimistic) — เร็วสุดถ้าโชคดี
- M (Most Likely) — ปกติ
- P (Pessimistic) — ช้าสุดถ้าเจอปัญหา
สูตร:
PERT estimate = (O + 4M + P) / 6Standard deviation = (P - O) / 6Variance = ((P - O) / 6)²ตัวอย่าง
Activity X:
- O = 3 วัน (เร็วสุด)
- M = 5 วัน (ปกติ)
- P = 11 วัน (ช้าสุด)
PERT estimate = (3 + 4×5 + 11) / 6 = 34/6 = 5.67 วัน SD = (11 - 3) / 6 = 1.33
ใช้ค่านี้ใน schedule แทน fixed duration
เมื่อไหร่ใช้ PERT vs CPM
| PERT | CPM | |
|---|---|---|
| Duration | Probabilistic | Fixed |
| Best for | R&D, never-done-before | Repeated work |
| ตัวอย่าง | สร้าง chip ใหม่ | ติดตั้ง server (ทำซ้ำ) |
| Output | Range (min-max) | Single date |
ในชีวิตจริง — ผสมใช้ — เรียก “CPM analysis with PERT estimates”
5. EVA / EVM — Earned Value Management
Origin: US DoD ปี 1967 ในชื่อ C/SCSC
อันนี้ความสำคัญสูงสุดในเครื่องมือทั้งหมด — เพราะตอบคำถาม “on track หรือไม่”
ปัญหาที่ EVM แก้
ถ้า project ใช้ budget ไป 80% แล้ว — เกือบเสร็จไหม?
คำตอบ: ไม่รู้! เพราะ “เงิน 80%” ไม่ได้บอก “งาน 80%”
EVM แก้โดยใช้ 3 ตัวเลข:
3 Numbers ของ EVM
1. PV — Planned Value (เคยเรียก BCWS = Budgeted Cost of Work Scheduled) “ตามแผน วันนี้น่าจะเสร็จงานมูลค่าเท่าไหร่”
2. EV — Earned Value (เคยเรียก BCWP = Budgeted Cost of Work Performed) “จริงๆ วันนี้เสร็จงานมูลค่าเท่าไหร่”
3. AC — Actual Cost (เคยเรียก ACWP = Actual Cost of Work Performed) “ใช้เงินไปจริงเท่าไหร่”
Indices
SPI — Schedule Performance Index = EV / PV
- SPI = 1.0 → on schedule
- SPI < 1.0 → behind schedule (เช่น 0.8 = ช้ากว่าแผน 20%)
- SPI > 1.0 → ahead of schedule
CPI — Cost Performance Index = EV / AC
- CPI = 1.0 → on budget
- CPI < 1.0 → over budget (เช่น 0.85 = ใช้เงินเกินแผน 15%)
- CPI > 1.0 → under budget
ตัวอย่าง: Project 6 เดือน, budget 6M บาท
วันที่ 90 (เดือนที่ 3 — กลาง project):
- PV = 3M (ตามแผนน่าจะเสร็จงานมูลค่า 3M)
- EV = 2.4M (จริงๆ เสร็จงานมูลค่า 2.4M)
- AC = 2.7M (ใช้เงินไปแล้ว 2.7M)
SPI = 2.4 / 3.0 = 0.8 → behind 20% CPI = 2.4 / 2.7 = 0.89 → over budget 11%
สถานการณ์: ทั้งช้าและเกินงบ
Forecast: EAC (Estimate at Completion)
ถ้า trend นี้ต่อไป — จบ project ใช้เงินเท่าไหร่?
EAC = BAC / CPI
จากตัวอย่าง: BAC = 6M, CPI = 0.89 EAC = 6 / 0.89 = 6.74M
แปลว่า: ถ้าไม่แก้อะไร project จะใช้เงินเกินงบ 0.74M (12.5%)
EVM ใช้กับ Agile ได้ไหม?
ได้ในบางรูปแบบ — เรียก “AgileEVM” หรือ “Agile Earned Value”:
- Story point → เป็น “value”
- Sprint cadence → measure ทุก sprint
แต่ purist ของ Agile ไม่ค่อยใช้ — เพราะ EVM assume scope fixed
6. MoSCoW Prioritization
Origin: Dai Clegg ที่ Oracle UK ปี 1994
แบ่ง requirement เป็น 4 หมวด:
| ตัวอักษร | ความหมาย |
|---|---|
| Must have | ขาดไม่ได้ — release ไม่ได้ถ้าขาด |
| Should have | สำคัญ แต่ไม่ critical — workaround ได้ |
| Could have | nice to have — ทำถ้ามีเวลา/งบ |
| Won’t have (this time) | ไม่ทำในรอบนี้ — defer |
กฎทอง: ต้องมี W ที่ชัดเจน
ปัญหาที่เจอบ่อย: ทีม mark ทุกอย่างเป็น Must — เพราะกลัว stakeholder โกรธ
ผลลัพธ์: ไม่มี priority จริง = ทำทุกอย่าง = ทำไม่ทัน
แก้: บังคับให้ at least 20% เป็น Won’t have — กรองให้ตัดสินใจจริง
ใช้ MoSCoW เมื่อไหร่
- ใน sprint planning
- ใน release planning
- ตอน scope negotiation กับ sponsor
7. Critical Chain Method (Bonus)
Origin: Eli Goldratt, Critical Chain (1997)
Critical Chain ≠ Critical Path:
- Critical Path = ห่วงโซ่ที่ยาวสุด (logical dependency)
- Critical Chain = ห่วงโซ่ที่ resource-constrained
ทำไม difference?
- ถ้าคนเดียวกันต้องทำ task A และ task B (parallel ใน Gantt) — จริงๆ ทำพร้อมกันไม่ได้
- Critical Chain คำนึงถึง resource
Buffer management:
- ใส่ buffer ที่จุดสำคัญ (project buffer ปลายทาง, feeding buffer ก่อน critical chain)
- ไม่ใส่ buffer ทุก task — เพราะ Parkinson’s Law: “Work expands to fill the time available”
ใช้ในโปรเจคขนาดกลาง-ใหญ่ที่ resource sharing เยอะ
ทุกเครื่องมืออยู่ใน phase ไหน
ย้อนกลับไปที่ EP.02 lifecycle:
| เครื่องมือ | Phase ที่ใช้ |
|---|---|
| WBS | Planning |
| Gantt | Planning + Monitoring |
| CPM / PERT | Planning |
| EVM | Monitoring |
| MoSCoW | Planning + Execution |
| Critical Chain | Planning + Execution |
เครื่องมือ classic เหล่านี้ใช้กับ Agile ได้ไหม?
ตอบสั้นๆ: ได้บางส่วน — Agile ไม่ได้ rejected ทุกอย่าง
| เครื่องมือ | Agile compatible? |
|---|---|
| WBS | ✅ — แบ่ง epic → story → task |
| Gantt | 🟡 — ใช้ระดับ release plan ได้ ไม่ใช้ระดับ sprint |
| CPM | 🟡 — release-level planning |
| PERT | 🟡 — story estimation (3-point) |
| EVM | 🟡 — AgileEVM exists |
| MoSCoW | ✅ — ใช้บ่อย |
| Critical Chain | ❌ — ไม่ค่อยใช้ |
สรุป EP นี้
- WBS = แบ่ง deliverable (noun) ไม่ใช่ task (verb) — 100% rule, 8/80 rule
- Gantt = visualize เวลา — สวย แต่ไม่บอก critical path เอง
- CPM = หา critical path — เร่งโปรเจคต้องเร่งใน critical path
- PERT = 3-point estimate (O + 4M + P) / 6 — ใช้เมื่อ duration ไม่แน่นอน
- EVM = SPI (schedule) + CPI (cost) — ตอบ “on track ไหม”
- MoSCoW = Must / Should / Could / Won’t — บังคับให้มี Won’t ชัด
- เครื่องมือ classic ใช้กับ Agile ได้บางส่วน — ไม่ใช่ทั้งหมด
EP ต่อไปเรื่อง 3 หัวข้อสำคัญที่ตำราเรียน skip — Risk + Quality + Procurement