docs(sdlc): update work products for 23/09 review feedback
This commit is contained in:
+2
-2
@@ -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 | ปิดโครงการอย่างเป็นทางการ |
|
||||
|
||||
+30
-4
@@ -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
|
||||
|
||||
วัตถุประสงค์ของแผนบริหารความเสี่ยง คือระบุแนวทางจัดการความเสี่ยงของโครงการ เพื่อให้โครงการบรรลุเป้าหมายภายในเวลา งบประมาณ และคุณภาพที่กำหนด
|
||||
|
||||
+96
-96
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user