# Software Components | Document field | Value | |---|---| | Document | Software Components | | Project | BRN WMS | | Project code | 200-WMS-26-001-00 | | Title | Record of Delivered Software Components | | Project period | 05/01/26–24/08/26 | | Release | 17/08/26 V1.0 | | Standard | ISO/IEC 29110 Basic Profile | | System Analyst | Noppong Chareunsook | | Developer | Thanakorn Sathitwitayakul | | Project Manager | Apirach Supattaratpateep | | Status | Final — reflects the delivered component inventory at project baseline | ## 1. Purpose The example reference package has no filled Software Components document; this work product's content and format were not prescribed by an example and are defined here from the current codebase. This record lists the delivered software components (business-logic classes, real-time/scheduled services, and application areas) as the inventory referenced by the Traceability Record and Software Configuration. Unit IDs match the Software Unit table in the Software Design document. ## 2. Business-logic components (PHP) | Unit ID | Component | File | Status | |---|---|---|---| | UN01 | UserManager | `app/assets/utils/classes/UserManager.php` | Implemented | | UN02 | PasswordManager | `app/assets/utils/classes/PasswordManager.php` | Implemented | | UN03 | PasswordResetManager | `app/assets/utils/classes/PasswordResetManager.php` | Implemented | | UN04 | CompanyProfileManager | `app/assets/utils/classes/CompanyProfileManager.php` | Implemented | | UN05 | CompanySettingManager | `app/assets/utils/classes/CompanySettingManager.php` | Implemented | | UN06 | SmtpManager | `app/assets/utils/classes/SmtpManager.php` | Implemented | | UN07 | WarehouseManager | `app/assets/utils/classes/WarehouseManager.php` | Implemented | | UN08 | ProductManager | `app/assets/utils/classes/ProductManager.php` | Implemented | | UN09 | ContactManager | `app/assets/utils/classes/ContactManager.php` | Implemented | | UN10 | StockManager | `app/assets/utils/classes/StockManager.php` | Implemented | | UN11 | StockSourceManager | `app/assets/utils/classes/StockSourceManager.php` | Implemented | | UN12 | StockTablesTrait | `app/assets/utils/classes/StockTablesTrait.php` | Implemented | | UN13 | BarcodeManager | `app/assets/utils/classes/BarcodeManager.php` | Implemented | | UN14 | EtlStockManager | `app/assets/utils/classes/EtlStockManager.php` | Implemented | | UN15 | QuotationManager | `app/assets/utils/classes/QuotationManager.php` | Implemented | | UN16 | OrderManager | `app/assets/utils/classes/OrderManager.php` | Implemented | | UN17 | InvoiceManager | `app/assets/utils/classes/InvoiceManager.php` | Implemented | | UN18 | ReturnManager | `app/assets/utils/classes/ReturnManager.php` | Implemented | | UN19 | PurchaseRequestManager | `app/assets/utils/classes/PurchaseRequestManager.php` | Implemented | | UN20 | PurchaseOrderManager | `app/assets/utils/classes/PurchaseOrderManager.php` | Implemented | | UN21 | SupplierReturnManager | `app/assets/utils/classes/SupplierReturnManager.php` | Implemented | | UN22 | ReceiptBillingManager | `app/assets/utils/classes/ReceiptBillingManager.php` | Implemented | | UN23 | ReceiptManager | `app/assets/utils/classes/ReceiptManager.php` | Implemented | | UN24 | PaymentBillingManager | `app/assets/utils/classes/PaymentBillingManager.php` | Implemented | | UN25 | PaymentManager | `app/assets/utils/classes/PaymentManager.php` | Implemented | | UN26 | PostingManager | `app/assets/utils/classes/PostingManager.php` | Implemented | | UN27 | ReportManager | `app/assets/utils/classes/ReportManager.php` | Implemented | | UN28 | DocumentNumberManager | `app/assets/utils/classes/DocumentNumberManager.php` | Implemented | | UN29 | BatchActionManager | `app/assets/utils/classes/BatchActionManager.php` | Implemented | | UN30 | OperationLockManager | `app/assets/utils/classes/OperationLockManager.php` | Implemented | | UN31 | UsageGuard | `app/assets/utils/classes/UsageGuard.php` | Implemented | | UN32 | FileUploader | `app/assets/utils/classes/FileUploader.php` | Implemented | ## 3. Real-time and scheduled service components (Node.js) | Unit ID | Component | File | Status | |---|---|---|---| | UN33 | Socket.IO notification server | `nodejs/server.js` | Implemented | | UN34 | Scheduled aggregate/alert jobs | `nodejs/scheduler.js` | Implemented | | — | Process manager configuration | `nodejs/ecosystem.config.js` | Implemented | ## 4. Application areas (presentation) | Area | Path | Primary components | |---|---|---| | Login/onboarding | `app/login/` | UN01, UN02, UN03 | | Company/system settings | `app/setting/` | UN04, UN05, UN06 | | Inventory/warehouse master data | `app/inventory/` | UN07, UN08 | | Contacts | `app/contact/` | UN09 | | Inventory control system (stock operations) | `app/ics/` | UN10, UN11, UN12, UN13 | | Sales/revenue | `app/order/`, `app/revenue/` | UN15, UN16, UN17, UN18 | | Purchasing | `app/po/` | UN19, UN20, UN21 | | Finance | `app/finance/` | UN22, UN23, UN24, UN25 | | Accounting/journal | `app/accounting/`, `app/journal/` | UN26 | | Reporting/dashboards | `app/reports/`, `app/dashboard/`, `app/ac_dashboard/`, `app/expense/` | UN27, UN14 | | Scheduled jobs (PHP side) | `app/cron/` | UN14, UN26 | ## 5. Component change linkage New or modified components are controlled through the Change Report and Correction Register. ## 6. Approval ### Prepared by Name: Thanakorn Sathitwitayakul Role: Developer Signature: ______________________________________________ Date: ___________________________________________________ ### Reviewed by Name: Apirach Supattaratpateep Role: Project Manager Signature: ______________________________________________ Date: ___________________________________________________ ### Reviewed and authorized by Name: Seri Viriyasakultorn Project roles: Project Sponsor / Customer Representative / Authorized Approver Position: Managing Director Company: B.R.N. Enterprise Co., Ltd. Signature: ______________________________________________ Date: ___________________________________________________