feat: initialize project backend structure and document system specifications across all modules

This commit is contained in:
SonPhung
2026-07-24 09:05:41 +07:00
parent 506008c69f
commit 4534e4ecb8
74 changed files with 7989 additions and 44 deletions

View File

@@ -0,0 +1,64 @@
---
title: "Application Parameter"
type: OpenSpec
status: Draft
domain: System Management
---
# Application Parameter
## Requirement Definition
The "Application Parameters" module provides a means to maintain a set of application control parameters that define system behavior in relation to user authentication and display formats. This includes password policy parameters, session time-outs, and system display formats.
## Process Flow
### Trigger
- User accesses the Application Parameters module under System Management.
### Pre-Conditions
- Users must have access rights to the Application Parameters module.
- Depending on access rights, users can view, add, or edit parameters.
## Business Rules
- All parameters are pre-defined by the system with default values.
- Users with appropriate rights can modify these parameter values.
### Data Schema
#### Access Control Parameters
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| Same User Cannot Approve | Allow/Disallow the user to approve/reject the record they created. | Boolean | Default: False |
| Same User Cannot Modify Own Profile | Allow/Disallow the user to change their profile in the system. | Boolean | Default: False |
| User Session Inactivity Time-out | The user session ends if there are no user actions for N minutes. Alert message required on timeout. | Integer | Default: 30 |
| Maximum Failed Forgotten Password Attempts | User ID is blocked from further log-ins and profile suspended until reset if invalid passwords exceed this limit consecutively. | Integer | Default: 5 |
| Inactivate User Id after N days of no log-ins | User status is automatically set to inactive until reset if not logged in for the specified number of days. | Integer | Default: 30 |
| Remind User to Change password N Days Before | System notifies the user to change the password N days before expiration upon login. | Integer | Default: 5 |
| Password expiration (days) | Number of days after which a new password expires. Account is locked post-expiration until admin unlocks. | Integer | Default: 180 |
| Disallow re-use of the last N passwords | System restricts re-using the last N passwords to ensure regular updates. | Integer | Default: 2 |
| Maximum password length | Maximum length of a new password. | Integer | Default: 50 |
| Minimum password length | Minimum length of a new password. | Integer | Default: 8 |
| Password must at least N numeric digit | Minimum numeric digits required in a password. | Integer | Default: 1 |
| Password must have at least N upper case alphabet | Minimum uppercase letters required in a password. | Integer | Default: 1 |
| Password must have at least N lower case alphabet | Minimum lowercase letters required in a password. | Integer | Default: 1 |
| Password must have at least N special character | Minimum special characters required in a password. | Integer | Default: 1 |
#### Display Setting Parameters
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| Date format | Determines how dates are displayed throughout the system. | String | Enum: DD/MM/YYYY, DD-MM-YYYY, DDMMYYYY, MM/DD/YYYY, MM-DD-YYYY, YYYY/MM/DD, YYYY-MM-DD, DD,MM,YYYY. Default: DD/MM/YYYY |
| Time format | Determines how times are displayed throughout the system. | String | Enum: HH:mm:ss, HHmmss, HH,mm,ss, HH;mm;ss, HH/mm/ss. Default: HH:mm:ss |
| Amount display format | Determines how amounts are displayed throughout the system. | String | Enum: American (999,999.99), European (999.999,99) |
#### Functionality Parameters
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| Processing Date | The date on which a transaction is processed. Used for testing only. If empty, the system date is used. | Date | Default: Empty |
| Allow Cross Function Update | Allows or disallows cross-updates between data created by different users. Applies to Customer, Account, and Card data. | Boolean | Default: True |
## Post-Conditions
- The application uses the updated parameter configuration.
- Application parameter management is maintainable and scalable with other systems.
## Exception Flow
No exceptions defined.