Extreme Programming Workshop ตอน Collective Ownership

Shanyarnuch Ponsa
Siam Chamnankit Family
1 min readJan 28, 2020
Photo Credit by www.samconveyancing.co.uk

บทความนี้มาจากบางส่วนที่ทีมงานสยามชำนาญกิจได้ส่งมอบความรู้ให้กับผู้เข้าร่วม Extreme Programming Workshop

ระหว่างการสอน วันท่ี 3 ของกิจกรรม Extreme Programming Workshop ในวันนี้ผู้สอนได้กล่าวถึง Collective Ownership ซึ่งเป็นหนึ่งใน Practice ของการทำงานแบบ Extreme Programming ที่สามารถเกิดขึ้นได้ทุกจุดในกระบวนการพัฒนาซอฟต์แวร์

กิจกรรมที่จะทำให้เกิด Collective Ownership

  • การออกแบบซอฟต์แวร์ (Software Design) — เริ่มตั้งแต่ขั้นตอนการออกแบบซอฟต์แวร์ เมื่อทำให้ทุกคนมีส่วนร่วมในการออกแบบ Element, API, Method, Database จะทำให้สมาชิกในทีมทุกคน มีข้อมูลและความเข้าใจในชิ้นงานเท่าๆกัน ดังนั้น งานจะไม่ over load หรือ bottle neck อยู่ที่คนใดคนหนึ่ง
  • การประเมินระยะเวลาทำงานของแต่ละ Task มีส่วนช่วยให้ทีมได้ปรึกษา พูดคุย และตกลงร่วมกัน ว่าจะใช้ระยะเวลาเท่าไร โดยใน Workshop นี้ การกำหนดเวลาของแต่ละ Task สามารถตั้งแต่ 0.5, 1, 2 ชั่วโมง
  • การออกแบบและเลือกเทคโนโลยีที่ใช้ในการพัฒนาซอฟต์แวร์ แต่ละ Application Layer สำหรับใน Workshop สมาชิกทีมมีข้อตกลงร่วมกันว่าจะใช้เครื่องมืออะไรบ้างในการทำงานกับแต่ละชั้น
  • การทำ Pair Programming — การเขียนโปรแกรมแบบเป็นคู่ กิจกรรมนี้จะทำให้ทั้งสองคนรู้สึกว่าเป็นเจ้าของ Code ชุดนั้นร่วมกัน โดยแบ่งเป็น
    Navigator ที่คอยจับเมาส์ และอธิบายสิ่งที่คิด จะต้องรู้ว่าเรากำลังจะทำอะไร แก้ไขปัญหาอะไร ส่วนอึกคนนึ่งเป็น
    Driver ที่จับคีย์บอร์ด เขียนสิ่งที่ Novigator บอกให้เขียน Code
  • การอัพเดทใน Stand Up Meeting — เป็นช่วงที่ให้ทุกคนอัพเดตแผนของวันนี้ให้กับสมาชิกในทีมได้รู้ว่า เช้าจะทำอะไร และบ่ายจะทำอะไร จะช่วยให้ทุกคนทราบสถานะของเพื่อนร่วมทีมได้
  • การ Re-Visit Iteration — ในช่วงบ่ายของวัน เกิดการ Re-Visit เป้าของวันนี้ จากนั้น แต่ละคู่อัพเดตให้ทุกคนในทีมทราบว่า ขณะนี้ มี Task อะไรอยู่บ้าง และปรึกษากันว่ายังสามารถทำได้ตามเป้าหรือไม่
  • การอัพเดทก่อนปิดวัน — ก่อนจบวันจะมีการ Sync ร่วมกับสมาชิกทุกคนในทีม จะมีคำถามที่ให้สมาชิกในทีมได้คิดและประเมินร่วมกันว่า เราจะสามารถทำงานได้ตรงตามแผนหรือไม่ กรณีที่ไม่สามารถทำได้ ก็จะตั้งคำถามและให้ทุกคนโหวต เพื่อหาข้อสรุปร่วมกันของทีม ดังนั้น สิ่งที่ได้จะถูกนำไปแจ้งกับทางฝ่าย Business ทราบ จึงเป็นสิ่งที่ทุกคนเห็นตรงกันแล้วนั่นเอง

--

--