Agile Sixty-Six Rotating Header Image

Agile และ ทางเดินสายกลาง ตอน Story Point เจ้าปัญหา

จากบทความของผมเมื่อเดือนกรกฏาคมเรื่อง Agile กับ Organizational Behavior ใจความสำคัญคือ การนำเอาแนวคิดแบบagile และ ทฤษฏีพฤติกรรมองค์กรมาเปรียบเทียบกัน โดยยกวิธีในการวัดผลงานของนักพัฒนามาเป็นจุดเปรียบเทียบ

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

ผมทิ้งความสงสัยไว้อีกข้อว่า ทั้งๆที่ทุกคนก็รู้ดีว่าเป้าหมายของการพัฒนาซอฟท์แวร์คือ Working Software หรือ ซอฟท์แวร์ที่ใช้งานได้จริง (และนำไปขายอย่างมีมูลค่าได้) แต่ทำไม?? ทำไมผู้บริหารถึงต้องการลงรายละเอียด และพิจารณาปริมาณผลผลิต(productivity) ของนักพัฒนาแต่ละคน โดยตีความจาก story point ที่นักพัฒนาทำได้ในช่วงเวลาหนึ่งๆ เช่น นายไก่ ปีนี้ทำงานได้ 50 พอยท์ ดีกว่านายไข่ ที่ทำได้เพียง 30

ความไม่เข้าใจกันระหว่างผู้บริหารกับนักพัฒนาจะมีอยู่อย่างต่อเนื่อง จนกว่าทั้งสองฝ่ายจะ หยุด ที่จะมองแต่เพียงด้านเดียว และเข้าใจความต้องการของอีกฝ่ายมากขึ้น

หนึ่งเดือนที่ผ่านมา ผมลองคิดว่าจะตอบข้อสงสัยของตัวเองได้อย่างไร จะใช้อะไรเป็นตัวชี้วัดดีเพื่อให้ทั้งนักพัฒนาและผู้บริหารต่างพอใจด้วยกันทั้งคู่ คำตอบในอุดมคติของผมคือ คำเพียงสามคำ “เดินสายกลาง” โปรดฟังอีกครั้งหนึ่ง “เดิน-สาย-กลาง” ที่ฟังดูง่ายๆเพียงเท่านี้ แต่วิธีการกลับยากยิ่งนัก และที่ยากก็ไม่ใช่เพราะขั้นตอนมันยาก แต่เป็นเพราะมันต้องการ “การปรับทัศนคติ” ของผู้ที่เกี่ยวข้องนั่นเอง

ในบทความก่อน ผมถามว่า “จะเปลี่ยนทัศนคติของผู้บริหารได้อย่างไร?” ซึ่งวิธีคิดของผมแบบนั้น แค่เริ่มก็ผิดทางแล้วครับ ผมไม่ควรเริ่มด้วยความคิดที่จะเปลี่ยนคนอื่น แต่ควรเริ่มที่จะเปลี่ยนตัวเองก่อน ดังนั้นผมจะขอมุ่งประเด็นไปที่การปรับทัศนคติของนักพัฒนาดีกว่า และเพื่อไม่ให้ความคิดของผมชี้นำคุณผู้อ่าน ผมจะนำเสนอเฉพาะมุมมองของผู้บริหารที่มีต่อนักพัฒนา ส่วนจะตอบสนองต่อมุมมองเหล่านั้นอย่างไร ก็แล้วแต่คุณผู้อ่านจะหยิบยกไปคิดพิจารณาครับ

ลองมาดูตัวอย่างมุมมองของผู้บริหารที่เป็นไปได้ครับ
- ทำงานเป็น Iteration แต่พองานในไอเสร็จ กลับนั่งว่างๆ แทนที่จะหยิบงานในไอหน้ามาทำต่อ
- Pair programming เสียนักพัฒนาไปสองคน แต่งานเสร็จเพียงชิ้นเดียว
- Retrospective เหมือนนั่งบ่นกันเฉยๆ เสียเวลาเป็นชั่วโมง แต่จับต้องอะไรไม่ได้เลย
- Bug เยอะแยะ บอกรีบและไม่มีเวลาเขียน Unit Test แต่มาสายกว่าและกลับเร็วกว่าทีม QA
- Velocity ขอเพิ่มก็ไม่ได้ บอกว่าทำเต็มแล้ว แต่มาสายกว่าและกลับเร็วกว่าทีม QA เสียอีก
- Planning poker ใช้เวลาเยอะ วางแผนงานหรือคุยเล่นกันก็ไม่รู้ ดูไม่กระตือรือร้นเลย
- Requirement เปลี่ยนไม่ได้ และ Commitment ก็ให้ไม่ได้อีก
- ฯลฯ

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

ดังที่ได้ถูกกล่าวขานไว้ในคำคมและคติพจน์ตั้งแต่อดีตกาล อยู่ที่คุณแล้วว่าจะเลือก “หักด้ามพร้าด้วยเข่า” หรือ “ถอยหนึ่งก้าว”

“รุกหนึ่งก้าว ถอยหนึ่งก้าว”
“ถอยหนึ่งก้าว เดินหน้าได้สามก้าว”
“ถอยหนึ่งก้าว เพื่อก้าวที่ยิ่งใหญ่กว่า”

