1145 204 WEEK 14 GROCERY POS PLATFORM

สัปดาห์ที่ 14: การนำระบบขึ้น Production จริงและการเตรียมสอบป้องกันโครงงาน

SLIDE 01 // MISSION OVERVIEW ระดับพัฒนาการ: PRACTICED (P)

จากเครื่องพัฒนา สู่ระบบ Production จริงและเวทีสอบป้องกัน

สัปดาห์ที่ 14 เป็นสะพานเชื่อมระหว่างการพัฒนาซอฟต์แวร์แพลตฟอร์ม Grocery POS ในห้องปฏิบัติการ ไปสู่การติดตั้งใช้งานจริงบน Cloud (Live System URL) และการสอบป้องกันโครงงานฉบับสมบูรณ์ในสัปดาห์ที่ 15 โดยทีม 1–3 คนต้องพิสูจน์ทั้งความเสถียรของระบบและการสื่อสารเชิงวิศวกรรม

01 // DEPLOYMENT
Cloud

Docker, PaaS & AWS/GCP

ย้ายระบบจาก Localhost ขึ้นเซิร์ฟเวอร์จริง พร้อม Managed Database และ HTTPS

02 // VERIFICATION
200 OK

Live System URL Validation

ตรวจความพร้อม URL จริง, CORS, Env Vars, Healthcheck และข้อมูล Seed สำหรับสอบ

03 // REHEARSAL
15:00

Time-Boxed Presentation

ซ้อมบรรยายไม่เกิน 15 นาที แบ่งบทบาทสมาชิกทุกคนอย่างสมดุล พร้อมตอบ Q&A

04 // LIVE DEMO
5 Steps

Demo Routine & Plan B

ซ้อมลำดับการกดจริง (Auth → POS → ตัดสต็อก → ความเสี่ยง) และแผนสำรองฉุกเฉิน

COURSE LEARNING OUTCOMES (CLO1–CLO4)

ความสอดคล้องกับผลลัพธ์การเรียนรู้รายวิชา 1145 204

CLO1 · AGILE & GIT

ยืนยันประวัติ Git Commit ตลอด 3 สปรินต์และหลักฐานการทำงานเป็นทีม

CLO2 · CLEAN CODE & DEPLOY

ซอฟต์แวร์ POS เชื่อมฐานข้อมูล 3NF และ Deploy ขึ้น Production สำเร็จ

CLO3 · DATA & RISK

จัดการข้อมูลสินค้า/คลัง และป้องกันความเสี่ยงตัดสต็อกซ้อนทับพร้อมกัน

CLO4 · ORAL DEFENSE

นำเสนอด้วยวาจา สาธิต Live Demo และส่งรายงานฉบับสมบูรณ์บทที่ 1–5

CRITICAL RULE // WEEK 15

ห้ามนำเสนอด้วย Localhost

คณะกรรมการประเมินต้องสามารถเปิดเข้าถึงแพลตฟอร์ม Grocery POS ผ่าน Live System URL บนอินเทอร์เน็ตได้จริงจากเครื่องของกรรมการเอง ก่อนเริ่มการสาธิต

SLIDE 02 // FINAL DELIVERABLES & RUBRIC สัปดาห์ที่ 13–15

แพ็กเกจส่งมอบฉบับสมบูรณ์ 4 รายการ และเกณฑ์ระดับดีเยี่ยม

คะแนนปลายภาครวมมาจาก Advisor 50% และ Committee 50% โดยส่วนของการนำเสนอด้วยวาจา การสาธิตระบบ และการตอบคำถามเชิงเทคนิค (ด้านที่ 3) มีน้ำหนักสูงถึง 25 คะแนน

ลำดับ รายการส่งมอบ (Final Deliverables Package) องค์ประกอบสำคัญที่ตรวจ
01 รายงานโครงงานฉบับสมบูรณ์
Final Project Report (PDF)
ครบทั้งบทที่ 1–5 ครอบคลุม SRS, ER Diagram (3NF), Architecture, ผลการทดสอบ และสรุปผล
02 คู่มือติดตั้งและใช้งาน
Deployment & User Manual (PDF)
อธิบาย System Requirements, ขั้นตอน Deploy/Env Vars และคู่มือใช้งาน POS สำหรับร้านค้า
03 Live System URL & GitHub Repo
Production Endpoint + Source Code
URL ระบบที่รันจริงบน Cloud + Repository ที่มี README.md และประวัติ Commit ตลอดภาคการศึกษา
04 สไลด์สอบป้องกันโครงงาน
Final Slide Deck (PDF / PPTX)
กระชับ ตรงประเด็น ครอบคลุมปัญหา–สถาปัตยกรรม–ความเสี่ยง ใช้เวลาบรรยายรวมสาธิตไม่เกิน 15 นาที
RUBRIC EXPLORER // ด้านที่ 3 (25 คะแนน)

คลิกดูเกณฑ์ประเมินแต่ละระดับ

