Tải bản đầy đủ (.docx) (56 trang)

XÂY DỰNG ỨNG DỤNG CHATBOT tư vấn CHỌN KHÓA học TRỰC TUYẾN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.49 MB, 56 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
----------

ĐỒ ÁN 1
Đề tài: XÂY DỰNG ỨNG DỤNG CHATBOT TƯ VẤN CHỌN
KHÓA HỌC TRỰC TUYẾN
Giảng viên hướng dẫn:
ThS. Trần Anh Dũng
ThS. Phan Trung Hiếu
Sinh viên thực hiện:
18521481

Bùi Minh Tiến

TPHCM, tháng 6 năm 2021


ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC
CƠNG NGHỆ THƠNG TIN

CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập - Tự Do - Hạnh Phúc
TP. HCM, ngày….. tháng ….. năm ………

ĐỀ CƯƠNG CHI TIẾT
TÊN ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG CHATBOT TƯ VẤN CHỌN KHÓA
HỌC TRỰC TUYẾN
TÊN ĐỀ TÀI (TIẾNG ANH): BUILDING A CONSULTING CHATBOT
APPLICATION FOR CHOOSING ONLINE COURSES


CÁN BỘ HƯỚNG DẪN: ThS. Trần Anh Dũng
Thời gian thực hiện: Từ ngày 29/3/2021 đến ngày 30/06/2021
Sinh viên thực hiện:
Bùi Minh Tiến – 18521481
Nội dung đề tài: (Lý do chọn đề tài,các vấn đề của một số ứng dụng hiện nay,
mô tả chi tiết mục tiêu, phạm vi, đối tượng sử dụng, điểm nổi bật của ứng dụng,
phương pháp thực hiện, nền tảng cơng nghệ, các tiêu chí khác)
Lý do chọn đề tài:
-

Với sự phát triển của mạng Internet trong thời đại 4.0, việc học hỏi kiến
thức mới đã trở thành một nhu cầu thiết yếu của mọi người trong cuộc
sống để bắt kịp với những cải tiến. Cùng với sự phát triển đó, mọi người
nay đã khơng cịn bị thụ động trong việc học vì kiến thức hiện nay khơng
chỉ gói gọn trong sách vở. Các khóa học online là những bài giảng được
thu sẵn và sắp xếp theo một quy trình nhất định và chúng xuất hiện nhằm
tiết kiệm thời gian cho người dùng vì kiến thức trên mạng Internat là vô
tận và chưa được hệ thống. Tuy nhiên việc tìm kiếm khóa học hợp lý,
chất lượng và có giá cả hợp lý thường rất khó khăn. Vì thế em đã chọn đề
tài này nhằm giúp cho người dùng tìm kiếm các khóa học và có thể tư
vấn hỗ trợ cho người dùng chọn ra những khóa học phù hợp nhất với nhu
cầu.

-

Khách hàng chỉ cần với những thao tác đơn giản là có thể tìm khóa học


phù hợp với mong muốn của mình
Các vấn đề của một số ứng dụng hiện nay:

-

Các ứng dụng có chức năng tổng hợp, tìm kiếm, gợi ý các khóa học
online hiện nay có rất ít

-

Các platform cung cấp khóa học online như kyna.vn, unica.com.vn, … có
chat nhưng là chat với nhân viên tư vấn trực tuyến

 Vì vậy em muốn tạo ra một ứng dụng tổng hợp các khóa học từ các
platform thơng dụng và giúp cho người dùng tìm kiếm và chọn khóa học
dễ dàng hơn. Phần mềm cũng sẽ xây dựng cộng đồng đánh giá để đưa ra
những gợi ý đáng tin và có cơ sở
Mục tiêu:
-

Xây dựng một ứng dụng hỗ trợ, tư vấn cho người dùng nhằm tìm được
những khóa học một cách nhanh chóng và phù hợp nhất từ thông tin mà
khách hàng cung cấp

-

Ứng dụng sử dụng những công nghệ mới, phù hợp đáp ứng khả năng mở
rộng và tương tác cao.

-

Ứng dụng có giao diện trực quan, dễ sử dụng, phù hợp với nhu cầu của
đối tượng người dùng.


-

