Agile Sixty-Six Rotating Header Image

Agile Experience

Real life Agile experience

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

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

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

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

QA ไม่ตกงาน

ก่อนจะอ่าน post นี้ ให้ไปอ่าน comment ของพี่ Korn4D ใน เอกลักษณ์ Agile แป๊บนะคะ บางส่วนจะตอบที่ T = N/v
ตอบด้วยคำถาม
- อยู่ดึกเข้ามาทำวันเสาร์ ยังถือว่า time boxed iteration ได้หรือไม่?
- ถ้า unit testing เป็นของ developer และดีพอแล้ว จะมี QA ทำไม?
- ถ้า developer ทำ test แล้วยังต้อง มี QA ทำไมไม่ให้ QA เป็นคนทำ test อย่างเดียว, developer จะได้มีเวลาโค้ดเพื่อสร้าง value ได้มากขึ้น
- ถ้า developer อู้ ทำน้อยแต่โหวตมากๆ จะทำอย่างไร?
- ทำทั้งหมดนี้แล้วจะ commit ได้หรือไม่ว่าทั้งหมดเสร็จเืมื่อไหร่?

เรื่องการ testing เนี่ย unit testing ก็เหมือนกับ white box testing เราเขียนโดยที่เรารู้ code และก็เป็นแค่การ test ในส่วนๆหนึ่งไม่ได้ test การประกอบร่างกับส่วนอื่นๆมากนัก

การ Test ยังมี functional test, performance test, capacity test, exploratory test โอ๊ย อีกมากมายอ่ะค่ะ QA ไม่ได้ตกงานแน่นอน

นอกจากนี้ QA ยังมีความสำคัญมาก กับการสร้าง exit criteria ของ story ที่สมบูรณ์มากขึ้น เพราะด้วยมุมมองของ QA จะทำให้เราไม่ได้มองแต่ happy path (เช่น user ใส่ username password ถูกก็ต้อง login ได้) แต่จะมอง sad path (เช่น user ใส่ username password ผิด ก็ต้องบอกเค้าว่าผิด) และ bad path (เช่น user ใส่ตัวอักษรประหลาดที่อาจะทำให้เกิด exception ใน program ได้ ก็ต้อง handle อย่างสวยงาม) ด้วย นั่นคือ หน้าที่ของ QA QA ที่ดีจะมีมุมมองที่ครอบคลุมเช่นนี้ แล้วเค้าก็จะสร้างประโยชน์ให้กับ project ได้อย่างมากมาย

หนูเกลียด defect!

หลายวันก่อน มีประเด็นเกี่ยวกับ เราจะจัดการ defect ยังงัยดี น่าสนใจดี

เวลาที่เราทำการ์ด เมื่อเราลากมันไปที่เลน ready for testing ความน่าจะเป็นที่อาจจะเกิดขึ้นกับการ์ดนั้นคือ

- ผ่านลอยลำไปอย่างเงียบๆ ไปยัง completed โดยไม่มีเสียง tester ด่าตามหลัง เย้!
- tester จับได้ภายในครึ่งชั่วโมงว่ามัน test ไม่ผ่านนะยะ developer ทำไม่ครบตาม exit criteria ฮึ่ย!
- tester กำลังยุ่งๆ เลยจับได้ในอีกสองสามวันให้หลัง ว่าการ์ดนี้ยังทำไม่ครบตาม exit criteria ที่ตกลงกัน (แมวไม่อยู่หนูร่าเริงนะยะ)
- tester จับผิดระบบอย่างเมามัน จนไปเจอ bug เข้าให้ (โฮ่ๆๆ สะใจ)
- tester กำลังเผลอ เราแอบไปลากมันกลับมาอย่างเงียบๆ เพราะดันเห็นพอดีว่ามันพัง ฮ่าๆๆ รอด

แล้ว เมื่อไหร่จะ create defect card ดีล่ะ?
(more…)

Agile กับ Organizational Behavior

สืบเนื่องมาจากบทความ Playing the Devil’s Advocate ที่ผมได้เข้าไปก่อกวนมา :)

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

ผมตั้งข้อสงสัยไว้อย่างหนึ่ง ว่าทีมอื่นๆทั่วโลกที่ใช้ Agile เขาใช้อะไรเป็นตัวชี้วัด… แหม มันต้องมีสักอย่างสิ! ให้ตายเถิด!!
(more…)

การใช้ Agile แล้วประสบความสำเร็จเป็นอย่างไร?

วันก่อน @RallySoftware เค้า tweet มาให้ tweet definition ของคำว่า #AgileSuccess ไปครับ ผมก็ลองส่งไปเล่นๆว่า

#AgileSuccess is reaching hyper-productivity by developing software as if playing a game.
(การประสบความสำเร็จด้าน agile คือการเข้าถึงจุด hyper-productivity โดยพัฒนาซอฟต์แวร์เหมือนกับกำลังเล่นเกม)

ไม่น่าเชื่อ ติด 1 ใน 5 ด้วย >> How do you define Agile success?

ดีใจมากครับ ตอนเห็นว่าเค้าเอาไปลง ตาลุกว่าว หน้าร้อนผ่าว สติแตกไปเลย :D

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