Unit 2 (2) — Project Management Methodologies

เลือกวิธีบริหารโครงการให้ตรงกับ "ความแน่นอนของความต้องการ" — ความต้องการนิ่ง ใช้ Waterfall, ความต้องการเปลี่ยนบ่อย ใช้ Agile และเครื่องมือในตระกูล Agile คือ Scrum กับ Kanban

1. Waterfall Model

Requirements Design Implementation Testing Deployment / Maintenance ขั้นก่อนหน้าต้องเสร็จ 100% ก่อนเริ่มขั้นถัดไป การไหลของงานไปทางเดียว ย้อนกลับไปแก้ยาก
Waterfall — หลักการบริหารโครงการซอฟต์แวร์แบบดั้งเดิม
เหมาะสำหรับไม่เหมาะกับ
โครงการที่มั่นใจว่า Software Requirement ไม่เปลี่ยนระหว่างทางโครงการที่มีการเปลี่ยนแปลงอยู่เสมอ
ผู้เกี่ยวข้องทั้งหมดรู้ว่าตนเองต้องการอะไรในภาพรวมโครงการที่ยังไม่มีภาพผลลัพธ์สุดท้ายชัดเจน
ขั้นตอนสอดคล้องกันและคาดการณ์ผลลัพธ์ที่แน่นอนได้
องค์กรที่มีระบบแบบแผน ติดตามงานเอกสารเป็นระบบ
ข้อสังเกต: วางแผนตั้งแต่ต้นจนจบให้แม่นยำทำได้ยาก และ ความผิดพลาดในขั้นหนึ่งย้อนกลับไปแก้ยากมาก จะกระทบทั้งระบบหรือทำให้ล่าช้า

2. Agile Methodology (Iterative model)

Agile ถูกคิดค้นขึ้นเพื่อ แก้ปัญหาการบริหารโครงการแบบดั้งเดิม ทำงานแบบ หมุนวน/ทวนซ้ำกระบวนการ ให้ทีมตรวจสอบและให้ feedback ระหว่างทาง โดยไม่ต้องรอขั้นก่อนหน้าเสร็จสิ้น เน้นรอบสั้นๆ ทำทีละนิด ทดสอบและประเมินผลบ่อย

หลักการทำงาน 3 ส่วนของ Agile
1) Collaboration — การทำงานแบบมีส่วนร่วม
2) Speed — รวดเร็ว
3) Open to Data-driven Change — ขับเคลื่อนด้วยการเปลี่ยนแปลงข้อมูล
Iteration (รอบสั้น ๆ ซ้ำ ๆ) Plan Build Review / Feedback Test
Agile วนเป็นรอบ ไม่ใช่เส้นตรงแบบ Waterfall
เหมาะสำหรับไม่เหมาะกับ
โครงการที่เปลี่ยนแปลงค่อนข้างบ่อยโครงการที่เกี่ยวข้องกับงานเอกสารจำนวนมาก
ยังไม่มีภาพผลลัพธ์สุดท้ายที่ชัดเจนโครงการที่กำหนดสิ่งที่ต้องส่งมอบไว้ชัดเจนแล้ว
มีเวลาดำเนินการจำกัดทีมงานไม่มีแรงจูงใจมากพอ
Stakeholders ต้องการมีส่วนร่วมทุกขั้นตอน / เน้นทีมงานมากกว่ากระบวนการ

3. Scrum Framework (Incremental model)

เครื่องมือบริหารโครงการแบบ Agile — ทีมช่วยกันรุมงาน ไม่มีผู้บริหารโครงการ นักออกแบบ/วิเคราะห์ระบบ นักทดสอบระบบแยกกัน มีแค่ 3 บทบาท:

บทบาทหน้าที่
Product Ownerประเมินคุณค่า และจัดลำดับความสำคัญของงานให้ทีม
Scrum Masterควบคุมดูแล และกำจัดอุปสรรคที่ขัดขวางการทำงานของทีมให้งานลื่นไหล
Teamทำงานแบบ Self-management ประกอบด้วย 3–9 คน รวมทุกตำแหน่ง ทำได้จนจบโดยไม่ต้องข้ามแผนก
ทฤษฎีสกรัม 3 เสา: Transparency — Inspection — Adoption
เหมาะสำหรับไม่เหมาะกับ
โครงการที่ต้องการผลลัพธ์รวดเร็ว และติดตามความก้าวหน้าสม่ำเสมอทีมงาน/คนจากหลายแผนกในองค์กรขนาดใหญ่
โครงการพัฒนาเทคโนโลยีหรือซอฟต์แวร์โครงการที่กำหนดสิ่งส่งมอบไว้ชัดเจน
เน้นความร่วมมือผ่านโครงสร้างองค์กรแบบแนวราบ (Flat Organization)ทีมงานไม่มีแรงจูงใจมากพอ
โครงสร้างทีมแบบลำดับชั้น (High-hierarchical Structure)
ข้อสังเกต Scrum: อิสระสูงจนอาจไม่ทำงานเป็นทีม, ประเมินเวลาแต่ละ sprint อาจคลาดเคลื่อนจนหลุดเป้า, ใช้กับองค์กรขนาดใหญ่ยากเพราะการยอมรับความต่างทางวัฒนธรรมในคนหมู่มาก

4. Kanban Method

"คัมบัง" แปลว่า ป้ายแสดงสัญลักษณ์ — เครื่องมือบริหารโครงการแบบ Agile ที่มีสัญลักษณ์เป็น กระดานและการ์ด คิดค้นและใช้กับอุตสาหกรรมการผลิตแบบ Just-in-Time (JIT) กระดานออกแบบให้ทีมเห็น Workflow ทั้งหมด งานถูกแบ่งตาม Status

To Do Task A Task B In Progress Task C (คอขวด) Review Task D Done Task E
Kanban Board — งานแบ่งตาม Status ทำให้เห็นคอขวด (Bottleneck) ได้ง่าย
เหมาะสำหรับไม่เหมาะกับ
โครงการหลายประเภท: การผลิต การตลาด การพัฒนาบุคลากร การพัฒนาซอฟต์แวร์โครงการซับซ้อนสูง มีกิจกรรม/ขั้นตอนเยอะ
ต้องการทราบสถานะการทำงานเชิงประจักษ์ อัปเดตสม่ำเสมอ มองเห็นคอขวดง่ายโครงการแบบ Push system
เน้นการสื่อสารระหว่างทีม / อยากให้ทีมโฟกัสงานของตนเอง
ข้อสังเกต Kanban: บอร์ดอาจซับซ้อนดูยาก, เสี่ยงสูงที่คนจะไม่อัปเดตงานบนบอร์ดทำให้เกิดข้อผิดพลาด, ยากต่อการจัดการเวลา (Timing)
Scrum + Kanban = Scrumban Methodology

5. เปรียบเทียบสรุป

ประเด็นWaterfallAgileScrumKanban
โมเดลSequential / SDLC ดั้งเดิมIterativeIncrementalVisual board
Requirementนิ่ง ไม่เปลี่ยนเปลี่ยนบ่อยเปลี่ยนได้ใน sprintไหลเข้าเรื่อย ๆ
บทบาทเด่นPM, SA, Tester แยกกันทีมมีส่วนร่วมPO / Scrum Master / Teamทั้งทีมดูบอร์ดเดียวกัน
เอกสารมาก เป็นระบบน้อยน้อยน้อย

6. ปัจจัยเลือกวิธีบริหารโครงการ (Influential Factors)

  1. Team size & Company Structure — ทีมเล็กหรือใหญ่เกินไปไหม โครงสร้างองค์กรสนับสนุนแบบใด
  2. Cost & Budget — ขนาดเงินลงทุน แหล่งทุน เงินสำรอง
  3. Client & Stakeholders Collaboration — ลูกค้าและผู้มีส่วนได้ส่วนเสียมีส่วนร่วมมากน้อยเพียงใด
  4. Ability to take risks — ยอมรับและจัดการความเสี่ยงได้แค่ไหน พิจารณาร่วมกับขนาดโครงการ
  5. Flexibility — มีพื้นที่ปรับปรุงขอบเขตหรือเปลี่ยนแปลงระหว่างดำเนินงานหรือไม่
  6. Timeline — ใช้ระยะเวลานานเท่าใดจึงครบกำหนดส่งมอบ
Hubstaff survey 2021: 39% ของบริษัทที่สำรวจ ใช้ hybrid project management practices

วิธี/เครื่องมืออื่นที่ควรรู้จักชื่อ: PDCA, 4M Checklist, CPM, SMART Goals, RAD, NPI, PERT, XP, APF, PRINCE2, PMBOK, Lean, Six Sigma, Scrum, Kanban