BKP PILOT PROGRAM · v0.8.41

ซ้อมเป็นทีม ตั้งแต่รับสมัครจนถึงปิดงวด

10 คน · 14 สถานการณ์ · ข้อมูลสมมติ · ซ้อมบน STAGING เท่านั้น

เริ่มจากตรงนี้

รอบแรกใช้ Dummy เดิมเพื่อเรียนรู้เมนู 60–90 นาที จากนั้น Owner ใช้ Pilot Reset และให้คน 03/04 สร้างบุคคลใหม่ก่อนบทบาทอื่นเริ่มงาน เมื่อ P01 พร้อม ให้ผู้ดูแลบันทึก baseline เพื่อเริ่มรอบต่อไปที่ P02 ได้เลย

ติดตั้งรุ่นนี้ไม่ล้างข้อมูลอัตโนมัติ การกด Pilot Reset ล้างทั้งฐานซ้อมตามรายการที่แสดง ไม่ได้แยกว่าแถวใดเป็น Dummy หรือข้อมูลจริง กรุณาตรวจว่าเป็นฐานซ้อมและสำรองสำเร็จ

ชุดนี้ไม่ส่ง LINE จริงและไม่สร้างข้อมูลใน ERP อัตโนมัติ ให้ผู้รับบทลงมือทำใน ERP แล้วจดผลไว้ที่นี่ ใช้ชื่อ/ไฟล์สมมติ ไม่ใช้ข้อมูลเด็กจริง

เวลาซ้อม: ครั้ง 1 เรียนรู้เมนู; ครั้ง 2 P00–P02 (2 ชม.); ครั้ง 3 P03–P05 (2 ชม.); ครั้ง 4 P06–P11 (แบ่ง 2 ช่วง ช่วงละ 90 นาที); ครั้ง 5 P12–P13 (90 นาที)

เกณฑ์จบรอบ: งานรับเงิน ชั่วโมงคงเหลือ ค่าสอน และสิทธิ์ดูข้อมูลต้องผ่านทั้งหมด ไม่มี Issue ที่ทำให้ข้อมูลหาย ยอดผิด หรือข้อมูลส่วนตัวรั่ว; รายการติดเงื่อนไขยังไม่นับว่าผ่าน ให้ Manager ระบุเจ้าของงานและวันทดสอบซ้ำ

วิธีบันทึกปัญหา: ใช้รหัส ISSUE-R1-001 พร้อมบทบาท เมนู ขั้นตอน เลขเอกสาร ผลที่คาดหวัง ผลจริง และภาพหน้าจอ ห้ามใส่รหัสผ่านหรือ Token

ผลเก็บเฉพาะ browser/เครื่องนี้ ไม่ซิงก์กับเพื่อนหรือ ERP ให้แต่ละคนส่งออก JSON ตั้งชื่อด้วยรอบและเลขคน ส่งผู้คุมรอบรวบรวม การเปิด JSON จะแทนข้อมูลบนแบบฟอร์มนี้ ไม่รวมผลอัตโนมัติ

แบ่งบทบาททีม

คน 01 ใช้ Owner เดิมได้ คนอื่นใช้บัญชีแยกตามบทบาท ถ้าทีมมี Owner สำรองให้นับนอก 10 คนและเลือกเก็บบัญชีไว้ด้วย ไม่แจกสิทธิ์ Owner ให้ทุกคน

คนสิทธิ์หน้าที่งานหลักชื่อ / username
01OWNERเจ้าของ/ผู้นำรอบบัญชี สิทธิ์ Reset และสรุปผล
02MANAGERผู้จัดการอนุมัติ จัดการข้อโต้แย้ง ตรวจยอด
03ADMINทะเบียนนักเรียน ผู้ปกครอง โรงเรียน
04ADMINตารางและขายแพ็กเกจ กลุ่มเรียน ตาราง ห้อง
05ADMINจัดซื้อและทรัพย์สินPR/PO รับของ วัสดุ ซ่อม
06FINANCEการเงินรับชำระ คืนเงิน จ่ายค่าสอน ปิดงวด
07TUTORครูทดลอง 1สอนกลุ่ม สรุปบทเรียน ไฟล์แนบ
08TUTORครูทดลอง 2สอนแทน ลา ขอวัสดุ
09FAMILYผู้ปกครอง Aผูกกับ P01 และ P03
10FAMILYผู้ปกครอง Bผูกกับ P02 เท่านั้น

ชุดข้อมูลร่วม

