Dont go beyond practical point

หลายครั้งผมเห็นหลายคนพยายาม deliver solution ที่ดีที่สุด เท่าที่พวกเขาจะทำให้แก่ลูกค้าก็ดีใจ แต่ปัญหาคือ solution เหล่านั้นมักจะไม่เสถียร ซึ่งไม่เป็นที่ต้องการของลูกค้า ทำไมจึงเป็นเช่นนั้น

มีคำกล่าวหนึ่งกล่าวว่ากฏทุกกฏย่อมมีข้อยกเว้น (เป็นที่มาของกฏข้อ #12. ที่ว่า “ข้อยกเว้นทำลายกฏ”)

ตัว solution เองก็เฉกเช่นเดียวกัน ยิ่ง solution นั้นวิลิศมาหรามากเท่าใด มันก็ตามมาด้วยข้อยกเว้นมากเท่านั้น และข้อยกเว้นเหล่านั้นเอง ที่จะมาทำลายตัว solution เอง

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

สิ่งที่ผมสอนน้องๆ เป็นประจำคือ อย่า implement solution ที่ดีเกินไป คำว่าดีเกินไป คือ วิลิศมาหรา สุดยอด เหมือน พยายามซื้อ Ferrari ในงบ Camry สุดท้าย ได้มาแต่ตัวถัง Ferrari แต่เครื่องยนต์เป็น คูโบต้า วิ่งไปดับไป ความจริงลูกค้าไม่ได้ต้องการ Ferrari เขาต้องการแค่รถที่ขับไปยังที่หมายได้ และมีหน้ามีตาสมฐานะก็พอ ทีนี้เรามักจะไปขายฝันว่าเขาจะได้ Ferrari นะ พอเค้าถามราคา แค่พอๆ กับ Camry เอง เขาก็สนใจ ลืมคิดไปว่า แล้วเครื่องยนต์นี่ เป็น Ferrari ด้วยหรือไม่ หรือถึงแม้เขารู้ เขาก็คิดไปว่า คงเป็นเครื่องอย่างน้อยก็ Camry ลืมคิดไปว่า ไปลงแรงลงเวลากับตัวถังแล้ว มันไม่เหลือพอจะได้เครื่อง Camry หรอก

อันนี้เป็นหน้าที่พวกเราชาว Developer ที่จะต้อง set expectation ของลูกค้าให้ถูกต้องว่าเขาได้อะไรและจะต้องเสียอะไรบ้าง ส่วนถ้าหากเราเป็นฝั่งลูกค้า ก็ต้องคอยดมกลิ่นให้ดี ถ้ามีคนมาเสนออะไรที่มันดูดีเกินจริง ให้สันนิษฐานไว้ก่อนเลยว่า ต้องมีอะไรผิดพลาดแน่นอน ซึ่งตรงนี้อไจล์จะเป็นตัวช่วย เพราะเราจะได้เห็นผลงานทุกๆ สองอาทิตย์ (ไม่เกินสี่อาทิตย์) ถ้ามีอะไรที่ไม่เข้าท่าเราจะเห็นได้แต่เนิ่นๆ และไม่ปล่อยให้ลุกลามจนกู่ไม่กลับได้

ในการเลือก solution นั้น วิธีการง่ายๆ ทำได้โดย การหาจุดที่เรียกว่า Practical Point หรือจุดที่จะยังคงใช้งานจริงได้อยู่ คำว่า ใช้งานได้จริงคือ ใช้ 100 ครั้ง ทำถูกต้อง 100 ครั้ง ถ้าเพิ่มความสามารถเข้าไปอีกนิด แล้ว โอกาสสำเร็จ กลายเป็นทำ 100 ถูก 99 อันนี้ถือว่า หลุด Practical point แล้ว ห้ามนำไป impelment จริง เด็ดขาด

Advertisements

ใส่ความเห็น

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s