Story Team

When Component Teams Create Dependency Problems — When Feature Teams Are Too Far From Reality — Consider “Story Team”

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

แต่เมื่อมีรีไควเม้นท์ (หรือจะเรียกว่าสตอรี่ก็ได้) เข้ามา ความเคลื่อนไหวจะเกิดขึ้นด้วยการเริ่มฟอร์มกลุ่มย่อยๆเพื่อจัดการงานนั้นให้เสร็จโดยทันที คนที่ทำโค๊ดด้านล่างจะเริ่มคุยกับคนที่ทำโค๊ดตรงกลางและต่อมาที่ยูไอด้านบน — ทุกอย่างเป็นไปตามธรรมชาติ

เสร็จงานแล้วกลุ่มย่อยนี้ก็สลายตัว งานใหม่มาก็เริ่มต้นฟอร์มทีมชั่วคราวกันใหม่ตามลักษณะงาน ตามหน้าที่รับผิดชอบ ตามทักษะส่วนตัว และตามเวลาที่มี

การสร้างกลุ่มย่อยแบบชั่วคราวนี้เกิดขึ้นอย่างต่อเนื่อง มันเป็นความเคลื่อนไหวที่น่าสนใจในแง่ของการจัดการปัญหาหรือรีไควเม้นท์ของทีม — บทเรียนสำคัญสองข้อที่ผมได้รับจากข้อสังเกตนี้ เราจะมีโอกาสที่ดีในการทำงานให้เสร็จถ้า

หนึ่ง เอางานหรือปัญหาหรือรีไควเม้นท์เป็นตัวตั้งแล้วปรับเปลี่ยนทีมงานหรือรูปแบบการทำงานเพื่อจัดการกับมัน — ไม่ใช่ยึดตัวบุคคลหรือทีมเป็นหลักแล้วพยายามปรับให้ปัญหามันเข้าทางเรา
สอง การทำงานใกล้ชิดกันของคนที่ “ต้อง” ทำงานใกล้ชิดกันเป็นเรื่องสำคัญ ยิ่งใกล้ชิดกันมากยิ่งดี ยิ่งใกล้ชิดกันเร็วยิ่งดี การทำงานแบบนี้จะช่วยให้การรวมงาน (Integration) ทำได้ราบรื่นขึ้น — สำคัญมากๆนะจุดนี้

เรานิยมโครงสร้างแบบคอมโพเน้นท์ทีม (Component Team) ซึ่งสร้างปัญหาดีเพนเดนซี่เยอะ … ครั้นจะสร้างฟีเจอร์ทีม (Feature Team) ที่ทำทุกอย่างทุกส่วนได้ด้วยทีมเดียวก็เป็นเรื่องยากเกินไป

ลองพิจารณาสตอรี่ทีม (Story Team) ดู … จัดทีมตอนเริ่มทำงาน แยกย้ายเมื่อทำงานเสร็จ … คอนเซ็ปเหมือน “ไว้พบกันเมื่อชาติต้องการ” ประมาณนั้นเลย


ผมเขียนบทความนี้เพราะอยากเปลี่ยนแปลงสิ่งที่เป็นอยู่ในอุตสาหกรรมการผลิตซอฟต์แวร์ให้ดีขึ้นตามความเชื่อและประสบการณ์ของผม ถ้าเพื่อนๆเชื่อในแนวทางเดียวกัน เรามาช่วยกันคนละไม้คนละมือทำให้สังคมของเราดีขึ้นครับ จะแชร์บทความนี้ผ่าน Social Network หรือจะแบ่งปันเรื่องราวนี้ให้คนที่นั่งข้างๆฟังบ้างก็ได้

The Future Has Arrived — It’s Just Not Evenly Distributed Yet, William Gibson

อนาคตอยู่ตรงนี้แล้ว เรามีหน้าที่ต้องถ่ายทอดมันออกไปให้คนอื่นได้สัมผัสสิ่งดีๆร่วมกันครับ