Record of Changes: Global Access Management System (GAMS)
Record of Changes: Global Access Management System (GAMS)
Record of Changes: Global Access Management System (GAMS)
Version: 1.0
Record of Changes
Version Date A* In charge Change Description
M, D
Contents
Record of Changes 2
I. Overview.. 4
1. User Requirements 4
1.1 Actors 4
2. Overall Functionalities 5
1. <<Feature Name>>. 8
2. Common Functions 11
3. Patron Feature. 12
1. <<Feature Name>>. 14
IV. Appendix. 19
3. Business Rules 19
4. .. 19
I. Overview
1. User Requirements
1.1 Actors
[An actor is a person (or sometimes another software system or a hardware device) that
interacts with the system to perform a use case. Following are some questions you might
ask to help user representatives identify actors
· Who (or what) is notified when something occurs within the system?
· Who (or what) helps the system respond to and complete a task?
This part gives the description of system actors, you can follow the table form as below]
# Actor Description
1 Admin This role has the highest level of authority in the system. Admins
manage all components of the system, including subjects, users,
system settings, and other functions. Admins have the ability to
perform administrative tasks throughout the system, ensuring its
stability and security.
2 Guest This role is for users who have not logged into the system.
Guests can view the system's welcome page and have the
option to log in or register for an account to access the system.
4 Team Leader Team Leaders are typically students who are responsible for
managing their project teams. They have additional
responsibilities such as managing project milestones, project
issue settings, and submitting assignment results on behalf of
their teams.
5 Project Project Mentors oversee and evaluate the work submitted by
Mentor student project teams. They can also manage assigned projects
and provide detailed evaluations and feedback on project
submissions and individual work items.
7 Administrator Administrators have extensive control over the system and its
settings. They can manage subjects, users, system settings, and
ensure the overall functionality and security of the platform.
a. Diagram(s)
[Provide the UC diagram(s) to show the actor-UCs and UC-UC relationships like the sample
below. You can have multiple UC diagrams for the system]
b. Descriptions
This part describes the use cases, you can follow the table form as below]
03 … … …
2. Overall Functionalities
2.1 Screens Flow
[This part shows the system screens and the relationship among screens. You can draw the
Screens Flow for the system in the form of diagram as below. Please note that beside the
normal flat screen, we might have the oval notation for pop-up screen (Orders Import) or a
screen with multiple information tab (Order Update), etc. You may also use text or
background format for different visuality purpose]
2 Change
Login Password Change his/her password
3 Reset
Login Password Reset his/her password for the case he/she forgot it
4 Manage project
Student Issues Manage project Issues
14 Class Manage projects view list, view details (class code, group name,
project code, English name,Vietnamese name,
mentor, co-mentor, team leader, status of active or
inactive, description), add new(by default:: the class
manager is set as project mentor, the status is set
to inactive and can't be changed), update details
(the class code and the status can't be changed),
Manager delete the inactive project(s).
17 Subject Manage subject view list, view details, add new, update details,
Manager assignments delete
23 Guest View landing show the system introduction information, with the
links allowing the user to login the system or to
page register new user account to access the system.
<<Screen X X
Name1>> X
<<Screen X X
Activity>>
<<Screen X
Name2>> X
Query All
Data X
Query Own X
Data
Query X
Managed Data
Add New X X
Data
Update All X
Data
Update X
Own Data
Update X
Managed Data
Delete Data
2 …
a. Database Schema
b. Table Descriptions
No Table Description
Task_name varchar
Start_date date
End_date date
Status varchar
First_name varchar
Last_name varchar
Email varchar
Number int
Password varchar
Role varchar
Image varbinary
Project_name varchar
Start_date date
End_date date
Project_description text
Team_name varchar
Role_name varchar
Package descriptions
No Package Description
03 …
Provide the functional description for the use cases using the template/guides below
UC ID and Name:
Trigger:
Description:
Preconditions:
Postconditions:
Normal Flow:
Alternative Flows:
Exceptions:
Priority: High (Medium, Low), Must Have (Should Have, Could Have),..
Frequency of Use:
Business Rules:
Other Information:
Assumptions:
Give each use case a unique integer sequence number identifier. State a concise name for
the use case that indicates the value the use case would provide to some user. Begin with
an action verb, followed by an object.
Enter the name of the person who initially wrote this use case and the date it was written.
An actor is a person or other entity external to the software system being specified who
interacts with the system and performs use cases to accomplish tasks. Different actors often
correspond to different user classes, or roles, identified from the customer community that
will use the product. Name the primary actor that will be initiating this use case and any other
secondary actors who will participate in completing execution of the use case.
Trigger
Identify the business event, system event, or user action that initiates the use case. This
trigger alerts the system that it should begin testing the preconditions for the use case so it
can judge whether to proceed with execution.
Description
Provide a brief description of the reason for and outcome of this use case, or a high-level
description of the sequence of actions and the outcome of executing the use case.
Preconditions
List any activities that must take place, or any conditions that must be true, before the use
case can be started. The system must be able to test each precondition. Number each
precondition. Example: PRE-1: User’s identity has been authenticated.
Postconditions
Describe the state of the system at the successful conclusion of the use case execution.
Label each postcondition in the form POST-X, where X is a sequence number. Example:
POST-1: Price of item in the database has been updated with the new value.
Normal Flow
Provide a description of the user actions and corresponding system responses that will take
place during execution of the use case under normal, expected conditions. This dialog
sequence will ultimately lead to accomplishing the goal stated in the use case name and
description. Show a numbered list of actions performed by the actor, alternating with
responses provided by the system. The normal flow is numbered “X.0”, where “X” is the Use
Case ID.
Alternative Flows
Document other successful usage scenarios that can take place within this use case. State
the alternative flow, and describe any differences in the sequence of steps that take place.
Number each alternative flow in the form “X.Y”, where “X” is the Use Case ID and Y is a
sequence number for the alternative flow. For example, “5.3” would indicate the third
alternative flow for use case number 5. Indicate where each alternative flow would branch off
from the normal flow, and if pertinent, where it would rejoin the normal flow.
Exceptions
Describe any anticipated error conditions that could occur during execution of the use case
and how the system is to respond to those conditions. Number each alternative flow in the
form “X.Y.EZ”, where “X” is the Use Case ID, Y indicates the normal (0) or alternative (>0)
flow during which this exception could take place, “E” indicates an exception, and “Z” is a
sequence number for the exceptions. For example “5.0.E2” would indicate the second
exception for the normal flow for use case number 5. Indicate where in the normal (or an
alternative) flow each exception could occur.
Priority
Indicate the relative priority of implementing the functionality required to allow this use case
to be executed. Use the same priority scheme as that used for the functional requirements.
Frequency of Use
Estimate the number of times this use case will be performed per some appropriate unit of
time. This gives an early indicator of throughput, concurrent usage loads, and transaction
capacity.
Business Rules
List any business rules that influence this use case. Don’t include the business rule text
here, just its identifier so the reader can find it in another repository when needed.
Other Information
Identify any additional requirements, such as quality attributes, for the use case that may
need to be addressed during design or implementation. Also list any associated functional
requirements that aren’t a direct part of the use case flows but which a developer needs to
know about. Describe what should happen if the use case execution fails for some
unanticipated or systemic reason (e.g., loss of network connectivity, timeout). If the use case
results in a durable state change in a database or the outside world, state whether the
change is rolled back, completed correctly, partially completed with a known state, or left in
an undetermined state as a result of the exception.
Assumptions
List any assumptions that were made regarding this use case or how it might execute.
b. Business Rules
Provide the business rules those are applied only to the use case
2. Common Functions
2.1 UC-2_Login System
a. Functional Description
Description: As a user, I want to be able to log into the system so that I can use the
system’s authenticated features and access my personalized account.
2. User types in the login details or choo other login options (see 2.1
and 2.2)
7. System accesses the Home Page (or the previous calling page if
any)
Alternative 2.1 Google Login
Flows:
1. User chooses to login system using Google account
Frequency of
Use:
Other
Information:
Assumptions:
b. Business Rules
FR1 Password Encoding User’s password must be encoded with MD5 hashing
a. Functional Description
Preconditions: None
7. System accesses the Home Page (or the previous calling page if
any)
Alternative 2.1 Email Register
Flows:
1. User chooses to register system using Email account
Frequency of
Use:
Business Rules:
Other
Information:
Assumptions:
b. Business Rules
FR1 Password Encoding User’s password must be encoded with MD5 hashing
3. Patron Feature
3.1 UC-5_Order a Meal
a. Functional Description
Description: A Patron accesses the Cafeteria Ordering System from the corporate
intranet or from home, views the menu for a specific date if desired,
selects food items, and places an order for a meal to be delivered to a
specified location within a specified 15-minute time window.
3. Patron selects one or more food items from menu. (see 5.1)
Exceptions: 5.0.E1 Requested date is today and current time is after today’s
order cutoff time
1. COS informs Patron that it’s too late to place an order for today.
2a. If Patron cancels the meal ordering process, then COS terminates
use case.
2b. Else if Patron requests another date, then COS restarts use case.
1. COS informs Patron that no delivery times are available for the meal
date.
2a. If Patron cancels the meal ordering process, then COS terminates
use case.
2b. Else if Patron requests to pick the order up at the cafeteria, then
continue with normal flow, but skip steps 7 and 8.
2b. Else if Patron cancels the meal ordering process, then COS
terminates use case.
Priority: High
Frequency of Approximately 300 users, average of one usage per day. Peak usage
Use: load for this use case is between 9:00 A.M. and 10:00 A.M. local time.
3. The default date is the current date if the Patron is using the
system before today’s order cutoff time. Otherwise, the default date
is the next day that the cafeteria is open.
Assumptions: Assume that 15 percent of Patrons will order the daily special (source:
previous 6 months of cafeteria data).
b. Business Rules
None
Description: Cafeteria patrons who use the COS and have meals delivered must be
registered for payroll deduction. For noncash purchases made through
the COS, the cafeteria will issue a payment request to the Payroll
System, which will deduct the meal costs from the next scheduled
employee payday direct deposit.
Trigger: Patron requests to register for payroll deduction, or Patron says yes
when COS asks if he wants to register
Alternative None
Flows:
Priority: High
Business Rules: BR-86 and BR-88 govern an employee’s eligibility to enroll for payroll
deduction.
Other Expect high frequency of executing this use case within first 2 weeks
Information: after system is released.
b. Business Rules
None
[Provide brief description of the screen/function + related UC here and other details as in the
sub-sections]
UI Design
[This is to describe the UI layout (Mockup prototype) & descriptions for screen
fields/components]
<<Mockup prototype>>
Database Access
[Provide the design description for the screen/function to access the database here: what
table the screen/function would access, which transactions does it make (C-Create, R-Read,
U-Update, or D-Delete), and how/purpose of the access (by providing Description and SQL
commands)]
..
SQL Commands
[Provide the detailed SQL (select, insert, update...) which are used in implementing the
screen/function]
· UC02_Login System
UI Design
Email* Text Box This is for user to input valid email address for
logging in
Password* Password Box This is for user to input password for logging in
Register Button User clicks to redirect to the User Register page for
registering new user account to access the system
Forgot Password? Hyperlink User clicks to redirect to the Password Reset page
for resetting his/her forgot password
Login with Google Hyperlink Allow user to login with his/her Google account
Login with Hyperlink Allow user to login with his/her Facebook account
Facebook
Database Access
b. Setting List
UI Design
Search Fields
Setting Type Combo Box Filled with the list of current active setting types
Setting Status Combo Box Values: All Statuses (default), Active, and Inactive
Search Phase Text Box Allow to search using the name or map values
Add New Hyperlink Click to open the Setting Details page for adding
new setting (master data)
Data Table
Order Integer Display order of the setting: the order of the setting
type, displayed among the list of settings with the
same type
Data Actions
Edit icon Click to open the Setting Details page for updating
the relevant setting (master data)
Database Access
c. Setting Details
UI Design
String (20)
Type* Combo Box Type of the setting, filled with the list of setting types
Mapped Values Text Box Supplementary information for the setting (if any)
String (50)
Order Text Box Display order of the setting: the order of the setting
type, displayed among the list of settings with the
Integer (>=0) same type
Reset Button Click to reset the changes use has made on the
screen fields back to the initial values when the
screen is loaded
Database Access
IV. Appendix
1.
2.
3.
<<Sample:
LI-1: The project may have limitations in terms of integrating with existing university systems
or databases. Full integration with legacy systems might not be achievable within the project
scope.
LI-2: The system may have scalability limitations and accommodating a significantly higher
number of users or projects beyond the initial scope may require additional development
efforts.
LI-3: The system may not fully support older web browsers, and users may be required to
use up-to-date browsers for optimal performance.
EX-1: Financial transactions, such as tuition payments or project funding, may be excluded
from the scope.
EX-2: While basic reporting features will be included, advanced reporting and data analytics
capabilities may be excluded from the initial project scope.
EX-3: Localization of the portal into multiple languages may be excluded, and the initial
release may support only a single primary language.
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 Users must create passwords that meet specific
complexity constraints, such as minimum length,
including both letters and numbers.
BR-02 Constraints Students may be constrained to a maximum number of
project submissions per semester.
BR-03 Facts Actual project submission dates will be recorded as facts
for auditing purposes.
BR-04 Facts The system will maintain logs of user activities as facts
for security and auditing purposes.
BR-11 Computations Students may be constrained to a maximum number of
project submissions per semester.
BR-12 Computations Users' access levels to various features of the portal will
be computed based on their assigned roles (e.g.,
student, faculty, admin).
>>
4. ..