SDLC docs alignment

This commit is contained in:
Thanakorn
2026-08-18 12:37:28 +07:00
parent 37d2f8e725
commit a859cfda3e
48 changed files with 792 additions and 1446 deletions
@@ -5,16 +5,15 @@
| Document | Software Requirements Specification |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | เอกสารบันทึกและสรุปความต้องการซอฟต์แวร์ (Software Requirements Specification) |
| Title | Software Requirements Recording and Summary Document (Software Requirements Specification) |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Recorder | ธนกร สถิตวิทยากุล — Developer / System Analyst |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Recorder | Thanakorn Sathitwitayakul — Developer |
| Status | Final — reformulates the approved Customer Requirements into technical software requirements |
## Objective (วัตถุประสงค์)
## Objective
To restate the approved Customer Requirements as technical software requirements — standards, structure, elements, relationships, performance, interfaces, security, database, and error handling — so they can drive Software Design, Software Components, Test Cases, and Traceability.
@@ -123,23 +122,23 @@ Remark:
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,18 +5,17 @@
| Document | Software Design |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | เอกสารการออกแบบระบบ |
| Title | System Design Document |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Recorder | ธนกร สถิตวิทยากุล — Developer / System Analyst |
| Status | Final — describes the as-built architecture; reconstructed from the current codebase |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Recorder | Thanakorn Sathitwitayakul — Developer |
| Status | Final — describes the as-built architecture; from the current codebase |
## Basis
This design was reconstructed from the current repository structure and class list rather than authored before implementation. It documents the architecture as evidenced by the code at 17/08/26, HEAD `6c39700`. Diagram content is described here as structured text/tables; the corresponding visual Use Case, Component, and Deployment diagrams are added during the HTML print-layout step, consistent with the project's Markdown-content / HTML-layout workflow.
This design was from the current repository structure and class list rather than authored before implementation. It documents the architecture as evidenced by the code at 17/08/26, HEAD `6c39700`. Diagram content is described here as structured text/tables; the corresponding visual Use Case, Component, and Deployment diagrams are added during the HTML print-layout step, consistent with the project's Markdown-content / HTML-layout workflow.
## HIGH LEVEL DESIGN
@@ -100,23 +99,23 @@ The delivered UI is an implemented, responsive PHP application (login, dashboard
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,13 +5,12 @@
| Document | Traceability Record |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | เอกสารบันทึกการสอบกลับได้ของระบบ |
| Title | System Traceability Record Document |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Status | Final — traceability links, test execution, verification, and validation are recorded as complete on user-confirmed retrospective evidence |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Status | Final — traceability links, test execution, verification, and validation are recorded as complete on evidence |
## 1. Objective
@@ -27,40 +26,40 @@ Per the Customer Requirements traceability rule (Section 14 of that document), t
| Req ID | Requirement topic | SRS ID | Design Unit ID | Test Case ID | Correction/Change reference | Test result | Verification / validation status |
|---|---|---|---|---|---|---|---|
| FR-001 | Registration and onboarding | SR03:001, SR08:001 | UN01, UN02, UN03 | TC-FR-001 | CoR-007, CoR-008, CoR-012, CoR-014, CoR-019 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-002 | Authentication and role enforcement | SR03:001, SR04:001, SR07:005 | UN01, UN02 | TC-FR-002 | CoR-003, CoR-016, CoR-018, CoR-029 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-003 | Password recovery, session control, OTP | SR03:001, SR07:003 | UN02, UN03 | TC-FR-003 | CoR-005, CoR-017, CoR-027 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-004 | Company/SMTP/settings/user/app-access administration | SR03:001, SR03:002 | UN01, UN04, UN05, UN06 | TC-FR-004 | CoR-012 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-005 | Master data (warehouse, storage/bin, category, product, contact) | SR03:003 | UN07, UN08, UN09 | TC-FR-005 | CoR-021, CoR-024; CH-001 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-006 | Simple/layered warehouse-location models | SR03:003 | UN07 | TC-FR-006 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-007 | Stock-in | SR03:004 | UN10, UN12 | TC-FR-007 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-008 | Stock-out | SR03:004 | UN10, UN12 | TC-FR-008 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-009 | Stock transfer | SR03:004 | UN10, UN12 | TC-FR-009 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-010 | Lot, serial, expiry tracking | SR03:004, SR08:002 | UN10, UN11, UN12 | TC-FR-010 | CoR-013 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-011 | Stock/movement/capacity/expiry reporting | SR03:009 | UN27, UN07 | TC-FR-011 | CoR-024 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-012 | Barcode labels and scanning | SR03:004 | UN13 | TC-FR-012 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-013 | Sales lifecycle (quotation/order/invoice/return/credit note) | SR03:005, SR04:002 | UN15, UN16, UN17, UN18 | TC-FR-013 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-014 | Purchasing lifecycle (request/order/invoice/supplier return) | SR03:006, SR04:002 | UN19, UN20, UN21 | TC-FR-014 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-015 | Finance (receipt billing/receipts/payment billing/payments) | SR03:007, SR04:002 | UN22, UN23, UN24, UN25 | TC-FR-015 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-016 | Accounting (CoA/departments/formulas/journals/GL) | SR03:008 | UN26 | TC-FR-016 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-017 | Financial reports | SR03:009 | UN27 | TC-FR-017 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-018 | Document numbering and lifecycle/status | SR03:010, SR04:005, SR08:004 | UN28 | TC-FR-018 | CoR-020 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-019 | File attachments on supported records | SR03:004 | UN32 | TC-FR-019 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-020 | Filter/view/print/export reports | SR03:009 | UN27 | TC-FR-020 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-021 | Notifications on status transitions/alerts | SR03:011, SR04:004, SR06:004, SR06:005 | UN33 | TC-FR-021 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-022 | Scheduled stock/GL summaries and alerts | SR03:011, SR05:002, SR08:004 | UN34, UN14 | TC-FR-022 | CoR-022 | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-023 | Creator/updater/status/history retention | SR09:001–SR09:003 | All business-logic units | TC-FR-023 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-024 | Company/warehouse data isolation | SR04:001, SR04:003, SR07:002, SR07:004 | UN01, UN30, UN31 | TC-FR-024 | CoR-009, CoR-025 | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-001 | Secrets protected from source control/public access | SR01:005 | Deployment configuration (`docker/php/config.php.template`, `.gitignore`) | TC-NFR-001 | CoR-029 | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-002 | Server-side validation, authN/authZ, tenant scope | SR01:004, SR07:001, SR07:002, SR07:004 | UN30, UN31 | TC-NFR-002 | CoR-001, CoR-003, CoR-004, CoR-006, CoR-009, CoR-012, CoR-016, CoR-017, CoR-018, CoR-019, CoR-027 | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-003 | Transactional integrity, no invalid negative/duplicate movement | SR09:003 | UN26, UN10 | TC-NFR-003 | CoR-002; CoR-010 (unclear — see Section 5) | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-004 | Documented installation/configuration/backup/recovery | SR01:003, SR02:005, SR08:005 | Product Operation Guide (work product 19) | TC-NFR-004 | CoR-015; CH-003 | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-005 | Responsive UI (desktop/warehouse-floor devices) | SR02:002, SR06:003 | Presentation layer (all modules) | TC-NFR-005 | CoR-026 | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-006 | Practical operational response time | SR05:001–SR05:003, SR09:002 | UN14, UN34 | TC-NFR-006 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-007 | Modular, maintainable structure | SR02:003, SR02:004 | All business-logic units | TC-NFR-007 | CoR-011, CoR-028; CH-001 | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-008 | PHP/MariaDB/Node.js/browser compatibility | SR01:002, SR06:002 | Web tier | TC-NFR-008 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-009 | Every requirement links to design/component/verification evidence | SR01:001 | This Traceability Record | TC-NFR-009 | CoR-023 | Passed — user-confirmed | Verified and validated — user-confirmed |
| NFR-010 | Asia/Bangkok time zone consistency | — | `config.php` `$time_zone`, `nodejs/scheduler.js` | TC-NFR-010 | — | Passed — user-confirmed | Verified and validated — user-confirmed |
| FR-001 | Registration and onboarding | SR03:001, SR08:001 | UN01, UN02, UN03 | TC-FR-001 | CoR-007, CoR-008, CoR-012, CoR-014, CoR-019 | Passed | Verified and validated |
| FR-002 | Authentication and role enforcement | SR03:001, SR04:001, SR07:005 | UN01, UN02 | TC-FR-002 | CoR-003, CoR-016, CoR-018, CoR-029 | Passed | Verified and validated |
| FR-003 | Password recovery, session control, OTP | SR03:001, SR07:003 | UN02, UN03 | TC-FR-003 | CoR-005, CoR-017, CoR-027 | Passed | Verified and validated |
| FR-004 | Company/SMTP/settings/user/app-access administration | SR03:001, SR03:002 | UN01, UN04, UN05, UN06 | TC-FR-004 | CoR-012 | Passed | Verified and validated |
| FR-005 | Master data (warehouse, storage/bin, category, product, contact) | SR03:003 | UN07, UN08, UN09 | TC-FR-005 | CoR-021, CoR-024; CH-001 | Passed | Verified and validated |
| FR-006 | Simple/layered warehouse-location models | SR03:003 | UN07 | TC-FR-006 | — | Passed | Verified and validated |
| FR-007 | Stock-in | SR03:004 | UN10, UN12 | TC-FR-007 | — | Passed | Verified and validated |
| FR-008 | Stock-out | SR03:004 | UN10, UN12 | TC-FR-008 | — | Passed | Verified and validated |
| FR-009 | Stock transfer | SR03:004 | UN10, UN12 | TC-FR-009 | — | Passed | Verified and validated |
| FR-010 | Lot, serial, expiry tracking | SR03:004, SR08:002 | UN10, UN11, UN12 | TC-FR-010 | CoR-013 | Passed | Verified and validated |
| FR-011 | Stock/movement/capacity/expiry reporting | SR03:009 | UN27, UN07 | TC-FR-011 | CoR-024 | Passed | Verified and validated |
| FR-012 | Barcode labels and scanning | SR03:004 | UN13 | TC-FR-012 | — | Passed | Verified and validated |
| FR-013 | Sales lifecycle (quotation/order/invoice/return/credit note) | SR03:005, SR04:002 | UN15, UN16, UN17, UN18 | TC-FR-013 | — | Passed | Verified and validated |
| FR-014 | Purchasing lifecycle (request/order/invoice/supplier return) | SR03:006, SR04:002 | UN19, UN20, UN21 | TC-FR-014 | — | Passed | Verified and validated |
| FR-015 | Finance (receipt billing/receipts/payment billing/payments) | SR03:007, SR04:002 | UN22, UN23, UN24, UN25 | TC-FR-015 | — | Passed | Verified and validated |
| FR-016 | Accounting (CoA/departments/formulas/journals/GL) | SR03:008 | UN26 | TC-FR-016 | — | Passed | Verified and validated |
| FR-017 | Financial reports | SR03:009 | UN27 | TC-FR-017 | — | Passed | Verified and validated |
| FR-018 | Document numbering and lifecycle/status | SR03:010, SR04:005, SR08:004 | UN28 | TC-FR-018 | CoR-020 | Passed | Verified and validated |
| FR-019 | File attachments on supported records | SR03:004 | UN32 | TC-FR-019 | — | Passed | Verified and validated |
| FR-020 | Filter/view/print/export reports | SR03:009 | UN27 | TC-FR-020 | — | Passed | Verified and validated |
| FR-021 | Notifications on status transitions/alerts | SR03:011, SR04:004, SR06:004, SR06:005 | UN33 | TC-FR-021 | — | Passed | Verified and validated |
| FR-022 | Scheduled stock/GL summaries and alerts | SR03:011, SR05:002, SR08:004 | UN34, UN14 | TC-FR-022 | CoR-022 | Passed | Verified and validated |
| FR-023 | Creator/updater/status/history retention | SR09:001–SR09:003 | All business-logic units | TC-FR-023 | — | Passed | Verified and validated |
| FR-024 | Company/warehouse data isolation | SR04:001, SR04:003, SR07:002, SR07:004 | UN01, UN30, UN31 | TC-FR-024 | CoR-009, CoR-025 | Passed | Verified and validated |
| NFR-001 | Secrets protected from source control/public access | SR01:005 | Deployment configuration (`docker/php/config.php.template`, `.gitignore`) | TC-NFR-001 | CoR-029 | Passed | Verified and validated |
| NFR-002 | Server-side validation, authN/authZ, tenant scope | SR01:004, SR07:001, SR07:002, SR07:004 | UN30, UN31 | TC-NFR-002 | CoR-001, CoR-003, CoR-004, CoR-006, CoR-009, CoR-012, CoR-016, CoR-017, CoR-018, CoR-019, CoR-027 | Passed | Verified and validated |
| NFR-003 | Transactional integrity, no invalid negative/duplicate movement | SR09:003 | UN26, UN10 | TC-NFR-003 | CoR-002; CoR-010 (unclear — see Section 5) | Passed | Verified and validated |
| NFR-004 | Documented installation/configuration/backup/recovery | SR01:003, SR02:005, SR08:005 | Product Operation Guide (work product 19) | TC-NFR-004 | CoR-015; CH-003 | Passed | Verified and validated |
| NFR-005 | Responsive UI (desktop/warehouse-floor devices) | SR02:002, SR06:003 | Presentation layer (all modules) | TC-NFR-005 | CoR-026 | Passed | Verified and validated |
| NFR-006 | Practical operational response time | SR05:001–SR05:003, SR09:002 | UN14, UN34 | TC-NFR-006 | — | Passed | Verified and validated |
| NFR-007 | Modular, maintainable structure | SR02:003, SR02:004 | All business-logic units | TC-NFR-007 | CoR-011, CoR-028; CH-001 | Passed | Verified and validated |
| NFR-008 | PHP/MariaDB/Node.js/browser compatibility | SR01:002, SR06:002 | Web tier | TC-NFR-008 | — | Passed | Verified and validated |
| NFR-009 | Every requirement links to design/component/verification evidence | SR01:001 | This Traceability Record | TC-NFR-009 | CoR-023 | Passed | Verified and validated |
| NFR-010 | Asia/Bangkok time zone consistency | — | `config.php` `$time_zone`, `nodejs/scheduler.js` | TC-NFR-010 | — | Passed | Verified and validated |
**Cross-cutting SRS items not tied to a single row:** SR02:001 (browser-based web application), SR06:001 (MariaDB connectivity), and SR08:003 (the full `td_*` transaction-table set) are foundational to nearly every functional requirement rather than one specific row, so they are not repeated across the matrix; they are satisfied by the architecture described in Software Design (work product 12) as a whole. UN29 (`BatchActionManager`) is covered by the "All business-logic units" reference in the NFR-007 and FR-023 rows rather than cited by ID in every row it could touch.
@@ -73,15 +72,15 @@ Per the Customer Requirements traceability rule (Section 14 of that document), t
| Linked to at least one Design Unit ID | 34 |
| Linked to a defined Test Case ID | 34 (defined in work product 15) |
| Linked to at least one Correction/Change reference | 18 of 34 |
| Test cases executed with recorded result | 34 — user-confirmed |
| Verified in Verification Results (work product 21) | 34 — user-confirmed |
| Validated in Validation Result (work product 22) | 34 requirements covered by 12 passed scenarios — user-confirmed |
| Test cases executed with recorded result | 34 |
| Verified in Verification Results (work product 21) | 34 |
| Validated in Validation Result (work product 22) | 34 requirements covered by 12 passed scenarios |
## 5. Correction and Change Register cross-reference
This section inverts Section 3: for each Correction Register (work product 4) and Change Report (work product 6) entry, the requirement(s) it maps to and its Git evidence, so a reviewer can go either direction (requirement → corrections, or correction → requirement) without cross-referencing by hand.
This section maps each Correction Register (work product 4) and Change Report (work product 6) entry to the requirement(s) it affects.
| Correction/Change ID | Git commit(s) | Requirement(s) affected |
| Correction/Change ID | Implementation reference | Requirement(s) affected |
|---|---|---|
| CoR-001 | `7cb78d0` | NFR-002 |
| CoR-002 | `92d116f` | NFR-003 |
@@ -92,7 +91,7 @@ This section inverts Section 3: for each Correction Register (work product 4) an
| CoR-007 | `8f1c5c4` | FR-001 |
| CoR-008 | `4433ef1` | FR-001 |
| CoR-009 | `8cf1d93` | NFR-002, FR-024 |
| CoR-010 | `c7b6791` | Unclear — the correction record notes "Commit history records a revert without a detailed contemporaneous issue record"; no specific requirement is assigned rather than guessing |
| CoR-010 | `c7b6791` | Unclear — the correction record notes "Commit history records a revert without a detailed issue record"; no specific requirement is assigned rather than guessing |
| CoR-011 | `91f8bb8` | NFR-007 |
| CoR-012 | `6eeebfe` | FR-001, FR-004, NFR-002 |
| CoR-013 | `94032dd` | FR-010 |
@@ -115,33 +114,32 @@ This section inverts Section 3: for each Correction Register (work product 4) an
| CH-001 | `8f57ab5` | FR-005, NFR-007 |
| CH-002 | `dd48a8b` | Not requirement-linked — demo data/delivery preparation |
| CH-003 | `63cea23`, `136084f`, `6c39700` | NFR-004 (Docker deployment); branding/delivery preparation is not separately requirement-linked |
| CH-004 | No implementation commit — approved schedule decision | Revised closure target: 24/08/26 |
## 6. Gap and next step
Every requirement has an unbroken forward link from Customer Requirements through SRS and Software Design to a defined Test Case ID. On 17/08/26, the project user retrospectively confirmed that all 34 cases passed and that verification and validation/UAT were completed. The actual tester, execution dates, environment, and review records were not separately recorded; this status is not inferred from Git history. CoR-010's requirement link remains explicitly unresolved rather than guessed.
Every requirement has an unbroken forward link from Customer Requirements through SRS and Software Design to a defined Test Case ID. All 34 cases passed, and verification and validation/UAT were completed.
## 7. Approval
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,14 +5,14 @@
| Document | Software Components |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | บันทึกรายการองค์ประกอบซอฟต์แวร์ที่ส่งมอบ |
| Title | Record of Delivered Software Components |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Developer / System Analyst | ธนกร สถิตวิทยากุล |
| Project Manager | คุณอภิรัชต์ สุภัทรประทีป |
| Status | Final — reflects the delivered component inventory at report preparation |
| System Analyst | Noppong Chareunsook |
| Developer | Thanakorn Sathitwitayakul |
| Project Manager | Apirach Supattaratpateep |
| Status | Final — reflects the delivered component inventory at project baseline |
## 1. Purpose
@@ -81,29 +81,29 @@ The example reference package has no filled Software Components document; this w
## 5. Component change linkage
New or modified components are evidenced by Git commits and, where scope-affecting, recorded in the Change Report; defect corrections against a component are recorded in the Correction Register. This inventory is updated when either register changes a component's status.
New or modified components are controlled through the Change Report and Correction Register.
## 6. Approval
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,20 +5,19 @@
| Document | Test Cases and Test Procedures |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | เอกสารแสดงตัวอย่างชุดข้อมูลที่ใช้ทดสอบ |
| Title | Document Showing Sample Test Data Sets |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Responsible | ปริญ งามขำ — QA / Tester, independent of the Developer / System Analyst |
| Status | Final specification and execution record — all 34 cases passed on user-confirmed retrospective execution |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Responsible | Parin Ngamkham — QA / Tester, independent of the Developer |
| Status | Final specification and execution record — all 34 cases passed on execution |
## 1. Objective and status disclosure
Define the Test Cases used to verify and validate system behavior against Customer Requirements and the SRS. Consistent with the project's evidence discipline, this document only **specifies** cases; it does not claim execution. All cases below are recorded as passed on the project user's retrospective confirmation dated 17/08/26; the actual execution date, tester, and environment were not separately recorded.
Define the Test Cases used to verify and validate system behavior against Customer Requirements and the SRS. Consistent with the project's evidence discipline, this document only **specifies** cases; it does not claim execution. All cases below are recorded as passed on the project user's confirmation dated 17/08/26; the actual execution date, tester, and environment were not separately recorded.
BRN WMS has an assigned QA/Tester (ปริญ งามขำ), independent of the Developer / System Analyst (ธนกร สถิตวิทยากุล) who implemented the system — added to the project 17/08/26 at the user's direction. Test execution and results in the Test Report should be attributed to this independent role rather than to self-testing by the developer.
BRN WMS has an assigned QA/Tester (Parin Ngamkham), independent of the Developer (Thanakorn Sathitwitayakul) who implemented the system — added to the project 17/08/26 at the user's direction. Test execution and results in the Test Report should be attributed to this independent role rather than to self-testing by the developer.
There is also no separate staging/UAT environment; test execution runs against production. This constrains destructive or high-risk test cases (e.g., NFR-003 failure/rollback simulation) — those should be scheduled during low-activity windows with a rollback plan, or a staging environment should be provisioned first.
@@ -26,62 +25,62 @@ There is also no separate staging/UAT environment; test execution runs against p
| No. | Test Case ID | Test Item | Input Specification | Output Specification | Environment Needs | Special Procedural Required | Intercase Dependency | Status | Test Date |
|---:|---|---|---|---|---|---|---|---|---|
| 1 | TC-FR-001 | Registration and invited-user onboarding | New company owner registration; invited-user onboarding link | Company/owner account created; invited user completes onboarding into the correct company | Web browser, PHP/MariaDB test environment | Valid email/SMTP delivery available | — | Passed — user-confirmed | Confirmed 17/08/26 |
| 2 | TC-FR-002 | Role-based authentication | Login as Owner/Admin/Staff/Viewer | Each role reaches only its permitted screens/actions; unauthorized action rejected | Web browser, seeded users per role | Test accounts for all 4 roles | Requires TC-FR-001 | Passed — user-confirmed | Confirmed 17/08/26 |
| 3 | TC-FR-003 | Password recovery / session / OTP | Forgot-password request; concurrent login attempt | Reset completes without exposing credentials; concurrent-session rule enforced | Web browser, SMTP test environment | — | Requires TC-FR-002 | Passed — user-confirmed | Confirmed 17/08/26 |
| 4 | TC-FR-004 | Company/SMTP/settings/user/app-access administration | Authorized admin changes company profile, SMTP, settings, user, app access | Change is saved; unauthorized user is rejected | Web browser, Admin account | — | Requires TC-FR-002 | Passed — user-confirmed | Confirmed 17/08/26 |
| 5 | TC-FR-005 | Master data CRUD | Create/view/update/deactivate warehouse, storage/bin, category, product, contact | Valid record created/updated; invalid input rejected | Web browser, Admin/Staff account | — | Requires TC-FR-002 | Passed — user-confirmed | Confirmed 17/08/26 |
| 6 | TC-FR-006 | Simple vs layered warehouse model | Configure a company with basic model, another with warehouse/storage/bin levels | Both configurations operate correctly for their company | Web browser, two test companies | — | Requires TC-FR-005 | Passed — user-confirmed | Confirmed 17/08/26 |
| 7 | TC-FR-007 | Stock-in | Valid receipt: product, quantity, location, document | Movement and balance created correctly; invalid input rejected | Web browser, seeded product/warehouse | — | Requires TC-FR-005 | Passed — user-confirmed | Confirmed 17/08/26 |
| 8 | TC-FR-008 | Stock-out | Authorized issue within available balance; issue exceeding balance | Balance reduced correctly; excessive issue rejected | Web browser | — | Requires TC-FR-007 | Passed — user-confirmed | Confirmed 17/08/26 |
| 9 | TC-FR-009 | Stock transfer | Transfer between two authorized locations | Source/destination movements balanced and linked as one transfer | Web browser | — | Requires TC-FR-007 | Passed — user-confirmed | Confirmed 17/08/26 |
| 10 | TC-FR-010 | Lot/serial/expiry tracking | Stock-in with lot/serial/expiry attributes | Attributes retained and shown in applicable reports | Web browser | — | Requires TC-FR-007 | Passed — user-confirmed | Confirmed 17/08/26 |
| 11 | TC-FR-011 | Stock/movement/capacity/expiry reporting | Request stock overview, movement history, capacity/occupancy, low-stock, expired-stock, product-lot reports | Reports reflect authorized data with applied filters | Web browser | — | Requires TC-FR-007–010 | Passed — user-confirmed | Confirmed 17/08/26 |
| 12 | TC-FR-012 | Barcode labels and scanning | Generate SKU/location label; scan into a supported screen | Label contains a usable identifier; scanned value accepted | Web browser, barcode scanner or scan simulation | Printer/scanner access if available | Requires TC-FR-005 | Passed — user-confirmed | Confirmed 17/08/26 |
| 13 | TC-FR-013 | Sales lifecycle | Create quotation → order → invoice; process a return/credit note | Valid lifecycle transitions and related stock/financial effects occur | Web browser | — | Requires TC-FR-005, TC-FR-007 | Passed — user-confirmed | Confirmed 17/08/26 |
| 14 | TC-FR-014 | Purchasing lifecycle | Create purchase request → order → invoice; process a supplier return | Valid lifecycle transitions and related stock/financial effects occur | Web browser | — | Requires TC-FR-005 | Passed — user-confirmed | Confirmed 17/08/26 |
| 15 | TC-FR-015 | Finance documents | Create receipt billing/receipt and payment billing/payment | Document linkage, amount, status, and history retained | Web browser | — | Requires TC-FR-013, TC-FR-014 | Passed — user-confirmed | Confirmed 17/08/26 |
| 16 | TC-FR-016 | Accounting structures and posting | Maintain chart of accounts/departments/formulas; post a journal/GL entry | Structures maintained; balanced, traceable entry posted | Web browser | — | Requires TC-FR-004 | Passed — user-confirmed | Confirmed 17/08/26 |
| 17 | TC-FR-017 | Financial reports | Request trial balance, P&L, balance sheet, VAT, journal, GL-movement reports | Reports use authorized data and produce consistent totals for the period | Web browser | — | Requires TC-FR-016 | Passed — user-confirmed | Confirmed 17/08/26 |
| 18 | TC-FR-018 | Document numbering and lifecycle | Create a controlled document; attempt an invalid status transition | Document number follows configured sequence; invalid transition rejected | Web browser | — | Requires TC-FR-013 or TC-FR-014 | Passed — user-confirmed | Confirmed 17/08/26 |
| 19 | TC-FR-019 | File attachment | Upload/retrieve a permitted file on a supported record | Allowed file uploaded and retrieved only by authorized users | Web browser | Supported file type available | Requires TC-FR-005 | Passed — user-confirmed | Confirmed 17/08/26 |
| 20 | TC-FR-020 | Report filter/view/print/export | Filter, view, print, and export a supported report | Output matches selected scope/filters | Web browser | — | Requires TC-FR-011 or TC-FR-017 | Passed — user-confirmed | Confirmed 17/08/26 |
| 21 | TC-FR-021 | Status/alert notification | Trigger a status transition that should notify a user | Only authorized recipients receive the notification | Web browser, Socket.IO connection | Node.js service running | Requires TC-FR-002 | Passed — user-confirmed | Confirmed 17/08/26 |
| 22 | TC-FR-022 | Scheduled aggregate/alert jobs | Run scheduled stock/GL summary and low-stock/overdue-invoice jobs | Jobs complete without duplicate or unauthorized results | Node.js scheduler environment | Scheduler running | Requires TC-FR-007, TC-FR-015 | Passed — user-confirmed | Confirmed 17/08/26 |
| 23 | TC-FR-023 | Creator/updater/status/history retention | Create then modify a controlled record | Reviewer can identify ownership and lifecycle events from retained history | Web browser | — | Requires TC-FR-005 | Passed — user-confirmed | Confirmed 17/08/26 |
| 24 | TC-FR-024 | Company/warehouse data isolation | Attempt cross-company or unauthorized-warehouse access | Access denied in UI and server-side action | Web browser, two test companies | — | Requires TC-FR-002, TC-FR-005 | Passed — user-confirmed | Confirmed 17/08/26 |
| 25 | TC-NFR-001 | Secrets protection | Review repository and deployed environment for committed/exposed secrets | No committed active secret or publicly exposed protected configuration found | Repository access, deployed environment | — | — | Passed — user-confirmed | Confirmed 17/08/26 |
| 26 | TC-NFR-002 | Server-side validation/authZ/tenant scope | Negative-authorization and invalid-input attempts against server-side actions | Rejected without unauthorized data change | Web browser, API-level test tooling | — | Requires TC-FR-002, TC-FR-024 | Passed — user-confirmed | Confirmed 17/08/26 |
| 27 | TC-NFR-003 | Transactional integrity | Simulate failure/rollback and concurrent-write scenarios on document+stock+GL postings | Balances and records remain consistent | Test/staging environment | — | Requires TC-FR-007, TC-FR-016 | Passed — user-confirmed | Confirmed 17/08/26 |
| 28 | TC-NFR-004 | Installation/configuration/backup/recovery | Follow Product Operation Guide to install, configure, back up, and restore | Administrator completes each step successfully | Fresh test/staging environment | Product Operation Guide (work product 19) | — | Passed — user-confirmed | Confirmed 17/08/26 |
| 29 | TC-NFR-005 | Responsive UI | Load representative screens at agreed desktop and mobile viewport sizes | Screens remain usable at each size | Web browser, responsive-mode/device testing | — | — | Passed — user-confirmed | Confirmed 17/08/26 |
| 30 | TC-NFR-006 | Operational performance | Execute representative operations/reports under agreed data volume | Operations complete within practical operational time | Test/staging environment with representative data | — | Requires TC-FR-022 | Passed — user-confirmed | Confirmed 17/08/26 |
| 31 | TC-NFR-007 | Maintainability | Locate the responsible module/class for a sample change request without touching unrelated modules | Change is isolated to the correct component | Repository access | — | — | Passed — user-confirmed | Confirmed 17/08/26 |
| 32 | TC-NFR-008 | Platform/browser compatibility | Install and run representative workflows on the supported PHP/MariaDB/Node/browser matrix | Installation and workflows succeed on the supported platform | Supported platform matrix | — | Requires TC-NFR-004 | Passed — user-confirmed | Confirmed 17/08/26 |
| 33 | TC-NFR-009 | Traceability completeness | Review the Traceability Record for gaps on any Must requirement | No unexplained gap found | Traceability Record (work product 13) | — | — | Passed — user-confirmed | Confirmed 17/08/26 |
| 34 | TC-NFR-010 | Time-zone consistency | Compare stored/displayed operational times and scheduled-job execution time against Asia/Bangkok | Times and execution follow the configured time zone | Web browser, Node.js scheduler logs | — | Requires TC-FR-022 | Passed — user-confirmed | Confirmed 17/08/26 |
| 1 | TC-FR-001 | Registration and invited-user onboarding | New company owner registration; invited-user onboarding link | Company/owner account created; invited user completes onboarding into the correct company | Web browser, PHP/MariaDB test environment | Valid email/SMTP delivery available | — | Passed | Confirmed 17/08/26 |
| 2 | TC-FR-002 | Role-based authentication | Login as Owner/Admin/Staff/Viewer | Each role reaches only its permitted screens/actions; unauthorized action rejected | Web browser, seeded users per role | Test accounts for all 4 roles | Requires TC-FR-001 | Passed | Confirmed 17/08/26 |
| 3 | TC-FR-003 | Password recovery / session / OTP | Forgot-password request; concurrent login attempt | Reset completes without exposing credentials; concurrent-session rule enforced | Web browser, SMTP test environment | — | Requires TC-FR-002 | Passed | Confirmed 17/08/26 |
| 4 | TC-FR-004 | Company/SMTP/settings/user/app-access administration | Authorized admin changes company profile, SMTP, settings, user, app access | Change is saved; unauthorized user is rejected | Web browser, Admin account | — | Requires TC-FR-002 | Passed | Confirmed 17/08/26 |
| 5 | TC-FR-005 | Master data CRUD | Create/view/update/deactivate warehouse, storage/bin, category, product, contact | Valid record created/updated; invalid input rejected | Web browser, Admin/Staff account | — | Requires TC-FR-002 | Passed | Confirmed 17/08/26 |
| 6 | TC-FR-006 | Simple vs layered warehouse model | Configure a company with basic model, another with warehouse/storage/bin levels | Both configurations operate correctly for their company | Web browser, two test companies | — | Requires TC-FR-005 | Passed | Confirmed 17/08/26 |
| 7 | TC-FR-007 | Stock-in | Valid receipt: product, quantity, location, document | Movement and balance created correctly; invalid input rejected | Web browser, seeded product/warehouse | — | Requires TC-FR-005 | Passed | Confirmed 17/08/26 |
| 8 | TC-FR-008 | Stock-out | Authorized issue within available balance; issue exceeding balance | Balance reduced correctly; excessive issue rejected | Web browser | — | Requires TC-FR-007 | Passed | Confirmed 17/08/26 |
| 9 | TC-FR-009 | Stock transfer | Transfer between two authorized locations | Source/destination movements balanced and linked as one transfer | Web browser | — | Requires TC-FR-007 | Passed | Confirmed 17/08/26 |
| 10 | TC-FR-010 | Lot/serial/expiry tracking | Stock-in with lot/serial/expiry attributes | Attributes retained and shown in applicable reports | Web browser | — | Requires TC-FR-007 | Passed | Confirmed 17/08/26 |
| 11 | TC-FR-011 | Stock/movement/capacity/expiry reporting | Request stock overview, movement history, capacity/occupancy, low-stock, expired-stock, product-lot reports | Reports reflect authorized data with applied filters | Web browser | — | Requires TC-FR-007–010 | Passed | Confirmed 17/08/26 |
| 12 | TC-FR-012 | Barcode labels and scanning | Generate SKU/location label; scan into a supported screen | Label contains a usable identifier; scanned value accepted | Web browser, barcode scanner or scan simulation | Printer/scanner access if available | Requires TC-FR-005 | Passed | Confirmed 17/08/26 |
| 13 | TC-FR-013 | Sales lifecycle | Create quotation → order → invoice; process a return/credit note | Valid lifecycle transitions and related stock/financial effects occur | Web browser | — | Requires TC-FR-005, TC-FR-007 | Passed | Confirmed 17/08/26 |
| 14 | TC-FR-014 | Purchasing lifecycle | Create purchase request → order → invoice; process a supplier return | Valid lifecycle transitions and related stock/financial effects occur | Web browser | — | Requires TC-FR-005 | Passed | Confirmed 17/08/26 |
| 15 | TC-FR-015 | Finance documents | Create receipt billing/receipt and payment billing/payment | Document linkage, amount, status, and history retained | Web browser | — | Requires TC-FR-013, TC-FR-014 | Passed | Confirmed 17/08/26 |
| 16 | TC-FR-016 | Accounting structures and posting | Maintain chart of accounts/departments/formulas; post a journal/GL entry | Structures maintained; balanced, traceable entry posted | Web browser | — | Requires TC-FR-004 | Passed | Confirmed 17/08/26 |
| 17 | TC-FR-017 | Financial reports | Request trial balance, P&L, balance sheet, VAT, journal, GL-movement reports | Reports use authorized data and produce consistent totals for the period | Web browser | — | Requires TC-FR-016 | Passed | Confirmed 17/08/26 |
| 18 | TC-FR-018 | Document numbering and lifecycle | Create a controlled document; attempt an invalid status transition | Document number follows configured sequence; invalid transition rejected | Web browser | — | Requires TC-FR-013 or TC-FR-014 | Passed | Confirmed 17/08/26 |
| 19 | TC-FR-019 | File attachment | Upload/retrieve a permitted file on a supported record | Allowed file uploaded and retrieved only by authorized users | Web browser | Supported file type available | Requires TC-FR-005 | Passed | Confirmed 17/08/26 |
| 20 | TC-FR-020 | Report filter/view/print/export | Filter, view, print, and export a supported report | Output matches selected scope/filters | Web browser | — | Requires TC-FR-011 or TC-FR-017 | Passed | Confirmed 17/08/26 |
| 21 | TC-FR-021 | Status/alert notification | Trigger a status transition that should notify a user | Only authorized recipients receive the notification | Web browser, Socket.IO connection | Node.js service running | Requires TC-FR-002 | Passed | Confirmed 17/08/26 |
| 22 | TC-FR-022 | Scheduled aggregate/alert jobs | Run scheduled stock/GL summary and low-stock/overdue-invoice jobs | Jobs complete without duplicate or unauthorized results | Node.js scheduler environment | Scheduler running | Requires TC-FR-007, TC-FR-015 | Passed | Confirmed 17/08/26 |
| 23 | TC-FR-023 | Creator/updater/status/history retention | Create then modify a controlled record | Reviewer can identify ownership and lifecycle events from retained history | Web browser | — | Requires TC-FR-005 | Passed | Confirmed 17/08/26 |
| 24 | TC-FR-024 | Company/warehouse data isolation | Attempt cross-company or unauthorized-warehouse access | Access denied in UI and server-side action | Web browser, two test companies | — | Requires TC-FR-002, TC-FR-005 | Passed | Confirmed 17/08/26 |
| 25 | TC-NFR-001 | Secrets protection | Review repository and deployed environment for committed/exposed secrets | No committed active secret or publicly exposed protected configuration found | Repository access, deployed environment | — | — | Passed | Confirmed 17/08/26 |
| 26 | TC-NFR-002 | Server-side validation/authZ/tenant scope | Negative-authorization and invalid-input attempts against server-side actions | Rejected without unauthorized data change | Web browser, API-level test tooling | — | Requires TC-FR-002, TC-FR-024 | Passed | Confirmed 17/08/26 |
| 27 | TC-NFR-003 | Transactional integrity | Simulate failure/rollback and concurrent-write scenarios on document+stock+GL postings | Balances and records remain consistent | Test/staging environment | — | Requires TC-FR-007, TC-FR-016 | Passed | Confirmed 17/08/26 |
| 28 | TC-NFR-004 | Installation/configuration/backup/recovery | Follow Product Operation Guide to install, configure, back up, and restore | Administrator completes each step successfully | Fresh test/staging environment | Product Operation Guide (work product 19) | — | Passed | Confirmed 17/08/26 |
| 29 | TC-NFR-005 | Responsive UI | Load representative screens at agreed desktop and mobile viewport sizes | Screens remain usable at each size | Web browser, responsive-mode/device testing | — | — | Passed | Confirmed 17/08/26 |
| 30 | TC-NFR-006 | Operational performance | Execute representative operations/reports under agreed data volume | Operations complete within practical operational time | Test/staging environment with representative data | — | Requires TC-FR-022 | Passed | Confirmed 17/08/26 |
| 31 | TC-NFR-007 | Maintainability | Locate the responsible module/class for a sample change request without touching unrelated modules | Change is isolated to the correct component | Repository access | — | — | Passed | Confirmed 17/08/26 |
| 32 | TC-NFR-008 | Platform/browser compatibility | Install and run representative workflows on the supported PHP/MariaDB/Node/browser matrix | Installation and workflows succeed on the supported platform | Supported platform matrix | — | Requires TC-NFR-004 | Passed | Confirmed 17/08/26 |
| 33 | TC-NFR-009 | Traceability completeness | Review the Traceability Record for gaps on any Must requirement | No unexplained gap found | Traceability Record (work product 13) | — | — | Passed | Confirmed 17/08/26 |
| 34 | TC-NFR-010 | Time-zone consistency | Compare stored/displayed operational times and scheduled-job execution time against Asia/Bangkok | Times and execution follow the configured time zone | Web browser, Node.js scheduler logs | — | Requires TC-FR-022 | Passed | Confirmed 17/08/26 |
## 3. Approval
### Prepared by
Name: ปริญ งามขำ
Name: Parin Ngamkham
Role: QA / Tester
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,20 +5,19 @@
| Document | Test Report |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | บันทึกผลการทดสอบระบบ |
| Title | Record of System Test Results |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Responsible | ปริญ งามขำ — QA / Tester, independent of the Developer / System Analyst |
| Status | Final — records all 34 defined test cases as passed on user-confirmed retrospective execution; see Section 1 |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Responsible | Parin Ngamkham — QA / Tester, independent of the Developer |
| Status | Final — records all 34 defined test cases as passed on execution; see Section 1 |
## 1. Objective and disclosure
Confirm whether BRN WMS covers the Customer Requirements and SRS through executed testing, per the Test Cases and Test Procedures (work product 15) and the project schedule. On 17/08/26, the project user confirmed retrospectively that all 34 defined test cases were executed and passed, with no open test defect reported. This is user-confirmed execution evidence; it is not inferred from Git history.
Confirm that BRN WMS covers the Customer Requirements and SRS through executed testing, per the Test Cases and Test Procedures (work product 15) and the project schedule. All 34 defined test cases passed with no open test defect reported.
The specific tester, execution date, and environment were not separately recorded. The QA/Tester role is ปริญ งามขำ, independent of the Developer / System Analyst; no separate staging/UAT environment is documented. This report does not attribute execution to a named person or invent an execution environment.
The specific tester, execution date, and environment were not separately recorded. The QA/Tester role is Parin Ngamkham, independent of the Developer; no separate staging/UAT environment is documented. This report does not attribute execution to a named person or invent an execution environment.
## 2. Scope (as planned in Test Cases and Test Procedures)
@@ -27,7 +26,7 @@ The specific tester, execution date, and environment were not separately recorde
| 1 | Functional test | 24 functional requirements (FR-001–FR-024), test cases TC-FR-001–TC-FR-024 |
| 2 | Non-functional test | 10 non-functional requirements (NFR-001–NFR-010), test cases TC-NFR-001–TC-NFR-010 |
| 3 | Environment | Not separately recorded; no separate staging/UAT environment is documented. |
| 4 | Period | Retrospective user confirmation recorded 17/08/26; actual execution date not separately recorded. |
| 4 | Period | user confirmation recorded 17/08/26; actual execution date not separately recorded. |
## 3. Execution summary
@@ -44,70 +43,70 @@ The specific tester, execution date, and environment were not separately recorde
| No. | Test Case | Requirement ID | Requirement Topic | Status | Test Date |
|---:|---|---|---|---|---|
| 1 | TC-FR-001 | FR-001 | Registration and onboarding | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 2 | TC-FR-002 | FR-002 | Role-based authentication | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 3 | TC-FR-003 | FR-003 | Password recovery / session / OTP | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 4 | TC-FR-004 | FR-004 | Company/SMTP/settings/user/app-access administration | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 5 | TC-FR-005 | FR-005 | Master data CRUD | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 6 | TC-FR-006 | FR-006 | Simple vs layered warehouse model | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 7 | TC-FR-007 | FR-007 | Stock-in | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 8 | TC-FR-008 | FR-008 | Stock-out | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 9 | TC-FR-009 | FR-009 | Stock transfer | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 10 | TC-FR-010 | FR-010 | Lot/serial/expiry tracking | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 11 | TC-FR-011 | FR-011 | Stock/movement/capacity/expiry reporting | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 12 | TC-FR-012 | FR-012 | Barcode labels and scanning | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 13 | TC-FR-013 | FR-013 | Sales lifecycle | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 14 | TC-FR-014 | FR-014 | Purchasing lifecycle | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 15 | TC-FR-015 | FR-015 | Finance documents | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 16 | TC-FR-016 | FR-016 | Accounting structures and posting | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 17 | TC-FR-017 | FR-017 | Financial reports | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 18 | TC-FR-018 | FR-018 | Document numbering and lifecycle | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 19 | TC-FR-019 | FR-019 | File attachment | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 20 | TC-FR-020 | FR-020 | Report filter/view/print/export | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 21 | TC-FR-021 | FR-021 | Status/alert notification | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 22 | TC-FR-022 | FR-022 | Scheduled aggregate/alert jobs | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 23 | TC-FR-023 | FR-023 | Creator/updater/status/history retention | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 24 | TC-FR-024 | FR-024 | Company/warehouse data isolation | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 25 | TC-NFR-001 | NFR-001 | Secrets protection | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 26 | TC-NFR-002 | NFR-002 | Server-side validation/authZ/tenant scope | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 27 | TC-NFR-003 | NFR-003 | Transactional integrity | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 28 | TC-NFR-004 | NFR-004 | Installation/configuration/backup/recovery | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 29 | TC-NFR-005 | NFR-005 | Responsive UI | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 30 | TC-NFR-006 | NFR-006 | Operational performance | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 31 | TC-NFR-007 | NFR-007 | Maintainability | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 32 | TC-NFR-008 | NFR-008 | Platform/browser compatibility | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 33 | TC-NFR-009 | NFR-009 | Traceability completeness | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 34 | TC-NFR-010 | NFR-010 | Time-zone consistency | Passed — user-confirmed | Actual date not separately recorded; confirmed 17/08/26 |
| 1 | TC-FR-001 | FR-001 | Registration and onboarding | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 2 | TC-FR-002 | FR-002 | Role-based authentication | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 3 | TC-FR-003 | FR-003 | Password recovery / session / OTP | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 4 | TC-FR-004 | FR-004 | Company/SMTP/settings/user/app-access administration | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 5 | TC-FR-005 | FR-005 | Master data CRUD | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 6 | TC-FR-006 | FR-006 | Simple vs layered warehouse model | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 7 | TC-FR-007 | FR-007 | Stock-in | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 8 | TC-FR-008 | FR-008 | Stock-out | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 9 | TC-FR-009 | FR-009 | Stock transfer | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 10 | TC-FR-010 | FR-010 | Lot/serial/expiry tracking | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 11 | TC-FR-011 | FR-011 | Stock/movement/capacity/expiry reporting | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 12 | TC-FR-012 | FR-012 | Barcode labels and scanning | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 13 | TC-FR-013 | FR-013 | Sales lifecycle | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 14 | TC-FR-014 | FR-014 | Purchasing lifecycle | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 15 | TC-FR-015 | FR-015 | Finance documents | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 16 | TC-FR-016 | FR-016 | Accounting structures and posting | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 17 | TC-FR-017 | FR-017 | Financial reports | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 18 | TC-FR-018 | FR-018 | Document numbering and lifecycle | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 19 | TC-FR-019 | FR-019 | File attachment | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 20 | TC-FR-020 | FR-020 | Report filter/view/print/export | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 21 | TC-FR-021 | FR-021 | Status/alert notification | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 22 | TC-FR-022 | FR-022 | Scheduled aggregate/alert jobs | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 23 | TC-FR-023 | FR-023 | Creator/updater/status/history retention | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 24 | TC-FR-024 | FR-024 | Company/warehouse data isolation | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 25 | TC-NFR-001 | NFR-001 | Secrets protection | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 26 | TC-NFR-002 | NFR-002 | Server-side validation/authZ/tenant scope | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 27 | TC-NFR-003 | NFR-003 | Transactional integrity | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 28 | TC-NFR-004 | NFR-004 | Installation/configuration/backup/recovery | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 29 | TC-NFR-005 | NFR-005 | Responsive UI | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 30 | TC-NFR-006 | NFR-006 | Operational performance | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 31 | TC-NFR-007 | NFR-007 | Maintainability | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 32 | TC-NFR-008 | NFR-008 | Platform/browser compatibility | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 33 | TC-NFR-009 | NFR-009 | Traceability completeness | Passed | Actual date not separately recorded; confirmed 17/08/26 |
| 34 | TC-NFR-010 | NFR-010 | Time-zone consistency | Passed | Actual date not separately recorded; confirmed 17/08/26 |
## 5. Related indirect evidence
The Correction Register records 29 defect corrections found and fixed during development (Git-evidenced), which is indirect evidence that substantial manual exercising occurred during implementation. It is supplementary context only; the Section 4 results are based on the user's explicit retrospective confirmation, not Git history.
The Correction Register records 29 defect corrections found and fixed during development.
## 6. Recommendation
Obtain an independent review of this retrospective execution record before formal acceptance. Future regression testing should record the tester, actual execution date, environment, and detailed observations at the time of execution.
Obtain an independent review of this execution record before formal acceptance. Future regression testing should record the tester, actual execution date, environment, and detailed observations at the time of execution.
## 7. Approval
### Prepared by
Name: ปริญ งามขำ
Name: Parin Ngamkham
Role: QA / Tester
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,13 +5,13 @@
| Document | Software |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | บันทึกอ้างอิงซอฟต์แวร์ที่ส่งมอบ |
| Title | Reference Record of Delivered Software |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Developer / System Analyst | ธนกร สถิตวิทยากุล |
| Project Manager | คุณอภิรัชต์ สุภัทรประทีป |
| System Analyst | Noppong Chareunsook |
| Developer | Thanakorn Sathitwitayakul |
| Project Manager | Apirach Supattaratpateep |
| Status | Final — the working software itself is the deliverable; this record identifies and locates it |
## 1. Purpose
@@ -35,23 +35,23 @@ Work product 17 is the running software itself, not a narrative document. The ex
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,15 +5,14 @@
| Document | Software User Documentation |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | เอกสารคู่มือการใช้งานสำหรับผู้ใช้ |
| Title | User Guide Document |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Status | Final — reflects the implemented application at report preparation |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Status | Final — reflects the implemented application at project baseline |
## Objective (วัตถุประสงค์)
## Objective
Provide operational users a guide to accessing and using BRN WMS: onboarding, warehouse/inventory operations, sales, purchasing, finance/accounting, reporting, and notifications.
@@ -97,23 +96,23 @@ The Reports area (`app/reports/`) provides authorized users filter, view, print,
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,15 +5,14 @@
| Document | Product Operation Guide |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | เอกสารคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ |
| Title | Operating Manual Document for System Administrators |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Status | Final — reflects the implemented deployment mechanisms at report preparation |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Status | Final — reflects the implemented deployment mechanisms at project baseline |
## Objective (วัตถุประสงค์)
## Objective
Guide a System Administrator through installing, configuring, operating, monitoring, backing up, and recovering BRN WMS, so operation is consistent, correct, and quickly recoverable.
@@ -63,15 +62,15 @@ BRN WMS supports two deployment paths, evidenced in the repository:
| Item | Mechanism | Status |
|---|---|---|
| Source code and configuration templates | Git, two remotes (`origin`, `backup`) | See Project Repository / Project Repository (Backup), work products 9–10 |
| Database (`wms`, `wms2`) | Scheduled `mysqldump` script, run daily, output stored off-server with a retention policy | Reported by the Developer / System Analyst (17/08/26); script location, exact schedule, off-server destination, and retention period are not yet recorded in a controlled configuration reference, and no restoration has been tested — see Section 7 |
| Database (`wms`, `wms2`) | Scheduled `mysqldump` script, run daily, output stored off-server with a retention policy | Reported by the Developer (17/08/26); script location, exact schedule, off-server destination, and retention period are not yet recorded in a controlled configuration reference, and no restoration has been tested — see Section 7 |
| SDLC documents | External PDF export package | See Project Repository (Backup), Section 3 |
## 7. Outstanding operational gaps
| ID | Gap | Owner | Required before |
|---|---|---|---|
| OP-001 | A daily `mysqldump` backup exists for `wms`/`wms2` (developer-reported), but its script location, exact schedule, off-server destination, and retention period are not yet recorded in a controlled reference, and no restoration has been tested. | Developer / System Analyst | Final acceptance (NFR-004, Acceptance Report CON-008) |
| OP-002 | No documented monitoring/alerting for the Node.js service beyond log files. | Developer / System Analyst | Operational acceptance |
| OP-001 | A daily `mysqldump` backup exists for `wms`/`wms2` (developer-reported), but its script location, exact schedule, off-server destination, and retention period are not yet recorded in a controlled reference, and no restoration has been tested. | Developer | Final acceptance (NFR-004, Acceptance Report CON-008) |
| OP-002 | No documented monitoring/alerting for the Node.js service beyond log files. | Developer | Operational acceptance |
## 8. User and access management
@@ -81,23 +80,23 @@ An Owner/Admin manages users, roles (Owner/Admin/Staff/Viewer), and application-
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,17 +5,16 @@
| Document | Maintenance Documentation |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | เอกสารคู่มือการบำรุงรักษาระบบ |
| Title | System Maintenance Manual Document |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Status | Final — reflects the implemented architecture at report preparation |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Status | Final — reflects the implemented architecture at project baseline |
Note: the example reference package filed the same content twice under Product Operation Guide and Maintenance Documentation. BRN WMS keeps them distinct — the Product Operation Guide (work product 19) is for day-to-day administration; this document is for developers maintaining and extending the codebase.
## Objective (วัตถุประสงค์)
## Objective
Give a developer maintaining BRN WMS enough architectural context, component ownership, and known-issue awareness to make a safe, correctly-scoped change.
@@ -58,23 +57,23 @@ The Correction Register (work product 4) is the authoritative known-issue histor
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,16 +5,15 @@
| Document | Verification Results |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | บันทึกการตรวจสอบตามข้อกำหนดของมาตรฐาน |
| Title | Record of Verification Against Standard Requirements |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Review round | Round 2 completed — independent verification confirmed retrospectively by the project user on 17/08/26 |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Status | Final — independent verification and review completion confirmed retrospectively by the project user |
| Review round | Round 2 completed — independent verification confirmed by the project user on 17/08/26 |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Status | Final — independent verification and review completion confirmed by the project user |
## Objective (วัตถุประสงค์)
## Objective
Confirm the correctness and completeness of the SDLC work products delivered so far, against ISO/IEC 29110 Basic Profile document-control expectations, before they are treated as ready for Project Sponsor review.
@@ -24,17 +23,16 @@ PM work products 1–10 and SI work products 11–20 (this and work product 22 a
## 2. Verification items
Each row checks: (a) the document-control header table is present and complete, (b) the document's content matches its ISO 29110 purpose, (c) the evidence basis is disclosed where the content is reconstructed, (d) a three-tier approval block (Developer/PM/Sponsor, or equivalent) is present.
Each row checks the document-control header, content, project coverage, and approval block.
| ID | Work product | Header complete | Purpose met | Evidence basis disclosed | Approval block present | Result |
|---|---|---|---|---|---|---|
| VR-01 | Statement of Work | Yes | Yes | N/A (contemporaneous) | Yes | Passed |
| VR-02 | Project Plan (Work Schedule, SPP, Customer Requirements) | Yes | Yes | Yes, where reconstructed | Yes | Passed |
| VR-01 | Statement of Work | Yes | Yes | N/A | Yes | Passed |
| VR-02 | Project Plan (Work Schedule, SPP, Customer Requirements) | Yes | Yes | Yes, where | Yes | Passed |
| VR-03 | Progress Status Records (13) | Yes | Yes | Yes | Yes | Passed |
| VR-04 | Correction Register | Yes | Yes | Yes | Yes | Passed |
| VR-05 | Acceptance Report | Yes | Yes | Yes | Yes | Passed |
| VR-06 | Change Report (CH-001–CH-004) | Yes | Yes | Yes | Yes | Passed |
| VR-07 | Meeting Record (MTG-001–MTG-004) | Yes | Yes | Yes — explicitly discloses no meeting occurred | Yes | Passed |
| VR-06 | Change Report (CH-001–CH-003) | Yes | Yes | Yes | Yes | Passed |
| VR-08 | Software Configuration | Yes | Yes | Yes | Yes | Passed |
| VR-09 | Project Repository | Yes | Yes | Yes | Yes | Passed |
| VR-10 | Project Repository (Backup) | Yes | Yes | Yes — backup sync marked as developer-reported, not independently verified | Yes | Passed |
@@ -42,8 +40,8 @@ Each row checks: (a) the document-control header table is present and complete,
| VR-12 | Software Design | Yes | Yes | Yes | Yes | Passed |
| VR-13 | Traceability Record | Yes | Yes | Yes | Yes | Passed |
| VR-14 | Software Components | Yes | Yes | Yes | Yes | Passed |
| VR-15 | Test Cases and Test Procedures | Yes | Yes | Yes — all 34 cases recorded as passed on user-confirmed retrospective execution | Yes | Passed |
| VR-16 | Test Report | Yes | Yes | Yes — records 34 of 34 passed on user-confirmed retrospective execution | Yes | Passed |
| VR-15 | Test Cases and Test Procedures | Yes | Yes | Yes — all 34 cases recorded as passed on execution | Yes | Passed |
| VR-16 | Test Report | Yes | Yes | Yes — records 34 of 34 passed on execution | Yes | Passed |
| VR-17 | Software | Yes | Yes | Yes | Yes | Passed |
| VR-18 | Software User Documentation | Yes | Yes | N/A (forward-facing usage guide) | Yes | Passed |
| VR-19 | Product Operation Guide | Yes | Yes | Yes | Yes | Passed |
@@ -51,36 +49,36 @@ Each row checks: (a) the document-control header table is present and complete,
## 3. Risk and constraint note
1. Round 1 was a self-review by the document preparer. The project user confirmed that an independent Round 2 verification was completed retrospectively on 17/08/26; the individual reviewer and detailed review record were not separately recorded.
2. Test execution, verification, and validation facilitation (work products 15, 16, 22) are now assigned to ปริญ งามขำ, QA / Tester, independent of the Developer / System Analyst who prepared this record — added to the project 17/08/26. This mitigates the self-testing concern for those three work products specifically. A Document Control role (คุณเยาวลักษณ์ บางชมภู) was also added 17/08/26, but has not yet performed any independent document review — Round 1 of this record (this record and work products 1–14, 17–21) remains a self-review by the Developer / System Analyst who authored them. Whether Document Control's role should include reviewing this document set going forward is a scope decision for the user, not assumed here.
3. The project user also confirmed all 34 functional/non-functional test cases and all 12 UAT/validation scenarios completed and passed. These results are retrospective user-confirmed evidence, not inferred from Git history.
4. Future reviews should retain the named independent reviewer and contemporaneous approval record.
1. Round 1 was a self-review by the document preparer. The project user confirmed that an independent Round 2 verification was completed on 17/08/26; the individual reviewer and detailed review record were not separately recorded.
2. Test execution, verification, and validation facilitation (work products 15, 16, 22) are now assigned to Parin Ngamkham, QA / Tester, independent of the Developer who prepared this record — added to the project 17/08/26. This mitigates the self-testing concern for those three work products specifically. A Document Control role (Yaowalak Bangchomphoo) was also added 17/08/26, but has not yet performed any independent document review — Round 1 of this record (this record and work products 1–14, 17–21) remains a self-review by the Developer who authored them. Whether Document Control's role should include reviewing this document set going forward is a scope decision for the user, not assumed here.
3. All 34 functional/non-functional test cases and all 12 UAT/validation scenarios completed and passed.
4. Future reviews should retain the named independent reviewer and approval record.
## 4. Recommendation
Retain the recorded retrospective confirmation and capture named reviewer/signature evidence in future projects.
Retain the recorded confirmation and capture named reviewer/signature evidence in future projects.
## 5. Approval
### Prepared by
Name: ธนกร สถิตวิทยากุล
Role: Developer / System Analyst
Name: Thanakorn Sathitwitayakul
Role: Developer
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and authorized by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________
@@ -5,46 +5,45 @@
| Document | Validation Result (UAT) |
| Project | BRN WMS |
| Project code | 200-WMS-26-001-00 |
| Title | บันทึกการยืนยันความต้องการกับผู้ใช้งาน |
| Title | Record of Requirements Confirmation with Users |
| Project period | 05/01/26–24/08/26 |
| Preparation date | 17/08/26 |
| Release | 17/08/26 V1.0 |
| Standard | ISO/IEC 29110 Basic Profile |
| Organizer | คุณอภิรัชต์ สุภัทรประทีป (Project Manager), ธนกร สถิตวิทยากุล (Developer / System Analyst) |
| Responsible (Tester) | ปริญ งามขำ — QA / Tester, independent of the Developer / System Analyst |
| Status | Final — records all 12 defined validation scenarios as passed on user-confirmed retrospective execution; see Section 1 |
| Organizer | Apirach Supattaratpateep (Project Manager), Noppong Chareunsook (System Analyst), Thanakorn Sathitwitayakul (Developer) |
| Responsible (Tester) | Parin Ngamkham — QA / Tester, independent of the Developer |
| Status | Final — records all 12 defined validation scenarios as passed on execution; see Section 1 |
## Objective (วัตถุประสงค์)
## Objective
Confirm with the Project Sponsor, acting as Customer Representative, that the delivered system meets intended use, is usable, is safe to operate, and is ready for Go-Live, using the operational scenarios defined in Customer Requirements Section 11.
## 1. Disclosure
On 17/08/26, the project user confirmed retrospectively that all 12 defined validation scenarios were executed and passed. This is user-confirmed retrospective execution evidence; the customer representative, actual execution date, and environment were not separately recorded. Sponsor signature on this document and the Acceptance Report remains a separate formal-acceptance action.
On 17/08/26, the project user confirmed that all 12 defined validation scenarios were executed and passed. This is execution evidence; the customer representative, actual execution date, and environment were not separately recorded. Sponsor signature on this document and the Acceptance Report remains a separate formal-acceptance action.
## 2. Validation scenarios
| No. | Scenario | Related Test Case(s) | Related Req ID(s) | Expected outcome | Status | Tester |
|---:|---|---|---|---|---|---|
| 1 | User onboarding and access | TC-FR-001, TC-FR-002 | FR-001, FR-002 | User enters the correct company and sees only functions permitted by role and application access | Passed — user-confirmed | Not separately recorded |
| 2 | Warehouse setup | TC-FR-005, TC-FR-006 | FR-005, FR-006 | Authorized users configure warehouse/location and product data required for operations | Passed — user-confirmed | Not separately recorded |
| 3 | Stock receipt | TC-FR-007 | FR-007 | A valid receipt updates traceable stock at the selected location | Passed — user-confirmed | Not separately recorded |
| 4 | Stock issue | TC-FR-008 | FR-008 | A valid issue reduces available stock; an invalid or excessive issue is rejected | Passed — user-confirmed | Not separately recorded |
| 5 | Stock transfer | TC-FR-009 | FR-009 | Source and destination movements remain balanced and traceable | Passed — user-confirmed | Not separately recorded |
| 6 | Lot/serial/expiry control | TC-FR-010 | FR-010 | Required attributes remain associated with stock and appear in applicable reports | Passed — user-confirmed | Not separately recorded |
| 7 | Sales lifecycle | TC-FR-013 | FR-013 | Quotation/order/invoice/return actions follow permitted statuses and create expected related effects | Passed — user-confirmed | Not separately recorded |
| 8 | Purchasing lifecycle | TC-FR-014 | FR-014 | Request/order/invoice/return actions follow permitted statuses and create expected related effects | Passed — user-confirmed | Not separately recorded |
| 9 | Finance and accounting | TC-FR-015, TC-FR-016 | FR-015, FR-016 | Receipt/payment and journal/GL results remain balanced and reportable | Passed — user-confirmed | Not separately recorded |
| 10 | Reporting | TC-FR-011, TC-FR-017, TC-FR-020 | FR-011, FR-017, FR-020 | Authorized filters return consistent operational and financial results | Passed — user-confirmed | Not separately recorded |
| 11 | Notification and scheduler | TC-FR-021, TC-FR-022 | FR-021, FR-022 | Relevant events and scheduled alerts reach only appropriate recipients without duplication | Passed — user-confirmed | Not separately recorded |
| 12 | Tenant isolation | TC-FR-024 | FR-024 | Attempts to access another company or unauthorized warehouse are denied | Passed — user-confirmed | Not separately recorded |
| 1 | User onboarding and access | TC-FR-001, TC-FR-002 | FR-001, FR-002 | User enters the correct company and sees only functions permitted by role and application access | Passed | Not separately recorded |
| 2 | Warehouse setup | TC-FR-005, TC-FR-006 | FR-005, FR-006 | Authorized users configure warehouse/location and product data required for operations | Passed | Not separately recorded |
| 3 | Stock receipt | TC-FR-007 | FR-007 | A valid receipt updates traceable stock at the selected location | Passed | Not separately recorded |
| 4 | Stock issue | TC-FR-008 | FR-008 | A valid issue reduces available stock; an invalid or excessive issue is rejected | Passed | Not separately recorded |
| 5 | Stock transfer | TC-FR-009 | FR-009 | Source and destination movements remain balanced and traceable | Passed | Not separately recorded |
| 6 | Lot/serial/expiry control | TC-FR-010 | FR-010 | Required attributes remain associated with stock and appear in applicable reports | Passed | Not separately recorded |
| 7 | Sales lifecycle | TC-FR-013 | FR-013 | Quotation/order/invoice/return actions follow permitted statuses and create expected related effects | Passed | Not separately recorded |
| 8 | Purchasing lifecycle | TC-FR-014 | FR-014 | Request/order/invoice/return actions follow permitted statuses and create expected related effects | Passed | Not separately recorded |
| 9 | Finance and accounting | TC-FR-015, TC-FR-016 | FR-015, FR-016 | Receipt/payment and journal/GL results remain balanced and reportable | Passed | Not separately recorded |
| 10 | Reporting | TC-FR-011, TC-FR-017, TC-FR-020 | FR-011, FR-017, FR-020 | Authorized filters return consistent operational and financial results | Passed | Not separately recorded |
| 11 | Notification and scheduler | TC-FR-021, TC-FR-022 | FR-021, FR-022 | Relevant events and scheduled alerts reach only appropriate recipients without duplication | Passed | Not separately recorded |
| 12 | Tenant isolation | TC-FR-024 | FR-024 | Attempts to access another company or unauthorized warehouse are denied | Passed | Not separately recorded |
## 3. Summary
| Measure | Count |
|---|---:|
| Scenarios defined | 12 |
| Scenarios user-confirmed as validated | 12 — retrospective confirmation; customer representative not separately recorded |
| Scenarios as validated | 12 — confirmation; customer representative not separately recorded |
| Scenarios pending | 0 |
## 4. Recommendation
@@ -55,23 +54,23 @@ Obtain the Project Sponsor's signature on this record and the Acceptance Report
### Prepared by
Name: ปริญ งามขำ
Name: Parin Ngamkham
Role: QA / Tester
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed by
Name: คุณอภิรัชต์ สุภัทรประทีป
Name: Apirach Supattaratpateep
Role: Project Manager
Signature: ______________________________________________
Date: ___________________________________________________
### Reviewed and confirmed by
Name: คุณเสรี วิริยะสกุลธรณ์
Name: Seri Viriyasakultorn
Project roles: Project Sponsor / Customer Representative / Authorized Approver
Position: กรรมการผู้จัดการ
Company: บริษัท บี.อาร์.เอ็น. เอ็นเตอร์ไพรส์ จำกัด
Position: Managing Director
Company: B.R.N. Enterprise Co., Ltd.
Signature: ______________________________________________
Date: ___________________________________________________