Phát triển ứng dụng có tính thực tiễn cao, có khả năng triển khai ứng
dụng vào thực tế.

Phạm vi:
Phạm vi chức năng:
-

Tìm kiếm thơng tin liên quan đến khóa học online

-

Trang thơng tin về các khóa học, nội dung khóa học

-

Tích hợp tính năng như đăng nhập, đăng kí, u thích và chia sẻ thơng tin
về khóa học


-

Hỗ trợ và tư vấn cho người dùng về tìm kiếm khóa học dựa vào từ khóa,
hoặc lựa chọn danh mục của người dùng

Đối tượng sử dụng:
Khách hàng có nhu cầu tìm kiếm các khóa học online
Điểm nổi bật của ứng dụng:

-

Ứng dụng sẽ có thêm chatbot tự động trả lời cho người dùng còn những
ứng dụng nổi bật hiện nay hầu như khơng có chatbot hoặc có chat mà
người trực tiếp nói chuyện với người dùng.

-

Ứng dụng sẽ tổng hợp các khóa học từ các platform cung cấp khóa học
online để người dùng dễ tìm kiếm và chọn lựa

-

Ứng dụng giúp lưu lại danh sách các khóa học yêu thích hoặc được người
dùng quan tâm

Phương pháp thực hiện:
-

Lên kế hoạch và thực hiện bằng cách trao đổi trực tiếp và gián tiếp cũng
như nhờ sự tư vấn của giáo viên hướng dẫn.

-

Sử dụng các phương pháp nghiên cứu như:
 Tự nghiên cứu tài liệu chuyên ngành
 Tìm hiểu, phân tích các ứng dụng hiện có

-


Về mặt cơng nghệ thì nhóm xây dựng Restful API bằng Nodejs để làm
việc với dữ liệu. Cịn về phần giao diện thì nhóm sử dụng Nextjs giúp
người dùng có thể xem và tương tác trực tiếp trên đó.

-

Xây dựng chatbot tư vấn, hỗ trợ người sử dụng tìm kiếm và chọn lựa
khóa học online

-

Tìm hiểu bài tốn xử lí ngơn ngữ tự nhiên (Natural Language Processing)


Nền tảng công nghệ:
-

Front-end: Reactjs, Nextjs

-

Back-end: Nodejs

-

Database: MongoDB

-

Cào dữ liệu: Puppeteer


-

Cơng cụ tìm kiếm: Elasticsearch

-

Chatbot Facebook Messenger

-

IDE: Visual Studio Code

Các tiêu chí khác:
Tính thẩm mỹ
- Ứng dụng có giao diện đẹp, dễ sử dụng tâm lý thoải mái cuốn hút khách
hàng khi sử dụng.
Tính logic
- Đối với nhà quản trị có thể cập nhật, thêm xóa sửa đổi thơng tin liên quan
đến khóa học và các vấn đề khác. Nhận và trả lời ý kiến phản hồi phía
khách hàng.
-

Ứng được sự liên kết logic giữa các màn hình để khách hàng có thể
chuyển màn hình một cách nhanh nhất và thuận tiện nhất, ....

Kế hoạch thực hiện:
Với thời gian thực hiện từ 29/03/2021 tới 30/06/2021, nhóm chia thành 6 sprint:
 Sprint 1: Khảo sát, nghiên cứu
 Sprint 2: Phân tích thiết kế hệ thống, thiết kế chức năng và cơ sở dữ liệu

ứng dụng
 Sprint 3: Xây dựng các API, xây dụng giao diện và phát triển ứng dụng
để thực hiện các chức năng ở Sprint 2


 Sprint 4: Tìm hiểu hệ thống gợi ý khóa học, chatbot và ứng dụng
 Sprint 5: Kiểm thử chức năng
 Sprint 6: Hồn thành báo cáo

Sprint
1. (29/03/2021 –
4/4/2021)

Cơng việc
- Khảo sát các ứng dụng, website tương tự
- Tìm hiểu các công nghệ cần dùng: NodeJS,
NextJS, ReactJS

2. (5/4/2021 –
18/4/2021)

- Phân tích, xác định chức năng
- Đặc tả chức năng
- Vẽ sơ đồ lớp, use-case
- Xây dựng cơ sở dữ liệu

3. (19/4/2021 –
16/5/2021)

