Professional Documents
Culture Documents
GAMS-SRS_v1.0 Page 1 / 20
Record of Changes
Version Date A* In charge Change Description
M, D
V1.0 18/09 A Lamnnthe163504 view landing page
GAMS-SRS_v1.0 Page 2 / 20
Contents
Record of Changes.........................................................................................................................................2
I. Overview....................................................................................................................................................4
1. User Requirements.................................................................................................................................4
1.1 Actors...............................................................................................................................................4
1.2 Use Cases.........................................................................................................................................4
2. Overall Functionalities...........................................................................................................................5
2.1 Screens Flow....................................................................................................................................5
2.2 Screen Descriptions.........................................................................................................................5
2.3 Screen Authorization.......................................................................................................................5
2.4 Non-UI Functions............................................................................................................................6
3. System High Level Design....................................................................................................................6
3.1 Database Design...............................................................................................................................6
3.2 Code Packages.................................................................................................................................7
II. Requirement Specifications.......................................................................................................................8
1. <<Feature Name>>................................................................................................................................8
1.1 <<UseCaseCode_UC Name>>........................................................................................................8
2. Common Functions..............................................................................................................................11
2.1 UC-2_Login System......................................................................................................................11
3. Patron Feature......................................................................................................................................12
3.1 UC-5_Order a Meal.......................................................................................................................12
3.2 UC-6_Register for Payroll Deduction...........................................................................................13
III. Design Specifications.............................................................................................................................14
1. <<Feature Name>>..............................................................................................................................14
1.1 <<SubFeature Name>>..................................................................................................................14
1.2 System Access...............................................................................................................................15
IV. Appendix................................................................................................................................................19
1. Assumptions & Dependencies.............................................................................................................19
2. Limitations & Exclusions....................................................................................................................19
3. Business Rules.....................................................................................................................................19
4. ..............................................................................................................................................................19
GAMS-SRS_v1.0 Page 3 / 20
I. Overview
1. User Requirements
1.1 Actors
# Actor Description
1 Admin Users who have logged in LMS Admin web application.
Users who are members of LMS, have registered the LMS, only view the
2 Trainee
documents
Users who are teachers/lecturers of LMS, free to edit the documents of
3 Trainer
their classes
4 Common Users who have not logged in LMS web application
5 Subject Manager Users who have logged in LMS Subject Manager web application
GAMS-SRS_v1.0 Page 4 / 20
1.2 Use Cases
a. Diagram(s)
b. Descriptions
GAMS-SRS_v1.0 Page 5 / 20
ID Feature Use Case Use Case Description
01 Subject Document Add subject Add a new details, materials or documents for a
document subject
02 Subject Document Edit subject Edit documents of a subject
document
03 Subject Document Delete subject Delete documents of a subject
document
04 User Account Register Common can register a account
05 User Account Reset/Change Common can reset or change password after having a
password account
06 User Account Edit profile Common can edit their profile after having a account
07 Class Document Add class Add a new details, materials or documents for a class
document
08 Class Document Edit class Edit documents of a class
document
09 Class Document Delete class Delete documents of a class
document
…
2. Overall Functionalities
2.1 Screens Flow
GAMS-SRS_v1.0 Page 6 / 20
2.2 Screen Descriptions
Subject
Screen Trainee Trainer Admin Common
Manager
Manage Users X
View Classes X X X
Reset/Change Password X X X
GAMS-SRS_v1.0 Page 7 / 20
Edit Profile X X X
Edit Document of Class X
Edit document of Subject X
View Document of Class X X
Register User X
Manage Subject Manager X X
Approval User X X
Edit user role X
View document of Subject X X X
Manage Classes X
Manage Class Trainees X
View Grade X X
Grading X
GAMS-SRS_v1.0 Page 8 / 20
3. System High Level Design
3.1 Database Design
a. Database Schema
b. Table Descriptions
No Table Description
01 Role The role of account
- Primary keys: RoleID
02 User The information of User
- Primary keys: UserID
- Foreign keys: RoleID
03 Subject The information of Subject
- Primary keys: SubjectID
- Foreign keys: SubjectManagerID
04 Chapter The chapter of Subject
- Primary keys: ChapterID
- Foreign keys: SubjectID
05 Question The question of Subject
GAMS-SRS_v1.0 Page 9 / 20
- Primary keys: ChapterID
- Foreign keys: DimensionID, QuizID
06 Assignment The assignment of Class
- Primary keys: AssignmentID
- Foreign keys: ClassID, TraineeID
07 Quiz The quiz assignment
- Primary keys: QuizID
- Foreign keys: ClassID
08 Classes The information of Class
- Primary keys: ClassID
- Foreign keys: SubjectID
09 Trainee The information of Trainee
- Primary keys: TraineeID
- Foreign keys: ClassID, RoleID
10 Trainer The information of Trainer
- Primary keys: TrainerID
- Foreign keys: ClassID, RoleID
11 Lessons - Primary keys: LessonID
- Foreign keys: ClassID
12 Dimension - Primary keys: DimensionID
- Foreign keys: SubjectID
Package descriptions
No Package Description
01 controller It serves as the intermediary between the user interface (View) and the
application logic (Model).
GAMS-SRS_v1.0 Page 10 / 20
02 model class contains object information (Data), interacts with Database. Responsible for
object modeling
03 util an integrated package that contains various utility classes and interfaces
04 dal It is a design pattern used to abstract the persistence layer of an application,
providing a set of interfaces and classes to access and manipulate data from a
database or other data sources.
05 web include file about Ui of client and admin
06 img include all image which is used in system
07 css used to style and layout the website
GAMS-SRS_v1.0 Page 11 / 20
II. Requirement Specifications
1.Common Feature
1.1 Register/Login User Account
GAMS-SRS_v1.0 Page 12 / 20
4. Google validates user’s login information successfully and redirect him/her
back to the system
5. Return to step 5 of normal flow.
● The system displays all the information that the user has registered.
Normal Flow 1. View User Profile:
1. The user logs into the system.
2. After a successful login, they are directed to their main page or
personal profile page.
3. On the personal profile page, they can view their personal
information, including their name, profile picture, contact
information, and any other details they provided during
registration.
4. They can also see recent activities or other account-related
information.
GAMS-SRS_v1.0 Page 13 / 20
1. The user logs into the system.
2. After a successful login, they are directed to their personal profile
page or a dedicated page for editing personal information.
3. On the profile editing page, they can make changes or updates to
their personal information, such as their name, profile picture,
email address, password, and any other information they wish to
modify.
4. They can also upload a new profile picture, change their
password, or update contact information.
5. After making changes, they need to press the "Save" or "Update"
button to save the modifications to the database.
6. After successful saving, the system updates their personal
information and notifies them that the changes have been saved
successfully.
Alternative Flows:
Exceptions: Exceptions during "View User Profile":
1. User Profile Not Found:
- Exception: When a user tries to view a profile that doesn't exist in the system
(e.g., due to a typo in the username or an inactive account).
- Handling: Display an error message like "User profile not found" and offer
options to return to the main page or perform a new search. Additionally, log this
event for system administrators to review.
2. Unauthorized Access:
- Exception: If a user attempts to view another user's profile without proper
authorization (e.g., trying to access an admin profile).
- Handling: Deny access and display an error message such as "Access denied.
You do not have permission to view this profile." Provide guidance on what
actions the user can perform and ensure that sensitive information remains
protected.
2. Concurrent Editing:
- Exception: If two users attempt to edit the same user's profile simultaneously,
leading to a potential data conflict.
- Handling: Implement a concurrency control mechanism to prevent conflicts.
You could lock the profile during editing and notify the second user that someone
else is currently editing the profile. Provide options for the second user to review
changes made by the first user or try again later.
GAMS-SRS_v1.0 Page 14 / 20
Priority: Should Have
Frequency of
Use:
Business Rules: BR4
Other
Information:
Assumptions:
● Notification (Optional)
GAMS-SRS_v1.0 Page 15 / 20
2. Password Complexity Requirements
3. Authentication Failure
4. Account Lockout
5. Two-Factor Authentication Issues
Priority: Should Have
Frequency of
Use:
Business Rules: BR4
Other
Information:
Assumptions:
Business Rules
Provide the business rules those are applied only to the use case
ID Business Rule Business Rule Description
BR1 Name Limit ● Name length limit must be in range 1 – 50 characters.
● Name only contains alphabetical characters.
BR2 Phone number requirements ● Phone number only contains numeric characters.
● Phone number length limit must be 10 characters.
BR3 Phone number and email Phone number and email must be unique
BR4 Users Data requirements ● Accuracy
● Editability
● Access Control
● Logging
BR6
BR7
GAMS-SRS_v1.0 Page 16 / 20
2. Admin
2.1 Manage Users
a. Functional Description
UC ID and Name: UC-2_Manage Users
Created By: ThinhTD Date Created: 11/Sep/2023
Primary Actor: Admin Secondary Actors: None
Trigger: ● User Management (Add/Edit/Delete)
● Locking or Unlocking an Account
● User Role Assignment
● Monitoring User Activity
Description: As an administrator, my role is vital in maintaining the security and efficiency of
the system by managing users and ensuring they have the appropriate level of
access.
Preconditions:
Postconditions:
Normal Flow Administrator User Management and Permissions Assignment:
1. Login: Start by logging into the administrative account using the appropriate
credentials.
2. Access User Management: Once logged in, access the user management
section of the system or platform. This is typically found in the admin dashboard
or control panel.
3. Add New Users:To add new users, select the "Add User" option. Provide the
required information, such as username, password, email, and any additional
details. Assign appropriate roles or permissions to the new user based on their
responsibilities.
4. Edit User Information: If you need to update existing user information, select
the user you want to edit from the list of users. Modify their details, such as
name, contact information, or access permissions. Save the changes.
5. Delete User Accounts: To remove a user from the system, select the user's
account and choose the "Delete" option. Confirm the action, and the user's
account will be permanently removed, along with their associated data.
6. Permissions Assignment: Access the permissions or roles section to assign or
modify user access rights. Depending on your system, you may have predefined
roles (e.g., admin, user, manager) or the ability to customize permissions. Adjust
permissions based on user roles and responsibilities.
7.Review and Audit: Periodically review user accounts, permissions, and user
activity logs to ensure they align with security and operational requirements.
8. Log Out: Once you've completed your user management and permissions
tasks, log out of the admin account to maintain security.
Alternative Flows:
Exceptions:
Priority: Must Have
Frequency of
Use:
Business Rules:
Other
GAMS-SRS_v1.0 Page 17 / 20
Information:
Assumptions:
b. Business Rules
GAMS-SRS_v1.0 Page 18 / 20
Exceptions:
Priority: Must Have
Frequency of Use:
Business Rules:
Alternative Flows:
Exceptions:
Priority: Must Have
1.1.Landing Page
a,Description: This is the primary welcome page when a user first visits the website. It displays an
overview of the system, its features, and benefits.
b,UC: Input details (e.g., username, email, password), submit registration form, receive confirmation
email.
SQL commands:
+ "(\n"
+ "`username`,\n"
+ "`password`,\n"
+ "`email`,\n"
+ "`phone_number`,\n"
+ "`is_verified`,\n"
GAMS-SRS_v1.0 Page 19 / 20
+ "`status`,\n"
+ "`avatar_img`,\n"
+ "`user_created_by`,\n"
+ "`user_created_at`,\n"
+ "`user_updated_by`,\n"
+ "`user_updated_at`,\n"
+ "`role_id`)\n"
+ "VALUES\n"
+ "(\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?,\n"
+ "?);";
1.3.Login System
GAMS-SRS_v1.0 Page 20 / 20
a,Description: A portal for registered users to input their credentials and access the system.
b,UC: Input username and password, request access, navigate to user dashboard upon successful login.
1.4.Reset Password
b,UC: Input registered email, receive reset password link, navigate to reset password page, input new
password.
SQL command:
b,UC: View profile details, update information (e.g., profile picture, contact details), save changes.
SQL commands:
first_name = ?
“+”, last_name = ?
“+”, phone_number = ?
“+”, address = ?
“+” email = ?
WHERE user_id = ?;
1.6.Change Password
b,UC: Input current password, input new password, confirm new password, save changes.
GAMS-SRS_v1.0 Page 21 / 20
SQL commands:
2. Admin
2.1.Manage Users
a,Description: A dashboard where the admin can view, add, modify, or activate/deactivate user
accounts.
b,UC: View user list, search for a user, add a new user, modify user details, activate/deactivate user.
SQL commands:
a,Description: Interface to add, update, or delete subjects and assign managers to them.
b,UC: View subject list, add a new subject, update subject details, assign a subject manager, remove a
subject manager.
GAMS-SRS_v1.0 Page 22 / 20
a,Description: A page where the admin can define or modify system-wide settings.
b,UC: Set active semesters, define user roles, whitelist/blacklist email domains.
SQL commands: INSERT INTO users (username, password, email) VALUES ('new_user',
'hashed_password', 'user@example.com');
SELECT * FROM users WHERE username = 'input_username' AND password =
'hashed_input_password';
UPDATE users SET password = 'new_hashed_password' WHERE email =
'user@example.com';
IV. Appendix
1. Assumptions & Dependencies
[Record any assumptions that were made when conceiving the project and writing this vision and scope
document. Note any major dependencies the project must rely upon for success, such as specific
technologies, third-party vendors, development partners, or other business relationships.]
<<Sample:
AS-1: Systems with appropriate user interfaces will be available for cafeteria employees to process
the expected volume of meals ordered.
AS-2: Cafeteria staff and vehicles will be available to deliver all meals for specified delivery time slots
within 15 minutes of the requested delivery time.
DE-1: If a restaurant has its own on-line ordering system, the Cafeteria Ordering System must be able
to communicate with it bi-directionally.
>>
3. Business Rules
[Provide common business rules that you must follow. The information can be provided in the table
format as the sample below]
<<Sample
ID Category Rule Definition
BR-01 Constraints Delivery time windows are 15 minutes, beginning on each quarter
hour.
BR-02 Constraints Deliveries must be completed between 10:00 A.M. and 2:00 P.M.
local time, inclusive.
BR-03 Facts All meals in a single order must be delivered to the same location.
BR-04 Facts All meals in a single order must be paid for by using the same
GAMS-SRS_v1.0 Page 23 / 20
payment method.
BR-11 Constraints If an order is to be delivered, the patron must pay by payroll
deduction.
BR-12 Computations Order price is calculated as the sum of each food item price times
the quantity of that food item ordered, plus applicable sales tax,
plus a delivery charge if a meal is delivered outside the free
delivery zone.
>>
4.
GAMS-SRS_v1.0 Page 24 / 20