THE CHALLENGE
โจทย์และความท้าทาย
ออกแบบระบบระดับสาขาที่ติดตามโครงงานต่อเนื่องข้ามรายวิชาและภาคการศึกษาได้ ลดการกระจัดกระจายของข้อมูลและเอกสาร รองรับกระบวนการส่งงาน อนุมัติ และสอบที่แตกต่างกัน พร้อมควบคุมสิทธิ์ของผู้ใช้หลายบทบาทและรับไฟล์จำนวนมากในช่วงใกล้กำหนดส่ง โดยต้องรักษาความถูกต้องของเวลาส่งและป้องกันไฟล์อันตรายหรือการเข้าถึงเอกสารโดยไม่ได้รับอนุญาต
THE APPROACH
แนวทางการแก้ไข
พัฒนาระบบด้วย Next.js, TypeScript และ Prisma โดยใช้ข้อมูลโครงงานกลางร่วมกับการตั้งค่ารายวิชาและภาคการศึกษา ออกแบบสิทธิ์สำหรับนักศึกษา อาจารย์ TA และผู้ดูแลระบบ เชื่อมกระบวนการส่งเอกสาร ตรวจอนุมัติ และประเมินสอบไว้ในระบบเดียว พร้อมหน้าคลังโครงงานสำหรับเผยแพร่ผลงาน
เพิ่มการตรวจชนิดไฟล์ สแกนมัลแวร์ด้วย ClamAV และแยกงานสแกนเป็นเบื้องหลัง ใช้ใบรับไฟล์ที่ลงลายเซ็น HMAC เพื่อยืนยันเวลารับไฟล์ ตรวจลายเซ็น PDF และควบคุมการเปิดเอกสารพร้อมลายน้ำและบันทึกการเข้าถึง ทดสอบทั้งตรรกะระบบ กรณีไฟล์ผิดปกติ การควบคุมสิทธิ์ และการอัปโหลดพร้อมกัน เพื่อนำผลมาปรับปรุงความปลอดภัยและเสถียรภาพ