Data helps retail stores better understand their customers, products andmarkets.. The data management application for retail stores presented in this report is an effective solution to s
Trang 1VIETNAM NATIONAL UNIVERSITY HO CHI MINH CITY UNIVERSITY OF INFORMATION TECHNOLOGY ADVANCED PROGRAM IN INFORMATION SYSTEMS
CAP HUU ANH DUC - 17521295
BUILDING AN AUTOMATED WORKFLOW TOOL
FOR BUSINESS DATA ANALYSIS IN RETAIL
BACHELOR OF ENGINEERING IN INFORMATION SYSTEMS
THESIS ADVISORS PH.D DO TRONG HOP PH.D TRAN VAN THANH
HO CHI MINH CITY, 2024
Trang 2To complete this thesis, I would like to thank the teachers of the Department of
Information Systems, University of Information Technology - Vietnam National
University, Ho Chi Minh City for creating opportunities to study, practice and
accumulate Accumulate knowledge and skills to carry out the thesis
I would like to express my sincere gratitude to my advisors, Mr Do Trong Hop and
Mr Tran Van Thanh, for their guidance and support throughout this research
process The teachers’ expertise, knowledge and patience are invaluable to me
Due to my limited knowledge and lack of practical experience, it is difficult to
avoid shortcomings in the thesis content I look forward to receiving comments andfurther teaching from you teachers
Finally, I would like to wish you good health and much success in your work
Best regards
Trang 3CHAPTER 2 REQUIREMENT SPECTFICATION -2-ccscs<csee 5
2.1.2 _ Statistic ÍUnCtHON ccSĂ kg nghiệt 5
“2 e 44 13
3.2.2 Get data ITSIBlI( Gv rry 16
Trang 43.3.4 Manage JoD Ăn HH TH TH HH ng 33
2m" 55
CHAPTER 4 IMPLEMENTATION .- HH HH HH gi, 57
4.1 MethodOlOBI€S Ăn TH HH Hư 57
“MA(( 2005 59
4.4.2 Workflow management page - - 5 S9 re 63
Trang 5LIST OF FIGURES
Figure 3.1 General S€-CAS€ - Ăn 1H TH HH HH ng 7
Figure 3.3 Detail use-case: Manage JOb - - + k1 1H HH rưy 9
Figure 3.12 Update account activity (Ï1aðTA1T1 - s5 55 + sssxerskeree 34
Figure 3.18 Signin sequence đ1aØTa1m - << + 13 E11 1 1 vn trên 48
Figure 3.24 Run workflow sequence (đÏ1aØT41m s5 + ssvessseeseeers 52
Figure 3.25 Manage job sequence diagram ceecceesceeeseeesecesneeeeeeeaecesaeeenneesaes 53
Trang 7LIST OF TABLES
Table 3.1 List Of 4CẨOTS G0011 ng nh TH Hi 11Table 3.2 List Of USG-CAS€ - 2G G1 HH TH HH như 12Table 3.3 Signin SD€CIẨICAfIOH - c3 1E TH TH ngàng Hưng hư 14
Table 3.9 Create account SD€CIÍICAfIOTI c- 2c c0 2101193119111 119 11v kg ngư 30
Table 3.10 Update account SDeCIÍICAtIOTI - 6 5 2111 E91 1 ren 33
Trang 8Data is an extremely valuable asset for retail stores in today's era of science and
technology Data helps retail stores better understand their customers, products andmarkets From there, retail stores can make more informed business decisions,
improve operational efficiency and compete in the market
The data management application for retail stores presented in this report is an
effective solution to solve problems related to data processing and exploitation,
helping retail stores manage data effectively
Trang 9CHAPTER1 INTRODUCTION
1.1 Introduction
In the modern business landscape, data is an extremely valuable asset for retail stores.Data helps retail stores better understand their customers, products and markets Fromthere, retail stores can make more informed business decisions, improve operationalefficiency and compete in the market
The data management application for retail stores presented in this report is aneffective solution to help retail stores manage data effectively This applicationprovides the following functions:
e Manage customer data, products, orders, : The application helps retail stores
store and manage all data related to their business activities completely andaccurately
e Display data in charts: The application helps retail stores display data in an
intuitive, easy-to-understand form This makes it easier for retail stores toanalyze data and make more informed business decisions
e Automate repetitive tasks: The application helps retail stores automate
repetitive tasks, saving time and costs
e Customizable and scalable: The app can be customized to meet the specific
needs of each retail store In addition, the application is also scalable to meetthe needs of retail stores of different sizes
Data management application for retail stores is an effective solution to help retail
stores improve operational efficiency and compete in the market.
1.2 Research problems
Managing data effectively is a challenge for many retail stores Retail stores oftenencounter the following problems:
Trang 10e Distributed data: Retail store data is often stored in many different places, such
as in CRM, ERP, POS systems, etc This makes accessing and managing data
difficult becomes difficult and expensive
e Confusing data: Retail store data is often stored in text or spreadsheet format
This makes data analysis difficult and time-consuming
e Lack of effective data analysis tools: Retail stores often lack effective data
analysis tools to help them better understand their data
Based on the above issues, specific research issues for data management applicationsfor retail stores include:
e Effective data integration methods: How to effectively integrate data from
many different sources into a single system?
e Visual data display models: How to display data in a visual,
easy-to-understand form?
e Effective data analytics tools: How can we provide effective data analytics
tools that help retail stores better understand their data?
Additionally, specific research problems can also be identified based on the specific
needs of retail stores For example, one retail store may need to research how to usedata to predict customer needs, while another retail store may need to research how
to use data to Optimize your supply chain
Trang 11Management functions help retail stores better understand their customers, productsand markets From there, retail stores can make more informed business decisions,
improve operational efficiency and compete in the market
Trang 12CHAPTER 2 REQUIREMENT SPECIFICATION
2.1 Functional requirements
2.1.1 Automation function
The automation feature is one of the most important features of the system, which isthe basis for implementing the system's features Every automation process must
include the following steps:
e Schedule with trigger
e Start
e Execution
e End
The automation feature must allow users to configure automation process steps,
schedule or event-driven automation processes, and track the status of automation
Processes.
Because business operations will constantly change, automation functions must beable to expand easily, with the ability to integrate additional external systems when
necessary.
In addition, because application users may not have a good background in technology,
the user interface must be minimalist, easy to use, and easy to operate
2.1.2 Statistic function
The statistical function must support a variety of chart types to display the most
complete information possible to help users get an overview of the data
Trang 132.2 Non-functional requirements
Scalability: The application must be scalable to meet growing user needs, such
as the ability to add new features, handle more data
Reliability: Automated processes must be highly reliable, meaning they mustoperate accurately and without interruption
Performance: The app must have performance that meets user needs, such asfast response time, and the ability to handle large amounts of data
Security: The application must ensure safety and data security such as usingencryption measures, user authentication
Usability: The app should be easy to use and learn, such as having a
user-friendly interface, supporting online help
Supportability: The application must be well supported such as availability
of documentation, phone or email support
Efficiency: Automated processes must be efficient, meaning they mustcomplete tasks quickly and cost-effectively
Customizability: Automation processes must be customizable to meet thespecific needs of the organization
User requirements: Non-functional requirements must meet user needs and
expectations
Technical factors: Non-functional requirements must be technically feasibleand consistent with the application's technology platform
Trang 14CHAPTER 3 ANALYSIS AND DESIGN
Trang 17Create account
Manage account nesses «extend» Update account
Figure 3.4 Detai use-case: Manage account
Trang 18Table 3.1 List of actors
9 | Schedule job Set up a job to run at a specified time or date
Trang 19II | Cancel job Terminate a job that is currently in progress.
12 | Delete job Remove a job from the system or the database
Perform tasks and activities related to the creation,
13 | Manage account ¬
management, and termination of an account
14 | Create account Establish a new account for a user
Change the information associated with an
Trang 203.2 Use-case specification and Activity diagram
3.2.1 Signin
Preconditions
+ The user has a valid account within the system
+ The system is accessible and functioning properly
+ The sign-in interface is available to the user
Basic flow
1 The user initiates the in process by accessing the
sign-in sign-interface
2 The user enters their username or email address
3 The user enters their password
4 The system validates the provided credentials against itsdatabase
5.1 If the credentials are valid:
+ The system creates a session for the user, associating themwith their account
+ The system grants the user access to the system's featuresand functions based on their roles and permissions
+ The system redirects the user to the appropriate application
or homepage
5.2 If the credentials are invalid:
+ The system displays an error message indicating that theusername or password is incorrect
Trang 21+ The system prompts the user to try again or to use the
"forgot password" feature
Alternative flows
Postconditions
+ The user is either successfully signed into the system andgranted access to its features, or they are informed that theircredentials are invalid
+ If the user is successfully signed in, a session is created forthem, tracking their activity and preferences within the
- Account lockout policies
- Secure session management
+ Performance: The sign-in process should be efficient and
responsive, minimizing delays and providing feedback to the
Trang 22Login page Display login page «datastore»
Validate input
Database checking
Throw data format error
Throw checking failed
notification Not found <>
Display successful notification and redirect
Trang 233.2.2 Get data insight
Preconditions
+ The user has access to the system or application thatprovides data insights
+ The necessary data has been collected, cleaned, and stored
in a format accessible to the system
+ The system has the capability to generate insights from the
data, either through built-in analytics tools
Basic flow
1 The user initiates the process of getting data insights byaccessing the relevant interface or feature within the system
2 The user provides input indicating the desired insights, such
as selecting metrics or dimensions, or applying other
+ The insights are presented in a format that enables the user
to understand, interpret, and potentially act upon theinformation
Trang 24+ User Experience: The interface for obtaining data insights
should be intuitive, user-friendly, and adaptable to differentuser needs and levels of expertise
Table 3.4 Get data insight specification
Trang 25+ The user has the necessary permissions to manage
workflows within the system
+ The workflow management system is accessible and
functioning properly
+ The user has a clear understanding of the process or task
sequence that the workflow will represent
+ Triggers (events that start the workflow)
3 The user defines the workflow structure by:
+ Adding tasks or steps to the workflow+ Configuring task attributes
+ Specifying the order of tasks
Trang 264 The user saves the workflow, making 1t available forexecution and management.
Alternative flows
1 Collaborative workflow creation: Multiple users maycollaborate on the creation of a workflow, with each usercontributing to different parts of the design
+ A new workflow has been created and saved in the system.Postconditions
+ The workflow is ready to be executed and monitored
+ Automation: The system should support the automation of
repetitive tasks within workflows
+ Customization: The system should allow for customization
Special of workflows to meet specific business needs and user
requirements preferences.
+ User Interface: The workflow creation interface should beintuitive and easy to use, with clear visual representations ofthe workflow structure and task dependencies
Table 3.5 Create workflow specification
Trang 27Get registered automation node Display creation page
Drag and drop
Create workflow only
Create both workflow and schedule job
«datastore»
WORKFLOWS
| Create workflow record
Create schedule job
Trang 28+ The user has the necessary permissions to modify
workflows within the system
+ The workflow management system is accessible and
3 The user initiates the update process, which may involve:
+ Modifying workflow details: Changing the workflow name,
triggers, or status
+ Editing task properties
+ Restructuring the workflow: Adding, removing, orreordering tasks or steps within the workflow
+ Adjusting task dependencies: Changing the relationshipsbetween tasks, such as adding or removing prerequisites
Trang 29+ Modifying automation rules: Updating conditions or actions
that trigger automatic workflow actions
4 The user saves the changes to the workflow
5 The system validates the updated workflow to ensure it islogically sound and free of errors
7 The system updates the workflow definition and anyassociated data or configurations
Special + User interface: The workflow update interface should be
requirements intuitive and easy to use
Table 3.6 Update workflow specification
Trang 30Get registered
automation node
Display workflow detail
e
pag Validate input
Drag and drop
automation node <>
Invalid
Configure workflow
Throw data format error
Is trigger have changes?
Update workflow only
Update both workflow and schedule job
Trang 31+ The user has the necessary permissions to initiate
workflows within the system
+ The workflow to be run exists within the system and is in avalid state
+ Any required input data or resources for the workflow are
available
Basic flow
1 The user accesses the workflow management interface andselects the workflow to run
2 The user confirms the initiation of the workflow
3 The system creates a new instance of the workflow,assigning unique identifiers to jobs and tracking progress
4 The system starts the execution of the workflow, followingits defined structure and task dependencies
5 The system monitors the progress of each task, sending
notifications or reminders as needed
6 The system continues to execute the workflow until alltasks are completed or a termination condition is met
Alternative flows
Postconditions
+ The workflow instance has completed execution, either
Trang 32+ The system records the final status of the workflow(completed, canceled, failed) and any relevant output data orresults.
+ The system notifies relevant stakeholders of the workflow
completion, or any errors encountered
+ The system maintains a history of workflow instances for
audit and analysis purposes
Special
requirements
+ Performance: The system should handle workflowexecution efficiently, ensuring tasks are completed in a timelymanner and without unnecessary delays
+ Monitoring and logging: The system should provide
comprehensive logging and monitoring capabilities to trackworkflow progress, identify bottlenecks, and troubleshootissues
+ Integration: The workflow management system may need tointegrate with other systems or exchange information
+ Scalability: The system should be able to handle multipleconcurrent workflow instances and scale to accommodate
increasing workload demands
Table 3.7 Run workflow specification
Trang 33page Get workflow data «datastore»
WORKFLOWS
- Handle execution Select execution feature request
«datastore»
JOBS Build and execute
workflow
Summarize workflow log
Display logs Update job
Figure 3.9 Run workflow activity diagram
Trang 343.2.3.4 Delete workflow
Preconditions
+ The user has the necessary permission to delete workflows
within the system
+ The workflow to be deleted exists within the system
+ No active instances of the workflow are currently running
+ The user has confirmed their intention to delete theworkflow, understanding that the action is irreversible
Basic flow
1 The user accesses the workflow management interface andlocates the workflow to be deleted
2 The system displays a confirmation dialog, outlining the
implications of deleting the workflow
3 The user confirms their decision to delete the workflow
4 The system removes the workflow definition and associated
metadata from the database
5 The system may also delete any historical data related tothe workflow, such as completed instances, logs, or reports, asper organizational policies
Alternative flows
Postconditions
+ The workflow has been permanently removed
+ The system no longer displays the workflow in any lists
Trang 35Special Referential integrity: The system should ensure that deleting a
Handle delete request Delete workflow record
Send notification and
Display workflow redirect to workflow
management page management page
Trang 363.2.4 Manage account
1 The admin initiates the account creation process, typically
by accessing a "Create Account" button or link
2 The system presents a registration form or screen to the
admin
3 The admin enters the required information for the new
account, such as:
+ Role or group membership
4 The system validates the admin's input to ensure it meetsthe required criteria, such as:
+ Unique username
+ Valid email format
Trang 37+ Strong password strength+ Compliance with any account creation policies
5 If the input is valid, the system creates a new account in the
database, associating the provided information with the
information
Postconditions
+ A new account has been created in the system
+ The admin is notified of the successful account creation
Special
requirements
+ Security:
- The system must securely store user passwords using
strong encryption methods
- The system should protect user data from unauthorized
access or breaches
- The system should implement measures to prevent
account takeover attempts, such as brute force attacks