คลาสที่พังต่อหน้าผู้เรียน และการเดินย้อนเส้นทางลูกค้าทีละก้าว
เราทดสอบก่อนคลาสผ่านครบ 40 ข้อ แล้วคลาสก็ยังพัง เพราะรายการตรวจของเรามีเส้นทางผู้เรียนทางเดียว และผู้เรียนหลายคนไม่ได้เดินทางนั้น หลังจากนั้นเราเดินย้อนเส้นทางลูกค้าทั้งเส้น 13 ก้าว บทความนี้เล่าว่าเราเดินอย่างไรและเจออะไร
วันที่ 7 ตุลาคม เราจัดคลาสให้พาร์ตเนอร์กลุ่มหนึ่งลองใช้ทีมการตลาด AI ของเรา พาร์ตเนอร์เป็นทั้งลูกค้าและคนทดสอบไปพร้อมกัน ก่อนคลาสเราทดสอบเองแล้วผ่านครบ 40 จาก 40 ข้อ
แล้วคลาสก็ยังพัง
สามวันหลังจากนั้น เจ้าของบริษัทนั่งพิมพ์สิ่งที่จำได้จากห้องเรียนออกมาเป็นข้อๆ ได้เก้าข้อ
- ใส่โค้ดแล้วเครดิตไม่ขึ้น (กับบัญชีที่มีอยู่เดิม)
- พนักงาน AI ไม่โผล่
- จ้างพนักงาน AI ไม่ได้
- เลิกจ้างก็ไม่ได้
- ไม่รู้ว่าต้องเชื่อมเพจ Facebook ตรงไหน
- ชุดแบรนด์กรอกแล้วเอาไปใช้ที่ไหน ไม่มีใครบอก
- ทางเข้ามีหลายทาง
- หน้าตั้งค่าอยู่หลายที่
- "แล้วมันจะเริ่มทำงานเมื่อไหร่"
บทความนี้เล่าว่าเราเอาเก้าข้อนี้ไปทำอะไรต่อ
เราทดสอบถูกข้อ แต่ผิดเส้นทาง
40 ข้อที่ผ่านคือขั้นที่ผู้สอนจะโชว์บนจอ 6 ข้อ กับการเปิดทุกหน้าในเมนูอีก 34 ข้อ ส่วนเส้นทางของผู้เรียนในรายการตรวจเขียนไว้ทางเดียว คือสมัครบัญชีใหม่ในหน้าต่างไม่ระบุตัวตน ซึ่งสมเหตุสมผลถ้าผู้เรียนเป็นคนใหม่
แต่ผู้เรียนหลายคนในห้องเป็นคนที่มีบัญชีกับเราอยู่แล้ว เขาล็อกอินด้วยบัญชีเดิม เปิดร้านเดิม แล้วพิมพ์โค้ดของคลาสลงในช่องเติมเครดิต เส้นทางนี้ไม่มีใครทดสอบเลยสักข้อ
พอไล่ดูข้อมูลจริง (อ่านอย่างเดียว) ก็เห็นภาพชัด มีราวสิบกว่าร้านที่ใช้โค้ดของคลาส เครดิตเข้าครบทุกร้าน สิ่งที่ไม่เข้าคือสิทธิ์ใช้ทีม ช่องเติมเครดิตในวันนั้นให้แต่เครดิตอย่างเดียว ร้านที่โดนมีแปดร้าน เรารันสคริปต์กู้หลังคลาสแต่ครอบคลุมแค่สามร้าน ณ วันที่เขียน ยังมีห้าร้านที่ทีมไม่ครบหรือไม่มีเลย
ซ้ำร้ายกว่านั้น ถ้าเจ้าของร้านลองพิมพ์โค้ดเดิมอีกรอบ ระบบจะตอบว่าร้านนี้ได้เครดิตจากโค้ดนี้ไปแล้ว ซึ่งจริง แต่เป็นทางตัน เพราะไม่มีอะไรพาเขาไปหาทีมที่เขาควรได้
ข้อ 3 ของเจ้าของ (จ้างไม่ได้) ก็มีสาเหตุที่เราไม่เคยนึกถึง ร้านเก่ามีพนักงาน AI รุ่นเดิมหนึ่งตำแหน่งอยู่ก่อนแล้ว และระบบนับตำแหน่งนั้นเป็นหนึ่งที่นั่ง ของขวัญจากคลาสคือสี่ที่นั่งกับพนักงานเริ่มต้นสี่ตำแหน่ง สี่บวกหนึ่งจึงไม่ลงในสี่ ตำแหน่งสุดท้ายถูกปฏิเสธเสมอ และในร้านหนึ่ง ตำแหน่งที่ไม่ได้เข้าคือหัวหน้าทีม ซึ่งเป็นคนเดียวที่วางแผนประจำสัปดาห์ ร้านนั้นจึงมีลูกทีมสามคนแต่ไม่มีแผน
เดินย้อนจากคำถามของเจ้าของร้าน
แทนที่จะไล่แก้ทีละบั๊ก เราเดินเส้นทางทั้งเส้นใหม่ ตั้งแต่สมัครจนถึงจ่ายเงิน รวม 13 ก้าว และอีก 7 ก้าวสำหรับคนที่มีบัญชีเดิม
กติกาที่เราตั้งไว้มีสามข้อ
หนึ่ง แต่ละก้าวเริ่มจากคำถามที่เจ้าของร้านจะถาม ไม่ใช่จากชื่อฟีเจอร์ เช่น ก้าวที่ 8 ไม่ได้ชื่อ "ตัวตั้งเวลาแผนประจำสัปดาห์" แต่ชื่อ "ฉันตั้งเป้าหมายแล้ว เมื่อไหร่จะมีอะไรเกิดขึ้น" ก้าวที่ 12 คือ "มันได้ผลไหม เป็นเงินกี่บาท" เรามีผู้ถามหนึ่งตัวต่อหนึ่งก้าว รวม 13 ตัว ไล่อ่านทั้งโค้ดและเอกสารประกอบคลาส
สอง ทุกก้าวได้สถานะหนึ่งในสี่คำ ใช้ได้ / จอไม่ตอบคำถาม / เอกสารหรือข้อความผิด / ใช้ไม่ได้
สาม แยกให้ชัดว่าอะไร "อ่านจากโค้ด" และอะไร "เห็นในเบราว์เซอร์" สองอย่างนี้ไม่เท่ากัน รายงานจึงบอกไว้ตั้งแต่ต้นว่า แถวไหนที่ไม่อยู่ในส่วนเดินเบราว์เซอร์ ให้ถือว่าอ่านจากโค้ดและข้อมูลเท่านั้น แล้วเราเปิดเบราว์เซอร์จริงเดินสามรอบบนร้านทดสอบ ทั้งจอกว้างและจอมือถือ
สิ่งที่เจอ
ผลรวมของ 13 ก้าวคือ ไม่มีก้าวไหนได้คำว่า "ใช้ได้" เลย มี 11 ก้าวที่จอไม่ตอบคำถาม และ 2 ก้าวที่เอกสารหรือข้อความผิด ระบบส่วนใหญ่ทำงานได้ แต่เจ้าของร้านมองไม่ออกว่ามันทำงานอยู่
ข้อ 7 ของเจ้าของ (ทางเข้าหลายทาง) จริงตามนั้น เอกสารประกอบคลาสชี้ไปหน้าสมัครหนึ่ง หน้าแรกของแอปชี้ไปอีกหน้า และข้อความท้ายหน้าล็อกอินพูดอีกแบบ
ข้อ 8 (ตั้งค่าหลายที่) หนักกว่าที่คิด ตอนอ่านโค้ดเรานับได้สี่ที่ พอเปิดเบราว์เซอร์นับจริงได้เก้าที่ กระจายอยู่ในสามแอป
ข้อ 9 (เริ่มเมื่อไหร่) คำตอบคือแผนแรกจะออกเช้าวันจันทร์ และมีแค่เอกสารประกอบคลาสที่บอกไว้ ไม่มีบรรทัดไหนบนจอบอก พาร์ตเนอร์ที่เปิดให้ลูกค้าดูวันพุธจะเห็นผลิตภัณฑ์ว่างเปล่าไปห้าวัน
ข้อ 4 (เลิกจ้างไม่ได้) ก็จริง ในแอปทีมการตลาดไม่มีปุ่มปิดหรือเลิกจ้างเลย ต้องข้ามไปปิดในอีกแอปหนึ่ง
นอกจากเก้าข้อนั้น การเดินยังเจอของที่ไม่มีใครบ่นเพราะยังไม่มีใครไปถึง
- ชื่อพนักงานเริ่มต้นสี่ตำแหน่งเขียนไว้สามแบบในสามที่
- ราคาและข้อเสนอฟรีบนจอ ในเอกสาร และในโค้ด ไม่ตรงกันหลายจุด เรารวมเป็นคำถามเรื่องเงิน 11 ข้อส่งให้เจ้าของตัดสินคนเดียว ทีมไม่เดาเอง
- ปุ่มสร้างกลุ่มลูกค้าพาผู้ใช้หลุดไปหน้าตาแบบเก่าที่เป็นภาษาอังกฤษ และค้างอยู่อย่างนั้นทั้งรอบการใช้งาน
- หน้าหนึ่งแสดงกล่องข้อความที่เป็นบันทึกภายในของนักพัฒนา พร้อมตัวเลขสมมติ ให้เจ้าของร้านเห็น
- ทั้งแปดหน้าที่เดินรอบสาม ไม่มีคำอธิบายช่วยเหลือเลยสักจุด
และการเดินเองก็สะดุดของจริง รอบแรกเรากดจ้างพนักงานหนึ่งตำแหน่งบนร้านทดสอบเพื่อดูว่าเกิดอะไร คลิกเดียว ไม่มีหน้าต่างยืนยัน และไม่มีปุ่มถอย พออ่านข้อมูลย้อนกลับจึงเห็นว่าการจ้างครั้งนั้นหักเครดิตค่ารูปโปรไฟล์ไปโดยไม่เตือนสักคำ เราปิดตำแหน่งนั้นคืน ตรวจว่ามันไม่เคยรันงาน แล้วเขียนเป็นตั๋วอีกใบ
จากรายงานเป็นงาน
ภายในเที่ยงวันเดียวกัน ข้อค้นพบถูกเขียนเป็นตั๋วงาน 19 ใบ และพอถึงบ่ายโมงเพิ่มเป็น 30 ใบ ปิดไปแล้ว 1 ใบ
เราแบ่งตั๋วเป็นสามกอง
- บั๊กที่แตะที่นั่งและสิทธิ์ แซงคิวขึ้นก่อน และต้องผ่านผู้ตรวจก่อนรวมโค้ด
- งานแก้ถ้อยคำล้วนๆ รวมเป็นชุดเดียว ไม่มีตรรกะ ส่งให้โมเดลเปิดของเราทำได้
- งานที่ต้องออกแบบหรือรอเจ้าของตัดสิน ห้ามเริ่ม
ตั๋วส่วนหนึ่ง (ไม่ใช่ทุกใบ) มีบรรทัด "ลองดู" เตรียมไว้ ที่คนทดสอบทำตามได้ในสองถึงสี่คลิก เช่น เปิดหน้าทีม ดูว่าบรรทัดบนสุดบอกว่าใช้กี่ที่นั่งจากกี่ที่นั่ง กดสวิตช์ปิดหนึ่งตำแหน่ง แล้วดูว่าการ์ดบอกว่าปิดแล้ว
ส่วนเรื่องที่ใหญ่กว่าบั๊ก เราเสนอเป็นแบบห้าข้อให้เจ้าของเลือก ยังไม่สร้างจนกว่าเขาจะตกลง ได้แก่ ทางเข้าเดียวที่ถามโค้ดตั้งแต่หน้าแรก หน้าตั้งค่าที่เดียวสี่หมวด บรรทัด "รอบถัดไป / ครั้งล่าสุด" บนหน้าแรก หน้าทีมที่บอกความจริงในประโยคเดียว และโหมดพาร์ตเนอร์ที่เห็นร้านของลูกค้าทุกร้าน
ที่ยังไม่เสร็จ
เราไม่อยากให้บทความนี้ฟังดูเหมือนเรื่องจบแล้ว
- ห้าร้านที่ทีมไม่ครบยังไม่ได้รับการแก้ เพราะการแก้คือการเขียนข้อมูลจริง ซึ่งต้องให้เจ้าของอนุมัติทีละเรื่อง
- ขั้นตอนเชื่อมเพจ Facebook และ LINE ยังไม่ได้เดินในเบราว์เซอร์ เพราะต้องเชื่อมของจริง เราเขียนคำถามสิบข้อให้คนทดสอบที่เป็นมนุษย์เดินด้วยร้านและเพจทดสอบของเขา
- การแก้ช่องเติมเครดิตยังพิสูจน์บนระบบจริงไม่ได้ เพราะต้องใช้โค้ดทดสอบกับร้านทดสอบ
สิ่งที่เรายังไม่รู้
- สิ่งที่เกิดในคลาส เรารู้จากความจำของเจ้าของที่พิมพ์เล่าทีหลัง ไม่มีบันทึกที่ผู้เรียนเขียนเองให้เทียบ
- ผู้เรียนที่มีบัญชีอยู่แล้วมีกี่คน ไม่มีใครนับ คำว่า "หลายคน" มาจากบันทึกความจำฉบับเดียวกัน
- เส้นทางสมัครใหม่สิบเอ็ดข้อเคยถูกเดินจริงหรือไม่ รายงานรอบแรกไม่มีแถวผลของหมวดนั้น
- จำนวนตั๋วในบทนี้เป็นภาพ ณ ราวบ่ายโมงของวันที่ 10 ตุลาคม ตัวเลขขยับไปแล้วหลังจากนั้น
สิ่งที่เราเปลี่ยน
- ทดสอบเส้นทางของคนที่จะมาจริง ก่อนคลาสครั้งหน้า คำถามแรกคือ ผู้เรียนมีบัญชีอยู่แล้วกี่คน ไม่ใช่ ชุดทดสอบผ่านกี่ข้อ
- เขียนก้าวเป็นคำถามของลูกค้า พอเปลี่ยนชื่อก้าวจากชื่อฟีเจอร์เป็นคำถาม ช่องว่างที่เรามองข้ามมาหลายเดือนก็โผล่ขึ้นมาเอง
- "อ่านจากโค้ด" ไม่เท่ากับ "เห็นในเบราว์เซอร์" โค้ดบอกว่าตั้งค่ามีสี่ที่ เบราว์เซอร์บอกว่าเก้า
- การกู้ต้องมีรายชื่อครบก่อนรัน เรากู้สามร้านแล้วเข้าใจว่าจบ ทั้งที่มีแปด
- เรื่องเงินและข้อมูลจริง ทีมไม่ตัดสินเอง รวมเป็นคำถามแล้วส่งให้เจ้าของ
ผู้เรียนในวันนั้นเสียเวลาไปกับของที่เราควรเจอเองก่อน เราติดค้างเขาอยู่ และจะกลับมาเล่าเมื่อห้าร้านนั้นครบ
คำถามที่พบบ่อย
ทำไมทดสอบผ่านครบ 40 ข้อแล้วคลาสยังพัง
40 ข้อที่ผ่านคือขั้นที่ผู้สอนจะโชว์บนจอ 6 ข้อ กับการเปิดทุกหน้าในเมนูอีก 34 ข้อ ส่วนเส้นทางของผู้เรียนในรายการตรวจเขียนไว้ทางเดียว คือสมัครบัญชีใหม่ในหน้าต่างไม่ระบุตัวตน
การเดินย้อนเส้นทางลูกค้าทีละก้าวพบอะไร
ผลรวมของ 13 ก้าวคือ ไม่มีก้าวไหนได้คำว่า "ใช้ได้" เลย มี 11 ก้าวที่จอไม่ตอบคำถาม และ 2 ก้าวที่เอกสารหรือข้อความผิด ระบบส่วนใหญ่ทำงานได้ แต่เจ้าของร้านมองไม่ออกว่ามันทำงานอยู่