P01/P02/P03/PT01/PT02/PILOT-G01 เป็นชื่ออ้างอิงในแบบฝึก หากระบบออกรหัสอัตโนมัติให้ใช้รหัสของระบบ ใส่ชื่ออ้างอิงในชื่อ/หมายเหตุ แล้วจดรหัสจริงในช่องหลักฐาน

P01 น้องฟ้า และ P02 น้องต้น อยู่กลุ่ม PILOT-G01; P03 น้องดาว ใช้ทดสอบ Refund แยก; PT01/PT02 สอนวิชาเดียวกันได้; Parent A ผูก P01/P03 และ Parent B ผูก P02 ใช้ห้องที่มีที่นั่งนักเรียนอย่างน้อย 2 ที่ โดยจำนวนที่นั่งผู้สอนไม่ใช่จำนวนรับนักเรียน

ชั่วโมงเริ่มต้น P01/P02 คนละ 10 ชั่วโมง ราคา 4,000 บาทต่อคนเป็นข้อมูลตัวอย่าง หากต้องใช้ราคาจริงในทะเบียน ให้ผู้คุมรอบจดยอดที่ตกลงใหม่แล้วคำนวณผลคาดหวังก่อนซ้อม เรทครูและกฎขาดเรียนใช้ค่าที่ตั้งไว้จริง ตรวจทุกครั้ง ไม่เดาจากยอดขาย

P00 · คน 01 + ทุกคน

เตรียมรอบและตรวจสิทธิ์

ก่อนเริ่ม: ติดตั้ง v0.8.41 บน staging

  1. นัดเวลาหยุดรายการทั้งทีม ตรวจ /health เป็น v0.8.41 และ staging
  2. Owner เปิดหน้าทำรายการ → ตั้งค่า → ระบบ → Pilot Reset ตรวจรายการล้าง/เก็บ และเลือกบัญชีทีมที่ต้องการเก็บ รวมตนเอง
  3. พิมพ์ เริ่มรอบซ้อมใหม่ แล้วจดชื่อ backup ที่แสดง ตรวจว่าข้อมูลนักเรียน/ติวเตอร์ว่าง และ Asset/ห้อง/โรงเรียนยังอยู่
  4. สร้าง/ใช้บัญชีแยกตามบทบาท 10 คน รหัสผ่านตั้งเองและส่งให้เจ้าตัวโดยตรง ห้ามใส่ในแบบบันทึกนี้
  5. บัญชี Tutor/Family ที่ยังไม่สร้าง ให้สร้างหลัง P01 เมื่อมีบุคคลให้ผูกแล้ว; ไม่ใช้ Owner แทนบทบาทอื่น

ผลที่ต้องได้: Owner ยังเข้าได้; บัญชีที่ไม่เลือกถูกปิด; ผู้ใช้คนอื่นต้อง login ใหม่; ผู้จัดการ/Admin เปิดเครื่องมือ Reset ไม่ได้

หลักฐาน: ชื่อ backup, ภาพรายการเก็บ และผลสิทธิ์

P01 · คน 03,04,01

สร้างนักเรียน ติวเตอร์ และผูกบัญชี

ก่อนเริ่ม: P00 ผ่าน

  1. Admin สร้างนักเรียนสมมติ P01 น้องฟ้า, P02 น้องต้น, P03 น้องดาว พร้อมผู้ปกครองทดลอง เลือกโรงเรียนจาก Dropdown
  2. Admin/Manager ตามสิทธิ์ทะเบียนสร้าง PT01 ครูทดลองหนึ่ง และ PT02 ครูทดลองสอง กำหนดวิชาที่สอนได้ สาขา เวลาว่าง เรทค่าสอน
  3. Owner สร้างหรือแก้บัญชีคน 07/08 ให้ผูก PT01/PT02; ผูกคน 09 กับ P01/P03 และคน 10 กับ P02 โดยยืนยันความสัมพันธ์ แล้วเปิดใช้งานบัญชีที่ถูกพักไว้หลัง Reset
  4. แต่ละคน login ใหม่ ตรวจเมนูและรายชื่อนักเรียนที่ตนมีสิทธิ์เห็น; ผู้จัดการต้องดูรายชื่อเด็กในขอบเขตตนได้
  5. กำหนดรายวิชากลุ่มหนึ่งวิชา ราคาแพ็กเกจทดลอง 10 ชั่วโมง 4,000 บาท ถ้ากฎราคาปัจจุบันไม่อนุญาต ให้ผู้รับผิดชอบตั้งราคาทดลองก่อนขาย

ผลที่ต้องได้: Parent A เห็น P01/P03; Parent B เห็น P02; Tutor เห็นงานของตน; รหัสไม่ซ้ำและโรงเรียนเชื่อมถูกต้อง