- Xây dựng API

- Xây dựng giao diện ứng dụng
- Hiện thực chức năng đã phân tích

4. (17/5/2021 –
13/06/2021)

- Nghiên cứu bài tốn xử lý ngơn ngữ tự nhiên

5. (14/6/2021 –
23/06/2021)

- Kiểm thử các chức năng của ứng dụng

6. (24/06/2021 –
30/06/2021)

- Hoàn thành báo cáo cho đồ án

- Nghiên cứu, xây dựng chatbot
- Xử lý các lỗi phát sinh

Xác nhận của CBHD
(Ký tên và ghi rõ họ tên)

TP. HCM, ngày … tháng … năm 2021



Mục lục
....................................................................................................................................... 1

CHƯƠNG 1. THÔNG TIN CHUNG...............................................................................10
1.1

Lý do chọn đề tài:...............................................................................................10

1.2

Mục tiêu:............................................................................................................. 10

1.3

Phạm vi:.............................................................................................................. 10

CHƯƠNG 2. CƠ SỞ LÝ THUYẾT.................................................................................12
2.1

Tổng quan về Nodejs..........................................................................................12

2.1.1

Giới thiệu.....................................................................................................12

2.1.2

Tạo sao chọn Nodejs để phát triển server.....................................................12

2.1.3

Áp dụng vào đề tài.......................................................................................12


2.2

ReactJS...............................................................................................................12

2.2.1

Giới thiệu.....................................................................................................12

2.2.2

Ưu nhược điểm của Reactjs.........................................................................12

2.3

NextJs.................................................................................................................13

CHƯƠNG 3. MƠ HÌNH USE CASE..............................................................................14
5.1

Sơ đồ usecase......................................................................................................14

5.2

Danh sách các actor............................................................................................15

5.3

Danh sách các usecase........................................................................................16

5.4


Đặc tả use-case...................................................................................................17

5.4.1

Đặc tả use-case “Đăng kí”............................................................................17

5.4.2

Đặc tả use-case “Đăng nhập”.......................................................................17

5.4.3

Đặc tả usecase “Quản lý người dùng”..........................................................18

5.4.4

Đặc tả usecase “Quản lý khóa học”..............................................................19

5.4.5

Đặc tả usecase “Quản lý Danh mục khóa học”............................................20

5.4.6

Đặc tả usecase “Quản lý Bình luận Khóa học”............................................20

5.4.7

Đặc tả usecase “Xóa khóa học u thích”....................................................21


5.4.8

Đặc tả usecase “Xem thông tin cá nhân”......................................................22

5.4.9

Đặc tả usecase “Chỉnh sửa thông tin cá nhân”.............................................23

5.4.10

Đặc tả usecase “Tìm kiếm khóa học”.......................................................23


5.4.11

Đặc tả usecase “Xem thơng tin khóa học”................................................24

5.4.12

Đặc tả usecase “Bình luận khóa học”.......................................................24

5.4.13

u thích khóa học...................................................................................25

5.4.14

Nhắn tin với hệ thống thơng qua Chatbot.................................................25


Chương 4: PHÂN TÍCH...................................................................................................27
6.1

Sơ đồ lớp (mức phân tích)..................................................................................27

6.1.1

Sơ đồ lớp (mức phân tích)...........................................................................27

6.1.2

Danh sách các lớp đối tượng và quan hệ......................................................27

Chương 5: Thiết kế dữ liệu...............................................................................................29
7.1

Sơ đồ logic..........................................................................................................29

7.2

Mô tả chi tiết kiểu dữ liệu trong sơ đồ logic.......................................................29

7.2.1

Bảng “User”.................................................................................................29

7.2.2

Bảng “Comment”.........................................................................................30


7.2.3

Bảng “Courses”............................................................................................31

7.2.4

Bảng “ContactMessage”..............................................................................32

7.2.5

Bảng “Category”..........................................................................................32

7.2.6

Bảng “Page”.................................................................................................32

7.2.7

Bảng “Instructor”.........................................................................................33

Chương 6: Thiết kế kiến trúc............................................................................................34
8.1

Xây dựng kiến trúc hệ thống..............................................................................34

Chương 7: Thiết kế giao diện...........................................................................................35
9.1

