เราตีราคาโปรเจกต์ซอฟต์แวร์ยังไงจริง ๆ: เปิดหลังบ้านวิธีประเมิน ที่จะทำให้คุณอ่านทุกใบเสนอราคาเก่งขึ้น

ราคาซอฟต์แวร์ไม่ได้มาจากการนับฟีเจอร์ มันมาจากการตีราคาความไม่รู้ บทความนี้เปิดวิธีคิดจริงของทีมเรา ทำไมช่วงราคาซื่อสัตย์กว่าตัวเลขเดียว อะไรทำให้ราคาแพงขึ้นที่ไม่ใช่ฟีเจอร์ งานก้อนไหนที่มือใหม่มักลืมคิด และการเตรียมตัวห้าข้อที่ทำให้ใบเสนอราคาที่คุณได้รับถูกลงจริง ๆ
เราเคยเขียนเรื่องราคาตลาดของซอฟต์แวร์สั่งพัฒนาไว้แล้ว — ช่วงราคาของเว็บแอป แอปมือถือ และระบบขนาดต่าง ๆ บทความนี้ตอบคำถามคนละข้อ: ตัวเลขพวกนั้นถูกสร้างขึ้นมายังไง อะไรเกิดขึ้นจริง ๆ ระหว่างวันที่คุณเล่าโจทย์จบ กับวันที่ใบเสนอราคาถึงมือ เราเปิดหลังบ้านเรื่องนี้ด้วยเหตุผลเห็นแก่ตัวนิดหน่อย: ลูกค้าที่เข้าใจว่าราคาเกิดยังไง เป็นลูกค้าที่คุยง่ายที่สุด ต่อรองอย่างมีเหตุผลที่สุด และได้ราคาที่ดีที่สุดจริง ๆ — จากเราและจากทุกทีมที่เขาคุยด้วย ความลับข้อแรกที่ควรรู้: ทีมพัฒนาไม่ได้ตีราคาฟีเจอร์ เราตีราคาความไม่รู้ ฟีเจอร์ที่นิยามชัด ข้อมูลพร้อม กระบวนการนิ่ง ราคาถูกเสมอ ฟีเจอร์เดียวกันเป๊ะแต่ล้อมด้วยคำถามที่ยังไม่มีคำตอบ ราคาแพงขึ้นทันที เพราะสิ่งที่เรากำลังขายไม่ใช่โค้ด แต่คือการรับความเสี่ยงว่าจะส่งมอบได้ตามสัญญา
ทำไมคำตอบแรกของเราเป็นช่วง ไม่ใช่ตัวเลข
ในวงการมีปรากฏการณ์ที่รู้กันดี: ความคลาดเคลื่อนของการประเมิน ณ วันแรกที่ได้ยินโจทย์ อยู่ที่ระดับหลายเท่าตัว ไม่ใช่หลายเปอร์เซ็นต์ โจทย์เดียวกันอาจจบที่สามแสนหรือแปดแสนขึ้นกับรายละเอียดที่ยังไม่ถูกเปิด ทีมที่ให้ตัวเลขเดียวเป๊ะ ๆ ตั้งแต่วันแรกจึงกำลังทำหนึ่งในสองอย่าง: บวกกันชนก้อนใหญ่ไว้เงียบ ๆ ซึ่งคุณจ่ายแพงเกินถ้างานจริงง่าย หรือเดาต่ำเพื่อให้ได้งาน แล้วไปทวงส่วนต่างระหว่างทางด้วยคำว่างานเพิ่ม ซึ่งเจ็บกว่าเดิม เราเลือกทางที่สาม: ให้ช่วงราคาพร้อมบอกชัดว่าปลายล่างกับปลายบนต่างกันตรงไหน — ปลายล่างคือถ้าเชื่อมระบบเดิมได้ตรง ๆ ข้อมูลสะอาด ปลายบนคือถ้าเจอกรณีพิเศษที่คุยกันไว้ แล้วช่วงจะแคบลงเรื่อย ๆ เมื่อ discovery ตอบคำถามได้มากขึ้น จนกลายเป็นตัวเลขผูกมัดต่อเฟส วิธีอ่านใบเสนอราคาที่เราแนะนำลูกค้าเสมอ: อย่ากลัวช่วงราคา จงกลัวตัวเลขเดี่ยวที่มาเร็วเกินไป และคำถามที่ดีที่สุดที่คุณถามได้คือ อะไรจะทำให้ราคาไปจบที่ปลายบน — ทีมที่ตอบข้อนี้ได้ละเอียด คือทีมที่คิดมาแล้วจริง
ก้อนงานที่มองไม่เห็นในเดโม แต่อยู่ในราคาเสมอ
- กรณีขอบ (edge cases) — เดโมโชว์การขายที่จบสวย ราคาจริงอยู่ที่การขายที่ไม่สวย: ลูกค้าคืนของครึ่งบิล เน็ตหลุดกลางรายการ ยอดโอนเกินมาสองบาท กติกาหยาบของวงการคือ ทางเดินหลักใช้แรงสามส่วน กรณีขอบใช้เจ็ดส่วน และมันคือเจ็ดส่วนที่ตัดสินว่าระบบใช้ได้จริงไหม
- การเชื่อมกับของเดิม — ฟีเจอร์ใหม่บนกระดาษเปล่าถูกกว่าฟีเจอร์เดียวกันที่ต้องคุยกับระบบบัญชีอายุสิบปีเสมอ ค่าตัวจริงของ integration คือการไปเจอพฤติกรรมแปลก ๆ ของระบบที่ไม่มีเอกสาร ซึ่งเราต้องเผื่อไว้แม้ยังไม่เห็น
- การย้ายข้อมูลและการฝึกทีม — สองก้อนที่ใบเสนอราคามือใหม่มักไม่มี แล้วไปโผล่เป็นความขัดแย้งตอนท้ายโปรเจกต์ เราแยกมันเป็นบรรทัดของมันเองเสมอ เพราะบทเรียนที่เราเล่าไว้ในบทความความล้มเหลวของเราเอง
- ช่วงประคองหลังส่งมอบ — สัปดาห์แรก ๆ ที่ระบบเจอโลกจริงต้องมีทีมเฝ้า (เราเขียนแยกไว้ว่าสัปดาห์นั้นหน้าตาเป็นยังไง) มันคืองานจริงที่มีต้นทุนจริง และควรอยู่ในราคาแบบเห็น ๆ ไม่ใช่ของแถมที่หายไปเมื่อทีมยุ่ง
สิ่งที่ทำให้ราคาแพงขึ้น ที่ไม่ใช่ฟีเจอร์เลย
สองโปรเจกต์ที่ฟีเจอร์เหมือนกันทุกข้อ ราคาต่างกันได้มาก จากตัวแปรที่ไม่เคยอยู่ในรายการฟีเจอร์ ตัวแรกคือจำนวนคนที่ต้องเห็นตรงกัน: ระบบสำหรับทีมห้าคนกับระบบเดียวกันสำหรับสามแผนกที่ความต้องการขัดกัน งานส่วนที่แพงคือการประชุมหาข้อยุติ ไม่ใช่โค้ด ตัวที่สองคือความพร้อมของคนตอบคำถาม: โปรเจกต์ที่คำถามของเราได้คำตอบในวันเดียวกับโปรเจกต์ที่รอคำตอบทีละสัปดาห์ ใช้เวลาปฏิทินต่างกันเป็นเท่าตัว และเวลาปฏิทินคือต้นทุน ตัวที่สามคือคุณภาพข้อมูลตั้งต้นอย่างที่เล่าไปแล้ว และตัวที่สี่ที่คนคาดไม่ถึง: ความชัดของคำว่าเสร็จ โปรเจกต์ที่มีเกณฑ์รับมอบชัดตั้งแต่ต้น (อย่างที่เราแนะนำในเรื่อง UAT) ประหยัดรอบแก้ปลายทางมหาศาล ส่วนโปรเจกต์ที่คำว่าเสร็จขึ้นกับความรู้สึก จะมีรอบขออีกนิดเดียวไม่สิ้นสุด ซึ่งทีมพัฒนาที่มีประสบการณ์จะได้กลิ่นตั้งแต่ประชุมแรก และบวกราคาความเสี่ยงนั้นไว้แล้วเงียบ ๆ
ห้าการเตรียมตัวที่ทำให้ใบเสนอราคาถูกลงจริง
ทั้งหมดข้างบนกลับด้านเป็นคำแนะนำได้พอดี ถ้าอยากได้ราคาที่ดีที่สุดจากทุกทีมที่คุยด้วย เตรียมห้าอย่างนี้ไปก่อนขอราคา: หนึ่ง เขียนปัญหาที่เจ็บที่สุดหนึ่งข้อพร้อมตัวเลขความเจ็บ — ไม่ใช่รายการฟีเจอร์ยี่สิบข้อ สอง แต่งตั้งคนตัดสินใจหนึ่งคนที่ตอบคำถามได้ภายในวันสองวัน สาม รวบรวมตัวอย่างข้อมูลจริงกับภาพหน้างานจริงไว้ให้ดู สี่ ตอบตัวเองให้ได้ว่าภาพความสำเร็จในหกเดือนหน้าตาเป็นยังไง และห้า บอกงบประมาณคร่าว ๆ ตรง ๆ — หลายคนกลัวว่าบอกงบแล้วจะโดนชาร์จเต็มงบ แต่ในทางปฏิบัติ งบคือข้อมูลออกแบบ: มันบอกทีมว่าควรเสนอสโคปแบบไหนถึงจะพอดีตัว ไม่ใช่เสนอปราสาทให้คนงบกระท่อม หรือกระท่อมให้คนที่พร้อมสร้างบ้านทั้งหลัง ห้าข้อนี้ใช้เวลาเตรียมรวมกันไม่เกินหนึ่งสัปดาห์ และจากประสบการณ์ของเรา มันเปลี่ยนทั้งราคา ความเร็ว และคุณภาพของทุกข้อเสนอที่คุณจะได้รับ
บริการที่เกี่ยวข้อง
รับพัฒนาระบบและซอฟต์แวร์เฉพาะทาง
ออกแบบและวางระบบตามความต้องการเฉพาะของธุรกิจคุณ ตั้งแต่ต้นจนใช้งานจริง
WhaleScope
ดูโครงสร้างตลาดของธุรกิจซอฟต์แวร์ สื่อ และไอที บน WhaleScope
รายชื่อบริษัท ผู้เล่นรายใหญ่ อัตราคงอยู่ และการกระจายรายจังหวัดของหมวดการจัดทำโปรแกรมคอมพิวเตอร์ — จากข้อมูลจดทะเบียน 2 ล้านนิติบุคคล
อ่านต่อ