หลักฐาน: รหัสนักเรียน/ครู, ภาพหน้าจอจากแต่ละบัญชี

P02 · คน 04 → 06 → 09,10 → 02

ขายแพ็กเกจ รับเงิน ออกใบเสร็จ

ก่อนเริ่ม: P01 ผ่าน

  1. ขาย P01 และ P02 คนละ 10 ชั่วโมง ยอดสุทธิ 4,000 บาท ไม่มีส่วนลด ใช้ราคาใน P01
  2. Finance รับเต็มจำนวนคนละหนึ่งรายการ ออกใบเสร็จและตรวจชื่อโรงเรียน/นักเรียน/จำนวนเงิน
  3. Parent ตรวจชั่วโมงคงเหลือ; Manager ตรวจยอดรับเงิน; Refresh หน้าแล้วตรวจว่าไม่เกิดรายการซ้ำ

ผลที่ต้องได้: รับเงินรวม 8,000 บาท; ชั่วโมงเริ่มต้นคนละ 10; เลขที่ใบเสร็จไม่ซ้ำ; ยอดรับเงินไม่จำเป็นต้องเท่ารายได้ที่รับรู้ก่อนสอน

หลักฐาน: เลข SO/ใบเสร็จ 2 ชุด, ยอด Package

P03 · คน 04 → 07

จัดกลุ่มและเปิดคาบ

ก่อนเริ่ม: P02 ผ่าน

  1. สร้างกลุ่ม PILOT-G01 มี P01/P02 ใช้ PT01 และห้องที่ความจุพอ กำหนดคาบ S1 ระยะ 2 ชั่วโมง
  2. ทดลองจอง Tutor หรือห้องเดิมเวลาชนกัน ระบบต้องแจ้งขัดแย้ง แล้วจัดเวลาที่ไม่ชน
  3. Tutor PT01 เปิดคาบและเช็กชื่อทั้งสองคนมาเรียน; ถ้าเวลาไม่ถึง ให้ Owner พิจารณาโหมดทดสอบปลดล็อกเวลาเฉพาะ staging

ผลที่ต้องได้: กลุ่มมีนักเรียนถูกต้อง ตารางไม่ชน Tutor เปิดได้เฉพาะคาบที่มีสิทธิ์

หลักฐาน: รหัสกลุ่ม/คาบ, ข้อความกันเวลาชน

P04 · คน 07 → 09,10

สรุป Group / Private / Internal และแนบไฟล์

ก่อนเริ่ม: คาบ S1 จาก P03

  1. Tutor เขียน Group: วันนี้เรียนสมการ พร้อมแนบ worksheet.txt ตั้งให้ตอบกลับได้และเผยแพร่
  2. Tutor เขียน Private ถึง P01: ฝึกโจทย์ข้อ 3 เพิ่ม พร้อมแนบไฟล์อีกหนึ่งชิ้นและเผยแพร่
  3. Tutor เขียน Internal: นัดคุยทีมเรื่องแผนสอน และเผยแพร่
  4. Parent A/B เปิดดู Group และตอบกลับ; Parent A ดู Private ได้; Parent B ต้องไม่เห็น Private หรือดาวน์โหลดไฟล์ส่วนตัวได้แม้รู้ลิงก์
  5. ทั้งสอง Family ต้องไม่เห็น Internal; กดรับทราบสรุปแล้วเทียบชั่วโมง/เงินก่อนหลัง

ผลที่ต้องได้: Group เห็นทั้งสองครอบครัว; Private เห็นเฉพาะครอบครัว P01; Internal เฉพาะทีมที่มีสิทธิ์; รับทราบไม่ตัดชั่วโมง ไม่ยืนยันคาบ ไม่ลงเงิน

หลักฐาน: ภาพจาก 3 บัญชี, post ID, ผลเปิดไฟล์ที่ไม่มีสิทธิ์

P05 · คน 07 → 09,10 → 06

ปิดคาบ ยืนยัน ตรวจชั่วโมงและค่าสอน

ก่อนเริ่ม: P04 ผ่าน

  1. Tutor ปิด S1 ที่สอนจริง 2 ชั่วโมง ตรวจรายละเอียดก่อนยืนยัน
  2. Parent แต่ละคนยืนยันคาบของลูก ดูยอดก่อนและหลัง; Refresh และตรวจว่ารายการเดิมไม่ถูกนับอีกครั้ง
  3. Finance ตรวจ Package, Hour ledger, รายได้ และค่าสอนโดยเทียบเรท/กฎที่ตั้งไว้ใน P01