Danh sách các màn hình.....................................................................................35


9.2

Mơ tả chi tiết mỗi màn hình................................................................................36

9.2.1

Đăng nhập....................................................................................................36

9.2.2

Đăng kí.........................................................................................................37

9.2.3

Trang chủ.....................................................................................................38

9.2.4

Tìm kiếm khóa học......................................................................................39

9.2.5

Thơng tin khóa học......................................................................................40

9.2.6

Danh sách đánh giá......................................................................................41

9.2.7


Danh sách khóa học yêu thích......................................................................42

9.2.8

Thay đổi mật khẩu........................................................................................43


9.2.9

Chỉnh sửa thông tin cá nhân.........................................................................44

9.2.10

Thông tin giảng viên................................................................................45

9.2.11

Danh sách người dùng.............................................................................46

9.2.12

Danh sách khóa học.................................................................................47

9.2.13

Danh sách trang khóa học.........................................................................48

9.2.14

Danh sách giảng viên...............................................................................49


9.2.15

Danh sách danh mục.................................................................................50

9.2.16

Tạo/Chỉnh sửa danh mục..........................................................................51

9.2.17

Tạo/Chỉnh sửa giảng viên.........................................................................52

9.2.18

Tạo/Chỉnh sửa khóa học...........................................................................53

Chương 8: Kết luận..........................................................................................................54
10.1

Mơi trường phát triển và môi trường triển khai...............................................54

10.1.1

Môi trường phát triền ứng dụng................................................................54

10.1.2

Môi trường triển khai ứng dụng................................................................54


10.2

Kết quả đạt được..............................................................................................54

10.3

Hướng phát triển..............................................................................................54


CHƯƠNG 1. THÔNG TIN CHUNG
1.1

Lý do chọn đề tài:

Với sự phát triển của mạng Internet trong thời đại 4.0, việc học hỏi kiến thức mới
đã trở thành một nhu cầu thiết yếu của mọi người trong cuộc sống để bắt kịp với
những cải tiến. Cùng với sự phát triển đó, mọi người nay đã khơng cịn bị thụ động
trong việc học vì kiến thức hiện nay khơng chỉ gói gọn trong sách vở. Các khóa
học online là những bài giảng được thu sẵn và sắp xếp theo một quy trình nhất
định và chúng xuất hiện nhằm tiết kiệm thời gian cho người dùng vì kiến thức trên
mạng Internat là vơ tận và chưa được hệ thống. Tuy nhiên việc tìm kiếm khóa học
hợp lý, chất lượng và có giá cả hợp lý thường rất khó khăn. Vì thế em đã chọn đề
tài này nhằm giúp cho người dùng tìm kiếm các khóa học và có thể tư vấn hỗ trợ
cho người dùng chọn ra những khóa học phù hợp nhất với nhu cầu.
Khách hàng chỉ cần với những thao tác đơn giản là có thể tìm khóa học phù hợp
với mong muốn của mình
1.2

Mục tiêu:


Xây dựng một ứng dụng hỗ trợ, tư vấn cho người dùng nhằm tìm được những
khóa học một cách nhanh chóng và phù hợp nhất từ thông tin mà khách hàng cung
cấp
Ứng dụng sử dụng những công nghệ mới, phù hợp đáp ứng khả năng mở rộng và
tương tác cao.
Ứng dụng có giao diện trực quan, dễ sử dụng, phù hợp với nhu cầu của đối tượng
người dùng.
Phát triển ứng dụng có tính thực tiễn cao, có khả năng triển khai ứng dụng vào
thực tế.
1.3

Phạm vi:

Phạm vi chức năng:


-

Tìm kiếm thơng tin liên quan đến khóa học online

-

Trang thơng tin về các khóa học, nội dung khóa học

-

Tích hợp tính năng như đăng nhập, đăng kí, yêu thích và chia sẻ thơng tin
về khóa học

-


Hỗ trợ và tư vấn cho người dùng về tìm kiếm khóa học dựa vào từ khóa,
hoặc lựa chọn danh mục của người dùng


CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
2.1 Tổng quan về Nodejs
2.1.1

Giới thiệu