เป้าหมาย: ดีเยี่ยม (22–25 คะแนน)

นำเสนอและสาธิตระบบ (Live Demo) ได้อย่างมืออาชีพ กระชับ ตรงประเด็น สมาชิกทุกคน (1–3 คน) มีส่วนร่วมอย่างสมดุล สามารถตอบคำถามเชิงเทคนิคและสะท้อนการแก้ปัญหา/ความเสี่ยง (เช่น ปัญหาตัดสต็อกพร้อมกัน) ได้อย่างลึกซึ้ง

SLIDE 03 // CLOUD PRODUCTION ARCHITECTURE DOCKER · PAAS · AWS / GCP

เลือกสถาปัตยกรรม Cloud Hosting ที่เหมาะกับ Grocery POS

แพลตฟอร์ม Grocery POS ประกอบด้วย 3 ส่วนหลักคือ Frontend (POS UI), Backend API (Node.js/Python) และ Relational Database (MySQL/PostgreSQL แบบ 3NF) คลิกเลือกสถาปัตยกรรมด้านล่างเพื่อดูแผนภาพการไหลและข้อควรระวังก่อนวันสอบ

เกณฑ์พิจารณา PaaS (Render / Railway) Docker + Cloud Run AWS EC2 / GCP Compute + RDS
ความเร็วในการ Deploy เร็วที่สุด (Push GitHub → Deploy) ปานกลาง (ต้องเขียน Dockerfile) ช้ากว่า (ตั้งค่า Network, Firewall, SSL เอง)
การควบคุม Environment ปานกลาง (พึ่งพา Buildpack) สูงมาก (Runtime เดียวกันทุกเครื่อง) สูงสุด (ควบคุม OS, Nginx, Ports ได้เต็มที่)
ความเสี่ยงวันสอบ Live Demo Free tier หลับ (Cold start 20–50 วินาที) Cold start ต่ำ หากตั้ง Min-instance = 1 ต้องระวัง Security Group ปิด Port หรือใบรับรอง SSL หมดอายุ
ความเหมาะสมกับทีม 1145 204 เหมาะมากสำหรับทีมที่เร่งปิดงานในสัปดาห์ที่ 14 แนะนำสูงสุด (พกพาง่าย ย้าย Cloud ได้ทันที) เหมาะกับทีมที่มีพื้นฐาน Linux / Cloud Networking แข็งแรง
SLIDE 04 // CONTAINERIZATION & ENV CONFIG PRODUCTION HYGIENE

แพ็กเกจด้วย Docker และจัดการ Environment Variables อย่างปลอดภัย

ปัญหาอันดับหนึ่งที่ทำให้ระบบพังเมื่อขึ้น Cloud คือความแตกต่างของเครื่องนักศึกษากับเซิร์ฟเวอร์ (เช่น เวอร์ชัน Node/Python, Path ไฟล์, และการ Hardcode ค่า localhost) การใช้ Docker และ .env ช่วยปิดช่องโหว่นี้ได้อย่างเด็ดขาด


          
SLIDE 05 // CONTINUOUS INTEGRATION & DEPLOYMENT AUTOMATED RELEASE GATE

วางท่อส่งซอฟต์แวร์ CI/CD Pipeline ก่อนโค้งสุดท้าย

การ Deploy แบบ Manual โดยอัปโหลดไฟล์ทีละตัวเสี่ยงต่อข้อผิดพลาด การผูก GitHub Actions หรือ PaaS Auto-Deploy เข้ากับ Branch main ทำให้ทุกครั้งที่แก้บั๊ก ระบบจะสร้าง Build, รัน Test และอัปเดต Production ได้อย่างตรวจสอบย้อนหลังได้

STAGE 01

Source Control

Push โค้ดที่ Review แล้วขึ้น Branch main

STAGE 02

Build Artifact

ติดตั้ง Dependency และ Build Docker Image

STAGE 03

Automated Test

รัน Unit Test คำนวณยอด POS และตัดสต็อก

STAGE 04

Cloud Deploy

สลับ Traffic สู่ Container เวอร์ชันใหม่

STAGE 05

Smoke Check

ตรวจ /api/health ตอบ HTTP 200 OK

PIPELINE EXECUTION SIMULATOR

ทดลองรัน Deployment Pipeline

[READY] กดปุ่ม "จำลองการ Deploy" เพื่อดูลำดับการทำงานของ CI/CD จาก GitHub สู่ Cloud Production...
CODE FREEZE RULE

หลักการ Code Freeze ก่อนวันสอบ

ให้หยุดเพิ่มฟีเจอร์ใหม่ (Feature Freeze) อย่างน้อย 48 ชั่วโมงก่อนสอบป้องกัน แก้ไขได้เฉพาะ Critical Bug ที่มี Test รองรับ และห้าม Force Push ทับ Production คืนก่อนสอบเด็ดขาด

SLIDE 06 // LIVE URL VALIDATION LAB INTERACTIVE DIAGNOSTIC