แล้วคุณล่ะครับ ได้คำตอบให้กับตัวเองแล้วหรือยัง?

7 Comments

  1. kluak110 says:

    I’m Starting With The Man In The Mirror [MJ] :-)

  2. sinapam says:

    พี่มี comment สองข้อล่ะค่ะ

    1. พี่เห็นด้วยอย่างที่สุด ว่าการเปลี่ยนแปลงทุกอย่างควรจะเริ่มจากตัวเองค่ะ แต่อย่างไรก็แล้วแต่ “you can compromise, but don’t lose yourself” เหมือนกับเรามีแฟน เราก็คงต้องมีเปลี่ยนแปลงตัวเองบ้าง เพราะคนที่มาจากคนละครอบครัวกันก็ต้องมีความแตกต่างกันบ้างอยู่แล้ว ก็คงต้องมีที่ต้องปรับต้องจูนให้เข้ากัน แต่ก็น่าจะมี limit อยู่ที่ว่า เราไม่สูญเสียความเป็นเราไปป้ะ ไม่งั้นแทนที่จะเป็น win:win ก็จะกลายเป็น win:lose หรือ lose:lose ไป เมื่อถึง shot นั้นก็คงจะมีความสุขมากกว่าถ้าเลิกกันไป

    2. หัวหน้าพี่สอนพี่มาหนึ่งอย่าง ตอนพี่ย้ายมาอยู่ที่นี่ใหม่ๆ ที่เป็น turning point ในความเป็นผู้เป็นคนของพี่จุดนึง คือ เวลาเราจะทำอะไรซักอย่าง เราต้องแยกแยะ goal ออกจาก solution ให้ออก แล้วเราต้องอย่าลืม goal ของเรา solution เปลี่ยนไปได้ แต่อย่าหลงลืม goal ที่เราต้องการให้เป็น จริงๆนี่เป็น base ของแนวความคิดแบบ Agile ด้วยนั่นแหละ ถ้าบอกว่า goal ของผู้บริหาร คือต้องการรู้ว่าใครมี performance ที่ดีไม่ดีอย่างไร แล้ว solution ที่เค้าเลือกมานั้น มันเหมาะสมกับ goal นั้นแล้วจริงหรือ? หรือเค้าเลือก solution มาว่า นี่แหละดีที่สุดแล้วโดยไม่สนใจว่า มันจะพาไปยัง goal ได้รึเปล่า อันนั้นต่างหาก ที่ทำให้เข้าใจไม่ได้ ไม่ใช่ที่ solution เค้าคืออะไร

    แต่พี่ก็หวังว่า การเปลี่ยนแปลงที่น้องต้องการจะทำ จะทำให้เกิดการเปลี่ยนแปลงที่ยิ่งใหญ่ได้ Good luck in whatever you’re trying to do นะคะ (ไม่ได้ประชดนะ อย่างจริงใจ :) )

    1. ขอบคุณพี่แป๋มที่แนะนำครับ

      ชอบคอมเม้นท์พี่แป๋มตรง “You can compromise, but don’t lose yourself” เพราะหากสูญเสียจุดยืนแล้ว ผมว่ามันเหมือนซอมบี้นั่งทำงานเลย ;)

      ส่วน Goal ผมเชื่อว่าเป็น ซอฟท์แวร์ที่ใช้งานได้และขายได้ นี่ล่ะครับ ซึ่งพี่ๆเพื่อนๆแถวนี้เขาก็สุดยอดอยู่แล้น หากเติมเต็มเรื่อง”ภาพลักษณ์”ได้ คงไม่มีใครอยากมาจ้ำจี้จ้ำไชกับคน/ทีมที่โตแล้ว(matured)หรอกเนอะ ^_^

      1. Korn4D says:

        ฮ่า! ผมคงต้องบอกว่า “จง compromise และ ขจัด yourself” สูงสุดคือสู่สามัญ สุดยอดของ Agile คือความว่าง ไร้ตัวไร้ตน ไร้ที่ตั้ง พลิกพลิ้วดั่งต้นหลิว เมื่อเริ่มจงอย่าตั้งเป้าหมายใดๆ แล้วปรับเปลี่ยนทุกอย่างตามสถานการณ์

        ทำ iteration ไม่ได้จงสร้าง flow
        ทำ pair ไม่ได้ก็ไม่ต้อง pair
        ไม่มี retro ก็ต้องยังหา feedback ได้
        Bug เยอะก็ต้องยิ่งเขียน unitest
        ถ้า Agile methodology ไม่ work ก็อย่าใช้ ให้มันรู้ไปว่า ถ้าไม่ปฏิบัติแบบ Agile แล้ว จะเป็น Agile ไม่ได้

        คำเตือน: อ่านแล้วไม่เข้าใจ คุณเป็นคนธรรมดา อ่านแล้วดันเข้าใจ คุณเริ่มจะผิดปกติแล้วดูแลตัวเองด้วยนะ :P

          1. Korn4D says:

            Why do you like it?

        1. พี่เคยบอกผมเรื่องนี้แล้วครับ เลยรู้ว่าพี่หมายถึงอะไร แต่ยังไม่”เข้าใจ”ว่าจะทำได้อย่างไร ดังนั้นผมจึงยังปลอดภัย อิอิ :)

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Plugin from the creators of Brindes :: More at Plulz Wordpress Plugins