Nodejs được xây dựng và phát triển bởi Ryan Dahl và được bảo trợ công ty Joyent vào
năm 2009.
NodeJS là một mã nguồn mở có thể chạy trên nhiều nền tảng hệ điều hành khác nhau
và được xây dựng dựa trên nền tảng Javascript V8 Engine của Chrome.
Node.js có thể làm việc với nhiều cơ sở dữ liệu điển hình như: SQL hoặc NoSQL.
Những cơ sở dữ liệu nổi tiếng như: MongoDB, PostgreSQL, Sql Server, MySql, …
2.1.2

Tạo sao chọn Nodejs để phát triển server

Nodejs giúp các ứng dụng có tốc độ xử lý nhanh.
Nodejs có thể mở rộng nhanh, số lượng truy cập lớn, có thể dễ dàng thay đổi và đổi
mới cơng nghệ.
Nodejs có cơ chế non-blocking I/O làm ứng dụng nhẹ nhưng hiệu quả.
Những ứng dụng của có thể chạy đa nền tảng, nhiều thiết bị và có thể đáp ứng tốt về
thời gian thực.
2.1.3

Áp dụng vào đề tài


Nodejs được áp dụng để xây dựng toàn bộ hệ thống Back-end cho hệ thống giúp tăng
tốc độ load dữ liệu. Nodejs cung cấp những thư viện cần thiết trong quá trình phát triển
hệ thống. Nodejs và Reactjs (Nextjs) là sự kết hợp vô cùng tốt để phát triển hệ thống một
cách tốt nhất.
2.2
2.2.1

ReactJS
Giới thiệu

React.js là một thư viện Javascript được các công ty lớn trên thế giới sử dụng. Các
framework khác hướng đến mơ hình MVC thì React với sự đơn giản và dễ dàng kết hợp
với những thư viện Javascript khác. Được phát triển bởi Facebook và ra mắt năm 2013.
Reactjs được sử dụng để thiết kế giao diện của Facebook, Instagram và ngày nay được
nhiều công ty trên thế giới sử dụng.


2.2.2

Ưu nhược điểm của Reactjs

 Ưu điểm
ReactJS giúp việc lập trình Javascript dễ dàng hơn thơng qua JSX.
Nó có nhiều cơng cụ để hỗ trợ phát triển ứng dụng ví dụ như những ứng dụng mở rộng
của Chrome dành cho ReactJS cũng như có rất nhiều thư viện để hỗ trợ cho việc xây
dựng giao diện.
Hiệu năng cao đối với các ứng dụng thay đổi những dữ liệu liên tục trên một màn hình
cũng như dễ dàng bảo trì và nâng cấp cho ứng dụng.
 Nhược điểm

Vì Reactjs chỉ là View Library nên nó cần phải kết hợp với các framework khác để xây
dựng được một ứng dụng hoàn chỉnh.
Reactjs dung lượng khá lớn so với các framework khác.
2.3

NextJs

Next.js là một framework nhỏ gọn được xây dựng từ React, Babel và Webpack được
tạo ra để giúp lập trình viên tạo ứng dụng web React có tính năng SSR (Server Side
Render). Như đã biết với React.js chỉ là client-side-render, nên việc SEO sẽ gặp khó
khăn. Vì vậy, Next.js giúp xử lý việc có tính năng SSR rất dễ dàng, ngồi ra cịn có các
tính năng đặc trưng (thừa kế Babel và Webpack) như:
● Hot Module Replacement (HMR) – Webpack
● Đóng gói bundle và chuyển mã nguồn
● Tạo chỉ mục (indexing) cho các tập tin trong thư mục pages
● Phục vụ static files, với Next.js thì khơng cần webserver khác.
2.4

Rasa

Rasa là một framework mã nguồn mở giúp build một con chatbot assistant. Nhờ cách tiếp
cận theo stories, Rasa chatbot có thể thu thập các thơng tin người dùng cung cấp trước đó
để hiểu bối cảnh và có một "cuộc hội thoại" đúng nghĩa với người dùng (contextual
assistant) thay vì chỉ cung cấp các câu trả lời 1-1 theo kiểu FAQ thông thường, nhờ vậy
con chatbot có vẻ "thơng minh" và "người" hơn.


CHƯƠNG 3. MƠ HÌNH USE CASE
5.1


Sơ đồ usecase

5.2