ใบเสนอราคาสามเจ้า ราคาต่างกันสามเท่า — วิธีเทียบให้เห็นว่าต่างกันตรงไหนจริง
ใบเสนอราคาทำระบบไม่เคยเทียบกันตรง ๆ ได้ เพราะแต่ละเจ้าตีความโจทย์คนละแบบและซ่อนสมมติฐานคนละชุด บทความนี้ให้ตารางเทียบหกแถวที่บังคับให้ทุกใบตอบคำถามเดียวกัน และสัญญาณในใบเสนอราคาที่บอกปัญหาล่วงหน้าก่อนเซ็น

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

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

เราส่งมอบโปรเจกต์ยังไงให้ลูกค้าย้ายออกจากเราได้: กล่องส่งมอบหกชิ้น และเหตุผลที่การไม่ล็อกลูกค้าคือโมเดลธุรกิจของเรา
เราเคยเขียนเตือนว่าเว็บและระบบของคุณต้องเป็นของคุณจริง ๆ บทความนี้คือฝั่งของเรา: กล่องส่งมอบที่เราให้ทุกโปรเจกต์ — โค้ดพร้อมสิทธิ์เต็ม เอกสารที่ทีมถัดไปอ่านรู้เรื่อง รหัสผ่านที่เป็นของลูกค้าตั้งแต่วันแรก คู่มือ วิดีโอ และ super user — พร้อมเช็คลิสต์ให้คุณเอาไปทวงจากผู้พัฒนาทุกราย รวมถึงเรา
