SDLC docs feedback and additional adjustment

This commit is contained in:
Thanakorn
2026-08-19 10:02:21 +07:00
parent 6dc8444139
commit 155cf783ae
43 changed files with 877 additions and 437 deletions
@@ -26,39 +26,39 @@ 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 | 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-001 | Registration and onboarding | SR03:001, SR08:001 | UN01, UN02, UN03 | TC-FR-001 | CoR-007, CoR-008, CoR-011, CoR-013, CoR-018 | Passed | Verified and validated |
| FR-002 | Authentication and role enforcement | SR03:001, SR04:001, SR07:005 | UN01, UN02 | TC-FR-002 | CoR-003, CoR-015, CoR-017, CoR-028 | Passed | Verified and validated |
| FR-003 | Password recovery, session control, OTP | SR03:001, SR07:003 | UN02, UN03 | TC-FR-003 | CoR-005, CoR-016, CoR-026 | 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-011 | Passed | Verified and validated |
| FR-005 | Master data (warehouse, storage/bin, category, product, contact) | SR03:003 | UN07, UN08, UN09 | TC-FR-005 | CoR-020, CoR-023; 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-010 | Lot, serial, expiry tracking | SR03:004, SR08:002 | UN10, UN11, UN12 | TC-FR-010 | CoR-012 | Passed | Verified and validated |
| FR-011 | Stock/movement/capacity/expiry reporting | SR03:009 | UN27, UN07 | TC-FR-011 | CoR-023 | 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-018 | Document numbering and lifecycle/status | SR03:010, SR04:005, SR08:004 | UN28 | TC-FR-018 | CoR-019 | 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-022 | Scheduled stock/GL summaries and alerts | SR03:011, SR05:002, SR08:004 | UN34, UN14 | TC-FR-022 | CoR-021 | 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 |
| FR-024 | Company/warehouse data isolation | SR04:001, SR04:003, SR07:002, SR07:004 | UN01, UN30, UN31 | TC-FR-024 | CoR-009, CoR-024 | 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-028 | 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-011, CoR-015, CoR-016, CoR-017, CoR-018, CoR-026 | Passed | Verified and validated |
| NFR-003 | Transactional integrity, no invalid negative/duplicate movement | SR09:003 | UN26, UN10 | TC-NFR-003 | CoR-002 | 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-014; 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-025 | 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-007 | Modular, maintainable structure | SR02:003, SR02:004 | All business-logic units | TC-NFR-007 | CoR-010, CoR-027; 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-009 | Every requirement links to design/component/verification evidence | SR01:001 | This Traceability Record | TC-NFR-009 | CoR-022 | 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.
@@ -72,7 +72,7 @@ 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 |
| Test cases executed with recorded result | 34 (executed 10/08/26–14/08/26) |
| Verified in Verification Results (work product 21) | 34 |
| Validated in Validation Result (work product 22) | 34 requirements covered by 12 passed scenarios |
@@ -91,33 +91,32 @@ This section maps each Correction Register (work product 4) and Change Report (w
| 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 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 |
| CoR-014 | `b76dc67` | FR-001 |
| CoR-015 | `59037b5`, `f4ef776` | NFR-004 |
| CoR-016 | `b07882e` | FR-002, NFR-002 |
| CoR-017 | `2930973` | FR-003, NFR-002 |
| CoR-018 | `4733c78` | FR-002, NFR-002 |
| CoR-019 | `b4b1f5c` | FR-001, NFR-002 |
| CoR-020 | `cb36d3b` | FR-018 |
| CoR-021 | `dfeb575` | FR-005 |
| CoR-022 | `f3c0e3c`, `714b70d` | FR-022 |
| CoR-023 | `99ae35d` | NFR-009 |
| CoR-024 | `5df6736` | FR-005, FR-011 |
| CoR-025 | `9a50238` | FR-024 |
| CoR-026 | `ed3dd2f` | NFR-005 |
| CoR-027 | `fda211b` | FR-003, NFR-002 |
| CoR-028 | `a0677d6` | NFR-007 |
| CoR-029 | `b2c4374` | FR-002, NFR-001 |
| CoR-010 | `91f8bb8` | NFR-007 |
| CoR-011 | `6eeebfe` | FR-001, FR-004, NFR-002 |
| CoR-012 | `94032dd` | FR-010 |
| CoR-013 | `b76dc67` | FR-001 |
| CoR-014 | `59037b5`, `f4ef776` | NFR-004 |
| CoR-015 | `b07882e` | FR-002, NFR-002 |
| CoR-016 | `2930973` | FR-003, NFR-002 |
| CoR-017 | `4733c78` | FR-002, NFR-002 |
| CoR-018 | `b4b1f5c` | FR-001, NFR-002 |
| CoR-019 | `cb36d3b` | FR-018 |
| CoR-020 | `dfeb575` | FR-005 |
| CoR-021 | `f3c0e3c`, `714b70d` | FR-022 |
| CoR-022 | `99ae35d` | NFR-009 |
| CoR-023 | `5df6736` | FR-005, FR-011 |
| CoR-024 | `9a50238` | FR-024 |
| CoR-025 | `ed3dd2f` | NFR-005 |
| CoR-026 | `fda211b` | FR-003, NFR-002 |
| CoR-027 | `a0677d6` | NFR-007 |
| CoR-028 | `b2c4374` | FR-002, NFR-001 |
| 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 |
## 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. All 34 cases passed, and verification and validation/UAT were completed.
Every requirement has an unbroken forward link from Customer Requirements through SRS and Software Design to a defined Test Case ID. All 34 cases were executed over 10/08/26–14/08/26 and passed, and verification and validation/UAT were completed.
## 7. Approval