docs(sdlc): update work products for 23/09 review feedback

This commit is contained in:
Thanakorn
2026-09-24 09:19:05 +07:00
parent e5cbce6022
commit 6c1d66d8de
38 changed files with 686 additions and 702 deletions
@@ -62,7 +62,7 @@
| WP 2.0 | เอกสาร 200-WMS-26-001-00 Customer Requirements | ส่งเอกสารจำนวน 1 ชุด |
| WP 3.0 | เอกสาร 200-WMS-26-001-00 Software Requirements Specification | ส่งเอกสารจำนวน 1 ชุด |
| WP 4.0 | เอกสาร 200-WMS-26-001-00 Software Design | ส่งเอกสารจำนวน 1 ชุด |
| WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report | ส่งเอกสารจำนวน 3 ฉบับ (CH-001–CH-003) |
| WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report | ส่งเอกสารจำนวน 1 ชุด (ทะเบียนการควบคุมการเปลี่ยนแปลง) |
| WP 6.0 | เอกสาร 200-WMS-26-001-00 Test Case and Test Procedures | ส่งเอกสารจำนวน 1 ชุด |
| WP 7.0 | เอกสาร 200-WMS-26-001-00 Validation Results | ส่งเอกสารจำนวน 1 ชุด |
| WP 8.0 | เอกสาร 200-WMS-26-001-00 Software User Document | ส่งเอกสารจำนวน 1 ชุด |
@@ -34,7 +34,7 @@
| 4.1 | Project Control | Progress & Meeting Records | ติดตามความก้าวหน้า ประเด็นปัญหา มติ และการแก้ไขตลอดโครงการ | ApS, YaB | 5 ม.ค. 69 | 24 ส.ค. 69 | 232 | Progress Status, Meeting Record | Completed | บันทึกรายงวดตลอดโครงการ |
| 4.2 | Project Control | Configuration & Repository Control | ควบคุม Source Code, Baseline, เวอร์ชันเอกสาร และการสำรองข้อมูล | ThS, YaB | 19 ก.พ. 69 | 24 ส.ค. 69 | 187 | Software Configuration | Completed | Git origin + backup remote |
| 4.3 | Verification | Verify Work Products | ตรวจสอบความต้องการ ออกแบบ ส่วนประกอบ และการสอบกลับ | PaNg, NoC | 30 พ.ค. 69 | 17 ส.ค. 69 | 80 | Verification Results | Completed | ตรวจสอบ 4 รอบ รอบสุดท้าย 17 ส.ค. 69 |
| 4.4 | Validation | System Test & UAT | ทดสอบระบบตาม Test Case และทดสอบการยอมรับโดยผู้ใช้ | PaNg, SeV | 10 ส.ค. 69 | 14 ส.ค. 69 | 5 | Test Report, Validation Results | Completed | ทดสอบ 45 Test Case และ 12 สถานการณ์ UAT |
| 4.4 | Validation | System Test & UAT | ทดสอบระบบตาม Test Case และทดสอบการยอมรับโดยผู้ใช้ | PaNg, SeV | 10 ส.ค. 69 | 14 ส.ค. 69 | 5 | Test Report, Validation Results | Completed | ทดสอบ 45 Test Case และ UAT ครบ 14 หมวดความต้องการ (80 รายการ) |
| 4.5 | Documentation | Operational Documentation | จัดทำคู่มือผู้ใช้ คู่มือผู้ดูแลระบบ และคู่มือบำรุงรักษา | ThS, YaB | 1 มิ.ย. 69 | 17 ส.ค. 69 | 78 | User / Operation / Maintenance docs | Completed | จัดทำครบ 3 ฉบับ |
| 4.6 | Stabilization | Post-baseline Corrections | แก้ไขปัญหาการเข้าสู่ระบบและค่าตั้งค่าหลัง Baseline | ThS | 3 ส.ค. 69 | 3 ส.ค. 69 | 1 | Correction Register | Completed | Git b2c4374 |
| 4.7 | Stabilization | Demonstration Data & Delivery Package | เตรียมข้อมูลสาธิต ปรับแบรนด์ และชุดติดตั้ง Docker Compose | ThS | 14 ส.ค. 69 | 17 ส.ค. 69 | 4 | Demo data, Docker stack | Completed | Git dd48a8b–6c39700 |
@@ -51,7 +51,7 @@
| ตั้ง Baseline ความต้องการและแผนงาน | 18 กุมภาพันธ์ 2569 | อนุมัติ Customer Requirements และ Work Schedule |
| เริ่มพัฒนาระบบ | 19 กุมภาพันธ์ 2569 | เริ่ม Task 3.1 ตามแผน |
| Baseline การพัฒนา | 29 พฤษภาคม 2569 | พัฒนาครบทุกโมดูล (Git a0677d6) |
| ทดสอบระบบและ UAT | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 | ทดสอบ 45 Test Case และ 12 สถานการณ์ UAT ผ่านทั้งหมด |
| ทดสอบระบบและ UAT | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 | ทดสอบ 45 Test Case และ UAT ครบ 14 หมวดความต้องการ (80 รายการ) ผ่านทั้งหมด |
| ตรวจรับส่งมอบระบบ | 17 สิงหาคม 2569 | ผลการตรวจรับ Accepted |
| อบรมผู้ใช้งาน | 22 สิงหาคม 2569 | อบรมผู้ใช้งาน 6 คน |
| ปิดโครงการ | 24 สิงหาคม 2569 | ปิดโครงการอย่างเป็นทางการ |
@@ -67,7 +67,7 @@
| WP 2.0 | เอกสาร 200-WMS-26-001-00 Customer Requirements | ส่งเอกสารจำนวน 1 ชุด |
| WP 3.0 | เอกสาร 200-WMS-26-001-00 Software Requirements Specification | ส่งเอกสารจำนวน 1 ชุด |
| WP 4.0 | เอกสาร 200-WMS-26-001-00 Software Design | ส่งเอกสารจำนวน 1 ชุด |
| WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report | ส่งเอกสารจำนวน 3 ฉบับ (CH-001–CH-003) |
| WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report | ส่งเอกสารจำนวน 1 ชุด (ทะเบียนการควบคุมการเปลี่ยนแปลง) |
| WP 6.0 | เอกสาร 200-WMS-26-001-00 Test Case and Test Procedures | ส่งเอกสารจำนวน 1 ชุด |
| WP 7.0 | เอกสาร 200-WMS-26-001-00 Validation Results | ส่งเอกสารจำนวน 1 ชุด |
| WP 8.0 | เอกสาร 200-WMS-26-001-00 Software User Document | ส่งเอกสารจำนวน 1 ชุด |
@@ -113,11 +113,11 @@
| ขั้นตอน | แนวทางที่ใช้จริงในโครงการ |
| --- | --- |
| Requirements | เก็บความต้องการและตั้ง Baseline ก่อนเริ่มพัฒนา การเปลี่ยนแปลงภายหลังผ่าน Change Report (CH-001–CH-003) |
| Requirements | เก็บความต้องการและตั้ง Baseline ก่อนเริ่มพัฒนา การเปลี่ยนแปลงภายหลังต้องพิจารณาตามเกณฑ์ใน Change Report ก่อนดำเนินการ |
| Design | ออกแบบสถาปัตยกรรม โครงสร้างฐานข้อมูล และ Software Unit ก่อนพัฒนาแต่ละโมดูล |
| Implementation | พัฒนาเป็นโมดูลต่อเนื่องระหว่าง 19 ก.พ. – 29 พ.ค. 69 พร้อมทบทวนและแก้ไขระหว่างทาง |
| Verification | ตรวจสอบ Work Products 4 รอบ ควบคู่กับการพัฒนา และรอบสุดท้ายก่อนส่งมอบ |
| Validation | ทดสอบระบบและ UAT ระหว่าง 10–14 ส.ค. 69 บนสภาพแวดล้อมที่กำหนด |
| Verification | ตรวจสอบ Work Products 4 รอบ ประมาณทุก 2 เดือน และรอบสุดท้ายก่อนส่งมอบ ตามแผนในหัวข้อ 8.1 |
| Validation | ทดสอบระบบและ UAT ระหว่าง 10–14 ส.ค. 69 บนสภาพแวดล้อมที่กำหนด โดยใช้ Customer Requirements ทุกรายการเป็นตัวตั้ง |
| Closure | ตรวจรับ อบรม ปิดงานควบคุมปฏิบัติการ และปิดโครงการภายใน 24 ส.ค. 69 |
## 5 Organization
@@ -189,6 +189,32 @@
| Verification & Validation | 30 พฤษภาคม 2569 – 17 สิงหาคม 2569 | Test Case, Test Report, Verification Results, Validation Results |
| Project Close | 10 สิงหาคม 2569 – 24 สิงหาคม 2569 | Acceptance Report, Training Report, List of Evidence |
### 8.1 แผนการตรวจสอบ (Verification Plan)
โครงการมีระยะเวลา 232 วัน จึงกำหนดให้ตรวจสอบ Work Products ทั้งหมด 4 ครั้ง ประมาณทุก 2 เดือน (ทุก 60–75 วัน) ครั้งละ 3 ชั่วโมง และรอบสุดท้ายก่อนส่งมอบระบบ 6 ชั่วโมง เพื่อให้พบประเด็นตั้งแต่เนิ่น ๆ และแก้ไขได้ก่อนเริ่มงานขั้นถัดไป ผลการตรวจสอบแต่ละรอบบันทึกใน Verification Results และประเด็นที่พบบันทึกใน Correction Register
| รอบ | วันที่ตรวจสอบ | เวลา | ชั่วโมง | หัวข้อการตรวจสอบ | Deliverables under Review |
| :---: | --- | :---: | ---: | --- | --- |
| 1 | 17 มีนาคม 2569 | 09:00 – 12:00 น. | 3 | ตรวจสอบเอกสารวางแผนโครงการและความต้องการ | WP 1.0, WP 2.0 |
| 2 | 29 พฤษภาคม 2569 | 09:00 – 12:00 น. | 3 | ตรวจสอบเอกสารความต้องการซอฟต์แวร์และการออกแบบ | WP 3.0, WP 4.0, WP 5.0 |
| 3 | 31 กรกฎาคม 2569 | 09:00 – 12:00 น. | 3 | ตรวจสอบชุดทดสอบและการสอบกลับ | WP 6.0 |
| 4 | 17 สิงหาคม 2569 | 09:00 – 16:00 น. | 6 | User Acceptance Test (UAT) และตรวจสอบเอกสารส่งมอบทั้งหมด | WP 1.0, WP 2.0, WP 3.0, WP 4.0, WP 5.0, WP 6.0, WP 7.0, WP 8.0, WP 9.0, WP 10.0, WP 11.0 |
| หัวข้อ | รายละเอียด |
| --- | --- |
| ผู้ตรวจสอบ | คุณปริญ งามขำ (QA/Tester) ร่วมกับ คุณเยาวลักษณ์ บางชมภู (Document Control) |
| ผู้เข้าร่วมรับฟังผล | ผู้จัดทำ Work Product ที่ตรวจในรอบนั้น เพื่อแก้ไขได้ทันทีเมื่อพบประเด็น |
| ผู้อนุมัติผลการตรวจสอบ | คุณเสรี วิริยะสกุลธรณ์ (Project Sponsor) |
| รวมเวลาตรวจสอบตลอดโครงการ | 15 ชั่วโมง |
| บันทึกผล | Verification Results แยกฉบับตามรอบ (V0.1–V1.0) และ Correction Register |
**Risk & Constraints Note**
1. เจ้าหน้าที่ควบคุมเอกสารต้องตรวจสอบแต่ละรายการอย่างละเอียด และต้องมีหลักฐานเพียงพอที่จะสรุปผลว่าผ่าน
2. ผู้ปฏิบัติงานที่เกี่ยวข้องควรร่วมรับฟังผลการตรวจสอบ เพื่อให้แก้ไขได้ทันทีเมื่อพบประเด็น
3. การตรวจสอบแต่ละครั้งไม่ควรถูกขัดจังหวะ ซึ่งจะทำให้การตรวจสอบเลื่อนออกไป
4. ห้ามให้ผู้อื่นตรวจสอบแทนผู้ที่ได้รับมอบหมาย
## 9 Risk Management Plan
วัตถุประสงค์ของแผนบริหารความเสี่ยง คือระบุแนวทางจัดการความเสี่ยงของโครงการ เพื่อให้โครงการบรรลุเป้าหมายภายในเวลา งบประมาณ และคุณภาพที่กำหนด
@@ -27,102 +27,102 @@
## ความต้องการเชิงหน้าที่และไม่ใช่หน้าที่ (Functional and Non-Functional Requirements)
| ID | Topic | Result* | Remark |
| --- | --- | :---: | --- |
| CR01: Feature & Functional Characteristics | | | |
| CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | A | FR-001 |
| CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | A | FR-002 |
| CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | A | FR-003 |
| CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | A | FR-004 |
| CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | A | FR-005 |
| CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | A | FR-006 |
| CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | A | FR-007 |
| CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | A | FR-008 |
| CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | A | FR-009 |
| CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | A | FR-010 |
| CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | A | FR-011 |
| CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | A | FR-012 |
| CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | A | FR-013 |
| CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | A | FR-014 |
| CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | A | FR-015 |
| CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | A | FR-016 |
| CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | A | FR-017 |
| CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | A | FR-018 |
| CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | A | FR-019 |
| CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | A | FR-020 |
| CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | A | FR-021 |
| CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | A | FR-022 |
| CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | A | FR-023 |
| CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | A | FR-024 |
| CR02: Performance Considerations | | | |
| CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | A | NFR-006 |
| CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | A | NFR-006 |
| CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | A | NFR-006 |
| CR03: Interface Considerations | | | |
| CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | A | Operational context |
| CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | A | NFR-008 |
| CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | A | NFR-002 |
| CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | A | FR-021 |
| CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | A | FR-004 |
| CR04: Required System Characteristics | | | |
| CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | A | Operational context |
| CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | A | Data requirements |
| CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | A | FR-002 |
| CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | A | NFR-008 |
| CR05: Human Engineering Considerations | | | |
| CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | A | NFR-005 |
| CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | A | Interface requirements |
| CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | A | Interface requirements |
| CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | A | Usability practice |
| CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | A | Interface requirements |
| CR06: Security Considerations | | | |
| CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | A | NFR-001 |
| CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | A | NFR-001 |
| CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | A | NFR-002 |
| CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | A | FR-002 |
| CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | A | NFR-002 |
| CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | A | FR-003 |
| CR07: Environmental Considerations | | | |
| CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | A | NFR-004 |
| CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | A | NFR-010 |
| CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | A | NFR-005 |
| CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | A | Data requirements |
| CR08: Operational Considerations | | | |
| CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | A | NFR-004 |
| CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | A | NFR-004 |
| CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | A | NFR-004 |
| CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | A | FR-024 |
| CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | A | FR-022 |
| CR09: Maintenance Considerations | | | |
| CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | A | NFR-007 |
| CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | A | NFR-007 |
| CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | A | NFR-004 |
| CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | A | NFR-007 |
| CR10: Installation Considerations | | | |
| CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | A | NFR-004 |
| CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | A | NFR-004 |
| CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | A | NFR-001 |
| CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | A | NFR-004 |
| CR11: Support Considerations | | | |
| CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | A | Documentation |
| CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | A | Documentation |
| CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | A | Training |
| CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | A | Maintenance |
| CR12: Design Constraints | | | |
| CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | A | NFR-008 |
| CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | A | Configuration |
| CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | A | NFR-002 |
| CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | A | NFR-009 |
| CR13: Safety and Reliability Considerations | | | |
| CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | A | NFR-003 |
| CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | A | NFR-003 |
| CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | A | NFR-004 |
| CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | A | NFR-006 |
| CR14: Quality Expectations | | | |
| CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | A | Acceptance |
| CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | A | NFR-009 |
| CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | A | Acceptance |
| CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | A | Acceptance |
| ID | Topic | Result* |
| --- | --- | :---: |
| CR01: Feature & Functional Characteristics | | |
| CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | A |
| CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | A |
| CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | A |
| CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | A |
| CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | A |
| CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | A |
| CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | A |
| CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | A |
| CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | A |
| CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | A |
| CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | A |
| CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | A |
| CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | A |
| CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | A |
| CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | A |
| CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | A |
| CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | A |
| CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | A |
| CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | A |
| CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | A |
| CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | A |
| CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | A |
| CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | A |
| CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | A |
| CR02: Performance Considerations | | |
| CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | A |
| CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | A |
| CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | A |
| CR03: Interface Considerations | | |
| CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | A |
| CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | A |
| CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | A |
| CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | A |
| CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | A |
| CR04: Required System Characteristics | | |
| CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | A |
| CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | A |
| CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | A |
| CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | A |
| CR05: Human Engineering Considerations | | |
| CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | A |
| CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | A |
| CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | A |
| CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | A |
| CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | A |
| CR06: Security Considerations | | |
| CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | A |
| CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | A |
| CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | A |
| CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | A |
| CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | A |
| CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | A |
| CR07: Environmental Considerations | | |
| CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | A |
| CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | A |
| CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | A |
| CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | A |
| CR08: Operational Considerations | | |
| CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | A |
| CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | A |
| CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | A |
| CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | A |
| CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | A |
| CR09: Maintenance Considerations | | |
| CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | A |
| CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | A |
| CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | A |
| CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | A |
| CR10: Installation Considerations | | |
| CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | A |
| CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | A |
| CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | A |
| CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | A |
| CR11: Support Considerations | | |
| CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | A |
| CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | A |
| CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | A |
| CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | A |
| CR12: Design Constraints | | |
| CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | A |
| CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | A |
| CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | A |
| CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | A |
| CR13: Safety and Reliability Considerations | | |
| CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | A |
| CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | A |
| CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | A |
| CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | A |
| CR14: Quality Expectations | | |
| CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | A |
| CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | A |
| CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | A |
| CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | A |
## Remark
@@ -39,7 +39,7 @@
| CR ID | หัวข้อ | สถานะ | ผลกระทบ |
| :---: | --- | :---: | --- |
| CH-001 | เปลี่ยนคำเรียกตำแหน่งจัดเก็บจาก Rack เป็น Bin | อนุมัติ | แก้ไข 14 ไฟล์ ประมาณ 1,000 บรรทัด ครอบคลุมคลาสจัดการ 8 คลาสและเครื่องมือบาร์โค้ด ไม่มีการเพิ่มฟังก์ชันใหม่ |
| - | ไม่มีคำขอเปลี่ยนแปลงในงวดนี้ | - | - |
## Next Meeting
@@ -14,7 +14,7 @@
| Task ID | Task Name | Period | Responsible | Status | Progress (%) | Remarks |
| :---: | --- | :---: | :---: | :---: | ---: | --- |
| 4.4 | System Test & UAT | 10–14 ส.ค. 69 | PaNg, SeV | Completed | 100 | ทดสอบระบบ 45 Test Case และ UAT 12 สถานการณ์ ผ่านทั้งหมดระหว่าง 10–14 ส.ค. 69 |
| 4.4 | System Test & UAT | 10–14 ส.ค. 69 | PaNg, SeV | Completed | 100 | ทดสอบระบบ 45 Test Case และ UAT ครบ 14 หมวดความต้องการ (80 รายการ) ผ่านทั้งหมดระหว่าง 10–14 ส.ค. 69 |
| 4.7 | Demonstration Data & Delivery Package | 14–17 ส.ค. 69 | ThS | In Progress | 60 | จัดทำข้อมูลสาธิตเสร็จ อยู่ระหว่างปรับแบรนด์และชุดติดตั้ง Docker Compose |
| 5.1 | Final Work-product Review | 10–17 ส.ค. 69 | ApS, YaB | In Progress | 70 | ตรวจสอบความครบถ้วนของ Work Products |
@@ -28,7 +28,7 @@
| CR ID | หัวข้อ | สถานะ | ผลกระทบ |
| :---: | --- | :---: | --- |
| CH-002 | เพิ่มชุดข้อมูลสาธิตสำหรับการตรวจรับและสาธิตระบบ | อนุมัติ | แก้ไข 9 ไฟล์ เพิ่มประมาณ 2,900 บรรทัด เป็นสคริปต์สร้างข้อมูลใหม่ ไม่แก้ตรรกะหลักของระบบ |
| - | ไม่มีคำขอเปลี่ยนแปลงในงวดนี้ | - | - |
## Next Meeting
@@ -30,7 +30,7 @@
| CR ID | หัวข้อ | สถานะ | ผลกระทบ |
| :---: | --- | :---: | --- |
| CH-003 | ปรับอัตลักษณ์องค์กรและเพิ่มชุดติดตั้ง Docker Compose | อนุมัติ | ปรับแบรนด์ 23 ไฟล์ (ภาพและไฟล์ PHP/CSS 11 ไฟล์) และเพิ่มไฟล์ติดตั้ง 10 ไฟล์ |
| - | ไม่มีคำขอเปลี่ยนแปลงในงวดนี้ | - | - |
## Next Meeting
@@ -56,6 +56,18 @@
ปัญหาทุกรายการได้รับการแก้ไขและตรวจสอบผลด้วย Test Case ที่เกี่ยวข้อง โดยผลการทดสอบผ่านทั้งหมดในรอบทดสอบระหว่าง 10 สิงหาคม 2569 – 14 สิงหาคม 2569 ไม่มีข้อบกพร่องระดับวิกฤตคงค้าง ณ วันตรวจรับ
## บทเรียนและแนวทางป้องกันสำหรับโครงการถัดไป (Lessons Learned)
เมื่อปิดโครงการ ทีมงานทบทวนปัญหาทั้งหมดในทะเบียนนี้ จัดกลุ่มตามสาเหตุ และกำหนดแนวทางป้องกันเพื่อไม่ให้ปัญหาลักษณะเดียวกันเกิดซ้ำในโครงการถัดไป
| ลำดับ | กลุ่มปัญหา | เลขที่ปัญหา | จำนวน | สิ่งที่เกิดขึ้น | แนวทางป้องกัน (Preventive Action) |
| :---: | --- | --- | ---: | --- | --- |
| 1 | ความปลอดภัยและการควบคุมสิทธิ์ | ISS-001, ISS-003, ISS-004, ISS-006, ISS-009, ISS-011, ISS-015, ISS-016, ISS-017, ISS-018, ISS-024, ISS-026 | 12 | ข้อบกพร่องกลุ่มใหญ่ที่สุดเกิดจากการเพิ่ม Role Guard การตรวจสิทธิ์ และการจำกัด Session ทีละส่วนระหว่างพัฒนา | กำหนด Secure Coding Checklist และรูปแบบการตรวจสิทธิ์กลางตั้งแต่ช่วงออกแบบ และทบทวนโค้ดด้านความปลอดภัยทุกโมดูลก่อนรวมเข้า Baseline |
| 2 | ขั้นตอน Onboarding และการลงทะเบียน | ISS-007, ISS-008, ISS-013 | 3 | เส้นทางการรับคำเชิญมีหลายเงื่อนไขที่ไม่ได้ระบุครบในการออกแบบ | เขียน Test Case ครบทุกเส้นทางของขั้นตอนหลายสถานะก่อนพัฒนา และทดสอบซ้ำทุกครั้งที่แก้ไข |
| 3 | ความสอดคล้องระหว่างข้อกำหนดกับการพัฒนา | ISS-019, ISS-020, ISS-022 | 3 | ข้อกำหนดและเอกสารถูกปรับระหว่างพัฒนา ทำให้เกิดช่องว่างกับโค้ด | ปรับข้อกำหนดและ Traceability Record ในรอบเดียวกับการแก้โค้ด และตรวจความสอดคล้องในทุกรอบ Verification |
| 4 | ความถูกต้องของข้อมูลสต๊อกและบัญชี | ISS-002, ISS-012 | 2 | การแปลงชนิดข้อมูลและการตรวจสอบความสัมพันธ์ของข้อมูลไม่ครอบคลุม | ตรวจสอบข้อมูลนำเข้าและความสัมพันธ์ฝั่งเซิร์ฟเวอร์ทุกคำสั่งที่เปลี่ยนสต๊อกหรือ GL และเพิ่มชุดทดสอบวงจรเอกสาร |
| 5 | มาตรฐานโค้ดและการตั้งค่าสภาพแวดล้อม | ISS-005, ISS-010, ISS-014, ISS-021, ISS-023, ISS-025, ISS-027, ISS-028 | 8 | พัฒนาหลายโมดูลคู่ขนานโดยไม่มีมาตรฐานการตั้งชื่อ เส้นทางไฟล์ และค่าตั้งค่ากลาง | กำหนด Coding Standard และแม่แบบค่าตั้งค่าตั้งแต่ต้นโครงการ และทดสอบการติดตั้งบนสภาพแวดล้อมใหม่ทุกครั้งก่อนตั้ง Baseline |
## การเชื่อมโยงกับหลักฐานการทดสอบ
| เลขที่ | การแก้ไขอ้างอิง (Commit) | Test Case ที่ใช้ตรวจสอบ | ผลการทดสอบ |
@@ -19,7 +19,7 @@
| 2 | WP 2.0 | เอกสาร 200-WMS-26-001-00 Customer Requirements | ส่งเอกสารจำนวน 1 ชุด | Accepted |
| 3 | WP 3.0 | เอกสาร 200-WMS-26-001-00 Software Requirements Specification | ส่งเอกสารจำนวน 1 ชุด | Accepted |
| 4 | WP 4.0 | เอกสาร 200-WMS-26-001-00 Software Design | ส่งเอกสารจำนวน 1 ชุด | Accepted |
| 5 | WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report | ส่งเอกสารจำนวน 3 ฉบับ (CH-001–CH-003) | Accepted |
| 5 | WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report | ส่งเอกสารจำนวน 1 ชุด (ทะเบียนการควบคุมการเปลี่ยนแปลง) | Accepted |
| 6 | WP 6.0 | เอกสาร 200-WMS-26-001-00 Test Case and Test Procedures | ส่งเอกสารจำนวน 1 ชุด | Accepted |
| 7 | WP 7.0 | เอกสาร 200-WMS-26-001-00 Validation Results | ส่งเอกสารจำนวน 1 ชุด | Accepted |
| 8 | WP 8.0 | เอกสาร 200-WMS-26-001-00 Software User Document | ส่งเอกสารจำนวน 1 ชุด | Accepted |
@@ -33,7 +33,7 @@
| :---: | --- | --- | :---: |
| 1 | ฟังก์ชันในขอบเขตทำงานตรงตาม Customer Requirements ครบทุกรายการ | Traceability Record, Test Report | ผ่าน |
| 2 | ทดสอบระบบตาม Test Case ครบถ้วน | Test Report 45 Test Case ผ่านทั้งหมด (10 สิงหาคม 2569 – 14 สิงหาคม 2569) | ผ่าน |
| 3 | ทดสอบการยอมรับโดยผู้ใช้ (UAT) | Validation Results 12 สถานการณ์ ผ่านทั้งหมด | ผ่าน |
| 3 | ทดสอบการยอมรับโดยผู้ใช้ (UAT) | Validation Results ครบ 14 หมวดความต้องการ (80 รายการ) ผ่านทั้งหมด | ผ่าน |
| 4 | ไม่มีข้อบกพร่องระดับวิกฤตคงค้าง | Correction Register 28 รายการ แก้ไขและตรวจสอบครบ | ผ่าน |
| 5 | เอกสารคู่มือผู้ใช้ ผู้ดูแลระบบ และการบำรุงรักษาครบถ้วน | Software User Document, Product Operation Guide, Maintenance Document | ผ่าน |
| 6 | Source Code และเอกสารจัดเก็บใน Repository พร้อมชุดสำรอง | Project Repository, Project Repository (Backup) | ผ่าน |
@@ -1,89 +0,0 @@
# Change Report
<!-- footer: CR -->
| Document No | Change Report | Release, Version, By: | 25690521 V1.0 NoC |
| Project Name | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| Project Code | 200-WMS-26-001-00 |
| Change ID | CH-001 | วันที่ร้องขอ | 21 พฤษภาคม 2569 |
| ผู้ร้องขอ (Requester) | คุณนพพงษ์ เจริญสุข (System Analyst) |
| หน่วยงาน/ฝ่าย | ฝ่ายวิเคราะห์ระบบ / ตัวแทนผู้ใช้งานคลังสินค้า |
| ประเภทการเปลี่ยนแปลง | ☒ Scope ☒ Quality ☐ Schedule ☐ Cost ☐ Resource ☐ Other |
| ความเร่งด่วน (Priority) | ☐ High ☒ Medium ☐ Low |
## ส่วนที่ 1 : ข้อมูลทั่วไป
| หัวข้อ | รายละเอียด |
| --- | --- |
| ชื่อการเปลี่ยนแปลง | เปลี่ยนคำเรียกตำแหน่งจัดเก็บจาก Rack เป็น Bin |
| โครงการ | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| ระยะที่เกิดการเปลี่ยนแปลง | ช่วงดำเนินโครงการ (21 พฤษภาคม 2569) |
| เอกสารที่เกี่ยวข้อง | Customer Requirements, Software Project Plan, Traceability Record |
## ส่วนที่ 2 : รายละเอียดการเปลี่ยนแปลง
| ลำดับ | รายการ | รายละเอียด |
| :---: | --- | --- |
| 1 | คำอธิบายการเปลี่ยนแปลงที่ต้องการ (Description) | เปลี่ยนคำเรียกตำแหน่งจัดเก็บสินค้าจาก "Rack" เป็น "Bin" ทั้งระบบ ครอบคลุมป้ายกำกับหน้าจอ, custom.js, เครื่องมือบาร์โค้ด (BarcodeManager.php, location_barcode_label.php, retrieve_rack.php) และคลาสจัดการคลังสินค้า สต๊อก ใบสั่งขาย รายงาน ใบรับคืน ใบคืนผู้ขาย สินค้า และการตั้งค่าบริษัท |
| 2 | เหตุผลของการเปลี่ยนแปลง (Justification) | ให้คำที่ใช้ในระบบตรงกับคำที่พนักงานคลังสินค้าใช้จริงในการปฏิบัติงาน ลดความสับสนระหว่างการใช้งานและการอบรม |
## ส่วนที่ 3 : การประเมินผลกระทบ (Impact Analysis)
| ลำดับ | รายการ | รายละเอียด |
| :---: | --- | --- |
| 1 | ผลกระทบต่อ Scope | แก้ไข 14 ไฟล์ ประมาณ 1,000 บรรทัด ครอบคลุมคลาสจัดการ 8 คลาสและเครื่องมือบาร์โค้ด ไม่มีการเพิ่มฟังก์ชันใหม่ |
| 2 | ผลกระทบต่อ Schedule | ดำเนินการภายในช่วงพัฒนาปัจจุบัน ไม่กระทบกำหนดส่งมอบ |
| 3 | ผลกระทบต่อ Budget/Cost | ไม่มีค่าใช้จ่ายเพิ่ม ใช้ทรัพยากรทีมพัฒนาเดิม |
| 4 | ผลกระทบต่อ Resource | ผู้พัฒนา 1 คน |
| 5 | ผลกระทบต่อ Quality/Deliverables | เป็นการเปลี่ยนคำเรียกเท่านั้น ไม่เปลี่ยนพฤติกรรมของระบบ ข้อบกพร่องที่เกิดจากการเปลี่ยนไม่ครบให้บันทึกใน Correction Register (ISS-023) |
## ส่วนที่ 4 : การพิจารณาอนุมัติ (Change Advisory Board Approval)
| ลำดับ | ชื่อผู้พิจารณา | ตำแหน่ง | ความคิดเห็น / ลงนาม |
| :---: | --- | --- | --- |
| 1 | คุณอภิรัชช์ สุภัทรประทีป | Project Manager | เห็นควรอนุมัติ ผลกระทบอยู่ในวิสัยที่ควบคุมได้ |
| 2 | คุณนพพงษ์ เจริญสุข | System Analyst | สอดคล้องกับความต้องการและการออกแบบ |
| 3 | คุณปริญ งามขำ | QA / Tester | ต้องทดสอบซ้ำในส่วนที่ได้รับผลกระทบ |
| 4 | คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | อนุมัติ |
## ส่วนที่ 5 : สรุปผลการพิจารณา
| หัวข้อ | รายละเอียด |
| --- | --- |
| สถานะ | ☒ อนุมัติ (Approved) ☐ ไม่อนุมัติ (Rejected) |
| การอ้างอิงการดำเนินการ | Commit `8f57ab5` |
| ผลการดำเนินการ | ดำเนินการแล้วเสร็จ และตรวจสอบผลด้วย TC-UN03.001 ผ่านเมื่อ 10–14 ส.ค. 69 |
## ภาคผนวก A : เกณฑ์การประเมินระดับความรุนแรงของการเปลี่ยนแปลง (Change Criteria)
ตารางนี้ใช้เป็นแนวทางประเมินระดับความรุนแรง (Priority Level) ของการเปลี่ยนแปลง เพื่อให้คณะพิจารณา (Change Advisory Board – CAB) กำหนดระดับผลกระทบและความเร่งด่วนได้ชัดเจนตามมาตรฐาน ISO/IEC 29110
| ระดับ (Level) | คำจำกัดความ (Definition) | ตัวอย่างสถานการณ์ (Examples) | ผลกระทบ (Impact Scope) |
| --- | --- | --- | --- |
| High | การเปลี่ยนแปลงที่มีผลกระทบอย่างมีนัยสำคัญต่อระบบหลัก งบประมาณ หรือแผนโครงการ ซึ่งต้องได้รับอนุมัติจาก Project Manager และ Project Sponsor | ปรับสถาปัตยกรรมหลักของระบบ / เพิ่มฟังก์ชันหลักใหม่ / ต้องปรับงบประมาณหรือระยะเวลาโครงการ | กระทบ Scope, Schedule และ Cost โดยตรง |
| Medium | การเปลี่ยนแปลงที่มีผลกระทบต่อส่วนติดต่อผู้ใช้งานหรือฟังก์ชันย่อยบางส่วน แต่ไม่กระทบโครงสร้างหลัก | ปรับปรุงหน้าจอ / ปรับข้อความหรือตรรกะบางส่วน / เพิ่มการตรวจสอบข้อมูล | กระทบ Quality หรือ Deliverables บางส่วน |
| Low | การเปลี่ยนแปลงขนาดเล็กที่ไม่ส่งผลต่อการทำงานหลักของระบบ | แก้ไขคำสะกดหรือข้อความแสดงผล / เปลี่ยนโลโก้หรือรูปภาพ / ปรับฟอนต์หรือสี | ผลกระทบเล็กน้อยต่อ Deliverables |
**แนวทางการใช้งาน**
- ผู้ร้องขอ (Requester) ระบุระดับความรุนแรงตามตารางนี้ในส่วน "ความเร่งด่วน (Priority)"
- คณะพิจารณา (CAB) ใช้ตารางนี้ประกอบการพิจารณาในส่วน "การประเมินผลกระทบ (Impact Analysis)"
- หากมีข้อสงสัยในระดับผลกระทบ ให้ใช้ระดับที่สูงกว่าเพื่อความปลอดภัยของโครงการ
## ผู้จัดทำเอกสาร (Secretary)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณนพพงษ์ เจริญสุข | System Analyst | | |
## ผู้ตรวจสอบเอกสาร (Reviewer)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณอภิรัชช์ สุภัทรประทีป | Project Manager | | |
## ผู้อนุมัติ (Approval)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | | |
@@ -1,89 +0,0 @@
# Change Report
<!-- footer: CR -->
| Document No | Change Report | Release, Version, By: | 25690808 V1.0 ApS |
| Project Name | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| Project Code | 200-WMS-26-001-00 |
| Change ID | CH-002 | วันที่ร้องขอ | 8 สิงหาคม 2569 |
| ผู้ร้องขอ (Requester) | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) |
| หน่วยงาน/ฝ่าย | ฝ่ายบริหารโครงการ / เตรียมการส่งมอบ |
| ประเภทการเปลี่ยนแปลง | ☒ Scope ☒ Quality ☐ Schedule ☐ Cost ☐ Resource ☐ Other |
| ความเร่งด่วน (Priority) | ☐ High ☒ Medium ☐ Low |
## ส่วนที่ 1 : ข้อมูลทั่วไป
| หัวข้อ | รายละเอียด |
| --- | --- |
| ชื่อการเปลี่ยนแปลง | เพิ่มชุดข้อมูลสาธิตสำหรับการตรวจรับและสาธิตระบบ |
| โครงการ | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| ระยะที่เกิดการเปลี่ยนแปลง | ช่วงดำเนินโครงการ (8 สิงหาคม 2569) |
| เอกสารที่เกี่ยวข้อง | Customer Requirements, Software Project Plan, Traceability Record |
## ส่วนที่ 2 : รายละเอียดการเปลี่ยนแปลง
| ลำดับ | รายการ | รายละเอียด |
| :---: | --- | --- |
| 1 | คำอธิบายการเปลี่ยนแปลงที่ต้องการ (Description) | เพิ่มสคริปต์สร้างข้อมูลสาธิต 3 ไฟล์ (demo_seed.php, demo_seed_more_orders.php, demo_seed_transactions.php) สำหรับใบสั่งขาย รูปแบบคำสั่งซื้อเพิ่มเติม และประวัติรายการเคลื่อนไหว พร้อมตั้งค่าไดเรกทอรี Log ของบริการ Node.js ที่ใช้ระหว่างสร้างข้อมูล |
| 2 | เหตุผลของการเปลี่ยนแปลง (Justification) | ระบบที่ติดตั้งใหม่ไม่มีประวัติรายการ ทำให้ตรวจรับรายงานและขั้นตอนการทำงานไม่ได้ จึงต้องมีข้อมูลตัวอย่างที่ใกล้เคียงการใช้งานจริงสำหรับการตรวจรับและการสาธิต |
## ส่วนที่ 3 : การประเมินผลกระทบ (Impact Analysis)
| ลำดับ | รายการ | รายละเอียด |
| :---: | --- | --- |
| 1 | ผลกระทบต่อ Scope | แก้ไข 9 ไฟล์ เพิ่มประมาณ 2,900 บรรทัด เป็นสคริปต์สร้างข้อมูลใหม่ ไม่แก้ตรรกะหลักของระบบ |
| 2 | ผลกระทบต่อ Schedule | ดำเนินการภายในช่วงเตรียมส่งมอบตามแผน |
| 3 | ผลกระทบต่อ Budget/Cost | ไม่มีค่าใช้จ่ายเพิ่ม |
| 4 | ผลกระทบต่อ Resource | ผู้พัฒนา 1 คน |
| 5 | ผลกระทบต่อ Quality/Deliverables | เป็นการเพิ่มข้อมูลสาธิตเท่านั้น ข้อมูลสาธิตต้องแยกจากข้อมูลใช้งานจริงตาม CR07:004 |
## ส่วนที่ 4 : การพิจารณาอนุมัติ (Change Advisory Board Approval)
| ลำดับ | ชื่อผู้พิจารณา | ตำแหน่ง | ความคิดเห็น / ลงนาม |
| :---: | --- | --- | --- |
| 1 | คุณอภิรัชช์ สุภัทรประทีป | Project Manager | เห็นควรอนุมัติ ผลกระทบอยู่ในวิสัยที่ควบคุมได้ |
| 2 | คุณนพพงษ์ เจริญสุข | System Analyst | สอดคล้องกับความต้องการและการออกแบบ |
| 3 | คุณปริญ งามขำ | QA / Tester | ต้องทดสอบซ้ำในส่วนที่ได้รับผลกระทบ |
| 4 | คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | อนุมัติ |
## ส่วนที่ 5 : สรุปผลการพิจารณา
| หัวข้อ | รายละเอียด |
| --- | --- |
| สถานะ | ☒ อนุมัติ (Approved) ☐ ไม่อนุมัติ (Rejected) |
| การอ้างอิงการดำเนินการ | Commit `dd48a8b` |
| ผลการดำเนินการ | ดำเนินการแล้วเสร็จเมื่อ 14 ส.ค. 69 และใช้เป็นข้อมูลตั้งต้นของการทดสอบและ UAT |
## ภาคผนวก A : เกณฑ์การประเมินระดับความรุนแรงของการเปลี่ยนแปลง (Change Criteria)
ตารางนี้ใช้เป็นแนวทางประเมินระดับความรุนแรง (Priority Level) ของการเปลี่ยนแปลง เพื่อให้คณะพิจารณา (Change Advisory Board – CAB) กำหนดระดับผลกระทบและความเร่งด่วนได้ชัดเจนตามมาตรฐาน ISO/IEC 29110
| ระดับ (Level) | คำจำกัดความ (Definition) | ตัวอย่างสถานการณ์ (Examples) | ผลกระทบ (Impact Scope) |
| --- | --- | --- | --- |
| High | การเปลี่ยนแปลงที่มีผลกระทบอย่างมีนัยสำคัญต่อระบบหลัก งบประมาณ หรือแผนโครงการ ซึ่งต้องได้รับอนุมัติจาก Project Manager และ Project Sponsor | ปรับสถาปัตยกรรมหลักของระบบ / เพิ่มฟังก์ชันหลักใหม่ / ต้องปรับงบประมาณหรือระยะเวลาโครงการ | กระทบ Scope, Schedule และ Cost โดยตรง |
| Medium | การเปลี่ยนแปลงที่มีผลกระทบต่อส่วนติดต่อผู้ใช้งานหรือฟังก์ชันย่อยบางส่วน แต่ไม่กระทบโครงสร้างหลัก | ปรับปรุงหน้าจอ / ปรับข้อความหรือตรรกะบางส่วน / เพิ่มการตรวจสอบข้อมูล | กระทบ Quality หรือ Deliverables บางส่วน |
| Low | การเปลี่ยนแปลงขนาดเล็กที่ไม่ส่งผลต่อการทำงานหลักของระบบ | แก้ไขคำสะกดหรือข้อความแสดงผล / เปลี่ยนโลโก้หรือรูปภาพ / ปรับฟอนต์หรือสี | ผลกระทบเล็กน้อยต่อ Deliverables |
**แนวทางการใช้งาน**
- ผู้ร้องขอ (Requester) ระบุระดับความรุนแรงตามตารางนี้ในส่วน "ความเร่งด่วน (Priority)"
- คณะพิจารณา (CAB) ใช้ตารางนี้ประกอบการพิจารณาในส่วน "การประเมินผลกระทบ (Impact Analysis)"
- หากมีข้อสงสัยในระดับผลกระทบ ให้ใช้ระดับที่สูงกว่าเพื่อความปลอดภัยของโครงการ
## ผู้จัดทำเอกสาร (Secretary)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณอภิรัชช์ สุภัทรประทีป | Project Manager | | |
## ผู้ตรวจสอบเอกสาร (Reviewer)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณอภิรัชช์ สุภัทรประทีป | Project Manager | | |
## ผู้อนุมัติ (Approval)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | | |
@@ -1,89 +0,0 @@
# Change Report
<!-- footer: CR -->
| Document No | Change Report | Release, Version, By: | 25690810 V1.0 SeV |
| Project Name | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| Project Code | 200-WMS-26-001-00 |
| Change ID | CH-003 | วันที่ร้องขอ | 10 สิงหาคม 2569 |
| ผู้ร้องขอ (Requester) | คุณเสรี วิริยะสกุลธรณ์ (Project Sponsor) |
| หน่วยงาน/ฝ่าย | ผู้บริหาร / ฝ่ายพัฒนา |
| ประเภทการเปลี่ยนแปลง | ☒ Scope ☒ Quality ☐ Schedule ☐ Cost ☐ Resource ☐ Other |
| ความเร่งด่วน (Priority) | ☐ High ☒ Medium ☐ Low |
## ส่วนที่ 1 : ข้อมูลทั่วไป
| หัวข้อ | รายละเอียด |
| --- | --- |
| ชื่อการเปลี่ยนแปลง | ปรับอัตลักษณ์องค์กรและเพิ่มชุดติดตั้ง Docker Compose |
| โครงการ | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| ระยะที่เกิดการเปลี่ยนแปลง | ช่วงดำเนินโครงการ (10 สิงหาคม 2569) |
| เอกสารที่เกี่ยวข้อง | Customer Requirements, Software Project Plan, Traceability Record |
## ส่วนที่ 2 : รายละเอียดการเปลี่ยนแปลง
| ลำดับ | รายการ | รายละเอียด |
| :---: | --- | --- |
| 1 | คำอธิบายการเปลี่ยนแปลงที่ต้องการ (Description) | รวมการเปลี่ยนแปลงเพื่อเตรียมส่งมอบ 2 รายการ: (1) เปลี่ยนชุดอัตลักษณ์องค์กร ได้แก่ โลโก้ (logo.png, logo.svg), Favicon และภาพหัวเอกสาร พร้อมปรับไฟล์ UI ที่อ้างอิง และ (2) เพิ่มชุดติดตั้ง Docker Compose สำหรับใช้งานจริง ประกอบด้วย Compose file, Dockerfile, แม่แบบค่าตั้งค่า, Entrypoint, SQL เริ่มต้น, .env.example และสคริปต์สร้าง .env แบบโต้ตอบ |
| 2 | เหตุผลของการเปลี่ยนแปลง (Justification) | ให้ชุดส่งมอบใช้อัตลักษณ์องค์กรของลูกค้าอย่างถูกต้อง และมีเส้นทางการติดตั้งที่ทำซ้ำได้ โดยไม่นำค่าความลับเข้า Source Control หรือฝังไว้ใน Image |
## ส่วนที่ 3 : การประเมินผลกระทบ (Impact Analysis)
| ลำดับ | รายการ | รายละเอียด |
| :---: | --- | --- |
| 1 | ผลกระทบต่อ Scope | ปรับแบรนด์ 23 ไฟล์ (ภาพและไฟล์ PHP/CSS 11 ไฟล์) และเพิ่มไฟล์ติดตั้ง 10 ไฟล์ |
| 2 | ผลกระทบต่อ Schedule | ดำเนินการภายในช่วงเตรียมส่งมอบ 15–17 ส.ค. 69 |
| 3 | ผลกระทบต่อ Budget/Cost | ไม่มีค่าใช้จ่ายเพิ่ม |
| 4 | ผลกระทบต่อ Resource | ผู้พัฒนา 1 คน |
| 5 | ผลกระทบต่อ Quality/Deliverables | ภาพหัวเอกสารถูกใช้ในเอกสารส่งมอบ ชุด Docker Compose สร้างค่าความลับจาก .env ขณะเริ่ม Container ตาม CR10:003 |
## ส่วนที่ 4 : การพิจารณาอนุมัติ (Change Advisory Board Approval)
| ลำดับ | ชื่อผู้พิจารณา | ตำแหน่ง | ความคิดเห็น / ลงนาม |
| :---: | --- | --- | --- |
| 1 | คุณอภิรัชช์ สุภัทรประทีป | Project Manager | เห็นควรอนุมัติ ผลกระทบอยู่ในวิสัยที่ควบคุมได้ |
| 2 | คุณนพพงษ์ เจริญสุข | System Analyst | สอดคล้องกับความต้องการและการออกแบบ |
| 3 | คุณปริญ งามขำ | QA / Tester | ต้องทดสอบซ้ำในส่วนที่ได้รับผลกระทบ |
| 4 | คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | อนุมัติ |
## ส่วนที่ 5 : สรุปผลการพิจารณา
| หัวข้อ | รายละเอียด |
| --- | --- |
| สถานะ | ☒ อนุมัติ (Approved) ☐ ไม่อนุมัติ (Rejected) |
| การอ้างอิงการดำเนินการ | Commit `63cea23, 136084f, 6c39700` |
| ผลการดำเนินการ | ดำเนินการแล้วเสร็จเมื่อ 17 ส.ค. 69 และตรวจสอบผลด้วย TC-UN13.002 และ TC-UN13.003 |
## ภาคผนวก A : เกณฑ์การประเมินระดับความรุนแรงของการเปลี่ยนแปลง (Change Criteria)
ตารางนี้ใช้เป็นแนวทางประเมินระดับความรุนแรง (Priority Level) ของการเปลี่ยนแปลง เพื่อให้คณะพิจารณา (Change Advisory Board – CAB) กำหนดระดับผลกระทบและความเร่งด่วนได้ชัดเจนตามมาตรฐาน ISO/IEC 29110
| ระดับ (Level) | คำจำกัดความ (Definition) | ตัวอย่างสถานการณ์ (Examples) | ผลกระทบ (Impact Scope) |
| --- | --- | --- | --- |
| High | การเปลี่ยนแปลงที่มีผลกระทบอย่างมีนัยสำคัญต่อระบบหลัก งบประมาณ หรือแผนโครงการ ซึ่งต้องได้รับอนุมัติจาก Project Manager และ Project Sponsor | ปรับสถาปัตยกรรมหลักของระบบ / เพิ่มฟังก์ชันหลักใหม่ / ต้องปรับงบประมาณหรือระยะเวลาโครงการ | กระทบ Scope, Schedule และ Cost โดยตรง |
| Medium | การเปลี่ยนแปลงที่มีผลกระทบต่อส่วนติดต่อผู้ใช้งานหรือฟังก์ชันย่อยบางส่วน แต่ไม่กระทบโครงสร้างหลัก | ปรับปรุงหน้าจอ / ปรับข้อความหรือตรรกะบางส่วน / เพิ่มการตรวจสอบข้อมูล | กระทบ Quality หรือ Deliverables บางส่วน |
| Low | การเปลี่ยนแปลงขนาดเล็กที่ไม่ส่งผลต่อการทำงานหลักของระบบ | แก้ไขคำสะกดหรือข้อความแสดงผล / เปลี่ยนโลโก้หรือรูปภาพ / ปรับฟอนต์หรือสี | ผลกระทบเล็กน้อยต่อ Deliverables |
**แนวทางการใช้งาน**
- ผู้ร้องขอ (Requester) ระบุระดับความรุนแรงตามตารางนี้ในส่วน "ความเร่งด่วน (Priority)"
- คณะพิจารณา (CAB) ใช้ตารางนี้ประกอบการพิจารณาในส่วน "การประเมินผลกระทบ (Impact Analysis)"
- หากมีข้อสงสัยในระดับผลกระทบ ให้ใช้ระดับที่สูงกว่าเพื่อความปลอดภัยของโครงการ
## ผู้จัดทำเอกสาร (Secretary)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | | |
## ผู้ตรวจสอบเอกสาร (Reviewer)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณอภิรัชช์ สุภัทรประทีป | Project Manager | | |
## ผู้อนุมัติ (Approval)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | | |
@@ -0,0 +1,78 @@
# Change Report
<!-- footer: CR -->
| Document No | Change Report | Release, Version, By: | 25690817 V1.0 ApS |
| Project Name | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| Project Code | 200-WMS-26-001-00 |
| Title | ทะเบียนการควบคุมการเปลี่ยนแปลง (Change Control Register) |
| Project Period | 5 มกราคม 2569 – 24 สิงหาคม 2569 |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
## วัตถุประสงค์ (Objective)
เอกสารนี้บันทึกการควบคุมการเปลี่ยนแปลงของโครงการ ตั้งแต่ตั้ง Baseline ความต้องการเมื่อ 18 กุมภาพันธ์ 2569 จนถึงการตรวจรับส่งมอบ โดยพิจารณาทุกรายการปรับปรุงที่มีการเสนอตามเกณฑ์ในส่วนที่ 1 รายการที่เข้าเกณฑ์ต้องจัดทำคำขอเปลี่ยนแปลง ประเมินผลกระทบ และขออนุมัติก่อนดำเนินการ ส่วนรายการที่ไม่เข้าเกณฑ์ดำเนินการเป็นมติที่ประชุมหรืองานในแผน
## ส่วนที่ 1 : เกณฑ์การพิจารณาคำขอเปลี่ยนแปลง (Change Criteria)
รายการใดจะถือเป็นคำขอเปลี่ยนแปลงเมื่อเข้าเกณฑ์ทั้ง 3 ข้อ หากตัดรายการนั้นออกแล้วยังส่งมอบงานได้ตามที่ตกลงไว้ จะไม่ถือเป็นคำขอเปลี่ยนแปลง
| ลำดับ | เกณฑ์ | คำอธิบาย |
| :---: | --- | --- |
| 1 | เป็นสิ่งจำเป็นต่อการส่งมอบ | หากไม่ดำเนินการ จะส่งมอบสิ่งส่งมอบ (Work Product) หรือความต้องการที่ตกลงไว้ไม่ได้ |
| 2 | เปลี่ยนแปลงขอบเขตหรือสิ่งส่งมอบ | เพิ่ม ลด หรือแก้ไขความต้องการ (CR) หรือสิ่งส่งมอบที่ตั้ง Baseline แล้ว เช่น เพิ่มโมดูล หรือรองรับ 2 ภาษา |
| 3 | กระทบทรัพยากรของโครงการ | กระทบ Man-day กำหนดส่งมอบ หรือค่าใช้จ่าย จึงต้องประเมินผลกระทบและขออนุมัติก่อนดำเนินการ |
## ส่วนที่ 2 : ทะเบียนคำขอเปลี่ยนแปลง (Change Request Log)
| Change ID | หัวข้อ | ผู้ร้องขอ | ผลกระทบ | สถานะ |
| :---: | --- | :---: | --- | :---: |
| - | ไม่มีคำขอเปลี่ยนแปลงที่เข้าเกณฑ์ตลอดโครงการ | - | - | - |
## ส่วนที่ 3 : รายการปรับปรุงที่พิจารณาแล้วไม่เข้าเกณฑ์
| ลำดับ | วันที่พิจารณา | รายการ | ผู้เสนอ | ผลการพิจารณา | การดำเนินการ | อ้างอิง |
| :---: | :---: | --- | :---: | --- | --- | --- |
| 1 | 23 พ.ค. 69 | ปรับคำเรียกตำแหน่งจัดเก็บจาก Rack เป็น Bin ทั้งระบบ | NoC | ไม่เข้าเกณฑ์ — เป็นการปรับคำเรียกบนหน้าจอให้ตรงกับการปฏิบัติงานจริง ไม่เพิ่มหรือลดฟังก์ชัน ไม่กระทบ Man-day และส่งมอบได้แม้ไม่ปรับ | มติที่ประชุม ดำเนินการภายใน Task 3.9 | Meeting Record 23 พ.ค. 69, Correction Register ISS-023 |
| 2 | 3 ส.ค. 69 | เตรียมข้อมูลสาธิตสำหรับการตรวจรับและการสาธิตระบบ | ApS | ไม่เข้าเกณฑ์ — เป็นข้อมูลตั้งต้นสำหรับตรวจรับ ไม่ใช่สิ่งส่งมอบ และต้องแยกจากข้อมูลใช้งานจริงตาม CR07:004 | งานเตรียมการส่งมอบ Task 4.7 | Meeting Record 3 ส.ค. 69, 14 ส.ค. 69 |
| 3 | 14 ส.ค. 69 | ปรับอัตลักษณ์องค์กรและจัดทำชุดติดตั้ง Docker Compose | SeV | ไม่เข้าเกณฑ์ — ชุดติดตั้ง Docker Compose อยู่ในความต้องการ CR10:002 ตั้งแต่ Baseline และการปรับอัตลักษณ์องค์กรไม่เปลี่ยนแปลงฟังก์ชันหรือสิ่งส่งมอบ | งานเตรียมการส่งมอบ Task 4.7 | Meeting Record 14 ส.ค. 69, 17 ส.ค. 69 |
## ส่วนที่ 4 : สรุปผลการควบคุมการเปลี่ยนแปลง
| รายการ | จำนวน |
| --- | ---: |
| รายการปรับปรุงที่เสนอและพิจารณา | 3 |
| คำขอเปลี่ยนแปลงที่เข้าเกณฑ์ | 0 |
| คำขอเปลี่ยนแปลงที่อนุมัติ | 0 |
| ผลกระทบต่อ Man-day กำหนดส่งมอบ และค่าใช้จ่าย | ไม่มี |
ขอบเขตงาน สิ่งส่งมอบ และ Customer Requirements ที่ตั้ง Baseline ไม่มีการเปลี่ยนแปลงตลอดโครงการ รายการปรับปรุงที่พิจารณาทั้งหมดดำเนินการภายในแผนงานเดิมโดยไม่กระทบ Man-day และกำหนดส่งมอบ
## ภาคผนวก A : เกณฑ์การประเมินระดับความรุนแรงของการเปลี่ยนแปลง
ใช้ประเมินระดับความรุนแรง (Priority Level) เมื่อมีคำขอเปลี่ยนแปลงที่เข้าเกณฑ์ในส่วนที่ 1
| ระดับ (Level) | คำจำกัดความ (Definition) | ตัวอย่างสถานการณ์ (Examples) |
| --- | --- | --- |
| High | กระทบระบบหลัก งบประมาณ หรือแผนงานอย่างมีนัยสำคัญ | เพิ่มโมดูลใหม่ เปลี่ยนโครงสร้างฐานข้อมูลหลัก |
| Medium | กระทบฟังก์ชันย่อยหรือส่วนติดต่อผู้ใช้งานบางส่วน และกระทบ Man-day | รองรับ 2 ภาษา เพิ่มรายงานใหม่ |
| Low | กระทบเล็กน้อยต่อ Man-day ไม่เปลี่ยนการทำงานหลัก | เพิ่มฟิลด์ในเอกสาร |
## ผู้จัดทำเอกสาร (Secretary)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณอภิรัชช์ สุภัทรประทีป | Project Manager | | |
## ผู้ตรวจสอบเอกสาร (Reviewer)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณเยาวลักษณ์ บางชมภู | Document Control | | |
## ผู้อนุมัติ (Approval)
| ชื่อ | ตำแหน่ง | ลายเซ็น | วันที่ |
| --- | --- | --- | --- |
| คุณเสรี วิริยะสกุลธรณ์ | Project Sponsor | | |
@@ -9,7 +9,7 @@
| Task ID / Task Name | 3.7 Accounting & Finance Workflows |
| Work Period of Task | 13 พฤษภาคม 2569 – 23 พฤษภาคม 2569 |
| Meeting Date | 23 พฤษภาคม 2569 | Time | 09:00 – 11:00 น. |
| สิ่งแนบ | Progress Status Record 23 พ.ค. 69, Change Report CH-001 |
| สิ่งแนบ | Progress Status Record 23 พ.ค. 69 |
| Location | ห้องประชุม บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) , คุณนพพงษ์ เจริญสุข (System Analyst) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
@@ -38,7 +38,7 @@
| ลำดับ | หัวข้อการประชุม | วัตถุประสงค์ |
| :---: | --- | --- |
| 1 | ผลการพัฒนาบัญชีและการเงิน | ตรวจสอบความครบถ้วนตาม CR01:015–CR01:017 |
| 2 | พิจารณาคำขอเปลี่ยนแปลง CH-001 (Rack เป็น Bin) | ประเมินผลกระทบและอนุมัติ |
| 2 | คำเรียกตำแหน่งจัดเก็บ (Rack / Bin) | กำหนดคำเรียกที่ใช้ในหน้าจอให้ตรงกับการปฏิบัติงานจริง |
| 3 | แผนงานก่อนตั้ง Baseline การพัฒนา | ยืนยันงานที่ต้องเสร็จภายใน 29 พ.ค. 69 |
## สรุปรายงานการประชุม (Discussion Summary)
@@ -46,14 +46,14 @@
| ลำดับ | ประเด็น | รายละเอียด / มติที่ได้ | ผู้รับผิดชอบ | สถานะ |
| :---: | --- | --- | :---: | :---: |
| 1 | บัญชีและการเงิน | พัฒนาผังบัญชี GL สมุดรายวัน รายงานบัญชี ใบวางบิลและใบเสร็จครบตามความต้องการ | ThS, NoC | เสร็จสิ้น |
| 2 | คำขอเปลี่ยนแปลง CH-001 | เปลี่ยนคำเรียกตำแหน่งจัดเก็บจาก Rack เป็น Bin ให้ตรงกับคำที่พนักงานคลังใช้จริง ประเมินผลกระทบระดับ Medium ไม่กระทบกำหนดส่งมอบ | SeV, ApS, NoC | อนุมัติ |
| 2 | คำเรียกตำแหน่งจัดเก็บ | ที่ประชุมมีมติให้ใช้คำว่า Bin แทน Rack ทั้งระบบให้ตรงกับคำที่พนักงานคลังใช้จริง เป็นการปรับคำเรียกบนหน้าจอ ไม่เพิ่มหรือลดฟังก์ชันและไม่กระทบ Man-day จึงไม่ถือเป็นคำขอเปลี่ยนแปลง | SeV, ApS, NoC | มติที่ประชุม |
| 3 | ความปลอดภัยและโควตารายการ | เพิ่มการควบคุมสิทธิ์แอปพลิเคชันและโควตารายการต่อบริษัท | ThS | ดำเนินการ |
## งานที่ต้องติดตาม (Action Item)
| ลำดับ | งาน | ผู้รับผิดชอบ | วันครบกำหนด | สถานะ |
| :---: | --- | :---: | :---: | :---: |
| 1 | ดำเนินการเปลี่ยนคำเรียกตามคำขอ CH-001 | ThS | 27 พฤษภาคม 2569 | Scheduled |
| 1 | ปรับคำเรียก Rack เป็น Bin ตามมติที่ประชุม | ThS | 27 พฤษภาคม 2569 | Scheduled |
| 2 | ทบทวนความปลอดภัยและวงจรเอกสารก่อนตั้ง Baseline (Task 3.9) | ThS, PaNg | 28 พฤษภาคม 2569 | Scheduled |
| 3 | บันทึกการแก้ไข ISS-010 ถึง ISS-015 ใน Correction Register | YaB | 25 พฤษภาคม 2569 | Scheduled |
@@ -9,7 +9,7 @@
| Task ID / Task Name | 4.4 System Test & UAT |
| Work Period of Task | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| Meeting Date | 14 สิงหาคม 2569 | Time | 09:00 – 11:00 น. |
| สิ่งแนบ | Test Report, Validation Results, Change Report CH-002 |
| สิ่งแนบ | Test Report, Validation Results |
| Location | ห้องประชุม บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) , คุณนพพงษ์ เจริญสุข (System Analyst) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
@@ -30,7 +30,7 @@
| หมวดงาน | สถานะ | ความคืบหน้า (%) | รายละเอียด |
| --- | :---: | ---: | --- |
| Phase 4: Verification & Validation | เสร็จสมบูรณ์ | 100 | ทดสอบ 45 Test Case และ UAT 12 สถานการณ์ ผ่านทั้งหมด |
| Phase 4: Verification & Validation | เสร็จสมบูรณ์ | 100 | ทดสอบ 45 Test Case และ UAT ครบ 14 หมวดความต้องการ (80 รายการ) ผ่านทั้งหมด |
| Phase 5: Project Close | กำลังดำเนินการ | 60 | อยู่ระหว่างตรวจสอบ Work Products และเตรียมชุดส่งมอบ |
| รวมความคืบหน้าทั้งโครงการ | ตามแผน | 92 | เตรียมตรวจรับและปิดโครงการ |
@@ -39,8 +39,8 @@
| ลำดับ | หัวข้อการประชุม | วัตถุประสงค์ |
| :---: | --- | --- |
| 1 | สรุปผลการทดสอบระบบ 45 Test Case | ยืนยันผลการทดสอบและข้อบกพร่องคงค้าง |
| 2 | สรุปผลการทดสอบการยอมรับ (UAT) 12 สถานการณ์ | ยืนยันความพร้อมใช้งานจริง |
| 3 | พิจารณาคำขอเปลี่ยนแปลง CH-002 (ข้อมูลสาธิต) | ประเมินผลกระทบและอนุมัติ |
| 2 | สรุปผลการทดสอบการยอมรับ (UAT) ตาม Customer Requirements CR01–CR14 | ยืนยันความพร้อมใช้งานจริง |
| 3 | ข้อมูลสาธิตสำหรับการตรวจรับ (Task 4.7) | ยืนยันความพร้อมของข้อมูลตั้งต้น |
| 4 | แผนงานปิดโครงการ | ยืนยันงานที่เหลือถึง 24 ส.ค. 69 |
## สรุปรายงานการประชุม (Discussion Summary)
@@ -48,8 +48,8 @@
| ลำดับ | ประเด็น | รายละเอียด / มติที่ได้ | ผู้รับผิดชอบ | สถานะ |
| :---: | --- | --- | :---: | :---: |
| 1 | ผลการทดสอบระบบ | ทดสอบ 45 Test Case บน Internal Testing Server ผ่านทั้งหมด ไม่พบข้อบกพร่องคงค้าง | PaNg | ผ่าน |
| 2 | ผลการทดสอบการยอมรับ | ตัวแทนลูกค้าทดสอบ 12 สถานการณ์บนสภาพแวดล้อมใช้งานจริง ผ่านทั้งหมด | SeV | ผ่าน |
| 3 | คำขอเปลี่ยนแปลง CH-002 | เพิ่มชุดข้อมูลสาธิตเพื่อใช้ตรวจรับรายงานและขั้นตอนการทำงาน ประเมินผลกระทบระดับ Medium | ApS, SeV | อนุมัติ |
| 2 | ผลการทดสอบการยอมรับ | ตัวแทนลูกค้าทดสอบการยอมรับครบ 14 หมวดความต้องการ (80 รายการ) บนสภาพแวดล้อมใช้งานจริง ผ่านทั้งหมด | SeV | ผ่าน |
| 3 | ข้อมูลสาธิต | จัดเตรียมข้อมูลสาธิตสำหรับการตรวจรับรายงานและขั้นตอนการทำงานเสร็จแล้ว เป็นงานเตรียมการส่งมอบตาม Task 4.7 ไม่เปลี่ยนแปลงขอบเขตหรือสิ่งส่งมอบ | ApS, SeV | เสร็จสิ้น |
| 4 | งานที่เหลือ | ตรวจสอบ Work Products รอบสุดท้าย เตรียมชุดติดตั้ง ตรวจรับ อบรม และปิดโครงการ | ApS, YaB | ดำเนินการ |
## งานที่ต้องติดตาม (Action Item)
@@ -57,7 +57,7 @@
| ลำดับ | งาน | ผู้รับผิดชอบ | วันครบกำหนด | สถานะ |
| :---: | --- | :---: | :---: | :---: |
| 1 | ตรวจสอบ Work Products รอบที่ 4 และจัดทำ List of Evidence | YaB, ApS | 17 สิงหาคม 2569 | Scheduled |
| 2 | จัดทำชุดติดตั้ง Docker Compose และปรับแบรนด์ (CH-003) | ThS | 17 สิงหาคม 2569 | Scheduled |
| 2 | จัดทำชุดติดตั้ง Docker Compose (CR10:002) และปรับแบรนด์ (Task 4.7) | ThS | 17 สิงหาคม 2569 | Scheduled |
| 3 | นัดตรวจรับส่งมอบระบบกับ Project Sponsor | ApS | 17 สิงหาคม 2569 | Scheduled |
## งานประชุมครั้งถัดไป (Next Meeting)
@@ -9,7 +9,7 @@
| Task ID / Task Name | 5.3 Acceptance & Project Closure |
| Work Period of Task | 17 สิงหาคม 2569 – 24 สิงหาคม 2569 |
| Meeting Date | 17 สิงหาคม 2569 | Time | 09:00 – 11:00 น. |
| สิ่งแนบ | Acceptance Report, List of Evidence, Verification Results, Change Report CH-003 |
| สิ่งแนบ | Acceptance Report, List of Evidence, Verification Results |
| Location | ห้องประชุม บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) , คุณนพพงษ์ เจริญสุข (System Analyst) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
@@ -41,7 +41,7 @@
| :---: | --- | --- |
| 1 | นำเสนอผลการดำเนินโครงการและสิ่งส่งมอบ | สรุปผลงานทั้งหมดเทียบกับแผนและผลลัพธ์จริง |
| 2 | ตรวจสอบความครบถ้วนของเอกสารและหลักฐาน | ยืนยันเอกสารครบตามมาตรฐาน ISO/IEC 29110 |
| 3 | พิจารณาคำขอเปลี่ยนแปลง CH-003 | ประเมินผลกระทบและอนุมัติ |
| 3 | ชุดติดตั้งและอัตลักษณ์องค์กร (Task 4.7) | ยืนยันความพร้อมของชุดส่งมอบ |
| 4 | พิจารณาตรวจรับส่งมอบระบบ | ลงมติผลการตรวจรับ |
## สรุปรายงานการประชุม (Discussion Summary)
@@ -50,7 +50,7 @@
| :---: | --- | --- | :---: | :---: |
| 1 | ผลการดำเนินโครงการ | พัฒนาระบบครบตามขอบเขต 11 ระบบงาน ทดสอบและ UAT ผ่านทั้งหมด ไม่มีข้อบกพร่องระดับวิกฤตคงค้าง | ApS, SeV | ผ่านการรับรอง |
| 2 | ความครบถ้วนของเอกสาร | ตรวจสอบ Work Products รอบที่ 4 ครบทุกรายการ ผลผ่านทั้งหมด และจัดทำ List of Evidence เรียบร้อย | YaB, PaNg | สมบูรณ์ |
| 3 | คำขอเปลี่ยนแปลง CH-003 | ปรับอัตลักษณ์องค์กรและเพิ่มชุดติดตั้ง Docker Compose ประเมินผลกระทบระดับ Medium | SeV, ApS | อนุมัติ |
| 3 | ชุดติดตั้งและอัตลักษณ์องค์กร | จัดทำชุดติดตั้ง Docker Compose ตามความต้องการ CR10:002 และปรับอัตลักษณ์องค์กรในหน้าจอและเอกสารเสร็จแล้ว เป็นงานเตรียมการส่งมอบตาม Task 4.7 ไม่เปลี่ยนแปลงขอบเขตหรือสิ่งส่งมอบ | SeV, ApS | เสร็จสิ้น |
| 4 | ผลการตรวจรับ | Project Sponsor ตรวจรับสิ่งส่งมอบทั้งหมด ผลการตรวจรับ Accepted | SeV | ตรวจรับแล้ว |
## งานที่ต้องติดตาม (Action Item)
@@ -20,7 +20,7 @@
| **เอกสารส่งมอบครั้งที่ 2 (พัฒนาและทดสอบ)** | | |
| WP 3.0 | เอกสาร 200-WMS-26-001-00 Software Requirements Specification | 1.0 |
| WP 4.0 | เอกสาร 200-WMS-26-001-00 Software Design | 1.0 |
| WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report (CH-001–CH-003) | 1.0 |
| WP 5.0 | เอกสาร 200-WMS-26-001-00 Change Report | 1.0 |
| WP 6.0 | เอกสาร 200-WMS-26-001-00 Test Case and Test Procedures | 1.0 |
| WP 7.0 | เอกสาร 200-WMS-26-001-00 Validation Results | 1.0 |
| WP 8.0 | เอกสาร 200-WMS-26-001-00 Software User Document | 1.0 |
@@ -55,7 +55,7 @@
## การเชื่อมโยงกับการเปลี่ยนแปลง
การเปลี่ยนแปลง Configuration Item ต้องผ่าน Change Report (CH-001–CH-003) และการแก้ไขข้อบกพร่องต้องบันทึกใน Correction Register (ISS-001–ISS-028) โดยทุกรายการเชื่อมโยงกับ Commit ที่ตรวจสอบได้ใน Repository
การเปลี่ยนแปลง Configuration Item ต้องพิจารณาตามเกณฑ์ใน Change Report และการแก้ไขข้อบกพร่องต้องบันทึกใน Correction Register (ISS-001–ISS-028) โดยทุกรายการเชื่อมโยงกับ Commit ที่ตรวจสอบได้ใน Repository
## ผู้จัดทำเอกสาร (Secretary)
@@ -12,9 +12,17 @@
## HIGH LEVEL DESIGN
### High Level Architecture Diagram
ภาพรวมสถาปัตยกรรมของระบบ แบ่งเป็นผู้ใช้งาน ชั้น Client, Web, Data, Service และบริการภายนอก พร้อมช่องทางการเชื่อมต่อระหว่างกัน ทุกคำขอจากหน้าจอผ่านการตรวจสอบของ db_auth ก่อนถึงตรรกะธุรกิจ
![รูปที่ 1 High Level Architecture Diagram — โครงสร้างระบบแบ่งตามชั้นการทำงาน](figures/hld-architecture.png)
### Use Case Diagram
ผู้ใช้งานของระบบและกลุ่มการใช้งานหลัก
ผู้ใช้งานของระบบและกลุ่มการใช้งานหลัก บทบาทที่สูงกว่าได้รับสิทธิ์การใช้งานของบทบาทที่ต่ำกว่าทั้งหมด (Viewer → Staff → Admin → Owner)
![รูปที่ 2 Use Case Diagram — ผู้ใช้งานและกลุ่มการใช้งานหลัก](figures/hld-use-case.png)
| Actor | คำอธิบาย | การใช้งานหลัก |
| --- | --- | --- |
@@ -27,6 +35,10 @@
### Component Diagram
โมดูลของระบบ (Software Unit กลุ่ม UN01–UN13) และความสัมพันธ์การเรียกใช้ระหว่างโมดูล
![รูปที่ 3 Component Diagram — โมดูลของระบบและความสัมพันธ์](figures/hld-component.png)
โครงสร้างส่วนประกอบของระบบแบ่งตามชั้นการทำงาน
| ชั้น (Layer) | ส่วนประกอบ | อ้างอิง SR |
@@ -39,6 +51,10 @@
### Deployment Diagram
การติดตั้งบนสภาพแวดล้อมใช้งานจริงด้วย Docker Compose และทางเลือกการติดตั้งแบบ Manual
![รูปที่ 4 Deployment Diagram — การติดตั้งบนสภาพแวดล้อมใช้งานจริง](figures/hld-deployment.png)
การติดตั้งระบบแบ่งเป็น 4 ชั้นบริการ
| ชั้นการติดตั้ง (Tier) | ส่วนประกอบ | อ้างอิง SR |
@@ -50,7 +66,7 @@
### User Interface Design
ผังหน้าจอหลักของระบบแบ่งตามโมดูลการใช้งาน
ผังหน้าจอหลักของระบบแบ่งตามโมดูลการใช้งาน ทุกหน้าจอใช้โครงร่างเดียวกัน ได้แก่ เมนูด้านซ้ายที่แสดงตามสิทธิ์ของผู้ใช้ แถบด้านบนสำหรับเลือกบริษัทและบัญชีผู้ใช้ และพื้นที่ทำงานด้านขวา
| กลุ่มหน้าจอ | หน้าจอ |
| --- | --- |
@@ -65,6 +81,22 @@
| Reports | รายงานสต๊อก / ความเคลื่อนไหว / ความจุคลัง / สินค้าใกล้หมด / สินค้าหมดอายุ / รายงานการเงิน |
| Settings | ข้อมูลบริษัท / SMTP / ผู้ใช้งานและสิทธิ์ / การตั้งค่าระบบ |
### Mockup Wireframe
Wireframe แสดงโครงร่างหน้าจอหลักที่ใช้เป็นแม่แบบในการพัฒนา หน้าจอเอกสารขาย จัดซื้อ และการเงินใช้รูปแบบหน้ารายการ (รูปที่ 7) และหน้าบันทึก (รูปที่ 8) เดียวกัน
![รูปที่ 5 Wireframe หน้าจอเข้าสู่ระบบ](figures/wf-login.png)
![รูปที่ 6 Wireframe หน้าจอแดชบอร์ด](figures/wf-dashboard.png)
![รูปที่ 7 Wireframe หน้ารายการเอกสาร (ตัวอย่างใบสั่งขาย) — ใช้รูปแบบเดียวกันทุกเอกสาร](figures/wf-list.png)
![รูปที่ 8 Wireframe หน้าบันทึกเอกสาร (ตัวอย่างใบสั่งขาย) — ใช้กับเอกสารขาย จัดซื้อ และการเงิน](figures/wf-document.png)
![รูปที่ 9 Wireframe หน้าจอรับสินค้าเข้า](figures/wf-stock-in.png)
![รูปที่ 10 Wireframe หน้าจอรายงาน](figures/wf-report.png)
## Software Baseline
หัวข้อนี้ระบุสิ่งที่ถูกกำหนดเป็น Baseline ของซอฟต์แวร์ วันที่กำหนด และผู้อนุมัติ เพื่อให้ตรวจสอบเส้นทาง Baseline → Configuration → Change ได้ในเอกสารชุดเดียวกัน
@@ -84,7 +116,7 @@
| ผู้อนุมัติ | คุณเสรี วิริยะสกุลธรณ์ (Project Sponsor) พร้อมการตรวจรับเมื่อ 17 สิงหาคม 2569 |
| เอกสารควบคุมที่เกี่ยวข้อง | Software Configuration (WP 8) ระบุรายการ Configuration Item และการควบคุมเวอร์ชัน |
| การสอบกลับ | Traceability Record (WP 13) เชื่อมโยงความต้องการกับ Software Unit และ Test Case บน Baseline นี้ |
| การเปลี่ยนแปลง Baseline | ต้องผ่าน Change Report (CH-001–CH-003) และบันทึกผลใน Correction Register เมื่อเป็นการแก้ไขข้อบกพร่อง |
| การเปลี่ยนแปลง Baseline | ต้องพิจารณาตามเกณฑ์ใน Change Report และบันทึกผลใน Correction Register เมื่อเป็นการแก้ไขข้อบกพร่อง |
## Software Unit
Binary file not shown.