Danh sách các actor

STT

Tên actor

Ý nghĩa


1

Quản trị viên(Admin)

Quản trị viên có một tài khoản riêng để đăng nhập vào
phần quản trị hệ thống.
Quản trị viên là người quản lý mọi hoạt động chung
của hệ thống như quản lý người dùng, quản lý các khóa
học, quản lý danh mục, …

2

Người dùng

Người dùng là người sử dụng ứng dụng.
Người dùng có thể sử dụng các tính năng: xem thơng
tin khóa học, tìm kiếm khóa học, tương tác với

chatbot…


5.3

STT

Danh sách các usecase
Tên use case

Ý nghĩa

1

Use case Đăng nhập

Yêu cầu đăng nhập để xác thực trong ứng dụng

2

Use case Đăng kí

Cho phép người dùng đăng kí tài khoản để bắt đầu sử
dụng phần mềm

3

Tìm kiếm khóa học

Người dùng tìm kiếm khóa học để xem thơng tin


4

Qn mật khẩu

Cho phép người dùng lấy lại mật khẩu

5

Xem thông tin cá nhân

Người dùng xem thơng tin chi tiết cá nhân mà mình
mong muốn

6

Quản lý bình luận

Cho phép quản lý các thơng tin bình luận khóa
học (thêm, sửa, xóa bình luận khóa học)

7

Sửa thơng tin cá nhân

Người dùng có thể sửa hoặc cập nhật thơng tin của
mình nếu thấy thơng tin lúc đăng kí chưa đầy đủ hoặc
bị sai (Ngoại trừ tên đăng nhập)

8


Đổi mật khẩu

Cho phép người dùng đổi mật khẩu của tài khoản

9

Xóa khóa học u thích

Cho phép quản lý các thơng tin khóa học u thích
(thêm, sửa, xóa khóa học u thích)

10

Đánh giá khóa học

Người dùng thực hiện bình luận đánh giá với khóa
học mà mình mong muốn

11

Xem thơng tin khóa học

Người dùng xem thơng tin chi tiết với khóa học mà
mình mong muốn.

12

Thêm khóa học vào danh
sách u thích


Người dùng thực hiện thêm khóa học mong muốn vào
danh sách u thích

13

Nhắn tin với hệ thống thơng
qua Messenger Chatbot

Cho phép người dùng tương tác với chatbot để được
tu vấn về khóa học

14

Quản lý tài khoản người
dùng

Cho phép quản lý các thông tin người dùng để ứng
dụng hoạt động tốt hơn (đảm bảo tính cơng bằng)

15

Quản lý danh sách khóa học

Cho phép quản lý các thơng tin khóa học (thêm, sửa,
xóa khóa học)


16


Thống kê

Cho phép quản trị viên xem các số liệu thống kê tổng
hợp được

17

Quản lý nguồn khóa học

Cho phép quản trị viên quản lý thơng tin trang nguồn
khóa học (thêm, sửa, xóa trang nguồn)

18

Quản lý danh mục khóa học

Cho phép quản lý các thơng tin danh mục khóa
học (thêm, sửa, xóa danh mục)

5.4

Đặc tả use-case

5.4.1

Đặc tả use-case “Đăng kí”

Tên Use Case

Đăng kí


Tóm tắt

Người dùng cần đăng kí tài khoản để có thể
đăng nhập vào hệ thống

Actor

Người dùng

Dịng sự kiện chính

- Người dùng nhập thơng tin đăng kí gồm:
Email và mật khẩu.
- Lựa chọn nút “Đăng kí”
- Kết thúc

Dịng sự kiện khác

- Xử lý sai thơng tin đăng kí
- Thơng báo nhập lại

Tiền điều kiện

- Người dùng phải dùng Email thật

Hậu điều kiện

- Hệ thống lưu thông tin người dùng đã được
đăng kí

- Màn hình đăng kí thành cơng được hiển thị

5.4.2

Đặc tả use-case “Đăng nhập”

Tên Use Case

Đăng nhập

Tóm tắt

Cho phép người dùng hệ thống đăng nhập vào
hệ thống.

Actor

Quản trị viên, Người dùng


Dịng sự kiện chính