ตรวจสอบความพร้อมของ Live System URL ทั้ง 5 ด่าน

ก่อนส่งลิงก์ลง Google Classroom ทีมต้องทดสอบ Live URL จากอุปกรณ์อื่นนอกเครือข่ายตัวเอง ทดลองเลือกกรณีศึกษาหรือกรอก URL ของทีมเพื่อตรวจจุดผิดพลาดที่พบบ่อยในวันสอบ

จำลองกรณีศึกษา:
ด่านตรวจสอบ (Validation Gate) ผลลัพธ์ รายละเอียดเชิงเทคนิค
SLIDE 07 // 15-MINUTE REHEARSAL STUDIO TIME-BOXING & TEAM BALANCE

จัดสรรเวลา 15 นาที และซ้อมจริงด้วย Rehearsal Timer

เกณฑ์ระดับดีเยี่ยมระบุชัดว่าต้องควบคุมเวลาไม่เกิน 15 นาที และสมาชิกทุกคน (1–3 คน) มีส่วนร่วมอย่างสมดุล แนะนำให้แบ่งเวลาแบบ 3 – 3 – 6 – 3 นาที โดยทุ่มเวลาส่วนใหญ่ (40%) ให้กับการสาธิตระบบจริง

TIME-BOXED REHEARSAL TIMER
ซ้อมเต็มรูปแบบ (15 นาที)
15:00

กด "เริ่มจับเวลา" เพื่อฝึกพูดและเปลี่ยนผู้บรรยายตามจังหวะเวลาจริง

ช่วงเวลา เนื้อหาหลัก บทบาททีม (3 คน)
00–03 น. Problem & Agile
โจทย์ร้านชำ, User Stories, Sprint 1–3
คนที่ 1 (Project Lead)
03–06 น. Architecture & 3NF
ER Diagram 6 ตาราง, Cloud Topology
คนที่ 2 (Backend/DB)
06–12 น. Live System Demo
รันจริงบน Live URL ตาม Routine 5 ขั้น
คนที่ 3 กด Demo + คนที่ 1–2 บรรยายสลับ
12–15 น. Test & Risk Mitigation
ผลทดสอบ, การกันตัดสต็อกชนกัน, สรุป
ทุกคนร่วมสรุปและรับช่วง Q&A
SLIDE 08 // GOLDEN PATH DEMO ROUTINE 6-MINUTE LIVE FLOW

ลำดับการสาธิต Grocery POS แบบไร้รอยต่อ 5 ขั้นตอน

อย่ากด Demo แบบสุ่มหรือพิมพ์ข้อมูลยาวเกินไปกลางห้องสอบ ให้ซ้อมลำดับ "Golden Path" ที่มีข้อมูลทดสอบเตรียมไว้ล่วงหน้า เพื่อให้ครบทุกฟีเจอร์สำคัญภายใน 6 นาที

SLIDE 09 // COMMITTEE Q&A READINESS CLO2 · CLO3 · CLO4

ซ้อมตอบคำถามเชิงเทคนิคจากคณะกรรมการสอบ

กรรมการไม่ได้ตรวจเพียงแค่หน้าจอสวยงาม แต่จะเจาะลึกการออกแบบฐานข้อมูล 3NF การจัดการความเสี่ยงทางเทคนิค และหลักฐานการทำงานร่วมกันของทีม คลิกเปิดดูแนวทางตอบที่แข็งแกร่งในแต่ละหมวด

SLIDE 10 // PRE-DEFENSE CHECKLIST & PLAN B ความพร้อม: 0%

เช็กลิสต์ก่อนขึ้นเวทีสอบ และแผนสำรอง (Plan B)

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

TEAM READINESS PROGRESS
ดำเนินการแล้ว 0 จาก 9 รายการ
FAILOVER PLAN B // IN EXAM ROOM

3 มาตรการรับมือเหตุฉุกเฉิน

  • T-15 นาที Warm-Up: เปิดหน้า Live URL ทิ้งไว้และยิงคำสั่ง /api/health ปลุก PaaS ก่อนเข้าห้องสอบ
  • วิดีโอ Demo สำรอง: อัดคลิปหน้าจอ Flow 5 ขั้นตอนแบบ Full HD (1080p) เก็บในเครื่องเผื่อเน็ตห้องสอบล่ม
  • Hotspot มือถือ + ข้อมูลสะอาด: เตรียมเน็ตมือถือส่วนตัวและปุ่ม/สคริปต์ Reset Seed Data ให้พร้อมสอบรอบถัดไป
SOURCES & COURSE REFERENCE

อ้างอิงเนื้อหาจากแนวทางโครงงานรายวิชา 1145 204 Sophomore Project (เกณฑ์สอบป้องกันโครงงาน Final Project Defense, แม่แบบชิ้นงานระบบ POS ปี 1–3), หลักการ Continuous Delivery และมาตรฐานการตรวจรับระบบซอฟต์แวร์เพื่อการใช้งานจริง