After

Width:  |  Height:  |  Size: 229 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

@@ -16,102 +16,104 @@
## Traceability Matrix
| CR ID | CR Topic | SRS ID | SRS Topic | Unit ID | Unit Topic | Test Case ID |
| --- | --- | --- | --- | --- | --- | --- |
| CR01: Feature & Functional Characteristics | | | | | | |
| CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | SR03:001, SR08:001 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / ฐานข้อมูล wms: user, company_list, company_map_user, company_setting, company_smtp, company_usage, whitelist | UN01.001 | Identity – Register & Onboarding | TC-UN01.001 |
| CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | SR03:001, SR04:001, SR07:005 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น / RBAC (Owner/Admin/Staff/Viewer) ต้องบังคับใช้ที่ฝั่งเซิร์ฟเวอร์ ไม่ใช่เพียงการซ่อนเมนู | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | SR03:001, SR07:003 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / ระบบต้องอนุญาต Session ที่ใช้งานอยู่เพียงหนึ่งต่อบัญชี (บล็อก Concurrent Login) | UN01.003 | Identity – Password Recovery / OTP / Session | TC-UN01.003 |
| CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | SR03:001, SR03:002 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / โมดูลตั้งค่าบริษัท: ข้อมูลบริษัท, SMTP, การตั้งค่าระบบ (app/setting/, CompanyProfileManager, CompanySettingManager, SmtpManager) | UN01.004, UN02.001, UN02.002 | Identity – User & App-Access Administration / Company – Profile & System Settings / Company – SMTP & Mail Dispatch | TC-UN01.004 |
| CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | SR03:003, SR08:002 | โมดูลข้อมูลหลัก: คลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ผู้ติดต่อ (app/inventory/, app/contact/, WarehouseManager, ProductManager, ContactManager) / ตารางข้อมูลหลัก (wms2): md_warehouse, md_storage, md_bin, md_product, md_product_category, md_contact, md_contact_type, md_account, md_account_formula, md_account_formula_item, md_department, md_barcode, md_sku_barcode_label, md_lot, md_lock_operation | UN03.001, UN03.002, UN03.003 | Master – Warehouse / Storage / Bin / Master – Product & Category / Master – Contact | TC-UN03.001 |
| CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | SR03:003 | โมดูลข้อมูลหลัก: คลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ผู้ติดต่อ (app/inventory/, app/contact/, WarehouseManager, ProductManager, ContactManager) | UN03.004 | Master – Warehouse Layer Configuration | TC-UN03.004 |
| CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | SR03:004, SR08:003 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) / ตารางรายการ (td_*): td_stock, td_order/_item, td_quotation/_item, td_invoice/_item, td_return/_item, td_purchase_request/_item, td_purchase_order/_item, td_supplier_return/_item, td_receipt/_item, td_receipt_billing/_item, td_payment/_item, td_payment_billing/_item, td_gl/td_gl_item, td_batch_action, td_bin_log | UN04.001 | ICS – Stock-in | TC-UN04.001 |
| CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | SR03:004, SR09:003 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) / การเปลี่ยนแปลงที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction และป้องกันยอดติดลบ/ซ้ำ | UN04.002 | ICS – Stock-out | TC-UN04.002 |
| CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.003 | ICS – Stock Transfer | TC-UN04.003 |
| CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | SR03:004, SR08:002 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) / ตารางข้อมูลหลัก (wms2): md_warehouse, md_storage, md_bin, md_product, md_product_category, md_contact, md_contact_type, md_account, md_account_formula, md_account_formula_item, md_department, md_barcode, md_sku_barcode_label, md_lot, md_lock_operation | UN04.004 | ICS – Lot / Serial / Expiry | TC-UN04.004 |
| CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | SR03:009 | โมดูลรายงานและแดชบอร์ด: รายงานสต๊อก, รายงานการเงิน, แดชบอร์ด (app/reports/, app/dashboard/, app/ac_dashboard/, ReportManager, EtlStockManager) | UN09.002 | Reports – Stock Reports | TC-UN09.002 |
| CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.005 | ICS – Barcode Label & Scan | TC-UN04.005 |
| CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | SR03:005, SR04:002 | โมดูลขาย: ใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน/ใบลดหนี้ (app/order/, app/revenue/, QuotationManager, OrderManager, InvoiceManager, ReturnManager) / โมดูลขาย จัดซื้อ และการเงิน ต้องบันทึกผลกระทบต่อสต๊อกและ GL ผ่านโมดูลคลังสินค้าและบัญชี ไม่ทำซ้ำตรรกะ | UN05.001, UN05.002, UN05.003, UN05.004 | Sales – Quotation / Sales – Sales Order / Sales – Invoice / Sales – Return / Credit Note | TC-UN05.001 |
| CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | SR03:006, SR04:002 | โมดูลจัดซื้อ: ใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ, ใบคืนสินค้าผู้ขาย (app/po/, PurchaseRequestManager, PurchaseOrderManager, SupplierReturnManager) / โมดูลขาย จัดซื้อ และการเงิน ต้องบันทึกผลกระทบต่อสต๊อกและ GL ผ่านโมดูลคลังสินค้าและบัญชี ไม่ทำซ้ำตรรกะ | UN06.001, UN06.002, UN06.003, UN06.004 | Purchasing – Purchase Request / Purchasing – Purchase Order / Purchasing – Purchase Invoice / Purchasing – Supplier Return | TC-UN06.001 |
| CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | SR03:007, SR04:002 | โมดูลการเงิน: ใบวางบิลรับ, ใบเสร็จ, ใบวางบิลจ่าย, ใบสำคัญจ่าย (app/finance/, ReceiptBillingManager, ReceiptManager, PaymentBillingManager, PaymentManager) / โมดูลขาย จัดซื้อ และการเงิน ต้องบันทึกผลกระทบต่อสต๊อกและ GL ผ่านโมดูลคลังสินค้าและบัญชี ไม่ทำซ้ำตรรกะ | UN07.001, UN07.002 | Finance – Receipt Billing & Receipt / Finance – Payment Billing & Payment | TC-UN07.001 |
| CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | SR03:008 | โมดูลบัญชี: ผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน, บัญชีแยกประเภท (app/accounting/, app/journal/, PostingManager) | UN08.001, UN08.002 | Accounting – Chart of Accounts / Departments / Formulas / Accounting – Journal & GL Posting | TC-UN08.001 |
| CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | SR03:009 | โมดูลรายงานและแดชบอร์ด: รายงานสต๊อก, รายงานการเงิน, แดชบอร์ด (app/reports/, app/dashboard/, app/ac_dashboard/, ReportManager, EtlStockManager) | UN09.003 | Reports – Financial Reports | TC-UN09.003 |
| CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | SR03:010, SR04:005, SR08:004 | โมดูลควบคุมเอกสาร: ออกเลขที่เอกสาร, วงจรชีวิต/สถานะ, ประวัติรายการ (DocumentNumberManager, BatchActionManager) / ทุกโมดูลที่สร้างเอกสารธุรกิจต้องเรียกใช้โมดูลควบคุมเอกสารเพื่อออกเลขที่เอกสาร / ตารางสรุปยอดและควบคุมเอกสาร: etl_stock_summary, etl_gl_summary, document_number_sequences, document_types, schema_migrations | UN10.001, UN10.002 | Document – Numbering / Document – Lifecycle & Status | TC-UN10.001 |
| CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.006 | ICS – File Attachment | TC-UN04.006 |
| CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | SR03:009 | โมดูลรายงานและแดชบอร์ด: รายงานสต๊อก, รายงานการเงิน, แดชบอร์ด (app/reports/, app/dashboard/, app/ac_dashboard/, ReportManager, EtlStockManager) | UN09.004 | Reports – Filter / Print / Export | TC-UN09.004 |
| CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | SR03:011, SR04:004, SR06:005 | บริการแจ้งเตือนและงานตามกำหนดเวลา: Socket.IO และ Scheduler (nodejs/server.js, nodejs/scheduler.js, app/cron/) / บริการ Node.js ต้องรับเหตุการณ์จากแอปพลิเคชัน PHP ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret เท่านั้น / Browser ต้องเชื่อมต่อ Socket.IO Endpoint (NODE_PUBLIC_URL) เพื่อรับการแจ้งเตือน | UN11.001 | Node – Socket.IO Notification Server | TC-UN11.001 |
| CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | SR03:011, SR05:002, SR08:004 | บริการแจ้งเตือนและงานตามกำหนดเวลา: Socket.IO และ Scheduler (nodejs/server.js, nodejs/scheduler.js, app/cron/) / ยอดสรุปสต๊อก/GL/แดชบอร์ดต้องคำนวณล่วงหน้าตามกำหนดเวลา (etl_stock_summary, etl_gl_summary) / ตารางสรุปยอดและควบคุมเอกสาร: etl_stock_summary, etl_gl_summary, document_number_sequences, document_types, schema_migrations | UN11.002 | Node – Scheduler (ETL & Alerts) | TC-UN11.002 |
| CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | SR03:010, SR09:001 | โมดูลควบคุมเอกสาร: ออกเลขที่เอกสาร, วงจรชีวิต/สถานะ, ประวัติรายการ (DocumentNumberManager, BatchActionManager) / การลบ ยกเลิก หรือ Void เอกสารควบคุมต้องมี Confirm Dialog | UN10.003 | Document – Audit Fields & History | TC-UN10.003 |
| CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | SR04:001, SR04:003, SR07:002 | ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น / โมดูลรายงานต้องอ่านข้อมูลภายใต้ขอบเขตบริษัท/คลังที่โมดูลข้อมูลหลักและคลังสินค้าบังคับใช้ / การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | UN12.001 | Security – Tenant Scope Guard | TC-UN12.001 |
| CR02: Performance Considerations | | | | | | |
| CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | SR05:001 | งานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ต้องเสร็จภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | UN09.001 | Reports – Dashboard & Aggregates | TC-UN09.001 |
| CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | SR05:002 | ยอดสรุปสต๊อก/GL/แดชบอร์ดต้องคำนวณล่วงหน้าตามกำหนดเวลา (etl_stock_summary, etl_gl_summary) | UN09.001, UN11.002 | Reports – Dashboard & Aggregates / Node – Scheduler (ETL & Alerts) | TC-UN09.001 |
| CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | SR05:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันตามที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | UN09.001 | Reports – Dashboard & Aggregates | TC-UN09.001 |
| CR03: Interface Considerations | | | | | | |
| CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | SR06:001 | แอปพลิเคชัน PHP ต้องเชื่อมต่อฐานข้อมูล MariaDB 2 ฐาน: wms (ผู้ใช้/บริษัท) และ wms2 (คลัง/บัญชี) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | SR06:002 | ระบบต้องใช้งานได้บน Chrome, Edge และ Firefox รุ่นปัจจุบัน | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | SR06:004, SR04:004 | แอปพลิเคชัน PHP ต้องส่งเหตุการณ์ไป Node.js ผ่าน HTTP Endpoint ภายใน (NODE_EMIT_URL + NODE_EMIT_SECRET) และส่งอีเมลผ่าน SMTP ต่อบริษัท / บริการ Node.js ต้องรับเหตุการณ์จากแอปพลิเคชัน PHP ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret เท่านั้น | UN11.001 | Node – Socket.IO Notification Server | TC-UN11.001 |
| CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | SR06:005 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint (NODE_PUBLIC_URL) เพื่อรับการแจ้งเตือน | UN11.001 | Node – Socket.IO Notification Server | TC-UN11.001 |
| CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | SR06:004, SR03:002 | แอปพลิเคชัน PHP ต้องส่งเหตุการณ์ไป Node.js ผ่าน HTTP Endpoint ภายใน (NODE_EMIT_URL + NODE_EMIT_SECRET) และส่งอีเมลผ่าน SMTP ต่อบริษัท / โมดูลตั้งค่าบริษัท: ข้อมูลบริษัท, SMTP, การตั้งค่าระบบ (app/setting/, CompanyProfileManager, CompanySettingManager, SmtpManager) | UN02.002 | Company – SMTP & Mail Dispatch | TC-UN02.002 |
| CR04: Required System Characteristics | | | | | | |
| CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | SR02:001 | ระบบต้องเป็น Web-based Application แบบหลายหน้า (Multi-page PHP) | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | SR08:001, SR08:002, SR08:003 | ฐานข้อมูล wms: user, company_list, company_map_user, company_setting, company_smtp, company_usage, whitelist / ตารางข้อมูลหลัก (wms2): md_warehouse, md_storage, md_bin, md_product, md_product_category, md_contact, md_contact_type, md_account, md_account_formula, md_account_formula_item, md_department, md_barcode, md_sku_barcode_label, md_lot, md_lock_operation / ตารางรายการ (td_*): td_stock, td_order/_item, td_quotation/_item, td_invoice/_item, td_return/_item, td_purchase_request/_item, td_purchase_order/_item, td_supplier_return/_item, td_receipt/_item, td_receipt_billing/_item, td_payment/_item, td_payment_billing/_item, td_gl/td_gl_item, td_batch_action, td_bin_log | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | SR04:001 | ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | SR01:002 | ระบบต้องใช้เทคโนโลยี PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js (Socket.IO, pm2) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR05: Human Engineering Considerations | | | | | | |
| CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | SR02:002 | ส่วนติดต่อผู้ใช้ต้องเป็น Responsive Design รองรับ Desktop / Tablet / Mobile | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | SR04:001 | ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | SR09:002 | ข้อผิดพลาดต้องแสดงข้อความที่ผู้ใช้เข้าใจได้แทน Fatal Error | UN10.002 | Document – Lifecycle & Status | TC-UN10.002 |
| CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | SR09:001 | การลบ ยกเลิก หรือ Void เอกสารควบคุมต้องมี Confirm Dialog | UN10.002 | Document – Lifecycle & Status | TC-UN10.002 |
| CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.005 | ICS – Barcode Label & Scan | TC-UN04.005 |
| CR06: Security Considerations | | | | | | |
| CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | SR07:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องผ่าน HTTPS/TLS | UN12.004 | Security – TLS & Secret Configuration | TC-UN12.004 |
| CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | SR01:005 | ค่าตั้งค่าและความลับ (app/config.php, .env) ต้องถูกยกเว้นจาก Source Control และสร้างขึ้นตอนติดตั้ง | UN13.003, UN12.004 | Deploy – .env Generator / Security – TLS & Secret Configuration | TC-UN13.003 |
| CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | SR07:002 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | UN12.002 | Security – Server-side Validation | TC-UN12.002 |
| CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | SR07:005 | RBAC (Owner/Admin/Staff/Viewer) ต้องบังคับใช้ที่ฝั่งเซิร์ฟเวอร์ ไม่ใช่เพียงการซ่อนเมนู | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | SR07:004 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting ทั้งด้านรับข้อมูลและแสดงผล | UN12.002 | Security – Server-side Validation | TC-UN12.002 |
| CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | SR07:003 | ระบบต้องอนุญาต Session ที่ใช้งานอยู่เพียงหนึ่งต่อบัญชี (บล็อก Concurrent Login) | UN01.003 | Identity – Password Recovery / OTP / Session | TC-UN01.003 |
| CR07: Environmental Considerations | | | | | | |
| CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.001, UN13.002 | Deploy – setup.php Schema Installer / Deploy – Docker Compose Stack | TC-UN13.001 |
| CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | SR01:006 | แอปพลิเคชันและงานตามกำหนดเวลาต้องใช้เขตเวลา Asia/Bangkok | UN11.002 | Node – Scheduler (ETL & Alerts) | TC-UN11.002 |
| CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | SR06:003, SR02:002 | ระบบต้องรองรับ Mobile/Tablet Browser ผ่าน Responsive UI / ส่วนติดต่อผู้ใช้ต้องเป็น Responsive Design รองรับ Desktop / Tablet / Mobile | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR08: Operational Considerations | | | | | | |
| CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 |
| CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 |
| CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | SR05:004 | ระบบต้องมี Health Check ทุก 5 นาที และแจ้งเตือนผู้ดูแลเมื่อล้มเหลวติดต่อกัน 2 ครั้ง | UN11.002 | Node – Scheduler (ETL & Alerts) | TC-UN11.002 |
| CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | SR04:003 | โมดูลรายงานต้องอ่านข้อมูลภายใต้ขอบเขตบริษัท/คลังที่โมดูลข้อมูลหลักและคลังสินค้าบังคับใช้ | UN12.001 | Security – Tenant Scope Guard | TC-UN12.001 |
| CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | SR05:002 | ยอดสรุปสต๊อก/GL/แดชบอร์ดต้องคำนวณล่วงหน้าตามกำหนดเวลา (etl_stock_summary, etl_gl_summary) | UN11.002 | Node – Scheduler (ETL & Alerts) | TC-UN11.002 |
| CR09: Maintenance Considerations | | | | | | |
| CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | SR02:003, SR02:004 | ตรรกะทางธุรกิจต้องจัดเป็น Manager/Service Classes ที่เรียกใช้จาก Page Controller แยกจากส่วนแสดงผล / การเข้าถึงข้อมูลต้องผ่าน Manager Classes ไม่กระจาย SQL ในหน้าเพจ | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | SR01:005 | ค่าตั้งค่าและความลับ (app/config.php, .env) ต้องถูกยกเว้นจาก Source Control และสร้างขึ้นตอนติดตั้ง | UN13.003 | Deploy – .env Generator | TC-UN13.003 |
| CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 |
| CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | SR08:005, SR08:004 | ตารางทั้งหมดต้องสร้างซ้ำได้ในสภาพแวดล้อมใหม่ผ่าน setup.php โดยไม่ต้องแก้ Schema ด้วยมือ / ตารางสรุปยอดและควบคุมเอกสาร: etl_stock_summary, etl_gl_summary, document_number_sequences, document_types, schema_migrations | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR10: Installation Considerations | | | | | | |
| CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | SR01:003, SR08:005 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) / ตารางทั้งหมดต้องสร้างซ้ำได้ในสภาพแวดล้อมใหม่ผ่าน setup.php โดยไม่ต้องแก้ Schema ด้วยมือ | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | SR02:005 | ระบบต้องติดตั้งเป็น Container Stack ผ่าน Docker Compose ได้ นอกเหนือจากการติดตั้งแบบ Manual | UN13.002 | Deploy – Docker Compose Stack | TC-UN13.002 |
| CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | SR01:005 | ค่าตั้งค่าและความลับ (app/config.php, .env) ต้องถูกยกเว้นจาก Source Control และสร้างขึ้นตอนติดตั้ง | UN13.003 | Deploy – .env Generator | TC-UN13.003 |
| CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR11: Support Considerations | | | | | | |
| CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 |
| CR12: Design Constraints | | | | | | |
| CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | SR01:002 | ระบบต้องใช้เทคโนโลยี PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js (Socket.IO, pm2) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | SR01:004 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt (PASSWORD_BCRYPT) และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | UN01.003 | Identity – Password Recovery / OTP / Session | TC-UN01.003 |
| CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 |
| CR13: Safety and Reliability Considerations | | | | | | |
| CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | SR09:003 | การเปลี่ยนแปลงที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction และป้องกันยอดติดลบ/ซ้ำ | UN08.002 | Accounting – Journal & GL Posting | TC-UN08.002 |
| CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | SR09:003 | การเปลี่ยนแปลงที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction และป้องกันยอดติดลบ/ซ้ำ | UN04.002 | ICS – Stock-out | TC-UN04.002 |
| CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 |
| CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | SR09:002 | ข้อผิดพลาดต้องแสดงข้อความที่ผู้ใช้เข้าใจได้แทน Fatal Error | UN10.002 | Document – Lifecycle & Status | TC-UN10.002 |
| CR14: Quality Expectations | | | | | | |
| CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 |
| CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | SR07:002 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | UN12.001 | Security – Tenant Scope Guard | TC-UN12.001 |
| CR ID | CR Topic | SRS ID | SRS Topic | Unit ID | Unit Topic | Test Case ID | หลักฐานอื่น (Document) |
| --- | --- | --- | --- | --- | --- | --- | --- |
| CR01: Feature & Functional Characteristics | | | | | | | |
| CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | SR03:001, SR08:001 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / ฐานข้อมูล wms: user, company_list, company_map_user, company_setting, company_smtp, company_usage, whitelist | UN01.001 | Identity – Register & Onboarding | TC-UN01.001 | - |
| CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | SR03:001, SR04:001, SR07:005 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น / RBAC (Owner/Admin/Staff/Viewer) ต้องบังคับใช้ที่ฝั่งเซิร์ฟเวอร์ ไม่ใช่เพียงการซ่อนเมนู | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | SR03:001, SR07:003 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / ระบบต้องอนุญาต Session ที่ใช้งานอยู่เพียงหนึ่งต่อบัญชี (บล็อก Concurrent Login) | UN01.003 | Identity – Password Recovery / OTP / Session | TC-UN01.003 | - |
| CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | SR03:001, SR03:002 | โมดูลผู้ใช้งานและสิทธิ์: ลงทะเบียน, Onboarding, เข้าสู่ระบบ, บทบาท Owner/Admin/Staff/Viewer, สิทธิ์แอปพลิเคชัน (app/login/, UserManager, PasswordManager, PasswordResetManager) / โมดูลตั้งค่าบริษัท: ข้อมูลบริษัท, SMTP, การตั้งค่าระบบ (app/setting/, CompanyProfileManager, CompanySettingManager, SmtpManager) | UN01.004, UN02.001, UN02.002 | Identity – User & App-Access Administration / Company – Profile & System Settings / Company – SMTP & Mail Dispatch | TC-UN01.004, TC-UN02.001, TC-UN02.002 | - |
| CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | SR03:003, SR08:002 | โมดูลข้อมูลหลัก: คลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ผู้ติดต่อ (app/inventory/, app/contact/, WarehouseManager, ProductManager, ContactManager) / ตารางข้อมูลหลัก (wms2): md_warehouse, md_storage, md_bin, md_product, md_product_category, md_contact, md_contact_type, md_account, md_account_formula, md_account_formula_item, md_department, md_barcode, md_sku_barcode_label, md_lot, md_lock_operation | UN03.001, UN03.002, UN03.003 | Master – Warehouse / Storage / Bin / Master – Product & Category / Master – Contact | TC-UN03.001, TC-UN03.002, TC-UN03.003 | - |
| CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | SR03:003 | โมดูลข้อมูลหลัก: คลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ผู้ติดต่อ (app/inventory/, app/contact/, WarehouseManager, ProductManager, ContactManager) | UN03.004 | Master – Warehouse Layer Configuration | TC-UN03.004 | - |
| CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | SR03:004, SR08:003 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) / ตารางรายการ (td_*): td_stock, td_order/_item, td_quotation/_item, td_invoice/_item, td_return/_item, td_purchase_request/_item, td_purchase_order/_item, td_supplier_return/_item, td_receipt/_item, td_receipt_billing/_item, td_payment/_item, td_payment_billing/_item, td_gl/td_gl_item, td_batch_action, td_bin_log | UN04.001 | ICS – Stock-in | TC-UN04.001 | - |
| CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | SR03:004, SR09:003 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) / การเปลี่ยนแปลงที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction และป้องกันยอดติดลบ/ซ้ำ | UN04.002 | ICS – Stock-out | TC-UN04.002 | - |
| CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.003 | ICS – Stock Transfer | TC-UN04.003 | - |
| CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | SR03:004, SR08:002 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) / ตารางข้อมูลหลัก (wms2): md_warehouse, md_storage, md_bin, md_product, md_product_category, md_contact, md_contact_type, md_account, md_account_formula, md_account_formula_item, md_department, md_barcode, md_sku_barcode_label, md_lot, md_lock_operation | UN04.004 | ICS – Lot / Serial / Expiry | TC-UN04.004 | - |
| CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | SR03:009 | โมดูลรายงานและแดชบอร์ด: รายงานสต๊อก, รายงานการเงิน, แดชบอร์ด (app/reports/, app/dashboard/, app/ac_dashboard/, ReportManager, EtlStockManager) | UN09.002 | Reports – Stock Reports | TC-UN09.002 | - |
| CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.005 | ICS – Barcode Label & Scan | TC-UN04.005 | - |
| CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | SR03:005, SR04:002 | โมดูลขาย: ใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน/ใบลดหนี้ (app/order/, app/revenue/, QuotationManager, OrderManager, InvoiceManager, ReturnManager) / โมดูลขาย จัดซื้อ และการเงิน ต้องบันทึกผลกระทบต่อสต๊อกและ GL ผ่านโมดูลคลังสินค้าและบัญชี ไม่ทำซ้ำตรรกะ | UN05.001, UN05.002, UN05.003, UN05.004 | Sales – Quotation / Sales – Sales Order / Sales – Invoice / Sales – Return / Credit Note | TC-UN05.001, TC-UN05.002, TC-UN05.003, TC-UN05.004 | - |
| CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | SR03:006, SR04:002 | โมดูลจัดซื้อ: ใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ, ใบคืนสินค้าผู้ขาย (app/po/, PurchaseRequestManager, PurchaseOrderManager, SupplierReturnManager) / โมดูลขาย จัดซื้อ และการเงิน ต้องบันทึกผลกระทบต่อสต๊อกและ GL ผ่านโมดูลคลังสินค้าและบัญชี ไม่ทำซ้ำตรรกะ | UN06.001, UN06.002, UN06.003, UN06.004 | Purchasing – Purchase Request / Purchasing – Purchase Order / Purchasing – Purchase Invoice / Purchasing – Supplier Return | TC-UN06.001, TC-UN06.002, TC-UN06.003, TC-UN06.004 | - |
| CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | SR03:007, SR04:002 | โมดูลการเงิน: ใบวางบิลรับ, ใบเสร็จ, ใบวางบิลจ่าย, ใบสำคัญจ่าย (app/finance/, ReceiptBillingManager, ReceiptManager, PaymentBillingManager, PaymentManager) / โมดูลขาย จัดซื้อ และการเงิน ต้องบันทึกผลกระทบต่อสต๊อกและ GL ผ่านโมดูลคลังสินค้าและบัญชี ไม่ทำซ้ำตรรกะ | UN07.001, UN07.002 | Finance – Receipt Billing & Receipt / Finance – Payment Billing & Payment | TC-UN07.001, TC-UN07.002 | - |
| CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | SR03:008 | โมดูลบัญชี: ผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน, บัญชีแยกประเภท (app/accounting/, app/journal/, PostingManager) | UN08.001, UN08.002 | Accounting – Chart of Accounts / Departments / Formulas / Accounting – Journal & GL Posting | TC-UN08.001, TC-UN08.002 | - |
| CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | SR03:009 | โมดูลรายงานและแดชบอร์ด: รายงานสต๊อก, รายงานการเงิน, แดชบอร์ด (app/reports/, app/dashboard/, app/ac_dashboard/, ReportManager, EtlStockManager) | UN09.003 | Reports – Financial Reports | TC-UN09.003 | - |
| CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | SR03:010, SR04:005, SR08:004 | โมดูลควบคุมเอกสาร: ออกเลขที่เอกสาร, วงจรชีวิต/สถานะ, ประวัติรายการ (DocumentNumberManager, BatchActionManager) / ทุกโมดูลที่สร้างเอกสารธุรกิจต้องเรียกใช้โมดูลควบคุมเอกสารเพื่อออกเลขที่เอกสาร / ตารางสรุปยอดและควบคุมเอกสาร: etl_stock_summary, etl_gl_summary, document_number_sequences, document_types, schema_migrations | UN10.001, UN10.002 | Document – Numbering / Document – Lifecycle & Status | TC-UN10.001, TC-UN10.002 | - |
| CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.006 | ICS – File Attachment | TC-UN04.006 | - |
| CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | SR03:009 | โมดูลรายงานและแดชบอร์ด: รายงานสต๊อก, รายงานการเงิน, แดชบอร์ด (app/reports/, app/dashboard/, app/ac_dashboard/, ReportManager, EtlStockManager) | UN09.004 | Reports – Filter / Print / Export | TC-UN09.004 | - |
| CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | SR03:011, SR04:004, SR06:005 | บริการแจ้งเตือนและงานตามกำหนดเวลา: Socket.IO และ Scheduler (nodejs/server.js, nodejs/scheduler.js, app/cron/) / บริการ Node.js ต้องรับเหตุการณ์จากแอปพลิเคชัน PHP ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret เท่านั้น / Browser ต้องเชื่อมต่อ Socket.IO Endpoint (NODE_PUBLIC_URL) เพื่อรับการแจ้งเตือน | UN11.001 | Node – Socket.IO Notification Server | TC-UN11.001 | - |
| CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | SR03:011, SR05:002, SR08:004 | บริการแจ้งเตือนและงานตามกำหนดเวลา: Socket.IO และ Scheduler (nodejs/server.js, nodejs/scheduler.js, app/cron/) / ยอดสรุปสต๊อก/GL/แดชบอร์ดต้องคำนวณล่วงหน้าตามกำหนดเวลา (etl_stock_summary, etl_gl_summary) / ตารางสรุปยอดและควบคุมเอกสาร: etl_stock_summary, etl_gl_summary, document_number_sequences, document_types, schema_migrations | UN11.002 | Node – Scheduler (ETL & Alerts) | TC-UN11.002 | - |
| CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | SR03:010, SR09:001 | โมดูลควบคุมเอกสาร: ออกเลขที่เอกสาร, วงจรชีวิต/สถานะ, ประวัติรายการ (DocumentNumberManager, BatchActionManager) / การลบ ยกเลิก หรือ Void เอกสารควบคุมต้องมี Confirm Dialog | UN10.003 | Document – Audit Fields & History | TC-UN10.003 | - |
| CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | SR04:001, SR04:003, SR07:002 | ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น / โมดูลรายงานต้องอ่านข้อมูลภายใต้ขอบเขตบริษัท/คลังที่โมดูลข้อมูลหลักและคลังสินค้าบังคับใช้ / การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | UN12.001 | Security – Tenant Scope Guard | TC-UN12.001 | - |
| CR02: Performance Considerations | | | | | | | |
| CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | SR05:001 | งานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ต้องเสร็จภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | UN09.001 | Reports – Dashboard & Aggregates | TC-UN09.001 | - |
| CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | SR05:002 | ยอดสรุปสต๊อก/GL/แดชบอร์ดต้องคำนวณล่วงหน้าตามกำหนดเวลา (etl_stock_summary, etl_gl_summary) | UN09.001, UN11.002 | Reports – Dashboard & Aggregates / Node – Scheduler (ETL & Alerts) | TC-UN09.001, TC-UN11.002 | - |
| CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | SR05:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันตามที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | UN09.001 | Reports – Dashboard & Aggregates | TC-UN09.001 | - |
| CR03: Interface Considerations | | | | | | | |
| CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | SR06:001 | แอปพลิเคชัน PHP ต้องเชื่อมต่อฐานข้อมูล MariaDB 2 ฐาน: wms (ผู้ใช้/บริษัท) และ wms2 (คลัง/บัญชี) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 | - |
| CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | SR06:002 | ระบบต้องใช้งานได้บน Chrome, Edge และ Firefox รุ่นปัจจุบัน | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | SR06:004, SR04:004 | แอปพลิเคชัน PHP ต้องส่งเหตุการณ์ไป Node.js ผ่าน HTTP Endpoint ภายใน (NODE_EMIT_URL + NODE_EMIT_SECRET) และส่งอีเมลผ่าน SMTP ต่อบริษัท / บริการ Node.js ต้องรับเหตุการณ์จากแอปพลิเคชัน PHP ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret เท่านั้น | UN11.001 | Node – Socket.IO Notification Server | TC-UN11.001 | - |
| CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | SR06:005 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint (NODE_PUBLIC_URL) เพื่อรับการแจ้งเตือน | UN11.001 | Node – Socket.IO Notification Server | TC-UN11.001 | - |
| CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | SR06:004, SR03:002 | แอปพลิเคชัน PHP ต้องส่งเหตุการณ์ไป Node.js ผ่าน HTTP Endpoint ภายใน (NODE_EMIT_URL + NODE_EMIT_SECRET) และส่งอีเมลผ่าน SMTP ต่อบริษัท / โมดูลตั้งค่าบริษัท: ข้อมูลบริษัท, SMTP, การตั้งค่าระบบ (app/setting/, CompanyProfileManager, CompanySettingManager, SmtpManager) | UN02.002 | Company – SMTP & Mail Dispatch | TC-UN02.002 | - |
| CR04: Required System Characteristics | | | | | | | |
| CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | SR02:001 | ระบบต้องเป็น Web-based Application แบบหลายหน้า (Multi-page PHP) | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | SR08:001, SR08:002, SR08:003 | ฐานข้อมูล wms: user, company_list, company_map_user, company_setting, company_smtp, company_usage, whitelist / ตารางข้อมูลหลัก (wms2): md_warehouse, md_storage, md_bin, md_product, md_product_category, md_contact, md_contact_type, md_account, md_account_formula, md_account_formula_item, md_department, md_barcode, md_sku_barcode_label, md_lot, md_lock_operation / ตารางรายการ (td_*): td_stock, td_order/_item, td_quotation/_item, td_invoice/_item, td_return/_item, td_purchase_request/_item, td_purchase_order/_item, td_supplier_return/_item, td_receipt/_item, td_receipt_billing/_item, td_payment/_item, td_payment_billing/_item, td_gl/td_gl_item, td_batch_action, td_bin_log | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 | - |
| CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | SR04:001 | ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | SR01:002 | ระบบต้องใช้เทคโนโลยี PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js (Socket.IO, pm2) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 | - |
| CR05: Human Engineering Considerations | | | | | | | |
| CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | SR02:002 | ส่วนติดต่อผู้ใช้ต้องเป็น Responsive Design รองรับ Desktop / Tablet / Mobile | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | SR04:001 | ทุกโมดูลปฏิบัติการต้องเข้าถึงได้ผ่านการยืนยันตัวตนและการตรวจสิทธิ์ของโมดูลผู้ใช้งานเท่านั้น | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | SR09:002 | ข้อผิดพลาดต้องแสดงข้อความที่ผู้ใช้เข้าใจได้แทน Fatal Error | UN10.002 | Document – Lifecycle & Status | TC-UN10.002 | - |
| CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | SR09:001 | การลบ ยกเลิก หรือ Void เอกสารควบคุมต้องมี Confirm Dialog | UN10.002 | Document – Lifecycle & Status | TC-UN10.002 | - |
| CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | SR03:004 | โมดูลควบคุมสินค้าคงคลัง: รับเข้า, จ่ายออก, โอนย้าย, Lot/Serial/Expiry, บาร์โค้ด, แนบไฟล์ (app/ics/, StockManager, StockSourceManager, BarcodeManager, FileUploader) | UN04.005 | ICS – Barcode Label & Scan | TC-UN04.005 | - |
| CR06: Security Considerations | | | | | | | |
| CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | SR07:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องผ่าน HTTPS/TLS | UN12.004 | Security – TLS & Secret Configuration | TC-UN12.004 | - |
| CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | SR01:005 | ค่าตั้งค่าและความลับ (app/config.php, .env) ต้องถูกยกเว้นจาก Source Control และสร้างขึ้นตอนติดตั้ง | UN13.003, UN12.004 | Deploy – .env Generator / Security – TLS & Secret Configuration | TC-UN13.003, TC-UN12.004 | - |
| CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | SR07:002 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | UN12.002 | Security – Server-side Validation | TC-UN12.002 | - |
| CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | SR07:005 | RBAC (Owner/Admin/Staff/Viewer) ต้องบังคับใช้ที่ฝั่งเซิร์ฟเวอร์ ไม่ใช่เพียงการซ่อนเมนู | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | SR07:004 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting ทั้งด้านรับข้อมูลและแสดงผล | UN12.002 | Security – Server-side Validation | TC-UN12.002 | - |
| CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | SR07:003 | ระบบต้องอนุญาต Session ที่ใช้งานอยู่เพียงหนึ่งต่อบัญชี (บล็อก Concurrent Login) | UN01.003 | Identity – Password Recovery / OTP / Session | TC-UN01.003 | - |
| CR07: Environmental Considerations | | | | | | | |
| CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.001, UN13.002 | Deploy – setup.php Schema Installer / Deploy – Docker Compose Stack | TC-UN13.001, TC-UN13.002 | - |
| CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | SR01:006 | แอปพลิเคชันและงานตามกำหนดเวลาต้องใช้เขตเวลา Asia/Bangkok | UN11.002 | Node – Scheduler (ETL & Alerts) | TC-UN11.002 | - |
| CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | SR06:003, SR02:002 | ระบบต้องรองรับ Mobile/Tablet Browser ผ่าน Responsive UI / ส่วนติดต่อผู้ใช้ต้องเป็น Responsive Design รองรับ Desktop / Tablet / Mobile | UN01.002 | Identity – Login & Role Guard | TC-UN01.002 | - |
| CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 | - |
| CR08: Operational Considerations | | | | | | | |
| CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 | - |
| CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 | - |
| CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | SR05:004 | ระบบต้องมี Health Check ทุก 5 นาที และแจ้งเตือนผู้ดูแลเมื่อล้มเหลวติดต่อกัน 2 ครั้ง | - | - | - | Product Operation Guide (การเฝ้าระวังระบบ) |
| CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | SR04:003 | โมดูลรายงานต้องอ่านข้อมูลภายใต้ขอบเขตบริษัท/คลังที่โมดูลข้อมูลหลักและคลังสินค้าบังคับใช้ | UN12.001 | Security – Tenant Scope Guard | TC-UN12.001 | - |
| CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | SR05:002 | ยอดสรุปสต๊อก/GL/แดชบอร์ดต้องคำนวณล่วงหน้าตามกำหนดเวลา (etl_stock_summary, etl_gl_summary) | UN11.002 | Node – Scheduler (ETL & Alerts) | TC-UN11.002 | - |
| CR09: Maintenance Considerations | | | | | | | |
| CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | SR02:003, SR02:004 | ตรรกะทางธุรกิจต้องจัดเป็น Manager/Service Classes ที่เรียกใช้จาก Page Controller แยกจากส่วนแสดงผล / การเข้าถึงข้อมูลต้องผ่าน Manager Classes ไม่กระจาย SQL ในหน้าเพจ | - | - | - | Software Design (Software Unit), Software Components |
| CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | SR01:005 | ค่าตั้งค่าและความลับ (app/config.php, .env) ต้องถูกยกเว้นจาก Source Control และสร้างขึ้นตอนติดตั้ง | UN13.003 | Deploy – .env Generator | TC-UN13.003 | - |
| CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Maintenance Document, Correction Register |
| CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | SR08:005, SR08:004 | ตารางทั้งหมดต้องสร้างซ้ำได้ในสภาพแวดล้อมใหม่ผ่าน setup.php โดยไม่ต้องแก้ Schema ด้วยมือ / ตารางสรุปยอดและควบคุมเอกสาร: etl_stock_summary, etl_gl_summary, document_number_sequences, document_types, schema_migrations | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 | - |
| CR10: Installation Considerations | | | | | | | |
| CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | SR01:003, SR08:005 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) / ตารางทั้งหมดต้องสร้างซ้ำได้ในสภาพแวดล้อมใหม่ผ่าน setup.php โดยไม่ต้องแก้ Schema ด้วยมือ | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 | - |
| CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | SR02:005 | ระบบต้องติดตั้งเป็น Container Stack ผ่าน Docker Compose ได้ นอกเหนือจากการติดตั้งแบบ Manual | UN13.002 | Deploy – Docker Compose Stack | TC-UN13.002 | - |
| CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | SR01:005 | ค่าตั้งค่าและความลับ (app/config.php, .env) ต้องถูกยกเว้นจาก Source Control และสร้างขึ้นตอนติดตั้ง | UN13.003 | Deploy – .env Generator | TC-UN13.003 | - |
| CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | UN13.001, UN13.002 | Deploy – setup.php Schema Installer / Deploy – Docker Compose Stack | TC-UN13.001, TC-UN13.002 | Product Operation Guide (ขั้นตอนติดตั้ง) |
| CR11: Support Considerations | | | | | | | |
| CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Software User Document (WP 8.0) |
| CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Product Operation Guide (WP 10.0) |
| CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Training Report |
| CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Maintenance Document (SLA) |
| CR12: Design Constraints | | | | | | | |
| CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | SR01:002 | ระบบต้องใช้เทคโนโลยี PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js (Socket.IO, pm2) | UN13.001 | Deploy – setup.php Schema Installer | TC-UN13.001 | - |
| CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Software Configuration, Project Repository |
| CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | SR01:004 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt (PASSWORD_BCRYPT) และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | UN01.003 | Identity – Password Recovery / OTP / Session | TC-UN01.003 | - |
| CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | List of Evidence, Verification Results |
| CR13: Safety and Reliability Considerations | | | | | | | |
| CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | SR09:003 | การเปลี่ยนแปลงที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction และป้องกันยอดติดลบ/ซ้ำ | UN08.002 | Accounting – Journal & GL Posting | TC-UN08.002 | - |
| CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | SR09:003 | การเปลี่ยนแปลงที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction และป้องกันยอดติดลบ/ซ้ำ | UN04.002 | ICS – Stock-out | TC-UN04.002 | - |
| CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | SR01:003 | ระบบต้องติดตั้งบน Linux Server ได้ทั้งแบบ Manual (setup.php) และ Docker Compose (php-apache, mariadb, node/pm2) | UN13.004 | Deploy – Backup & Restore | TC-UN13.004 | - |
| CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | SR09:002 | ข้อผิดพลาดต้องแสดงข้อความที่ผู้ใช้เข้าใจได้แทน Fatal Error | UN10.002 | Document – Lifecycle & Status | TC-UN10.002 | - |
| CR14: Quality Expectations | | | | | | | |
| CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Test Report |
| CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Traceability Record |
| CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | SR01:001 | ระบบต้องพัฒนาและจัดทำเอกสารให้สอดคล้องกับมาตรฐาน ISO/IEC 29110 Basic Profile และแนวปฏิบัติ Secure Coding | - | - | - | Validation Results, Acceptance Report |
| CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | SR07:002 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | UN12.001, UN12.002 | Security – Tenant Scope Guard / Security – Server-side Validation | TC-UN12.001, TC-UN12.002 | Test Report, Correction Register |
หมายเหตุ: ความต้องการที่เป็นเอกสาร การอบรม หรือหลักฐานด้านคุณภาพ สอบกลับไปยังเอกสารส่งมอบที่เป็นหลักฐานในคอลัมน์ "หลักฐานอื่น" แทน Software Unit
## สรุปความครอบคลุม
@@ -119,8 +121,10 @@
| --- | ---: |
| ความต้องการของลูกค้าทั้งหมด (CR01–CR14) | 80 |
| เชื่อมโยงกับความต้องการซอฟต์แวร์ (SRS) | 80 |
| เชื่อมโยงกับ Software Unit | 80 |
| เชื่อมโยงกับ Test Case | 80 |
| เชื่อมโยงกับ Software Unit | 68 |
| เชื่อมโยงกับ Test Case | 68 |
| ยืนยันด้วยเอกสารส่งมอบ (ไม่มี Software Unit) | 12 |
| มีหลักฐานยืนยันครบ (Test Case หรือเอกสาร) | 80 |
| ความต้องการซอฟต์แวร์ทั้งหมด (SR01–SR09) | 49 |
| Software Unit ทั้งหมด | 45 |
| Test Case ทั้งหมด | 45 |
@@ -39,86 +39,76 @@
| No | Test Case | Software Testing | Customer Req. ID | Customer Req. Topic | Status | Test Date |
| :---: | :---: | --- | :---: | --- | :---: | :---: |
| 1 | TC-UN01.001 | ตรวจสอบIdentity – Register & Onboarding | CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 2 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 3 | TC-UN01.003 | ตรวจสอบIdentity – Password Recovery / OTP / Session | CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 4 | TC-UN01.004 | ตรวจสอบIdentity – User & App-Access Administration | CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 5 | TC-UN03.001 | ตรวจสอบMaster – Warehouse / Storage / Bin | CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 6 | TC-UN03.004 | ตรวจสอบMaster – Warehouse Layer Configuration | CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 7 | TC-UN04.001 | ตรวจสอบICS – Stock-in | CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 8 | TC-UN04.002 | ตรวจสอบICS – Stock-out | CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 9 | TC-UN04.003 | ตรวจสอบICS – Stock Transfer | CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 10 | TC-UN04.004 | ตรวจสอบICS – Lot / Serial / Expiry | CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 11 | TC-UN09.002 | ตรวจสอบReports – Stock Reports | CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 12 | TC-UN04.005 | ตรวจสอบICS – Barcode Label & Scan | CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 13 | TC-UN05.001 | ตรวจสอบSales – Quotation | CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 14 | TC-UN06.001 | ตรวจสอบPurchasing – Purchase Request | CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 15 | TC-UN07.001 | ตรวจสอบFinance – Receipt Billing & Receipt | CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 16 | TC-UN08.001 | ตรวจสอบAccounting – Chart of Accounts / Departments / Formulas | CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 17 | TC-UN09.003 | ตรวจสอบReports – Financial Reports | CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 18 | TC-UN10.001 | ตรวจสอบDocument – Numbering | CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 19 | TC-UN04.006 | ตรวจสอบICS – File Attachment | CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 20 | TC-UN09.004 | ตรวจสอบReports – Filter / Print / Export | CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 21 | TC-UN11.001 | ตรวจสอบNode – Socket.IO Notification Server | CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 22 | TC-UN11.002 | ตรวจสอบNode – Scheduler (ETL & Alerts) | CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 23 | TC-UN10.003 | ตรวจสอบDocument – Audit Fields & History | CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 24 | TC-UN12.001 | ตรวจสอบSecurity – Tenant Scope Guard | CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 25 | TC-UN09.001 | ตรวจสอบReports – Dashboard & Aggregates | CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 26 | TC-UN09.001 | ตรวจสอบReports – Dashboard & Aggregates | CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 27 | TC-UN09.001 | ตรวจสอบReports – Dashboard & Aggregates | CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 28 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 29 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 30 | TC-UN11.001 | ตรวจสอบNode – Socket.IO Notification Server | CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 31 | TC-UN11.001 | ตรวจสอบNode – Socket.IO Notification Server | CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 32 | TC-UN02.002 | ตรวจสอบCompany – SMTP & Mail Dispatch | CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 33 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 34 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 35 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 36 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 37 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 38 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 39 | TC-UN10.002 | ตรวจสอบDocument – Lifecycle & Status | CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 40 | TC-UN10.002 | ตรวจสอบDocument – Lifecycle & Status | CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 41 | TC-UN04.005 | ตรวจสอบICS – Barcode Label & Scan | CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 42 | TC-UN12.004 | ตรวจสอบSecurity – TLS & Secret Configuration | CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 43 | TC-UN13.003 | ตรวจสอบDeploy – .env Generator | CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 44 | TC-UN12.002 | ตรวจสอบSecurity – Server-side Validation | CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 45 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 46 | TC-UN12.002 | ตรวจสอบSecurity – Server-side Validation | CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 47 | TC-UN01.003 | ตรวจสอบIdentity – Password Recovery / OTP / Session | CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 48 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 49 | TC-UN11.002 | ตรวจสอบNode – Scheduler (ETL & Alerts) | CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 50 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 51 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 52 | TC-UN13.004 | ตรวจสอบDeploy – Backup & Restore | CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 53 | TC-UN13.004 | ตรวจสอบDeploy – Backup & Restore | CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 54 | TC-UN11.002 | ตรวจสอบNode – Scheduler (ETL & Alerts) | CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 55 | TC-UN12.001 | ตรวจสอบSecurity – Tenant Scope Guard | CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 56 | TC-UN11.002 | ตรวจสอบNode – Scheduler (ETL & Alerts) | CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 57 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 58 | TC-UN13.003 | ตรวจสอบDeploy – .env Generator | CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 59 | TC-UN13.004 | ตรวจสอบDeploy – Backup & Restore | CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 60 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 61 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 62 | TC-UN13.002 | ตรวจสอบDeploy – Docker Compose Stack | CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 63 | TC-UN13.003 | ตรวจสอบDeploy – .env Generator | CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 64 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 65 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 66 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 67 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 68 | TC-UN13.004 | ตรวจสอบDeploy – Backup & Restore | CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 69 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 70 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 71 | TC-UN01.003 | ตรวจสอบIdentity – Password Recovery / OTP / Session | CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 72 | TC-UN13.001 | ตรวจสอบDeploy – setup.php Schema Installer | CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 73 | TC-UN08.002 | ตรวจสอบAccounting – Journal & GL Posting | CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 74 | TC-UN04.002 | ตรวจสอบICS – Stock-out | CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 75 | TC-UN13.004 | ตรวจสอบDeploy – Backup & Restore | CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 76 | TC-UN10.002 | ตรวจสอบDocument – Lifecycle & Status | CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 77 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 78 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 79 | TC-UN01.002 | ตรวจสอบIdentity – Login & Role Guard | CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 80 | TC-UN12.001 | ตรวจสอบSecurity – Tenant Scope Guard | CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 1 | TC-UN01.001 | ตรวจสอบ Identity – Register & Onboarding | CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 2 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 3 | TC-UN01.003 | ตรวจสอบ Identity – Password Recovery / OTP / Session | CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 4 | TC-UN01.004, TC-UN02.001, TC-UN02.002 | ตรวจสอบ Identity – User & App-Access Administration / Company – Profile & System Settings / Company – SMTP & Mail Dispatch | CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 5 | TC-UN03.001, TC-UN03.002, TC-UN03.003 | ตรวจสอบ Master – Warehouse / Storage / Bin / Master – Product & Category / Master – Contact | CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 6 | TC-UN03.004 | ตรวจสอบ Master – Warehouse Layer Configuration | CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 7 | TC-UN04.001 | ตรวจสอบ ICS – Stock-in | CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 8 | TC-UN04.002 | ตรวจสอบ ICS – Stock-out | CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 9 | TC-UN04.003 | ตรวจสอบ ICS – Stock Transfer | CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 10 | TC-UN04.004 | ตรวจสอบ ICS – Lot / Serial / Expiry | CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 11 | TC-UN09.002 | ตรวจสอบ Reports – Stock Reports | CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 12 | TC-UN04.005 | ตรวจสอบ ICS – Barcode Label & Scan | CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 13 | TC-UN05.001, TC-UN05.002, TC-UN05.003, TC-UN05.004 | ตรวจสอบ Sales – Quotation / Sales – Sales Order / Sales – Invoice / Sales – Return / Credit Note | CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 14 | TC-UN06.001, TC-UN06.002, TC-UN06.003, TC-UN06.004 | ตรวจสอบ Purchasing – Purchase Request / Purchasing – Purchase Order / Purchasing – Purchase Invoice / Purchasing – Supplier Return | CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 15 | TC-UN07.001, TC-UN07.002 | ตรวจสอบ Finance – Receipt Billing & Receipt / Finance – Payment Billing & Payment | CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 16 | TC-UN08.001, TC-UN08.002 | ตรวจสอบ Accounting – Chart of Accounts / Departments / Formulas / Accounting – Journal & GL Posting | CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 17 | TC-UN09.003 | ตรวจสอบ Reports – Financial Reports | CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 18 | TC-UN10.001, TC-UN10.002 | ตรวจสอบ Document – Numbering / Document – Lifecycle & Status | CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 19 | TC-UN04.006 | ตรวจสอบ ICS – File Attachment | CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 20 | TC-UN09.004 | ตรวจสอบ Reports – Filter / Print / Export | CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 21 | TC-UN11.001 | ตรวจสอบ Node – Socket.IO Notification Server | CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 22 | TC-UN11.002 | ตรวจสอบ Node – Scheduler (ETL & Alerts) | CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 23 | TC-UN10.003 | ตรวจสอบ Document – Audit Fields & History | CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 24 | TC-UN12.001 | ตรวจสอบ Security – Tenant Scope Guard | CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 25 | TC-UN09.001 | ตรวจสอบ Reports – Dashboard & Aggregates | CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 26 | TC-UN09.001, TC-UN11.002 | ตรวจสอบ Reports – Dashboard & Aggregates / Node – Scheduler (ETL & Alerts) | CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 27 | TC-UN09.001 | ตรวจสอบ Reports – Dashboard & Aggregates | CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 28 | TC-UN13.001 | ตรวจสอบ Deploy – setup.php Schema Installer | CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 29 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 30 | TC-UN11.001 | ตรวจสอบ Node – Socket.IO Notification Server | CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 31 | TC-UN11.001 | ตรวจสอบ Node – Socket.IO Notification Server | CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 32 | TC-UN02.002 | ตรวจสอบ Company – SMTP & Mail Dispatch | CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 33 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 34 | TC-UN13.001 | ตรวจสอบ Deploy – setup.php Schema Installer | CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 35 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 36 | TC-UN13.001 | ตรวจสอบ Deploy – setup.php Schema Installer | CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 37 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 38 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 39 | TC-UN10.002 | ตรวจสอบ Document – Lifecycle & Status | CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 40 | TC-UN10.002 | ตรวจสอบ Document – Lifecycle & Status | CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 41 | TC-UN04.005 | ตรวจสอบ ICS – Barcode Label & Scan | CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 42 | TC-UN12.004 | ตรวจสอบ Security – TLS & Secret Configuration | CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 43 | TC-UN13.003, TC-UN12.004 | ตรวจสอบ Deploy – .env Generator / Security – TLS & Secret Configuration | CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 44 | TC-UN12.002 | ตรวจสอบ Security – Server-side Validation | CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 45 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 46 | TC-UN12.002 | ตรวจสอบ Security – Server-side Validation | CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 47 | TC-UN01.003 | ตรวจสอบ Identity – Password Recovery / OTP / Session | CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 48 | TC-UN13.001, TC-UN13.002 | ตรวจสอบ Deploy – setup.php Schema Installer / Deploy – Docker Compose Stack | CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 49 | TC-UN11.002 | ตรวจสอบ Node – Scheduler (ETL & Alerts) | CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 50 | TC-UN01.002 | ตรวจสอบ Identity – Login & Role Guard | CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 51 | TC-UN13.001 | ตรวจสอบ Deploy – setup.php Schema Installer | CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 52 | TC-UN13.004 | ตรวจสอบ Deploy – Backup & Restore | CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 53 | TC-UN13.004 | ตรวจสอบ Deploy – Backup & Restore | CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 54 | TC-UN12.001 | ตรวจสอบ Security – Tenant Scope Guard | CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 55 | TC-UN11.002 | ตรวจสอบ Node – Scheduler (ETL & Alerts) | CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 56 | TC-UN13.003 | ตรวจสอบ Deploy – .env Generator | CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 57 | TC-UN13.001 | ตรวจสอบ Deploy – setup.php Schema Installer | CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 58 | TC-UN13.001 | ตรวจสอบ Deploy – setup.php Schema Installer | CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 59 | TC-UN13.002 | ตรวจสอบ Deploy – Docker Compose Stack | CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 60 | TC-UN13.003 | ตรวจสอบ Deploy – .env Generator | CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 61 | TC-UN13.001, TC-UN13.002 | ตรวจสอบ Deploy – setup.php Schema Installer / Deploy – Docker Compose Stack | CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 62 | TC-UN13.001 | ตรวจสอบ Deploy – setup.php Schema Installer | CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 63 | TC-UN01.003 | ตรวจสอบ Identity – Password Recovery / OTP / Session | CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 64 | TC-UN08.002 | ตรวจสอบ Accounting – Journal & GL Posting | CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 65 | TC-UN04.002 | ตรวจสอบ ICS – Stock-out | CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 66 | TC-UN13.004 | ตรวจสอบ Deploy – Backup & Restore | CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 67 | TC-UN10.002 | ตรวจสอบ Document – Lifecycle & Status | CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| 68 | TC-UN12.001, TC-UN12.002 | ตรวจสอบ Security – Tenant Scope Guard / Security – Server-side Validation | CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | Passed | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
ความต้องการที่ยืนยันด้วย Test Case มี 68 รายการ ส่วนอีก 12 รายการเป็นความต้องการด้านเอกสาร การอบรม และหลักฐานด้านคุณภาพ ซึ่งยืนยันด้วยเอกสารส่งมอบตามที่ระบุใน Traceability Record และได้รับการยืนยันจากลูกค้าใน Validation Results
## Summary
@@ -45,7 +45,7 @@
| 1 | Source Code และ Baseline | Commit `6c39700` ควบคุมใน Repository หลักและสำรอง |
| 2 | ชุดติดตั้งระบบ | Docker Compose Stack และสคริปต์ `setup.php` สำหรับสร้างฐานข้อมูล |
| 3 | ผลการทดสอบระบบ | Test Report 45 Test Case ผ่านทั้งหมด |
| 4 | ผลการทดสอบการยอมรับ | Validation Results 12 สถานการณ์ ผ่านทั้งหมด |
| 4 | ผลการทดสอบการยอมรับ | Validation Results ครบ 14 หมวด 80 รายการ ผ่านทั้งหมด |
| 5 | การตรวจรับส่งมอบ | Acceptance Report ผลการตรวจรับ Accepted เมื่อ 17 สิงหาคม 2569 |
| 6 | คู่มือประกอบการใช้งาน | Software User Document, Product Operation Guide, Maintenance Document |
@@ -7,12 +7,13 @@
| Project Code | 200-WMS-26-001-00 |
| Title | บันทึกการตรวจสอบตามข้อกำหนดของมาตรฐาน |
| รอบตรวจสอบ | รอบที่ 1 (17 มีนาคม 2569) | หัวข้อ | ตรวจสอบเอกสารวางแผนโครงการและความต้องการ |
| เวลาตรวจสอบ | 09:00 – 12:00 น. | ระยะเวลา | 3 ชั่วโมง |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) , คุณนพพงษ์ เจริญสุข (System Analyst) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
## วัตถุประสงค์ (Objective)
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 โดยวางแผนตรวจสอบเป็นรอบระหว่างการดำเนินโครงการ และตรวจสอบรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 ตามแผนการตรวจสอบในหัวข้อ 8.1 ของ Software Project Plan ซึ่งกำหนดให้ตรวจสอบ 4 รอบ ประมาณทุก 2 เดือน และรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง การตรวจสอบรอบนี้เป็นรอบที่ 1 ใช้เวลา 3 ชั่วโมง (09:00 – 12:00 น.)
## Deliverables under Review
@@ -7,12 +7,13 @@
| Project Code | 200-WMS-26-001-00 |
| Title | บันทึกการตรวจสอบตามข้อกำหนดของมาตรฐาน |
| รอบตรวจสอบ | รอบที่ 2 (29 พฤษภาคม 2569) | หัวข้อ | ตรวจสอบเอกสารความต้องการซอฟต์แวร์และการออกแบบ |
| เวลาตรวจสอบ | 09:00 – 12:00 น. | ระยะเวลา | 3 ชั่วโมง |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) , คุณนพพงษ์ เจริญสุข (System Analyst) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
## วัตถุประสงค์ (Objective)
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 โดยวางแผนตรวจสอบเป็นรอบระหว่างการดำเนินโครงการ และตรวจสอบรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 ตามแผนการตรวจสอบในหัวข้อ 8.1 ของ Software Project Plan ซึ่งกำหนดให้ตรวจสอบ 4 รอบ ประมาณทุก 2 เดือน และรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง การตรวจสอบรอบนี้เป็นรอบที่ 2 ใช้เวลา 3 ชั่วโมง (09:00 – 12:00 น.)
## Deliverables under Review
@@ -42,18 +43,18 @@
| VR02.030.006 | ลงชื่อผู้จัดทำและผู้อนุมัติเรียบร้อย | มีตารางลงนามครบถ้วน | Passed | NoC | |
| WP 4.0 Software Design | | | | | |
| VR02.040.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบถ้วนถูกต้อง | Passed | NoC | |
| VR02.040.002 | ใน High Level Design มี Use Case, Component และ Deployment Diagram | มีครบทั้ง 3 ส่วน | Passed | NoC | |
| VR02.040.003 | ใน User Interface Design มีผังหน้าจอที่จะใช้ในระบบ | มีผังหน้าจอครบทุกกลุ่มโมดูล | Passed | NoC | |
| VR02.040.002 | ใน High Level Design มี Architecture, Use Case, Component และ Deployment Diagram | มีแผนภาพครบทั้ง 4 แบบ | Passed | NoC | |
| VR02.040.003 | ใน User Interface Design มีผังหน้าจอที่จะใช้ในระบบ | มีผังหน้าจอครบทุกกลุ่มโมดูล พร้อม Mockup Wireframe ของหน้าจอหลัก 6 รูปแบบ | Passed | NoC | |
| VR02.040.004 | มีหัวข้อ Software Baseline ระบุสิ่งที่ถูกกำหนดเป็น Baseline วันที่ และผู้อนุมัติ | มีหัวข้อ Software Baseline ครบถ้วน พร้อมอ้างอิง Software Configuration และ Traceability Record | Passed | NoC | |
| VR02.040.005 | ใน Software Unit มีรหัสกำกับแต่ละหน่วย เช่น UN01.001 อย่างเป็นระเบียบ | มีรหัสครบ 45 หน่วย | Passed | NoC | |
| VR02.040.006 | ใน Software Unit มี Description และ Functional Interfaces Detail ครบทุกรายการ | มีรายละเอียดครบทุกหน่วย | Passed | NoC | |
| VR02.040.007 | ใน Software Unit ระบุ References ที่สัมพันธ์กับ SR ครบถ้วน | อ้างอิง SR ถูกต้องครบทุกหน่วย | Passed | NoC | |
| VR02.040.008 | ลงชื่อผู้จัดทำและผู้อนุมัติเรียบร้อย | มีตารางลงนามครบถ้วน | Passed | NoC | |
| WP 5.0 Change Report | | | | | |
| VR02.050.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบทั้ง 3 ฉบับ | Passed | ApS | |
| VR02.050.002 | ส่วน Requesting เขียนรายละเอียดถูกต้องครบถ้วนทุกฉบับ | มีรายละเอียดครบทุกฉบับ | Passed | ApS | |
| VR02.050.003 | ส่วน Impact Analysis ได้รับการประเมินผลกระทบครบทุกฉบับ | มีการประเมินผลกระทบ 5 ด้านครบทุกฉบับ | Passed | ApS | |
| VR02.050.004 | มีการลงนามอนุมัติโดยคณะพิจารณา (CAB) ครบทุกฉบับ | มีตารางพิจารณาและลงนามครบถ้วน | Passed | ApS | |
| VR02.050.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบถ้วนถูกต้อง | Passed | ApS | |
| VR02.050.002 | ระบุเกณฑ์การพิจารณาว่ารายการใดเป็นคำขอเปลี่ยนแปลง | มีเกณฑ์ 3 ข้อ ครอบคลุมความจำเป็นต่อการส่งมอบ ขอบเขต และ Man-day | Passed | ApS | |
| VR02.050.003 | รายการปรับปรุงที่เสนอได้รับการพิจารณาตามเกณฑ์และบันทึกผลครบทุกรายการ | มีผลการพิจารณาและการดำเนินการครบทุกรายการ | Passed | ApS | |
| VR02.050.004 | ลงชื่อผู้จัดทำ ผู้ตรวจสอบ และผู้อนุมัติครบถ้วน | มีตารางลงนามครบถ้วน | Passed | ApS | |
## สรุปผลการตรวจสอบรอบนี้
@@ -7,12 +7,13 @@
| Project Code | 200-WMS-26-001-00 |
| Title | บันทึกการตรวจสอบตามข้อกำหนดของมาตรฐาน |
| รอบตรวจสอบ | รอบที่ 3 (31 กรกฎาคม 2569) | หัวข้อ | ตรวจสอบชุดทดสอบและการสอบกลับ |
| เวลาตรวจสอบ | 09:00 – 12:00 น. | ระยะเวลา | 3 ชั่วโมง |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) , คุณนพพงษ์ เจริญสุข (System Analyst) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
## วัตถุประสงค์ (Objective)
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 โดยวางแผนตรวจสอบเป็นรอบระหว่างการดำเนินโครงการ และตรวจสอบรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 ตามแผนการตรวจสอบในหัวข้อ 8.1 ของ Software Project Plan ซึ่งกำหนดให้ตรวจสอบ 4 รอบ ประมาณทุก 2 เดือน และรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง การตรวจสอบรอบนี้เป็นรอบที่ 3 ใช้เวลา 3 ชั่วโมง (09:00 – 12:00 น.)
## Deliverables under Review
@@ -7,12 +7,13 @@
| Project Code | 200-WMS-26-001-00 |
| Title | บันทึกการตรวจสอบตามข้อกำหนดของมาตรฐาน |
| รอบตรวจสอบ | รอบที่ 4 (17 สิงหาคม 2569) | หัวข้อ | User Acceptance Test (UAT) และตรวจสอบเอกสารส่งมอบทั้งหมด |
| เวลาตรวจสอบ | 09:00 – 16:00 น. | ระยะเวลา | 6 ชั่วโมง |
| Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) , คุณนพพงษ์ เจริญสุข (System Analyst) |
| Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |
## วัตถุประสงค์ (Objective)
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 โดยวางแผนตรวจสอบเป็นรอบระหว่างการดำเนินโครงการ และตรวจสอบรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง
การตรวจสอบ (Verification) จัดทำขึ้นเพื่อยืนยันความถูกต้องและความครบถ้วนของสิ่งส่งมอบ (Work Products) ตามมาตรฐาน ISO/IEC 29110 ตามแผนการตรวจสอบในหัวข้อ 8.1 ของ Software Project Plan ซึ่งกำหนดให้ตรวจสอบ 4 รอบ ประมาณทุก 2 เดือน และรอบสุดท้ายก่อนส่งมอบระบบ เพื่อลดความเสี่ยงด้านคุณภาพ ความล่าช้า และค่าใช้จ่ายที่เกิดจากการแก้ไขย้อนหลัง การตรวจสอบรอบนี้เป็นรอบที่ 4 ใช้เวลา 6 ชั่วโมง (09:00 – 16:00 น.)
## Deliverables under Review
@@ -67,18 +68,18 @@
| VR04.030.006 | ลงชื่อผู้จัดทำและผู้อนุมัติเรียบร้อย | มีตารางลงนามครบถ้วน | Passed | NoC | |
| WP 4.0 Software Design | | | | | |
| VR04.040.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบถ้วนถูกต้อง | Passed | NoC | |
| VR04.040.002 | ใน High Level Design มี Use Case, Component และ Deployment Diagram | มีครบทั้ง 3 ส่วน | Passed | NoC | |
| VR04.040.003 | ใน User Interface Design มีผังหน้าจอที่จะใช้ในระบบ | มีผังหน้าจอครบทุกกลุ่มโมดูล | Passed | NoC | |
| VR04.040.002 | ใน High Level Design มี Architecture, Use Case, Component และ Deployment Diagram | มีแผนภาพครบทั้ง 4 แบบ | Passed | NoC | |
| VR04.040.003 | ใน User Interface Design มีผังหน้าจอที่จะใช้ในระบบ | มีผังหน้าจอครบทุกกลุ่มโมดูล พร้อม Mockup Wireframe ของหน้าจอหลัก 6 รูปแบบ | Passed | NoC | |
| VR04.040.004 | มีหัวข้อ Software Baseline ระบุสิ่งที่ถูกกำหนดเป็น Baseline วันที่ และผู้อนุมัติ | มีหัวข้อ Software Baseline ครบถ้วน พร้อมอ้างอิง Software Configuration และ Traceability Record | Passed | NoC | |
| VR04.040.005 | ใน Software Unit มีรหัสกำกับแต่ละหน่วย เช่น UN01.001 อย่างเป็นระเบียบ | มีรหัสครบ 45 หน่วย | Passed | NoC | |
| VR04.040.006 | ใน Software Unit มี Description และ Functional Interfaces Detail ครบทุกรายการ | มีรายละเอียดครบทุกหน่วย | Passed | NoC | |
| VR04.040.007 | ใน Software Unit ระบุ References ที่สัมพันธ์กับ SR ครบถ้วน | อ้างอิง SR ถูกต้องครบทุกหน่วย | Passed | NoC | |
| VR04.040.008 | ลงชื่อผู้จัดทำและผู้อนุมัติเรียบร้อย | มีตารางลงนามครบถ้วน | Passed | NoC | |
| WP 5.0 Change Report | | | | | |
| VR04.050.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบทั้ง 3 ฉบับ | Passed | ApS | |
| VR04.050.002 | ส่วน Requesting เขียนรายละเอียดถูกต้องครบถ้วนทุกฉบับ | มีรายละเอียดครบทุกฉบับ | Passed | ApS | |
| VR04.050.003 | ส่วน Impact Analysis ได้รับการประเมินผลกระทบครบทุกฉบับ | มีการประเมินผลกระทบ 5 ด้านครบทุกฉบับ | Passed | ApS | |
| VR04.050.004 | มีการลงนามอนุมัติโดยคณะพิจารณา (CAB) ครบทุกฉบับ | มีตารางพิจารณาและลงนามครบถ้วน | Passed | ApS | |
| VR04.050.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบถ้วนถูกต้อง | Passed | ApS | |
| VR04.050.002 | ระบุเกณฑ์การพิจารณาว่ารายการใดเป็นคำขอเปลี่ยนแปลง | มีเกณฑ์ 3 ข้อ ครอบคลุมความจำเป็นต่อการส่งมอบ ขอบเขต และ Man-day | Passed | ApS | |
| VR04.050.003 | รายการปรับปรุงที่เสนอได้รับการพิจารณาตามเกณฑ์และบันทึกผลครบทุกรายการ | มีผลการพิจารณาและการดำเนินการครบทุกรายการ | Passed | ApS | |
| VR04.050.004 | ลงชื่อผู้จัดทำ ผู้ตรวจสอบ และผู้อนุมัติครบถ้วน | มีตารางลงนามครบถ้วน | Passed | ApS | |
| WP 6.0 Test Case and Test Procedures | | | | | |
| VR04.060.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบถ้วนถูกต้อง | Passed | PaNg | |
| VR04.060.002 | ใน Test Case Specification มีรายการทดสอบพร้อมรหัสเรียงลำดับ | มีรายการครบ 45 Test Case | Passed | PaNg | |
@@ -90,9 +91,10 @@
| VR04.060.008 | ลงชื่อผู้จัดทำและผู้อนุมัติเรียบร้อย | มีตารางลงนามครบถ้วน | Passed | PaNg | |
| WP 7.0 Validation Results | | | | | |
| VR04.070.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบถ้วนถูกต้อง | Passed | PaNg | |
| VR04.070.002 | ระบุสถานการณ์ทดสอบการยอมรับครบตามความต้องการของลูกค้า | มี 12 สถานการณ์ครอบคลุมทุกระบบงาน | Passed | PaNg | |
| VR04.070.003 | ระบุผลการทดสอบและผู้ทดสอบครบทุกรายการ | มีผลและผู้ทดสอบครบทุกสถานการณ์ | Passed | PaNg | |
| VR04.070.004 | ลงชื่อผู้ทดสอบฝ่ายลูกค้าเรียบร้อย | มีตารางลงนามครบถ้วน | Passed | PaNg | |
| VR04.070.002 | ใช้ Customer Requirements เป็นตัวตั้งของการทดสอบการยอมรับ | ครอบคลุมครบ 14 หมวด 80 รายการ | Passed | PaNg | |
| VR04.070.003 | ระบุวิธีการยืนยันและหลักฐานอ้างอิงของแต่ละความต้องการ | มีวิธีการยืนยันและหลักฐานครบทุกรายการ | Passed | PaNg | |
| VR04.070.004 | ระบุผลการทดสอบและผู้ทดสอบครบทุกรายการ | มีผลและผู้ทดสอบครบทุกรายการ | Passed | PaNg | |
| VR04.070.005 | ลงชื่อผู้ทดสอบฝ่ายลูกค้าเรียบร้อย | มีตารางลงนามครบถ้วน | Passed | PaNg | |
| WP 8.0 Software User Document | | | | | |
| VR04.080.001 | รายละเอียดและความถูกต้องของ Header ของเอกสาร | มีรายละเอียดครบถ้วนถูกต้อง | Passed | YaB | |
| VR04.080.002 | เนื้อหาครอบคลุมการใช้งานทุกระบบงานที่ส่งมอบ | ครอบคลุมครบทุกระบบงาน | Passed | YaB | |
@@ -117,8 +119,8 @@
| รายการ | จำนวน |
| --- | ---: |
| รายการตรวจสอบทั้งหมด | 60 |
| ผลผ่าน (Passed) | 60 |
| รายการตรวจสอบทั้งหมด | 61 |
| ผลผ่าน (Passed) | 61 |
| ผลไม่ผ่าน (Failed) | 0 |
| ประเด็นคงค้าง | 0 |
@@ -13,7 +13,7 @@
## วัตถุประสงค์ (Objective)
เพื่อยืนยันว่าระบบที่พัฒนาตรงตามความต้องการของลูกค้า (Customer Requirements) สามารถใช้งานได้จริง มีประสิทธิภาพ มีความปลอดภัย และพร้อมเปิดใช้งานจริง (Go-Live)
เพื่อยืนยันว่าระบบที่พัฒนาตรงตามความต้องการของลูกค้า (Customer Requirements) สามารถใช้งานได้จริง มีประสิทธิภาพ มีความปลอดภัย และพร้อมเปิดใช้งานจริง (Go-Live) โดยใช้ความต้องการของลูกค้าทุกรายการเป็นตัวตั้งของการทดสอบการยอมรับ และอ้างอิง Test Case หรือเอกสารส่งมอบเป็นหลักฐานประกอบ
## สภาพแวดล้อมและผู้ทดสอบ
@@ -23,35 +23,138 @@
| ผู้ทดสอบ | คุณเสรี วิริยะสกุลธรณ์ (Project Sponsor / ตัวแทนลูกค้า) |
| ผู้บันทึกผล | คุณปริญ งามขำ (QA/Tester) |
| ช่วงเวลาทดสอบ | 10 สิงหาคม 2569 – 14 สิงหาคม 2569 |
| ขอบเขตการทดสอบ | Customer Requirements ครบ 14 หมวด 80 รายการ (CR01–CR14) |
| สถานะ Repository ที่ใกล้เคียงที่สุด | Commit `dd48a8b` |
## ตารางสรุป Validation Result
## ตารางสรุป Validation Result ตาม Customer Requirements
| No | Test Case | CR ID | Customer Req. Topic | ผลลัพธ์ที่คาดหวัง | Status | Tester |
| :---: | --- | --- | --- | --- | :---: | :---: |
| 1 | TC-UN01.001, TC-UN01.002, TC-UN01.003, TC-UN01.004 | CR01:001, CR01:002, CR01:003, CR01:004 | การลงทะเบียนและกำหนดสิทธิ์ผู้ใช้งาน | ผู้ใช้เข้าสู่บริษัทที่ถูกต้องและเห็นเฉพาะเมนูที่ได้รับสิทธิ์ | Passed | SeV |
| 2 | TC-UN03.001, TC-UN03.004 | CR01:005, CR01:006 | การตั้งค่าข้อมูลหลักคลังสินค้าและสินค้า | ตั้งค่าคลังสินค้า พื้นที่ ช่องจัดเก็บ และสินค้าได้ครบตามโครงสร้างที่ใช้จริง | Passed | SeV |
| 3 | TC-UN04.001 | CR01:007 | การรับสินค้าเข้าคลัง | บันทึกรับเข้าแล้วยอดคงเหลือและความเคลื่อนไหวถูกต้อง | Passed | SeV |
| 4 | TC-UN04.002 | CR01:008 | การจ่ายสินค้าออกจากคลัง | จ่ายออกภายในยอดคงเหลือได้ และระบบปฏิเสธการจ่ายเกินยอด | Passed | SeV |
| 5 | TC-UN04.003 | CR01:009 | การโอนย้ายสินค้าระหว่างตำแหน่ง | ยอดต้นทางและปลายทางสมดุลและสอบกลับได้เป็นรายการเดียว | Passed | SeV |
| 6 | TC-UN04.004, TC-UN04.005 | CR01:010, CR01:012 | การติดตาม Lot, Serial Number และวันหมดอายุ | ข้อมูลติดตามคงอยู่และแสดงในรายงานที่เกี่ยวข้อง พร้อมพิมพ์บาร์โค้ดได้ | Passed | SeV |
| 7 | TC-UN05.001 | CR01:013 | กระบวนการขาย | ใบเสนอราคา ใบสั่งขาย ใบแจ้งหนี้ และใบรับคืน ทำงานตามลำดับสถานะที่กำหนด | Passed | SeV |
| 8 | TC-UN06.001 | CR01:014 | กระบวนการจัดซื้อ | ใบขอซื้อ ใบสั่งซื้อ ใบแจ้งหนี้ซื้อ และใบคืนผู้ขาย ทำงานตามลำดับสถานะที่กำหนด | Passed | SeV |
| 9 | TC-UN07.001, TC-UN08.001 | CR01:015, CR01:016 | งานการเงินและบัญชี | ใบเสร็จ ใบสำคัญจ่าย และรายการบัญชีสมดุลและตรวจสอบได้ | Passed | SeV |
| 10 | TC-UN09.002, TC-UN09.003, TC-UN09.004 | CR01:011, CR01:017, CR01:020 | รายงานคลังสินค้าและรายงานการเงิน | รายงานแสดงผลตรงตามตัวกรองและขอบเขตสิทธิ์ | Passed | SeV |
| 11 | TC-UN11.001, TC-UN11.002 | CR01:021, CR01:022 | การแจ้งเตือนและงานตามกำหนดเวลา | ผู้ใช้ที่เกี่ยวข้องได้รับการแจ้งเตือนโดยไม่ซ้ำซ้อน | Passed | SeV |
| 12 | TC-UN12.001, TC-UN12.001 | CR01:024, CR08:004 | การแยกข้อมูลระหว่างบริษัทและคลังสินค้า | การเข้าถึงข้อมูลข้ามบริษัทหรือคลังที่ไม่ได้รับสิทธิ์ถูกปฏิเสธ | Passed | SeV |
| CR ID | Customer Requirement | วิธีการยืนยัน | หลักฐานอ้างอิง | Status | Tester |
| --- | --- | --- | --- | :---: | :---: |
| CR01 | **Feature & Functional Characteristics** | | | | |
| CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN01.001 | Passed | SeV |
| CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN01.002 | Passed | SeV |
| CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN01.003 | Passed | SeV |
| CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN01.004, TC-UN02.001, TC-UN02.002 | Passed | SeV |
| CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN03.001, TC-UN03.002, TC-UN03.003 | Passed | SeV |
| CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN03.004 | Passed | SeV |
| CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN04.001 | Passed | SeV |
| CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN04.002 | Passed | SeV |
| CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN04.003 | Passed | SeV |
| CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN04.004 | Passed | SeV |
| CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN09.002 | Passed | SeV |
| CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN04.005 | Passed | SeV |
| CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN05.001, TC-UN05.002, TC-UN05.003, TC-UN05.004 | Passed | SeV |
| CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN06.001, TC-UN06.002, TC-UN06.003, TC-UN06.004 | Passed | SeV |
| CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN07.001, TC-UN07.002 | Passed | SeV |
| CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN08.001, TC-UN08.002 | Passed | SeV |
| CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN09.003 | Passed | SeV |
| CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN10.001, TC-UN10.002 | Passed | SeV |
| CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN04.006 | Passed | SeV |
| CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN09.004 | Passed | SeV |
| CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN11.001 | Passed | SeV |
| CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN11.002 | Passed | SeV |
| CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN10.003 | Passed | SeV |
| CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | ทดลองใช้งานตามขั้นตอนธุรกิจจริงบนระบบ | TC-UN12.001 | Passed | SeV |
| CR02 | **Performance Considerations** | | | | |
| CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | ใช้งานประจำวันบนสภาพแวดล้อมจริงและสังเกตเวลาตอบสนอง | TC-UN09.001 | Passed | SeV |
| CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | ใช้งานประจำวันบนสภาพแวดล้อมจริงและสังเกตเวลาตอบสนอง | TC-UN09.001, TC-UN11.002 | Passed | SeV |
| CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | ใช้งานประจำวันบนสภาพแวดล้อมจริงและสังเกตเวลาตอบสนอง | TC-UN09.001 | Passed | SeV |
| CR03 | **Interface Considerations** | | | | |
| CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | ใช้งานผ่าน Browser ที่กำหนด รับอีเมลและการแจ้งเตือนจริง | TC-UN13.001 | Passed | SeV |
| CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | ใช้งานผ่าน Browser ที่กำหนด รับอีเมลและการแจ้งเตือนจริง | TC-UN01.002 | Passed | SeV |
| CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | ใช้งานผ่าน Browser ที่กำหนด รับอีเมลและการแจ้งเตือนจริง | TC-UN11.001 | Passed | SeV |
| CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | ใช้งานผ่าน Browser ที่กำหนด รับอีเมลและการแจ้งเตือนจริง | TC-UN11.001 | Passed | SeV |
| CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | ใช้งานผ่าน Browser ที่กำหนด รับอีเมลและการแจ้งเตือนจริง | TC-UN02.002 | Passed | SeV |
| CR04 | **Required System Characteristics** | | | | |
| CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | ตรวจสอบสภาพแวดล้อมที่ติดตั้งและการเข้าสู่ระบบ | TC-UN01.002 | Passed | SeV |
| CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | ตรวจสอบสภาพแวดล้อมที่ติดตั้งและการเข้าสู่ระบบ | TC-UN13.001 | Passed | SeV |
| CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | ตรวจสอบสภาพแวดล้อมที่ติดตั้งและการเข้าสู่ระบบ | TC-UN01.002 | Passed | SeV |
| CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | ตรวจสอบสภาพแวดล้อมที่ติดตั้งและการเข้าสู่ระบบ | TC-UN13.001 | Passed | SeV |
| CR05 | **Human Engineering Considerations** | | | | |
| CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | ทดลองใช้งานบน Desktop และ Tablet/Mobile | TC-UN01.002 | Passed | SeV |
| CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | ทดลองใช้งานบน Desktop และ Tablet/Mobile | TC-UN01.002 | Passed | SeV |
| CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | ทดลองใช้งานบน Desktop และ Tablet/Mobile | TC-UN10.002 | Passed | SeV |
| CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | ทดลองใช้งานบน Desktop และ Tablet/Mobile | TC-UN10.002 | Passed | SeV |
| CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | ทดลองใช้งานบน Desktop และ Tablet/Mobile | TC-UN04.005 | Passed | SeV |
| CR06 | **Security Considerations** | | | | |
| CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | ตรวจสอบ HTTPS การจำกัดสิทธิ์ และการเข้าสู่ระบบซ้ำซ้อน | TC-UN12.004 | Passed | SeV |
| CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | ตรวจสอบ HTTPS การจำกัดสิทธิ์ และการเข้าสู่ระบบซ้ำซ้อน | TC-UN13.003, TC-UN12.004 | Passed | SeV |
| CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | ตรวจสอบ HTTPS การจำกัดสิทธิ์ และการเข้าสู่ระบบซ้ำซ้อน | TC-UN12.002 | Passed | SeV |
| CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | ตรวจสอบ HTTPS การจำกัดสิทธิ์ และการเข้าสู่ระบบซ้ำซ้อน | TC-UN01.002 | Passed | SeV |
| CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | ตรวจสอบ HTTPS การจำกัดสิทธิ์ และการเข้าสู่ระบบซ้ำซ้อน | TC-UN12.002 | Passed | SeV |
| CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | ตรวจสอบ HTTPS การจำกัดสิทธิ์ และการเข้าสู่ระบบซ้ำซ้อน | TC-UN01.003 | Passed | SeV |
| CR07 | **Environmental Considerations** | | | | |
| CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | ตรวจสอบสภาพแวดล้อมจริง เขตเวลา และการแยกข้อมูลสาธิต | TC-UN13.001, TC-UN13.002 | Passed | SeV |
| CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | ตรวจสอบสภาพแวดล้อมจริง เขตเวลา และการแยกข้อมูลสาธิต | TC-UN11.002 | Passed | SeV |
| CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | ตรวจสอบสภาพแวดล้อมจริง เขตเวลา และการแยกข้อมูลสาธิต | TC-UN01.002 | Passed | SeV |
| CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | ตรวจสอบสภาพแวดล้อมจริง เขตเวลา และการแยกข้อมูลสาธิต | TC-UN13.001 | Passed | SeV |
| CR08 | **Operational Considerations** | | | | |
| CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | ตรวจสอบการสำรอง/กู้คืน การเฝ้าระวัง และการแยกข้อมูลหลายบริษัท | TC-UN13.004 | Passed | SeV |
| CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | ตรวจสอบการสำรอง/กู้คืน การเฝ้าระวัง และการแยกข้อมูลหลายบริษัท | TC-UN13.004 | Passed | SeV |
| CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | ตรวจสอบการสำรอง/กู้คืน การเฝ้าระวัง และการแยกข้อมูลหลายบริษัท | Product Operation Guide (การเฝ้าระวังระบบ) | Passed | SeV |
| CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | ตรวจสอบการสำรอง/กู้คืน การเฝ้าระวัง และการแยกข้อมูลหลายบริษัท | TC-UN12.001 | Passed | SeV |
| CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | ตรวจสอบการสำรอง/กู้คืน การเฝ้าระวัง และการแยกข้อมูลหลายบริษัท | TC-UN11.002 | Passed | SeV |
| CR09 | **Maintenance Considerations** | | | | |
| CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | ทบทวนโครงสร้างซอฟต์แวร์และเอกสารการบำรุงรักษา | Software Design (Software Unit), Software Components | Passed | SeV |
| CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | ทบทวนโครงสร้างซอฟต์แวร์และเอกสารการบำรุงรักษา | TC-UN13.003 | Passed | SeV |
| CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | ทบทวนโครงสร้างซอฟต์แวร์และเอกสารการบำรุงรักษา | Maintenance Document, Correction Register | Passed | SeV |
| CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | ทบทวนโครงสร้างซอฟต์แวร์และเอกสารการบำรุงรักษา | TC-UN13.001 | Passed | SeV |
| CR10 | **Installation Considerations** | | | | |
| CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | สาธิตการติดตั้งตามขั้นตอนในคู่มือ | TC-UN13.001 | Passed | SeV |
| CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | สาธิตการติดตั้งตามขั้นตอนในคู่มือ | TC-UN13.002 | Passed | SeV |
| CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | สาธิตการติดตั้งตามขั้นตอนในคู่มือ | TC-UN13.003 | Passed | SeV |
| CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | สาธิตการติดตั้งตามขั้นตอนในคู่มือ | TC-UN13.001, TC-UN13.002 / Product Operation Guide (ขั้นตอนติดตั้ง) | Passed | SeV |
| CR11 | **Support Considerations** | | | | |
| CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | ทบทวนคู่มือ แผนการอบรม และช่องทางสนับสนุน | Software User Document (WP 8.0) | Passed | SeV |
| CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | ทบทวนคู่มือ แผนการอบรม และช่องทางสนับสนุน | Product Operation Guide (WP 10.0) | Passed | SeV |
| CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | ทบทวนคู่มือ แผนการอบรม และช่องทางสนับสนุน | แผนการอบรมก่อนเปิดใช้งาน (Task 5.2) | Passed | SeV |
| CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | ทบทวนคู่มือ แผนการอบรม และช่องทางสนับสนุน | Maintenance Document (SLA) | Passed | SeV |
| CR12 | **Design Constraints** | | | | |
| CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | ตรวจสอบเทคโนโลยี การควบคุม Source Code และเอกสารตามมาตรฐาน | TC-UN13.001 | Passed | SeV |
| CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | ตรวจสอบเทคโนโลยี การควบคุม Source Code และเอกสารตามมาตรฐาน | Software Configuration, Project Repository | Passed | SeV |
| CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | ตรวจสอบเทคโนโลยี การควบคุม Source Code และเอกสารตามมาตรฐาน | TC-UN01.003 | Passed | SeV |
| CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | ตรวจสอบเทคโนโลยี การควบคุม Source Code และเอกสารตามมาตรฐาน | Verification Results รอบที่ 1–3 | Passed | SeV |
| CR13 | **Safety and Reliability Considerations** | | | | |
| CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | ทดลองทำรายการที่ล้มเหลวและตรวจสอบข้อความแจ้งข้อผิดพลาด | TC-UN08.002 | Passed | SeV |
| CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | ทดลองทำรายการที่ล้มเหลวและตรวจสอบข้อความแจ้งข้อผิดพลาด | TC-UN04.002 | Passed | SeV |
| CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | ทดลองทำรายการที่ล้มเหลวและตรวจสอบข้อความแจ้งข้อผิดพลาด | TC-UN13.004 | Passed | SeV |
| CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | ทดลองทำรายการที่ล้มเหลวและตรวจสอบข้อความแจ้งข้อผิดพลาด | TC-UN10.002 | Passed | SeV |
| CR14 | **Quality Expectations** | | | | |
| CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | ทบทวนผลการทดสอบ การสอบกลับ และผลการตรวจสอบ | Test Report | Passed | SeV |
| CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | ทบทวนผลการทดสอบ การสอบกลับ และผลการตรวจสอบ | Traceability Record | Passed | SeV |
| CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | ทบทวนผลการทดสอบ การสอบกลับ และผลการตรวจสอบ | ผลการทดสอบการยอมรับในเอกสารฉบับนี้ | Passed | SeV |
| CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | ทบทวนผลการทดสอบ การสอบกลับ และผลการตรวจสอบ | TC-UN12.001, TC-UN12.002 / Test Report, Correction Register | Passed | SeV |
## สรุปผลการทดสอบการยอมรับรายหมวด
| หมวดความต้องการ | จำนวนรายการ | ผ่าน (Passed) | ไม่ผ่าน (Failed) |
| --- | ---: | ---: | ---: |
| CR01 Feature & Functional Characteristics | 24 | 24 | 0 |
| CR02 Performance Considerations | 3 | 3 | 0 |
| CR03 Interface Considerations | 5 | 5 | 0 |
| CR04 Required System Characteristics | 4 | 4 | 0 |
| CR05 Human Engineering Considerations | 5 | 5 | 0 |
| CR06 Security Considerations | 6 | 6 | 0 |
| CR07 Environmental Considerations | 4 | 4 | 0 |
| CR08 Operational Considerations | 5 | 5 | 0 |
| CR09 Maintenance Considerations | 4 | 4 | 0 |
| CR10 Installation Considerations | 4 | 4 | 0 |
| CR11 Support Considerations | 4 | 4 | 0 |
| CR12 Design Constraints | 4 | 4 | 0 |
| CR13 Safety and Reliability Considerations | 4 | 4 | 0 |
| CR14 Quality Expectations | 4 | 4 | 0 |
## สรุปผลการทดสอบการยอมรับ
| รายการ | จำนวน |
| --- | ---: |
| สถานการณ์ทดสอบทั้งหมด | 12 |
| ผ่าน (Passed) | 12 |
| หมวดความต้องการที่ทดสอบ | 14 |
| ความต้องการที่ทดสอบทั้งหมด | 80 |
| ผ่าน (Passed) | 80 |
| ไม่ผ่าน (Failed) | 0 |
| ค้างการทดสอบ | 0 |
ตัวแทนลูกค้าได้ทดสอบการยอมรับครบทุกสถานการณ์บนสภาพแวดล้อมใช้งานจริง ผลการทดสอบผ่านทั้งหมด ไม่พบประเด็นที่ขัดขวางการเปิดใช้งาน จึงยืนยันความพร้อมของระบบสำหรับการตรวจรับส่งมอบ ซึ่งบันทึกไว้ใน Acceptance Report เมื่อ 17 สิงหาคม 2569
ตัวแทนลูกค้าได้ทดสอบการยอมรับครบทุกความต้องการใน Customer Requirements บนสภาพแวดล้อมใช้งานจริง ผลการทดสอบผ่านทั้งหมด ไม่พบประเด็นที่ขัดขวางการเปิดใช้งาน จึงยืนยันความพร้อมของระบบสำหรับการตรวจรับส่งมอบ ซึ่งบันทึกไว้ใน Acceptance Report เมื่อ 17 สิงหาคม 2569
## ผู้จัดทำเอกสาร (Secretary)
@@ -19,7 +19,7 @@
| 3 | Progress Status Record (15 Report) | 1. 200-WMS-26-001-00 Progress Status Record 25690109 V1.0 ApS<br>2. 200-WMS-26-001-00 Progress Status Record 25690123 V1.0 ApS<br>3. 200-WMS-26-001-00 Progress Status Record 25690206 V1.0 ApS<br>4. 200-WMS-26-001-00 Progress Status Record 25690218 V1.0 ApS<br>5. 200-WMS-26-001-00 Progress Status Record 25690225 V1.0 ApS<br>6. 200-WMS-26-001-00 Progress Status Record 25690317 V1.0 ApS<br>7. 200-WMS-26-001-00 Progress Status Record 25690429 V1.0 ApS<br>8. 200-WMS-26-001-00 Progress Status Record 25690508 V1.0 ApS<br>9. 200-WMS-26-001-00 Progress Status Record 25690513 V1.0 ApS<br>10. 200-WMS-26-001-00 Progress Status Record 25690523 V1.0 ApS<br>11. 200-WMS-26-001-00 Progress Status Record 25690529 V1.0 ApS<br>12. 200-WMS-26-001-00 Progress Status Record 25690803 V1.0 ApS<br>13. 200-WMS-26-001-00 Progress Status Record 25690814 V1.0 ApS<br>14. 200-WMS-26-001-00 Progress Status Record 25690817 V1.0 ApS<br>15. 200-WMS-26-001-00 Progress Status Record 25690824 V1.0 ApS | บันทึกความก้าวหน้าของโครงการรายงวด |
| 4 | Correction Register | 200-WMS-26-001-00 Correction Register 25690817 V1.0 YaB | เอกสารสรุปปัญหาที่พบระหว่างดำเนินโครงการ |
| 5 | Acceptance Record | 200-WMS-26-001-00 Acceptance Report 25690817 V1.0 ApS | บันทึกการส่งมอบงาน (Sign off Letter) |
| 6 | Change Requests (3 ฉบับ) | 1. 200-WMS-26-001-00 Change Report 25690521 V1.0 NoC<br>2. 200-WMS-26-001-00 Change Report 25690808 V1.0 ApS<br>3. 200-WMS-26-001-00 Change Report 25690810 V1.0 SeV | บันทึกขอการเปลี่ยนแปลงความต้องการ |
| 6 | Change Requests (1 ฉบับ) | 200-WMS-26-001-00 Change Report 25690817 V1.0 ApS | บันทึกขอการเปลี่ยนแปลงความต้องการ |
| 7 | Meeting Record (12 MoM Report) | 1. 200-WMS-26-001-00 Minutes Of Meeting 25690105 V1.0 YaB<br>2. 200-WMS-26-001-00 Minutes Of Meeting 25690123 V1.0 YaB<br>3. 200-WMS-26-001-00 Minutes Of Meeting 25690218 V1.0 YaB<br>4. 200-WMS-26-001-00 Minutes Of Meeting 25690317 V1.0 YaB<br>5. 200-WMS-26-001-00 Minutes Of Meeting 25690429 V1.0 YaB<br>6. 200-WMS-26-001-00 Minutes Of Meeting 25690513 V1.0 YaB<br>7. 200-WMS-26-001-00 Minutes Of Meeting 25690523 V1.0 YaB<br>8. 200-WMS-26-001-00 Minutes Of Meeting 25690529 V1.0 YaB<br>9. 200-WMS-26-001-00 Minutes Of Meeting 25690803 V1.0 YaB<br>10. 200-WMS-26-001-00 Minutes Of Meeting 25690814 V1.0 YaB<br>11. 200-WMS-26-001-00 Minutes Of Meeting 25690817 V1.0 YaB<br>12. 200-WMS-26-001-00 Minutes Of Meeting 25690824 V1.0 YaB | รายงานการประชุมตามแผนการทำงานใน Work Schedule |
| 8 | Software Configuration | 200-WMS-26-001-00 Software Configuration 25690817 V1.0 ThS | บันทึกการกำหนดค่าและความเปลี่ยนแปลงต่าง ๆ ที่เกิดขึ้นของระบบ |
| 9 | Project Repository | 200-WMS-26-001-00 Project Repository 25690817 V1.0 ThS | พื้นที่เก็บข้อมูล เอกสาร และหลักฐานทุกอย่างของโครงการ (Git Server: `git@188.166.228.62:nok/wms-app.git`) |
@@ -59,8 +59,8 @@
| Work Products กระบวนการ PM | 10 |
| Work Products กระบวนการ SI | 12 |
| เอกสารประกอบเพิ่มเติม (Other Document) | 5 |
| ไฟล์เอกสารที่จัดเก็บทั้งหมด | 58 |
| เอกสารที่จัดเตรียมครบถ้วน | 58 |
| ไฟล์เอกสารที่จัดเก็บทั้งหมด | 56 |
| เอกสารที่จัดเตรียมครบถ้วน | 56 |
| เอกสารที่ยังไม่ได้จัดเตรียม | 0 |
เอกสารและหลักฐานทั้งหมดจัดเก็บใน Project Repository และสำรองไว้ตามที่ระบุในเอกสาร Project Repository (Backup) โดยชุดเอกสารส่งมอบควบคุมด้วย Tag `sdlc-v1.0-final`
@@ -16,88 +16,88 @@
## ตารางสรุปการสอบกลับ
| CR ID | Customer Requirement | SRS ID | Unit ID | Test Case ID | ผลการทดสอบ | ผล UAT |
| --- | --- | --- | --- | :---: | :---: | :---: |
| CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | SR03:001, SR08:001 | UN01.001 | TC-UN01.001 | Passed | Passed |
| CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | SR03:001, SR04:001, SR07:005 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | SR03:001, SR07:003 | UN01.003 | TC-UN01.003 | Passed | Passed |
| CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | SR03:001, SR03:002 | UN01.004, UN02.001, UN02.002 | TC-UN01.004 | Passed | Passed |
| CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | SR03:003, SR08:002 | UN03.001, UN03.002, UN03.003 | TC-UN03.001 | Passed | Passed |
| CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | SR03:003 | UN03.004 | TC-UN03.004 | Passed | Passed |
| CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | SR03:004, SR08:003 | UN04.001 | TC-UN04.001 | Passed | Passed |
| CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | SR03:004, SR09:003 | UN04.002 | TC-UN04.002 | Passed | Passed |
| CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | SR03:004 | UN04.003 | TC-UN04.003 | Passed | Passed |
| CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | SR03:004, SR08:002 | UN04.004 | TC-UN04.004 | Passed | Passed |
| CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | SR03:009 | UN09.002 | TC-UN09.002 | Passed | Passed |
| CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | SR03:004 | UN04.005 | TC-UN04.005 | Passed | Passed |
| CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | SR03:005, SR04:002 | UN05.001, UN05.002, UN05.003, UN05.004 | TC-UN05.001 | Passed | Passed |
| CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | SR03:006, SR04:002 | UN06.001, UN06.002, UN06.003, UN06.004 | TC-UN06.001 | Passed | Passed |
| CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | SR03:007, SR04:002 | UN07.001, UN07.002 | TC-UN07.001 | Passed | Passed |
| CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | SR03:008 | UN08.001, UN08.002 | TC-UN08.001 | Passed | Passed |
| CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | SR03:009 | UN09.003 | TC-UN09.003 | Passed | Passed |
| CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | SR03:010, SR04:005, SR08:004 | UN10.001, UN10.002 | TC-UN10.001 | Passed | Passed |
| CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | SR03:004 | UN04.006 | TC-UN04.006 | Passed | Passed |
| CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | SR03:009 | UN09.004 | TC-UN09.004 | Passed | Passed |
| CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | SR03:011, SR04:004, SR06:005 | UN11.001 | TC-UN11.001 | Passed | Passed |
| CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | SR03:011, SR05:002, SR08:004 | UN11.002 | TC-UN11.002 | Passed | Passed |
| CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | SR03:010, SR09:001 | UN10.003 | TC-UN10.003 | Passed | Passed |
| CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | SR04:001, SR04:003, SR07:002 | UN12.001 | TC-UN12.001 | Passed | Passed |
| CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | SR05:001 | UN09.001 | TC-UN09.001 | Passed | Passed |
| CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | SR05:002 | UN09.001, UN11.002 | TC-UN09.001 | Passed | Passed |
| CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | SR05:003 | UN09.001 | TC-UN09.001 | Passed | Passed |
| CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | SR06:001 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | SR06:002 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | SR06:004, SR04:004 | UN11.001 | TC-UN11.001 | Passed | Passed |
| CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | SR06:005 | UN11.001 | TC-UN11.001 | Passed | Passed |
| CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | SR06:004, SR03:002 | UN02.002 | TC-UN02.002 | Passed | Passed |
| CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | SR02:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | SR08:001, SR08:002, SR08:003 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | SR04:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | SR01:002 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | SR02:002 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | SR04:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | SR09:002 | UN10.002 | TC-UN10.002 | Passed | Passed |
| CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | SR09:001 | UN10.002 | TC-UN10.002 | Passed | Passed |
| CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | SR03:004 | UN04.005 | TC-UN04.005 | Passed | Passed |
| CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | SR07:001 | UN12.004 | TC-UN12.004 | Passed | Passed |
| CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | SR01:005 | UN13.003, UN12.004 | TC-UN13.003 | Passed | Passed |
| CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | SR07:002 | UN12.002 | TC-UN12.002 | Passed | Passed |
| CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | SR07:005 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | SR07:004 | UN12.002 | TC-UN12.002 | Passed | Passed |
| CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | SR07:003 | UN01.003 | TC-UN01.003 | Passed | Passed |
| CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | SR01:003 | UN13.001, UN13.002 | TC-UN13.001 | Passed | Passed |
| CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | SR01:006 | UN11.002 | TC-UN11.002 | Passed | Passed |
| CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | SR06:003, SR02:002 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | SR01:003 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | SR01:003 | UN13.004 | TC-UN13.004 | Passed | Passed |
| CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | SR01:003 | UN13.004 | TC-UN13.004 | Passed | Passed |
| CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | SR05:004 | UN11.002 | TC-UN11.002 | Passed | Passed |
| CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | SR04:003 | UN12.001 | TC-UN12.001 | Passed | Passed |
| CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | SR05:002 | UN11.002 | TC-UN11.002 | Passed | Passed |
| CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | SR02:003, SR02:004 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | SR01:005 | UN13.003 | TC-UN13.003 | Passed | Passed |
| CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | SR01:001 | UN13.004 | TC-UN13.004 | Passed | Passed |
| CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | SR08:005, SR08:004 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | SR01:003, SR08:005 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | SR02:005 | UN13.002 | TC-UN13.002 | Passed | Passed |
| CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | SR01:005 | UN13.003 | TC-UN13.003 | Passed | Passed |
| CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | SR01:001 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | SR01:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | SR01:001 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | SR01:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | SR01:001 | UN13.004 | TC-UN13.004 | Passed | Passed |
| CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | SR01:002 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | SR01:001 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | SR01:004 | UN01.003 | TC-UN01.003 | Passed | Passed |
| CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | SR01:001 | UN13.001 | TC-UN13.001 | Passed | Passed |
| CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | SR09:003 | UN08.002 | TC-UN08.002 | Passed | Passed |
| CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | SR09:003 | UN04.002 | TC-UN04.002 | Passed | Passed |
| CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | SR01:003 | UN13.004 | TC-UN13.004 | Passed | Passed |
| CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | SR09:002 | UN10.002 | TC-UN10.002 | Passed | Passed |
| CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | SR01:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | SR01:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | SR01:001 | UN01.002 | TC-UN01.002 | Passed | Passed |
| CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | SR07:002 | UN12.001 | TC-UN12.001 | Passed | Passed |
| CR ID | Customer Requirement | SRS ID | Unit ID | Test Case ID | หลักฐานอื่น (Document) | ผลการทดสอบ | ผล UAT |
| --- | --- | --- | --- | :---: | --- | :---: | :---: |
| CR01:001 | ระบบต้องรองรับการลงทะเบียนเจ้าของบริษัทและการเชิญผู้ใช้งานเข้าร่วมบริษัท (Onboarding) | SR03:001, SR08:001 | UN01.001 | TC-UN01.001 | - | Passed | Passed |
| CR01:002 | ระบบต้องยืนยันตัวตนผู้ใช้และบังคับสิทธิ์ตามบทบาท Owner, Admin, Staff และ Viewer | SR03:001, SR04:001, SR07:005 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR01:003 | ระบบต้องรองรับการกู้คืนรหัสผ่าน การควบคุม Session และการยืนยัน OTP ตามที่กำหนด | SR03:001, SR07:003 | UN01.003 | TC-UN01.003 | - | Passed | Passed |
| CR01:004 | ระบบต้องให้ผู้ดูแลจัดการข้อมูลบริษัท, SMTP, การตั้งค่าระบบ, ผู้ใช้งาน และสิทธิ์การเข้าถึงแอปพลิเคชัน | SR03:001, SR03:002 | UN01.004, UN02.001, UN02.002 | TC-UN01.004, TC-UN02.001, TC-UN02.002 | - | Passed | Passed |
| CR01:005 | ระบบต้องจัดการข้อมูลคลังสินค้า, พื้นที่/ช่องจัดเก็บ, หมวดสินค้า, สินค้า, ประเภทผู้ติดต่อ และผู้ติดต่อ | SR03:003, SR08:002 | UN03.001, UN03.002, UN03.003 | TC-UN03.001, TC-UN03.002, TC-UN03.003 | - | Passed | Passed |
| CR01:006 | ระบบต้องรองรับโครงสร้างตำแหน่งจัดเก็บทั้งแบบคลังเดียวและแบบหลายชั้น (คลัง/พื้นที่/ช่อง) | SR03:003 | UN03.004 | TC-UN03.004 | - | Passed | Passed |
| CR01:007 | ระบบต้องบันทึกการรับสินค้าเข้า (Stock-in) ระบุสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง และข้อมูลติดตาม | SR03:004, SR08:003 | UN04.001 | TC-UN04.001 | - | Passed | Passed |
| CR01:008 | ระบบต้องบันทึกการจ่ายสินค้าออก (Stock-out) โดยตรวจสอบสิทธิ์และยอดคงเหลือก่อนจ่าย | SR03:004, SR09:003 | UN04.002 | TC-UN04.002 | - | Passed | Passed |
| CR01:009 | ระบบต้องโอนย้ายสินค้าระหว่างตำแหน่งจัดเก็บที่ได้รับอนุญาตโดยยอดต้นทาง/ปลายทางสมดุลกัน | SR03:004 | UN04.003 | TC-UN04.003 | - | Passed | Passed |
| CR01:010 | ระบบต้องติดตาม Lot, Serial Number และวันหมดอายุของสินค้าที่เกี่ยวข้อง | SR03:004, SR08:002 | UN04.004 | TC-UN04.004 | - | Passed | Passed |
| CR01:011 | ระบบต้องแสดงภาพรวมสต๊อก, ประวัติความเคลื่อนไหว, ความจุ/การใช้พื้นที่, สินค้าใกล้หมด, สินค้าหมดอายุ และข้อมูล Lot | SR03:009 | UN09.002 | TC-UN09.002 | - | Passed | Passed |
| CR01:012 | ระบบต้องพิมพ์บาร์โค้ดสินค้า (SKU) และตำแหน่งจัดเก็บ และรองรับการสแกนในหน้าจอที่กำหนด | SR03:004 | UN04.005 | TC-UN04.005 | - | Passed | Passed |
| CR01:013 | ระบบต้องสร้างและจัดการใบเสนอราคา, ใบสั่งขาย, ใบแจ้งหนี้, ใบรับคืน และใบลดหนี้ | SR03:005, SR04:002 | UN05.001, UN05.002, UN05.003, UN05.004 | TC-UN05.001, TC-UN05.002, TC-UN05.003, TC-UN05.004 | - | Passed | Passed |
| CR01:014 | ระบบต้องสร้างและจัดการใบขอซื้อ, ใบสั่งซื้อ, ใบแจ้งหนี้ซื้อ และใบคืนสินค้าผู้ขาย | SR03:006, SR04:002 | UN06.001, UN06.002, UN06.003, UN06.004 | TC-UN06.001, TC-UN06.002, TC-UN06.003, TC-UN06.004 | - | Passed | Passed |
| CR01:015 | ระบบต้องสร้างและจัดการใบวางบิลรับ, ใบเสร็จรับเงิน, ใบวางบิลจ่าย และใบสำคัญจ่าย | SR03:007, SR04:002 | UN07.001, UN07.002 | TC-UN07.001, TC-UN07.002 | - | Passed | Passed |
| CR01:016 | ระบบต้องจัดการผังบัญชี, แผนก, สูตรบัญชี, สมุดรายวัน และบัญชีแยกประเภท | SR03:008 | UN08.001, UN08.002 | TC-UN08.001, TC-UN08.002 | - | Passed | Passed |
| CR01:017 | ระบบต้องจัดทำรายงานงบทดลอง, งบกำไรขาดทุน, งบดุล, ภาษีมูลค่าเพิ่ม, สมุดรายวัน และความเคลื่อนไหว GL | SR03:009 | UN09.003 | TC-UN09.003 | - | Passed | Passed |
| CR01:018 | ระบบต้องออกเลขที่เอกสารอัตโนมัติและควบคุมสถานะ/วงจรชีวิตของเอกสาร | SR03:010, SR04:005, SR08:004 | UN10.001, UN10.002 | TC-UN10.001, TC-UN10.002 | - | Passed | Passed |
| CR01:019 | ระบบต้องรองรับการแนบไฟล์ที่อนุญาตกับรายการที่กำหนด | SR03:004 | UN04.006 | TC-UN04.006 | - | Passed | Passed |
| CR01:020 | ระบบต้องให้ผู้ใช้กรอง ดู พิมพ์ และส่งออกรายงานปฏิบัติการและรายงานผู้บริหาร | SR03:009 | UN09.004 | TC-UN09.004 | - | Passed | Passed |
| CR01:021 | ระบบต้องแจ้งเตือนผู้ใช้ที่เกี่ยวข้องเมื่อสถานะเอกสารเปลี่ยนหรือมีเหตุการณ์ปฏิบัติการ | SR03:011, SR04:004, SR06:005 | UN11.001 | TC-UN11.001 | - | Passed | Passed |
| CR01:022 | ระบบต้องสรุปยอดสต๊อก/GL และแจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระตามกำหนดเวลา | SR03:011, SR05:002, SR08:004 | UN11.002 | TC-UN11.002 | - | Passed | Passed |
| CR01:023 | ระบบต้องเก็บผู้สร้าง ผู้แก้ไข สถานะ และประวัติรายการเพื่อการตรวจสอบ | SR03:010, SR09:001 | UN10.003 | TC-UN10.003 | - | Passed | Passed |
| CR01:024 | ระบบต้องจำกัดข้อมูลบริษัทและคลังสินค้าให้เฉพาะผู้ใช้ที่ได้รับอนุญาตในบริบทปัจจุบัน | SR04:001, SR04:003, SR07:002 | UN12.001 | TC-UN12.001 | - | Passed | Passed |
| CR02:001 | ระบบต้องตอบสนองงานประจำวัน (เปิดหน้าจอ, ค้นหา, สร้างเอกสาร) ภายในเวลาที่ใช้งานได้จริงบนสภาพแวดล้อมที่ตกลง | SR05:001 | UN09.001 | TC-UN09.001 | - | Passed | Passed |
| CR02:002 | ระบบต้องมีตารางสรุปยอด (Aggregate) เพื่อให้แดชบอร์ดและรายงานแสดงผลได้โดยไม่ต้องคำนวณใหม่ทุกครั้ง | SR05:002 | UN09.001, UN11.002 | TC-UN09.001, TC-UN11.002 | - | Passed | Passed |
| CR02:003 | ระบบต้องรองรับปริมาณข้อมูลและผู้ใช้พร้อมกันในระดับที่ตกลงสำหรับสภาพแวดล้อมใช้งานจริง | SR05:003 | UN09.001 | TC-UN09.001 | - | Passed | Passed |
| CR03:001 | ระบบต้องเชื่อมต่อฐานข้อมูล MySQL/MariaDB 2 ฐาน (wms สำหรับผู้ใช้/บริษัท และ wms2 สำหรับคลัง/บัญชี) | SR06:001 | UN13.001 | TC-UN13.001 | - | Passed | Passed |
| CR03:002 | ระบบต้องใช้งานผ่าน Web Browser มาตรฐาน (Chrome, Edge, Firefox) ได้ | SR06:002 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR03:003 | ระบบต้องส่งเหตุการณ์ไปยังบริการ Node.js ผ่าน Endpoint ภายในที่ป้องกันด้วย Secret | SR06:004, SR04:004 | UN11.001 | TC-UN11.001 | - | Passed | Passed |
| CR03:004 | Browser ต้องเชื่อมต่อ Socket.IO Endpoint สาธารณะเพื่อรับการแจ้งเตือนแบบ Real-time | SR06:005 | UN11.001 | TC-UN11.001 | - | Passed | Passed |
| CR03:005 | ระบบต้องส่งอีเมล Onboarding, กู้คืนรหัสผ่าน และแจ้งเตือนผ่าน SMTP ที่ตั้งค่าต่อบริษัท | SR06:004, SR03:002 | UN02.002 | TC-UN02.002 | - | Passed | Passed |
| CR04:001 | ระบบต้องพัฒนาบนสถาปัตยกรรม Web-based Application | SR02:001 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR04:002 | ระบบต้องเก็บข้อมูลแบบ Relational Database และรักษา Referential Integrity | SR08:001, SR08:002, SR08:003 | UN13.001 | TC-UN13.001 | - | Passed | Passed |
| CR04:003 | ระบบต้องรองรับการเข้าสู่ระบบด้วย Username/Password และกำหนดบทบาทผู้ใช้ | SR04:001 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR04:004 | ระบบต้องทำงานบน PHP 8 ขึ้นไป, MySQL/MariaDB และ Node.js | SR01:002 | UN13.001 | TC-UN13.001 | - | Passed | Passed |
| CR05:001 | UI ต้องเป็น Responsive ใช้งานได้ทั้งบน Desktop และอุปกรณ์หน้าคลังสินค้า (Tablet/Mobile) | SR02:002 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR05:002 | เมนูและปุ่มคำสั่งต้องแสดงตามบทบาทและสิทธิ์การเข้าถึงของผู้ใช้ | SR04:001 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR05:003 | ระบบต้องแสดงผลการตรวจสอบข้อมูล สถานะ ความสำเร็จ และข้อผิดพลาดอย่างชัดเจน | SR09:002 | UN10.002 | TC-UN10.002 | - | Passed | Passed |
| CR05:004 | ระบบต้องมีขั้นตอนยืนยันก่อนลบ ยกเลิก หรือทำรายการที่ย้อนกลับไม่ได้ | SR09:001 | UN10.002 | TC-UN10.002 | - | Passed | Passed |
| CR05:005 | ระบบต้องพิมพ์เอกสารธุรกิจและฉลากบาร์โค้ดในรูปแบบที่ใช้งานได้ | SR03:004 | UN04.005 | TC-UN04.005 | - | Passed | Passed |
| CR06:001 | การเชื่อมต่อในสภาพแวดล้อมใช้งานจริงต้องเข้ารหัสด้วย HTTPS/TLS | SR07:001 | UN12.004 | TC-UN12.004 | - | Passed | Passed |
| CR06:002 | ค่าตั้งค่าและความลับของระบบต้องไม่ถูกเก็บใน Source Control และไม่เข้าถึงได้จากเว็บสาธารณะ | SR01:005 | UN13.003, UN12.004 | TC-UN13.003, TC-UN12.004 | - | Passed | Passed |
| CR06:003 | การทำงานฝั่งเซิร์ฟเวอร์ต้องตรวจสอบข้อมูลนำเข้า ยืนยันตัวตน ตรวจสิทธิ์ และจำกัดขอบเขตบริษัท/คลัง | SR07:002 | UN12.002 | TC-UN12.002 | - | Passed | Passed |
| CR06:004 | ระบบต้องจำกัดสิทธิ์การเข้าถึงตามบทบาท (Role-based Access Control) ทั้งใน UI และฝั่งเซิร์ฟเวอร์ | SR07:005 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR06:005 | ระบบต้องป้องกัน SQL Injection และ Cross-Site Scripting | SR07:004 | UN12.002 | TC-UN12.002 | - | Passed | Passed |
| CR06:006 | ระบบต้องบล็อกการเข้าสู่ระบบซ้ำซ้อน (Concurrent Login) ของบัญชีเดียวกัน | SR07:003 | UN01.003 | TC-UN01.003 | - | Passed | Passed |
| CR07:001 | ระบบต้องทำงานบน Linux Server ในรูปแบบติดตั้งเอง (LAMP) หรือ Docker Compose | SR01:003 | UN13.001, UN13.002 | TC-UN13.001, TC-UN13.002 | - | Passed | Passed |
| CR07:002 | ระบบต้องใช้เขตเวลา Asia/Bangkok อย่างสม่ำเสมอทั้งแอปพลิเคชันและงานตามกำหนดเวลา | SR01:006 | UN11.002 | TC-UN11.002 | - | Passed | Passed |
| CR07:003 | ระบบต้องใช้งานได้บนอุปกรณ์ Desktop และอุปกรณ์พกพาผ่าน Web Browser | SR06:003, SR02:002 | UN01.002 | TC-UN01.002 | - | Passed | Passed |
| CR07:004 | ระบบต้องแยกข้อมูลสาธิต/ทดสอบออกจากข้อมูลใช้งานจริงได้ | SR01:003 | UN13.001 | TC-UN13.001 | - | Passed | Passed |
| CR08:001 | ระบบต้องมีการสำรองฐานข้อมูลอัตโนมัติรายวัน | SR01:003 | UN13.004 | TC-UN13.004 | - | Passed | Passed |
| CR08:002 | ระบบต้องกู้คืนข้อมูลจากชุดสำรองได้ตามขั้นตอนที่จัดทำเป็นเอกสาร | SR01:003 | UN13.004 | TC-UN13.004 | - | Passed | Passed |
| CR08:003 | ระบบต้องมีการเฝ้าระวังสถานะบริการ Web, Database และ Node.js พร้อมแจ้งเตือนเมื่อขัดข้อง | SR05:004 | - | - | Product Operation Guide (การเฝ้าระวังระบบ) | Passed | Passed |
| CR08:004 | ระบบต้องรองรับหลายบริษัท (Multi-company) และหลายคลังสินค้าภายใต้การแยกข้อมูล | SR04:003 | UN12.001 | TC-UN12.001 | - | Passed | Passed |
| CR08:005 | งานตามกำหนดเวลาต้องทำงานสำเร็จโดยไม่สร้างผลลัพธ์ซ้ำหรือเกินสิทธิ์ | SR05:002 | UN11.002 | TC-UN11.002 | - | Passed | Passed |
| CR09:001 | ซอฟต์แวร์ต้องมีโครงสร้างแบบโมดูล (Manager Classes / API) เพื่อให้แก้ไขได้โดยไม่กระทบส่วนอื่น | SR02:003, SR02:004 | - | - | Software Design (Software Unit), Software Components | Passed | Passed |
| CR09:002 | ระบบต้องมีแม่แบบค่าตั้งค่า (Configuration Template) และควบคุมเวอร์ชันด้วย Git | SR01:005 | UN13.003 | TC-UN13.003 | - | Passed | Passed |
| CR09:003 | ระบบต้องมีเอกสารคู่มือการบำรุงรักษาและประวัติข้อบกพร่องที่แก้ไขแล้ว | SR01:001 | - | - | Maintenance Document, Correction Register | Passed | Passed |
| CR09:004 | การเปลี่ยนแปลงโครงสร้างฐานข้อมูลต้องสะท้อนใน setup.php และตาราง schema_migrations | SR08:005, SR08:004 | UN13.001 | TC-UN13.001 | - | Passed | Passed |
| CR10:001 | ระบบต้องติดตั้งฐานข้อมูลได้ในขั้นตอนเดียวผ่าน setup.php | SR01:003, SR08:005 | UN13.001 | TC-UN13.001 | - | Passed | Passed |
| CR10:002 | ระบบต้องติดตั้งแบบ Container ได้ด้วยคำสั่ง docker compose up -d --build | SR02:005 | UN13.002 | TC-UN13.002 | - | Passed | Passed |
| CR10:003 | ระบบต้องมีสคริปต์สร้างไฟล์ .env และค่าความลับอัตโนมัติ (docker/init-env.sh) | SR01:005 | UN13.003 | TC-UN13.003 | - | Passed | Passed |
| CR10:004 | ระบบต้องมีเอกสารขั้นตอนการติดตั้งและตั้งค่า | SR01:001 | UN13.001, UN13.002 | TC-UN13.001, TC-UN13.002 | Product Operation Guide (ขั้นตอนติดตั้ง) | Passed | Passed |
| CR11:001 | ต้องมีคู่มือผู้ใช้งาน (Software User Document) | SR01:001 | - | - | Software User Document (WP 8.0) | Passed | Passed |
| CR11:002 | ต้องมีคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ (Product Operation Guide) | SR01:001 | - | - | Product Operation Guide (WP 10.0) | Passed | Passed |
| CR11:003 | ต้องมีการอบรมผู้ใช้งานก่อนเปิดใช้งานจริง | SR01:001 | - | - | Training Report | Passed | Passed |
| CR11:004 | ต้องมีช่องทางสนับสนุนและระดับการให้บริการ (SLA) หลังส่งมอบ | SR01:001 | - | - | Maintenance Document (SLA) | Passed | Passed |
| CR12:001 | ระบบต้องพัฒนาด้วย PHP, MariaDB และ Node.js ตามที่องค์กรอนุมัติ | SR01:002 | UN13.001 | TC-UN13.001 | - | Passed | Passed |
| CR12:002 | ระบบต้องควบคุม Source Code ด้วย Git โดยมี main เป็น Baseline หลัก | SR01:001 | - | - | Software Configuration, Project Repository | Passed | Passed |
| CR12:003 | รหัสผ่านผู้ใช้ต้องเข้ารหัสด้วย bcrypt และไม่เก็บหรือบันทึกเป็นข้อความธรรมดา | SR01:004 | UN01.003 | TC-UN01.003 | - | Passed | Passed |
| CR12:004 | โครงการต้องจัดทำ Work Products ตามมาตรฐาน ISO/IEC 29110 Basic Profile | SR01:001 | - | - | List of Evidence, Verification Results | Passed | Passed |
| CR13:001 | การเปลี่ยนแปลงฐานข้อมูลที่เกี่ยวข้องกัน (เอกสาร + สต๊อก + GL) ต้องเป็น Transaction เดียวกัน | SR09:003 | UN08.002 | TC-UN08.002 | - | Passed | Passed |
| CR13:002 | ระบบต้องป้องกันยอดสต๊อกติดลบและความเคลื่อนไหวซ้ำซ้อน | SR09:003 | UN04.002 | TC-UN04.002 | - | Passed | Passed |
| CR13:003 | ระบบต้องรองรับการสำรองและกู้คืน (Backup & Recovery) ทั้ง Source Code และฐานข้อมูล | SR01:003 | UN13.004 | TC-UN13.004 | - | Passed | Passed |
| CR13:004 | ระบบต้องจัดการข้อผิดพลาดโดยแสดงข้อความที่เข้าใจได้แทน Fatal Error | SR09:002 | UN10.002 | TC-UN10.002 | - | Passed | Passed |
| CR14:001 | ระบบต้องผ่านการทดสอบตาม Test Case ที่กำหนดก่อนส่งมอบ | SR01:001 | - | - | Test Report | Passed | Passed |
| CR14:002 | ทุกความต้องการต้องสอบกลับได้ถึงการออกแบบ ส่วนประกอบ และหลักฐานการทดสอบ | SR01:001 | - | - | Traceability Record | Passed | Passed |
| CR14:003 | ระบบต้องผ่านการทดสอบการยอมรับ (UAT) โดยตัวแทนลูกค้าบนสภาพแวดล้อมใช้งานจริง | SR01:001 | - | - | Validation Results, Acceptance Report | Passed | Passed |
| CR14:004 | ต้องไม่มีข้อบกพร่องระดับวิกฤตค้างอยู่ในด้านความปลอดภัย การแยกข้อมูล และความถูกต้องของสต๊อก/บัญชี | SR07:002 | UN12.001, UN12.002 | TC-UN12.001, TC-UN12.002 | Test Report, Correction Register | Passed | Passed |
## สรุปความครอบคลุม
@@ -105,9 +105,10 @@
| --- | ---: |
| ความต้องการของลูกค้าทั้งหมด | 80 |
| เชื่อมโยงกับความต้องการซอฟต์แวร์ | 80 |
| เชื่อมโยงกับ Software Unit | 80 |
| เชื่อมโยงกับ Test Case | 80 |
| ผลการทดสอบผ่าน | 80 |
| เชื่อมโยงกับ Software Unit | 68 |
| เชื่อมโยงกับ Test Case | 68 |
| ยืนยันด้วยเอกสารส่งมอบ (ไม่มี Software Unit) | 12 |
| ผลการทดสอบหรือการตรวจสอบเอกสารผ่าน | 80 |
| ผลการทดสอบการยอมรับผ่าน | 80 |
## ผู้จัดทำเอกสาร (Secretary)