ผลที่ต้องได้: เมื่อจบขั้นตอนตัดชั่วโมงตามระบบ P01/P02 เหลือคนละ 8 ชั่วโมง; ค่าสอนตรงเรทจริงที่ตั้งไว้; ไม่มีรายการซ้ำ

หลักฐาน: รหัสคาบ, ledger, ยอดค่าสอน และสูตรจากเรท

P06 · คน 04 → 07 → 10 → 02 → 06

ข้อโต้แย้งและขาดเรียน

ก่อนเริ่ม: P05 ผ่าน; สร้างคาบ S2 แยกจาก S1

  1. จัด S2 และบันทึกการมาสาย/ขาดของ P02 ตรวจข้อความกฎการหักชั่วโมงก่อนปิด
  2. Parent B ทักท้วงพร้อมเหตุผลทดลอง; Manager ตรวจและตัดสินตามขั้นตอน
  3. Finance ตรวจรายการกลับชั่วโมง/รายได้/ค่าสอนตามผลตัดสิน; ทำคาบอีกใบเพื่อทดสอบผลตัดสินอีกทาง

ผลที่ต้องได้: ข้อโต้แย้งส่งถึงผู้มีสิทธิ์; การปรับยอดสอดคล้องผลตัดสินและกฎขาดเรียน; มีประวัติผู้ดำเนินการ

หลักฐาน: คาบ S2, คำตัดสิน, ยอดก่อนหลัง

P07 · คน 07 → 02,04 → 08 → 09,10

ติวเตอร์ลา เปลี่ยนครู เลื่อนคาบ

ก่อนเริ่ม: PT02 มีคุณสมบัติวิชาเดียวกันและเวลาว่าง

  1. PT01 ขอหยุด/เปลี่ยนตารางคาบอนาคต S3 ตามเมนูที่บัญชีเข้าถึง
  2. ผู้จัดการ/ธุรการอนุมัติและกำหนด PT02 สอนแทน ตรวจห้องและเวลาว่างก่อนบันทึก
  3. Parent ตรวจตารางใหม่ และ PT02 ตรวจว่าเปิดคาบที่ได้รับมอบหมายได้

ผลที่ต้องได้: งานย้ายถึงผู้สอนแทนและไม่มีตารางซ้อน; ถ้าระบบมีเพียงคิวแจ้งเตือนจำลอง ห้ามนับว่า LINE ส่งถึงแล้ว

หลักฐาน: คาบ S3, ผู้สอนเดิม/ใหม่, หน้าตาราง Family

P08 · คน 08 → 02 → 05 → 06

ขอซื้อ → รับของ → จ่ายเงิน

ก่อนเริ่ม: มี Vendor/Item ทดลอง; Stock เริ่มที่ศูนย์หลัง Reset

  1. Tutor ขอซื้อวัสดุที่ใช้ในห้อง แนบรายละเอียด/ใบเสนอราคาทดลอง
  2. Manager อนุมัติตามวงเงินที่ตั้งไว้; ถ้าต้องสองลายเซ็นให้ Owner เป็นผู้อนุมัติอีกคน
  3. Admin เปิด PO รับของหนึ่งครั้ง; Finance ตั้งหนี้และชำระพร้อมหลักฐานทดลอง
  4. ตรวจ Stock, เจ้าหนี้ และเอกสารเชื่อมโยง

ผลที่ต้องได้: ผู้ขอกับผู้อนุมัติต่างคนตามกฎ; รับของ/จ่ายไม่ซ้ำ; จำนวน Stock และยอดคงค้างตรงเอกสาร

หลักฐาน: PR, PO, ใบรับ, ใบจ่าย, ledger

P09 · คน 07,08 → 05 → 02,06

เบิกวัสดุและเบิกค่าใช้จ่าย

ก่อนเริ่ม: P08 รับวัสดุเข้าสต็อกแล้ว

  1. Tutor ขอเบิกวัสดุเข้าคลาส; Admin อีกคนตรวจและจ่ายของ
  2. ทดลองให้ผู้ขอจ่ายของให้ตนเอง ระบบต้องปฏิเสธตามกฎ
  3. อีกใบให้ Tutor ขอเบิกค่าใช้จ่ายพร้อมเอกสารอนุมัติที่ระบบกำหนด; Manager อนุมัติ Finance จ่าย

ผลที่ต้องได้: Stock ลดตรงจำนวน; รายจ่ายลงศูนย์ต้นทุน/คอร์สที่เลือก; แยกผู้ขอกับผู้จ่ายและมีหลักฐาน

หลักฐาน: ใบเบิก, Expense, เอกสารอนุมัติ, ยอดก่อนหลัง

