ช่วงวันหยุดสงกรานต์ ผมได้อ่านบทความท่มีประโยชน์ตามลิงค์ The Seven Wastes of Software Development - DZone (จริงๆอ่านเจอมานั้นและ แต่ไม่มีเวลาอ่าน 555) โดยเท่าที่ลองอ่านสแกนคร่าวๆมา ผมขอสรุปเนื่อหาสั้นๆนะครับ
ก่อนอื่นเลย เราตีความคำว่า waste หมายถึง อะไร ถ้าลองค้นหาในพจนานุกรมดู พบว่ามันแปลว่า ขยะ หรือ สูญเสียไปโดยไร้ประโยชน์ การพัฒนา Software ก็มีขยะพวกนี้เหมือนกัน ซึ่งในบทความนี้จะนำเสนอขยะ หรือ ลงแรงโดยป่าวประโยชน์ ในการพัฒนา Software มีอะไรบ้างนะครับ โดยผมจะเปรียบเทียบกับ 7 waste of Production ที่จะกล่าวถึงขยะของการผลิต(manufacturing)
- Waste 1 - Partially Done Work(In-process Inventory) คือ ทำงานไม่เสร็จ อาจจะต้องรีบไปทำงานอื่น เช่น เขียน Code เสร็จ แต่ไม่ได้ Review หรือ Optimize Code
- Waste 2 - Extra Features(Over-production) คือ การพัฒนาโปรแกรมที่เกิดจากการจัดการกับ Requirement ไม่ดี ทำให้ Software ที่ได้ออกมามีหน้าที่ หรือฟังก์ชั่นการทำงานที่มากเกินไป และไม่ได้ใช้งาน โดยเราลองใช้มุมมองของทฤษฎี 80 / 20 หรือ Pareto’s Principle จะได้ผลลัพธ์ว่า โปรแกรม 1 โปรแกรม จะมีฟังก์ชั่นการทำงานที่สำคัญ จำเป็น หรือ มีคนใช้งานบ่อยๆ เพียง 20% เท่านั้น
- Waste 3 - Relearning/Rework (Extra Processing) คือ คนในทีมไม่มีความรู้ หรือทักษะที่เพียงพอในการพัฒนา Software ตัวใหม่ ซึ่งอาจจะเป็นเรื่องของเทคโนโลยี หรือ กระบวนการทางธรุกิจ เลยทำให้ต้องเสียเวลามาเรียนรู้ และทำความเข้าใจ เรื่องเหล่านี้
- Waste 4 - Handoffs(Transportation) คือ การส่งต่องาน มองง่าย อาจจะมองว่าระหว่าง Developer ด้วยกัน สามารถทำงานได้ต่อเนื่องกันไหม หรือระหว่าง Developer ส่งต่องานให้ Tester เพื่อทดสอบ เป็นต้น
- Waste 5 - Delays(Waiting) คือ ความล่าช่า ซึ่งอาจจะเกิดจากการมี Process ขั้นตอนการทำงานที่มากเกินไป หรือการขาดแคลนบุคลากรที่มีความรู้ในด้านนั้นๆ
- Waste 6 - Task Switching(Motion) คือ การทำงานไม่ต่อเนื่อง อาจจะต้องไปเก็บงานของอีกโปรเจค ทำให้ต้องมาเสียเวลาเมื่อต้องกลับมาทำงานเดิมต่อ
- Waste 7 - Defects(ในการผลิด ก็เรียก Defects) คือ ความผิดพลาดของ Software หรือพูดในภาษาชาวบ้าน มันก็ คือ Bug นั้นเอง
แหล่งข้อมูล
- The Seven Wastes of Software Development - DZone
- How to Manage the “7 wastes” of “Agile Software Development? - Learnovative
- http://www.scrumalliance.org/community/articles/2013/september/how-to-manage-the-7-wastes%E2%80%9D-of-agile-software-deve
Discover more from naiwaen@DebuggingSoft
Subscribe to get the latest posts sent to your email.