feat: initialize project backend structure and document system specifications across all modules
This commit is contained in:
61
docs/specs/oneaccess/user_profile.md
Normal file
61
docs/specs/oneaccess/user_profile.md
Normal file
@@ -0,0 +1,61 @@
|
||||
---
|
||||
title: "User Profile"
|
||||
type: OpenSpec
|
||||
status: Draft
|
||||
domain: OneAccess
|
||||
---
|
||||
|
||||
# User Profile
|
||||
|
||||
## Requirement Definition
|
||||
The User Profile defines user attributes and sets the date and time allowing user access to system functions. It is used for login. Upon logging in, users can view a list of functions with specific operations set in the permission management section.
|
||||
|
||||
## Process Flow
|
||||
|
||||
### Trigger
|
||||
- A new account needs to be defined.
|
||||
- Information of an existing account needs to be updated.
|
||||
|
||||
### Pre-Conditions
|
||||
- Users must have access rights to the User Profile module to view, add, or edit User Profile records.
|
||||
|
||||
## Business Rules
|
||||
|
||||
### Data Schema
|
||||
|
||||
#### General Information
|
||||
| Field Name | Description | Logic Type | Constraints / Rules |
|
||||
|---|---|---|---|
|
||||
| User ID | Unique user identifier. | String (10) | Required. Must be unique. |
|
||||
| User Name | Name of the user associated with the User ID. | String (50) | Required. |
|
||||
| Password | User password. | String (50) | Required for new users. Must meet strong password policies. |
|
||||
| Re-enter Password | Confirmation of the password. | String (50) | Must match Password. |
|
||||
| Email | User's email address. Can be used for login and password resets. | String (100) | Required. Must be unique. |
|
||||
| Default Language | Determines the language for screen labels. | Enum | Required. |
|
||||
|
||||
#### Access Detail
|
||||
| Field Name | Description | Logic Type | Constraints / Rules |
|
||||
|---|---|---|---|
|
||||
| Access Day | Indicates the days of the week the user has access to the system. | Array of Enums | Required. (e.g., Monday-Sunday) |
|
||||
| Access Time | The time on and after which the user has access to the system on allowed days. | Time | Required. |
|
||||
| User Profile Effective From Date | Date on and after which the User Profile is effective. | Date | Required. |
|
||||
| User Profile Effective End Date | Date on and before which the User Profile is effective. | Date | Required. |
|
||||
| User Group | The selected group determining the functions the user can access. | String (User Group ID) | Required. |
|
||||
| Report Access Right | Determines which report(s) the user has access to. | String (Report Group ID) | Optional. |
|
||||
| User Status | Status of the user account. | Enum | Required. Values: Active, Blocked. |
|
||||
|
||||
#### User Permission (View Only)
|
||||
*Displays all permissions applicable for the chosen user across top-level and second-level modules.*
|
||||
|
||||
| Field Name | Description | Logic Type | Constraints / Rules |
|
||||
|---|---|---|---|
|
||||
| Module Name | The name of the module. | String | Read-only |
|
||||
| Permissions | Available actions (View, Create, Edit, Delete, Copy, Approve, History, Template). | Boolean per action | Read-only |
|
||||
|
||||
## Post-Conditions
|
||||
- When creating a new record, the user account is successfully created.
|
||||
- The new user receives an email notification with login instructions and a temporary password.
|
||||
- When the password is reset, an email notification is sent to the user's email with the new password.
|
||||
|
||||
## Exception Flow
|
||||
- No specific exception flow defined.
|
||||
Reference in New Issue
Block a user