- Người dùng nhập thơng tin đăng nhập gồm:
Tên Email và mật khẩu.
- Lựa chọn nút “Đăng nhập”
- Kết thúc

Dịng sự kiện khác

- Xử lý sai thơng tin đăng nhập

- Thông báo nhập lại

Tiền điều kiện
Hậu điều kiện

5.4.3

- Khơng có
Người dùng đăng nhập vào tài khoản sẽ sử
dụng được các quyền cho phép theo loại tài
khoản

Đặc tả usecase “Quản lý người dùng”

Tên Use Case

Quản lý người dùng

Tóm tắt

Cho phép tìm kiếm khách hàng theo tên, sắp xếp
theo thứ tự xóa và chỉnh sửa thơng tin một người
dùng

Actor

Quản trị viên

Dịng sự kiện chính


- Người dùng lựa chọn màn hình quản lý
người dùng.
- Người dùng lựa chọn một người dùng mình
muốn xem
- Chọn button “Xem”
- Kết thúc

Dịng sự kiện phụ

Khơng có

Tiền điều kiện

Màn hình quản lý thơng tin người dùng đang
được hiển thị

Hậu điều kiện

Khơng có


5.4.4

Đặc tả usecase “Quản lý khóa học”

Tên Use Case

Quản lý khóa học

Tóm tắt


Cho phép tìm kiếm khóa học theo tên, sắp xếp
theo thứ tự: thêm mới, xóa và chỉnh sửa thơng
tin một khóa học

Actor

Quản trị viên

Dịng sự kiện chính

- Người dùng lựa chọn màn hình quản lý khóa
học
- Người dùng lựa chọn tạo mới một khóa học > Nhập thơng tin khóa học -> Chọn “Lưu”
- Người dùng lựa chọn chỉnh sửa thơng tin của
một khóa học -> Nhập thơng tin cần chỉnh
sửa-> chọn “Lưu”
- Người dùng lựa chọn một khóa học cần xóa
-> chọn “Xóa”
- Kết thúc

Dịng sự kiện phụ

Nếu người dùng nhập thiếu các thơng tin bắt
buộc thì hệ thống sẽ thông báo “Cần phải nhập
đầy đủ thông tin”

Tiền điều kiện

- Người dùng đăng nhập thành công và phải

có quyền quản lý khóa học vào trước đó
- Màn hình quản lý thơng tin khóa học đang
được hiển thị

Hậu điều kiện

- Hệ thống lưu thơng tin khóa học đã được cập
nhật
- Hiển thị thông báo thực hiện thao tác thành
công.


5.4.5

Đặc tả usecase “Quản lý Danh mục khóa học”

Tên Use Case

Quản lý danh mục khóa học

Tóm tắt

Cho phép tìm kiếm danh mục khóa học theo tên,
sắp xếp theo thứ tự thêm mới, xóa và chỉnh sửa
thơng tin một danh mục khóa học

Actor

Quản trị viên


Dịng sự kiện chính

- Người dùng lựa chọn màn hình quản lý danh

mục khóa học
- Người dùng lựa chọn tạo mới một danh

mục khóa học -> Nhập thơng tin danh
mục khóa học ->chọn “Lưu”
- Người dùng lựa chọn chỉnh sửa thơng tin của

một danh mục khóa học -> Nhập thông tin
cần chỉnh sửa-> chọn “Lưu”
- Người dùng lựa chọn một danh mục khóa

học cần xóa -> chọn “Icon xóa”
- Kết thúc

Dịng sự kiện phụ

Tiền điều kiện

Nếu người dùng nhập thiếu các thơng tin bắt
buộc thì hệ thống sẽ thông báo “Cần phải nhập
đầy đủ thông tin”
- Người dùng đăng nhập thành cơng và phải

có quyền quản lý danh mục khóa học vào
trước đó
- Màn hình quản lý thơng tin danh mục khóa


học đang được hiển thị
Hậu điều kiện

- Hệ thống lưu thơng tin danh mục khóa

học đã được cập nhật
- Hiển thị thông báo thực hiện thao tác thành

công.


5.4.6

Đặc tả usecase “Quản lý Bình luận Khóa học”

Tên Use Case

Quản lý bình luận khóa học

Tóm tắt

Cho phép xóa thơng tin, chỉnh sửa một bình
luận khóa học