P10 · คน 07 → 02 → 05

แจ้งซ่อมทรัพย์สิน

ก่อนเริ่ม: มี Asset ที่ตรวจสอบแล้วและห้องว่าง

  1. แจ้งโปรเจกเตอร์เสีย เลือก Asset/ห้องที่ถูกต้อง
  2. Manager อนุมัติ Admin บันทึกงานซ่อม/ค่าใช้จ่าย และตรวจสถานะห้องระหว่างซ่อม
  3. ปิดงานหลังตรวจรับ ตรวจว่า Asset/ห้องกลับมาใช้ได้ตามสถานะจริง

ผลที่ต้องได้: ประวัติซ่อมผูก Asset ถูกตัว; ช่วงห้องไม่พร้อมต้องไม่ถูกจอง; ตรวจสถานะที่คงมาจาก baseline ด้วย

หลักฐาน: เลขงานซ่อม, Asset, สถานะห้องก่อนหลัง

P11 · คน 03,04 → 02 → 06 → 09

คืนเงินแบบมีผู้อนุมัติ

ก่อนเริ่ม: P03 นักเรียนใช้เป็นเคสแยก: ขายและรับชำระแพ็กเกจใหม่ก่อน

  1. Admin รับเรื่องขอคืนเงินของ P03 และยื่นตามช่องทาง Refund ที่มีในระบบ
  2. Manager ตรวจสิทธิ์/กฎ/จำนวนชั่วโมงที่ใช้แล้วและอนุมัติ
  3. Finance จ่ายคืนพร้อมหลักฐานทดลอง; Parent A ตรวจยอดและ Finance ตรวจ ledger

ผลที่ต้องได้: เงินคืนและชั่วโมงตรงกติกา; ไม่เกินยอดที่อนุญาต; ไม่กระทบ P01/P02; ไม่มีการจ่ายคืนซ้ำ

หลักฐาน: คำขอ Refund, ผลอนุมัติ, หลักฐาน และ ledger

P12 · คน 06 → 02 → 01

กระทบยอด ปิดงวด และรายงาน

ก่อนเริ่ม: P02–P11 เสร็จ ไม่มีรายการรอที่ไม่ทราบเหตุผล

  1. Finance รวมใบรับ/ใบคืน/ใบจ่ายเทียบช่องทางชำระและเอกสารที่จดไว้ แยกเงินรับจากรายได้ที่รับรู้
  2. Manager ตรวจชั่วโมงคงเหลือ ค่าสอนค้างจ่าย รายได้ และ Dashboard
  3. ปิดงวดทดลอง แล้วพยายามลงรายการในงวดปิด ระบบต้องปฏิเสธ; อย่าบันทึก Go-live ในเครื่องซ้อม

ผลที่ต้องได้: อธิบายยอดแต่ละส่วนได้จากเอกสารจริงในรอบ; งวดปิดกันรายการย้อนหลัง; P00–P12 มีหลักฐานครบ

หลักฐาน: รายงานกระทบยอด, ภาพการปฏิเสธ, รายการ Issue

P13 · คน 01 + ผู้ดูแลระบบ

คืน Baseline และเริ่มรอบใหม่

ก่อนเริ่ม: สำรอง baseline ไว้หลัง P01; ทุกคนหยุดทำรายการ

  1. ส่งออกผลทดสอบ JSON/พิมพ์เก็บก่อนคืน baseline; ผลในคู่มือนี้อยู่ใน browser ไม่ใช่ฐาน ERP
  2. ผู้ดูแลหยุด web และ worker แล้วใช้ PILOT_BASELINE.py restore ตาม PILOT_OPERATIONS.txt
  3. เปิดระบบใหม่ ทุกคน login ตรวจ Asset/ห้อง/บัญชี/นักเรียนตรง baseline และธุรกรรมหลัง snapshot หาย
  4. เริ่มบันทึกผลรอบใหม่ด้วยรหัสรอบใหม่ ไม่เขียนทับหลักฐานรอบก่อน

ผลที่ต้องได้: มี backup ก่อน restore; คืนข้อมูลและบัญชีตรง snapshot; token เก่าใช้ไม่ได้; รายงานรอบก่อนยังเก็บแยก

หลักฐาน: ชื่อ baseline/backup, ผลตรวจหลังเปิดระบบ

ผู้จัดการสรุปผล

ผ่านชุดซ้อมนี้เป็นหลักฐาน UAT หนึ่งส่วน ยังต้องทบทวนความพร้อม Go-live, Backup/Restore, ยอดตั้งต้น และการเชื่อม LINE แยกต่างหาก