Actor

Quản trị viên

Dịng sự kiện chính


- Người dùng lựa chọn màn hình quản lý bình

luận khóa học
- Người dùng lựa chọn một bình luận khóa

học cần xóa -> chọn “Icon xóa”
- Người dùng lựa chọn một bình luận khóa học

cần Chỉnh sửa -> chọn “Chỉnh sửa”
- Kết thúc

Dòng sự kiện phụ

Tiền điều kiện

Nếu người dùng nhập thiếu các thơng tin bắt
buộc thì hệ thống sẽ thông báo “Cần phải nhập
đầy đủ thông tin”
- Người dùng đăng nhập thành cơng và phải

có quyền quản lý bình luận vào trước đó
- Màn hình quản lý thơng tin bình luận khóa

học đang được hiển thị
Hậu điều kiện

- Hệ thống lưu thơng tin bình luận đã được cập

nhật

- Hiển thị thông báo thực hiện thao tác thành

công.
5.4.7

Đặc tả usecase “Xóa khóa học u thích”

Tên Use Case

Xóa khóa học u thích

Tóm tắt

Cho phép tìm kiếm khóa học theo tên, sắp xếp
theo thứ tự, xóa khóa học u thích

Actor

Người dùng

Dịng sự kiện chính

- Người dùng lựa chọn màn hình quản lý khóa


học u thích
- Người dùng lựa chọn một khóa học cần xóa

-> chọn “Icon Xóa”
- Kết thúc


Dịng sự kiện phụ

Tiền điều kiện

Nếu người dùng nhập thiếu các thông tin bắt
buộc thì hệ thống sẽ thơng báo “Cần phải nhập
đầy đủ thơng tin”
- Người dùng đăng nhập thành cơng và phải

có quyền quản lý khóa học u thích vào
trước đó
- Màn hình quản lý thơng tin khóa học u

thích đang được hiển thị
Hậu điều kiện

- Hệ thống lưu thơng tin khóa học u thích đã

được cập nhật
- Hiển thị thơng báo thực hiện thao tác thành

công.
5.4.8

Đặc tả usecase “Xem thông tin cá nhân”

Tên Use Case

Xem thơng tin cá nhân


Tóm tắt

Người dùng xem thông tin chi tiết cá nhân

Actor

Quản trị viên, Người dùng

Dịng sự kiện chính

- Người dùng lựa chọn màn hình thơng tin các

nhân
- Kết thúc

Dịng sự kiện phụ
Tiền điều kiện

Khơng có
- Người dùng đăng nhập thành cơng và phải

có quyền quản lý thơng tin cá nhân vào trước
đó
- Màn hình quản lý thông tin thông tin đang

được hiển thị


Hậu điều kiện


Hiển thị thông báo thực hiện thao tác thành
công.


5.4.9

Đặc tả usecase “Chỉnh sửa thông tin cá nhân”

Tên Use Case

Chỉnh sửa thơng tin cá nhân

Tóm tắt

Cho phép chỉnh sửa thơng tin cá nhân đã đăng


Actor

Người dùng

Dịng sự kiện chính

- Người dùng lựa chọn chỉnh sửa thông tin của

cá nhân -> Nhập thơng tin cần chỉnh sửa->
chọn “Lưu”
- Kết thúc


Dịng sự kiện phụ

Tiền điều kiện

Nếu người dùng nhập thiếu các thơng tin bắt
buộc thì hệ thống sẽ thơng báo “Cần phải nhập
đầy đủ thông tin”
- Người dùng đăng nhập thành cơng và phải

có quyền chỉnh sửa trước đó vào trước đó
- Màn hình quản lý thơng tin đặt bàn khóa

học đang được hiển thị
Hậu điều kiện

- Hệ thống lưu thông tin cá nhân đã được cập

nhật
- Hiển thị thông báo thực hiện thao tác thành

cơng.

5.4.10

Đặc tả usecase “Tìm kiếm khóa học”

Tên Use Case

Tìm kiếm khóa học


Tóm tắt

Người dùng tìm kiếm khóa học để xem thơng
tin

Actor

Quản trị viên, Người dùng

Dịng sự kiện chính

- Người dùng nhập tên khóa học trên thanh

tìm kiếm


×