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

Xây dựng hệ thống quản lý trung tâm anh ngữ

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 (11.08 MB, 239 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC
SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH

KHĨA LUẬN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ THÔNG TIN

XÂY DỰNG HỆ THỐNG QUẢN LÝ TRUNG TÂM ANH NGỮ

GVHD: TS. LÊ VĂN VINH
SVTH: TRẦN QUỐC NAM
NGUYỄN TRẦN PHÚC

SKL009454

Tp.Hồ Chí Minh, năm 2022


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA
CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM
-----□□&□□-----

TRẦN QUỐC NAM – 18110323
NGUYỄN TRẦN PHÚC - 18110339

KHÓA LUẬN TỐT NGHIỆP
Đề Tài:

XÂY DỰNG HỆ THỐNG QUẢN LÝ TRUNG TÂM ANH NGỮ

GIÁO VIÊN HƯỚNG DẪN


TS. Lê Văn Vinh

KHÓA 2018 - 2022


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA
CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM
-----□□&□□-----

TRẦN QUỐC NAM – 18110323
NGUYỄN TRẦN PHÚC - 18110339

KHÓA LUẬN TỐT NGHIỆP
Đề Tài:

XÂY DỰNG HỆ THỐNG QUẢN LÝ TRUNG TÂM ANH NGỮ

GIÁO VIÊN HƯỚNG DẪN

TS. Lê Văn Vinh

KHÓA 2018 - 2022


ĐH SƯ PHẠM KỸ THUẬT TP. HCM

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CNTT


Độc lập – Tự do – Hạnh Phúc

*******

*******

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Họ và tên Sinh viên 1: Trần Quốc Nam
MSSV 1: 18110323
Họ và tên Sinh viên 2: Nguyễn Trần Phúc

MSSV 2: 18110339

Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng hệ thống quản lý trung tâm Anh ngữ
Họ và tên Giáo viên hướng dẫn: TS. Lê Văn Vinh
NHẬN XÉT
1.

Về nội dung đề tài & khối lượng thực hiện:
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................

2.

Ưu điểm:
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................


3.

Khuyết điểm:
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................

4.

Đề nghị cho bảo vệ hay khơng? ...................................................................................

5.

Đánh giá loại: ...............................................................................................................

6.

Điểm: ............................................................................................................................
Tp. Hồ Chí Minh, ngày

tháng năm 2022

Giáo viên hướng dẫn
(Ký & ghi rõ họ tên)

3


ĐH SƯ PHẠM KỸ THUẬT TP. HCM


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CNTT

Độc lập – Tự do – Hạnh Phúc

*******

*******

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên 1: Trần Quốc Nam
MSSV 1: 18110323
Họ và tên Sinh viên 2: Nguyễn Trần Phúc

MSSV 2: 18110339

Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng hệ thống quản lý trung tâm Anh ngữ
Họ và tên Giáo viên phản biện:
NHẬN XÉT
1.

Về nội dung đề tài & khối lượng thực hiện:
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................

2.


Ưu điểm:
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................

3.

Khuyết điểm:
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................

4.

Đề nghị cho bảo vệ hay không? ...................................................................................

5.

Đánh giá loại: ...............................................................................................................

6.

Điểm: ............................................................................................................................
Tp. Hồ Chí Minh, ngày

tháng năm 2022

Giáo viên phản biện
(Ký & ghi rõ họ tên)


4


LỜI CẢM ƠN
Lời đầu tiên nhóm xin phép được gửi lời cảm ơn chân thành và sâu sắc nhất đến
với Khoa Công Nghệ Thông Tin – Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ
Chí Minh đã tạo điều kiện cho nhóm được học tập, phát triển nền tảng kiến thức sâu
sắc và thực hiện đề tài này.
Bên cạnh đó nhóm thực hiện xin gửi đến thầy Lê Văn Vinh lời cảm ơn sâu sắc nhất.
Trải qua một quá trình dài học tập và thực hiện đề tài trong thời gian qua. Thầy đã tận
tâm chỉ bảo nhiệt tình nhóm thực hiện trong suốt q trình từ lúc bắt đầu cũng như kết
thúc đề tài này.
Nhờ có những nền tảng kiến thức chuyên ngành vững chắc cộng thêm với những
kinh nghiệm và yêu cầu thực tế ngoài xã hội thông qua việc học ở trường và thực tập ở
các công ty. Tập thể các thầy cô Khoa Công Nghệ Thông Tin và đặc biệt thầy Lê Văn
Vinh đã tặng cho nhóm một khối lượng kiến thức và kinh nghiệm khổng lồ về chuyên
ngành và công việc trong tương lai. Đặc biệt điều này đã giúp và thơi thúc nhóm hồn
thành được đề tài. Đây sẽ là hành trang vơ cùng lớn của cho nhóm trước khi bước ra
một cuộc sống mới.
Tuy nhiên lượng kiến thức là vô tận và với khả năng hạn hẹp nhóm thực hiện đã rất
cố gắng để hồn thành một cách tốt nhất. Chính vì vậy việc xảy ra những thiếu sót là
điều khó có thể tránh khỏi. Nhóm thực hiện hi vọng nhận được sự góp ý tận tình của
q thầy (cơ) qua đó nhóm có thể rút ra được bài học kinh nghiệm và hoàn thiện và
cải thiện nâng cấp lại sản phẩm của mình một cách tốt nhất có thể.
Nhóm thực hiện xin chân thành cảm ơn!
Nhóm thực hiện
Trần Quốc Nam – 18110323
Nguyễn Trần Phúc – 18110339


5


ĐỀ CƯƠNG KHĨA LUẬN TỐT NGHIỆP
CƠNG NGHỆ PHẦN MỀM
Họ và tên Sinh viên 1: Trần Quốc Nam

MSSV 1: 18110323

Họ và tên Sinh viên 2: Nguyễn Trần Phúc

MSSV 2: 18110339

Thời gian làm khóa luận: 14/02/2022 – 10/07/2022
Chun ngành: Cơng nghệ phần mềm
Tên đề tài: Xây dựng hệ thống quản lý trung tâm Anh ngữ
Giáo viên hướng dẫn: TS. Lê Văn Vinh
Nhiệm vụ của luận văn:
1. Lý thuyết:
Tìm hiểu về các cơng nghệ: Spring framework, React JS, Flutter, Restful API, Redux
saga, Json Web Token.
2. Thực hành:
Sử dụng Restful API, Spring Boot để viết APIs cho các module trong hệ thống.
Sử dụng MongoDB để lưu trữ dữ liệu người dùng của hệ thống.
Sử dụng Json Web Token để xác thực và ủy quyền cho hệ thống APIs hoạt động tốt và
hiệu quả.
Sử dụng Flutter để thiết kế và xử lý cho ứng dụng di động.
Sử dụng React JS làm Framework để thiết kế và xử lý giao diện web cho người dùng
thao tác.


6


MỤC LỤC
LỜI CẢM ƠN .................................................................................................................

5

ĐỀ CƯƠNG TIỂU LUẬN CHUYÊN NGÀNH.............................................................

6

CÔNG NGHỆ PHẦN MỀM ...........................................................................................

6

DANH SÁCH HÌNH.......................................................................................................

9

DANH SÁCH BẢNG BIỂU ......................................................................................... 13
PHẦN MỞ ĐẦU ........................................................................................................... 16
1.TÍNH CẤP THIẾT CỦA ĐỀ TÀI .......................................................................... 16
2.ĐỐI TƯỢNG NGHIÊN CỨU ................................................................................ 16
3.PHẠM VI NGHIÊN CỨU...................................................................................... 17
4.KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC........................................................................ 17
5.Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN............................................................. 17
PHẦN NỘI DUNG ....................................................................................................... 18
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT .......................................................................... 18
1.SPRING FRAMEWORK .................................................................................... 18

2.MONGODB ........................................................................................................ 19
3.REACT JS ........................................................................................................... 20
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ MÔ HÌNH HĨA U CẦU .......... 22
1.KHẢO SÁT HIỆN TRẠNG................................................................................ 22
2.XÁC ĐỊNH U CẦU ....................................................................................... 27
3.MƠ HÌNH HĨA U CẦU ............................................................................... 32
CHƯƠNG 3. THIẾT KẾ PHẦN MỀM................................................................... 113
1.LƯỢC ĐỒ LỚP................................................................................................. 113
2.THIẾT KẾ CƠ SỞ DỮ LIỆU ........................................................................... 115
3.LƯỢC ĐỒ TUẦN TỰ....................................................................................... 122
4.THIẾT KẾ GIAO DIỆN.................................................................................... 155
CHƯƠNG 4. CÀI ĐẶT VÀ KIỂM THỬ................................................................ 223
1.CÀI ĐẶT ỨNG DỤNG..................................................................................... 223
2.KIỂM THỬ ỨNG DỤNG ................................................................................. 224
PHẦN KẾT LUẬN ..................................................................................................... 234
1.KẾT QUẢ ĐẠT ĐƯỢC ....................................................................................... 234
2.ƯU ĐIỂM ............................................................................................................. 235
7


3.NHƯỢC ĐIỂM...................................................................................................................................235
4.HƯỚNG PHÁT TRIỂN..................................................................................................................235
TÀI LIỆU THAM KHẢO......................................................................................................................236

8


DANH SÁCH HÌNH
Hình 1: Các thành phần cấu thành Spring Boot.......................................................................................18
Hình 2: Trang chủ Trung tâm Anh ngữ Giảng Mai................................................................................22

Hình 3: Trang luyện Toeic Trung tâm Anh ngữ Halo.............................................................................23
Hình 4: Trang chủ Trung tâm Anh ngữ PMP...........................................................................................24
Hình 5: Trang chủ Anh văn hội Việt Mỹ Vus............................................................................................25
Hình 6: Trang chủ Trung tâm Ngoại ngữ Flamingo................................................................................26
Hình 7: Usecase trang quản trị......................................................................................................................32
Hình 8: Usecase quản lý nhân viên...............................................................................................................33
Hình 9: Usecase quản lý giảng viên..............................................................................................................33
Hình 10: Usecase thống kê..............................................................................................................................33
Hình 11: Usecase quản lý học viên................................................................................................................33
Hình 12: Usecase quản lý khóa học..............................................................................................................34
Hình 13: Usecase quản lý chương trình học...............................................................................................34
Hình 14: Usecase quản lý tài liệu...................................................................................................................34
Hình 15: Usecase quản lý lớp học..................................................................................................................34
Hình 16: Usecase quản lý phịng học............................................................................................................35
Hình 17: Usecase quản lý ca học....................................................................................................................35
Hình 18: Usecase quản lý lịch học.................................................................................................................35
Hình 19: Usecase quản lý thi thử...................................................................................................................35
Hình 20: Usecase đăng nhập...........................................................................................................................36
Hình 21: Usecase quản lý ghi danh...............................................................................................................36
Hình 22: Usecase trang người dùng..............................................................................................................37
Hình 23: Lược đồ lớp phần giao diện........................................................................................................113
Hình 24: Lược đồ lớp phần controller và model.....................................................................................114
Hình 25: Lược đồ thực thể............................................................................................................................115
Hình 26: Lược đồ tuần tự chức năng thêm nhân viên...........................................................................122
Hình 27: Lược đồ tuần tự chức năng cập nhật nhân viên....................................................................123
Hình 28: Lược đồ tuần tự chức năng xem danh sách nhân viên........................................................123
Hình 29: Lược đồ tuần tự chức năng xuất danh sách nhân viên........................................................124
Hình 30: Lược đồ tuần tự chức năng khôi phục mật khẩu cho nhân viên.......................................124
Hình 31: Lược đồ tuần tự chức năng thêm giảng viên..........................................................................125
Hình 32: Lược đồ tuần tự chức năng chỉnh sửa thơng tin giảng viên...............................................125

Hình 33: Lược đồ tuần tự chức năng xem danh sách giảng viên........................................................126
Hình 34: Lược đồ tuần tự chức năng xuất danh sách giảng viên.......................................................126
Hình 35: Lược đồ tuần tự chức năng khơi phục mật khẩu cho giảng viên......................................127
Hình 36: Lược đồ tuần tự chức năng thêm học viên..............................................................................127
Hình 37: Lược đồ tuần tự chức năng chỉnh sửa học viên.....................................................................128
Hình 38: Lược đồ tuần tự chức năng xem danh sách học viên...........................................................128
Hình 39: Lược đồ tuần tự chức năng xuất danh sách học viên...........................................................129
Hình 40: Lược đồ tuần tự chức năng cập nhật điểm bằng file excel.................................................129
Hình 41: Lược đồ tuần tự chức năng thêm chương trình học.............................................................130
Hình 42: Lược đồ tuần tự chức năng chỉnh sửa chương trình học....................................................130
Hình 43: Lược đồ tuần tự chức năng xem danh sách chương trình học..........................................131
Hình 44: Lược đồ tuần tự chức năng thêm khóa học............................................................................131
Hình 45: Lược đồ tuần tự chức năng chỉnh sửa khóa học................................................................... 132
Hình 46: Lược đồ tuần tự chức năng xem danh sách khóa học..........................................................132

9


Hình 47: Lược đồ tuần tự chức năng thêm lớp học...............................................................................133
Hình 48: Lược đồ tuần tự chức năng chỉnh sửa lớp học.......................................................................133
Hình 49: Lược đồ tuần tự chức năng xem danh sách lớp học.............................................................134
Hình 50: Lược đồ tuần tự chức năng xuất danh sách học viên của lớp học....................................134
Hình 51: Lược đồ tuần tự chức năng tạo lịch học tự động...................................................................135
Hình 52: Lược đồ tuần tự chức năng chỉnh sửa lịch học......................................................................135
Hình 53: Lược đồ tuần tự chức năng xem tồn bộ lịch học của trung tâm.....................................136
Hình 54: Lược đồ tuần tự chức năng thơng báo trước buổi học........................................................136
Hình 55: Lược đồ tuần tự chức năng thêm ca học.................................................................................137
Hình 56: Lược đồ tuần tự chức năng chỉnh sửa ca học.........................................................................137
Hình 57: Lược đồ tuần tự chức năng xem danh sách ca học...............................................................138
Hình 58: Lược đồ tuần tự chức năng thêm phịng học..........................................................................138

Hình 59: Lược đồ tuần tự chức năng chỉnh sửa phịng học.................................................................139
Hình 60: Lược đồ tuần tự chức năng xem danh sách phịng học.......................................................139
Hình 61: Lược đồ tuần tự chức năng thêm lịch thi thử........................................................................140
Hình 62: Lược đồ tuần tự chức năng chỉnh sửa lịch thi thử................................................................140
Hình 63: Lược đồ tuần tự chức năng đăng lý vào lịch thi thử (Admin)...........................................141
Hình 64: Lược đồ tuần tự chức năng xuất danh sách học viên theo lịch thi thử............................141
Hình 65: Lược đồ tuần tự chức năng cập nhật trạng thái lịch thi thử tự động..............................142
Hình 66: Lược đồ tuần tự chức năng xem danh sách lịch thi thử......................................................142
Hình 67: Lược đồ tuần tự chức năng thêm tài liệu................................................................................143
Hình 68: Lược đồ tuần tự chức năng chỉnh sửa tài liệu........................................................................143
Hình 69: Lược đồ tuần tự chức năng tải tài liệu.....................................................................................144
Hình 70: Lược đồ tuần tự chức năng xem danh sách tài liệu..............................................................144
Hình 71: Lược đồ tuần tự chức năng thống kê người dùng và lớp học............................................145
Hình 72: Lược đồ tuần tự chức năng thống kê ghi danh......................................................................145
Hình 73: Lược đồ tuần tự chức năng thống kê doanh thu...................................................................146
Hình 74: Lược đồ tuần tự chức năng thống kê hoạt động của trung tâm........................................146
Hình 75: Lược đồ tuần tự chức năng ghi danh vào lớp học (Admin)................................................147
Hình 76: Lược đồ tuần tự chức năng xem danh sách học viên đăng ký của lớp học....................147
Hình 77: Lược đồ tuần tự chức năng cập nhật trạng thái thanh tốn..............................................148
Hình 78: Lược đồ tuần tự chức năng đổi mật khẩu...............................................................................148
Hình 79: Lược đồ tuần tự chức năng cập nhật thơng tin cá nhân.....................................................149
Hình 80: Lược đồ tuần tự chức năng đăng nhập với tài khoản hệ thống.........................................149
Hình 81: Lược đồ tuần tự chức năng đăng nhập với tài khoản Google............................................150
Hình 82: Lược đồ tuần tự chức năng đăng ký tài khoản......................................................................150
Hình 83: Lược đồ tuần tự chức năng quên mật khẩu...........................................................................151
Hình 84: Lược đồ tuần tự chức năng điểm danh....................................................................................152
Hình 85: Lược đồ tuần tự chức năng xem lịch cá nhân........................................................................153
Hình 86: Lược đồ tuần tự chức năng đăng ký vào lịch thi thử (Học viên).......................................154
Hình 87: Lược đồ tuần tự chức năng ghi danh vào lớp học (Học viên)............................................154
Hình 88: Lược đồ tuần tự chức năng đăng ký học bù...........................................................................155

Hình 89: Giao diện tổng quan trang quản lý...........................................................................................155
Hình 90: Giao diện quản lý học viên..........................................................................................................157
Hình 91: Giao diện upload file excel..........................................................................................................158
Hình 92: Giao diện thơng tin chi tiết học viên.........................................................................................159
Hình 93: Giao diện quản lý giảng viên......................................................................................................161
Hình 94: Giao diện thơng tin chi tiết giảng viên.....................................................................................163

10


Hình 95: Giao diện quản lý nhân viên.......................................................................................................164
Hình 96: Giao diện thơng tin chi tiết nhân viên......................................................................................166
Hình 97: Giao diện quản lý chương trình học.........................................................................................168
Hình 98: Giao diện thơng tin chi tiết chương trình học........................................................................169
Hình 99: Giao diện quản lý khóa học........................................................................................................ 170
Hình 100: Giao diện thơng tin chi tiết khóa học.....................................................................................171
Hình 101: Giao diện quản lý lớp học.........................................................................................................172
Hình 102: Giao diện thơng tin chi tiết lớp học.........................................................................................173
Hình 103: Giao diện quản lý lịch học.........................................................................................................174
Hình 104: Giao diện thơng tin chi tiết buổi học......................................................................................175
Hình 105: Giao diện quản lý ca học...........................................................................................................176
Hình 106: Giao diện thơng tin chi tiết ca học...........................................................................................177
Hình 107: Giao diện quản lý phịng học....................................................................................................178
Hình 108: Giao diện thơng tin chi tiết phịng học...................................................................................179
Hình 109: Giao diện quản lý lịch thi thử..................................................................................................180
Hình 110: Giao diện thơng tin chi tiết buổi thi thử................................................................................181
Hình 111: Giao diện đăng ký thi thử.........................................................................................................182
Hình 112: Giao diện quản lý tài liệu..........................................................................................................183
Hình 113: Giao diện thơng tin chi tiết tài liệu..........................................................................................184
Hình 114: Giao diện quản lý ghi danh.......................................................................................................185

Hình 115: Giao diện thơng tin chi tiết ghi danh......................................................................................186
Hình 116: Giao diện đổi mật khẩu.............................................................................................................187
Hình 117: Giao diện đăng nhập..................................................................................................................188
Hình 118: Giao diện đăng ký cho học viên...............................................................................................189
Hình 119: Giao diện trang chủ người dùng.............................................................................................190
Hình 120: Giao diện quên mật khẩu..........................................................................................................191
Hình 121: Giao diện điểm danh..................................................................................................................192
Hình 122: Giao diện xem lịch cá nhân.......................................................................................................193
Hình 123: Giao diện đăng ký thi thử cho học viên.................................................................................194
Hình 124: Giao diện thơng tin chi tiết buổi thi thử................................................................................195
Hình 125: Giao diện ghi danh......................................................................................................................196
Hình 126: Giao diện thơng tin chi tiết lớp học.........................................................................................197
Hình 127: Giao diện thơng tin chi tiết buổi học người dùng................................................................198
Hình 128: Giao diện đăng ký học bù..........................................................................................................199
Hình 129: Màn hình đăng nhập..................................................................................................................200
Hình 130: Màn hình quên mật khẩu..........................................................................................................201
Hình 131: Màn hình đăng ký tài khoản....................................................................................................202
Hình 132: Màn hình trang chủ....................................................................................................................204
Hình 133: Màn hình danh sách khóa học.................................................................................................205
Hình 134: Màn hình danh sách lớp học....................................................................................................206
Hình 135: Màn hình chi tiết lịch học của lớp học...................................................................................207
Hình 136: Màn hình lịch học cá nhân........................................................................................................208
Hình 137: Màn hình chi tiết một buổi học trong lịch học cá nhân.....................................................209
Hình 138: Màn hình danh sách lịch kiểm tra..........................................................................................211
Hình 139: Màn hình chi tiết lịch thi...........................................................................................................212
Hình 140: Màn hình trang cài đặt..............................................................................................................214
Hình 141: Màn hình cập nhật thơng tin cá nhân....................................................................................216
Hình 142: Màn hình danh sách lớp học của tôi.......................................................................................217

11



Hình 143: Màn hình đổi mật khẩu.............................................................................................................219
Hình 144: Màn hình thống kê điểm số...................................................................................................... 220
Hình 145: Màn hình đổi ngơn ngữ.............................................................................................................222
Hình 146: Quy trình thiết kế kiểm thử......................................................................................................225
Hình 147: Quy trình chạy bộ kiểm thử.....................................................................................................225

12


DANH SÁCH BẢNG BIỂU
Bảng 1: Mô tả Usecase thêm nhân viên.......................................................................................................38
Bảng 2: Mô tả Usecase chỉnh sửa nhân viên...............................................................................................39
Bảng 3: Mô tả Usecase xem danh sách nhân viên.....................................................................................40
Bảng 4: Mô tả Usecase xuất danh sách nhân viên....................................................................................41
Bảng 5: Mô tả Usecase khôi phục mật khẩu cho nhân viên...................................................................42
Bảng 6: Mô tả Usecase thêm giảng viên......................................................................................................44
Bảng 7: Mô tả Usecase chỉnh sửa thông tin giảng viên............................................................................45
Bảng 8: Mô tả Usecase xem danh sách giảng viên....................................................................................46
Bảng 9: Mô tả Usecase xuất danh sách giảng viên....................................................................................47
Bảng 10: Mô tả Usecase khôi phục mật khẩu cho giảng viên................................................................48
Bảng 11: Mô tả Usecase thêm học viên........................................................................................................50
Bảng 12: Mô tả Usecase chỉnh sửa thông tin học viên.............................................................................51
Bảng 13: Mô tả Usecase xem danh sách học viên......................................................................................52
Bảng 14: Mô tả Usecase xuất danh học viên...............................................................................................53
Bảng 15: Mô tả Usecase cập nhập điểm bằng excel..................................................................................54
Bảng 16: Mô tả Usecase thêm chương trình học.......................................................................................55
Bảng 17: Mơ tả Usecase chỉnh sửa thơng tin chương trình học............................................................57
Bảng 18: Mơ tả Usecase xem danh sách chương trình học.....................................................................58

Bảng 19: Mơ tả Usecase thêm khóa học......................................................................................................59
Bảng 20: Mơ tả Usecase chỉnh sửa thơng tin khóa học............................................................................60
Bảng 21: Mơ tả Usecase xem danh sách khóa học....................................................................................62
Bảng 22: Mơ tả Usecase thêm lớp học..........................................................................................................63
Bảng 23: Mô tả Usecase chỉnh sửa thông tin lớp học...............................................................................64
Bảng 24: Mô tả Usecase xem danh sách lớp học.......................................................................................65
Bảng 25: Mô tả Usecase xuất danh sách học viên theo lớp.....................................................................66
Bảng 26: Mô tả Usecase cập nhật trạng thái lớp học tự động................................................................67
Bảng 27: Mô tả Usecase tạo lịch học tự động.............................................................................................69
Bảng 28: Mô tả Usecase chỉnh sửa thông tin buổi học.............................................................................70
Bảng 29: Mô tả Usecase xem lịch học...........................................................................................................71
Bảng 30: Mô tả Usecase thêm ca học............................................................................................................72
Bảng 31: Mô tả Usecase chỉnh sửa thông tin ca học.................................................................................73
Bảng 32: Mô tả Usecase xem danh sách ca học.........................................................................................75
Bảng 33: Mơ tả Usecase thêm phịng học....................................................................................................76
Bảng 34: Mơ tả Usecase chỉnh sửa phịng học...........................................................................................77
Bảng 35: Mơ tả Usecase xem danh sách phịng học..................................................................................78
Bảng 36: Mơ tả Usecase thêm lịch thi thử...................................................................................................80
Bảng 37: Mô tả Usecase chỉnh sửa lịch thi thử..........................................................................................81
Bảng 38: Mô tả Usecase xem danh sách lịch thi thử................................................................................82
Bảng 39: Mô tả Usecase xuất danh sách học viên theo lịch thi thử......................................................84
Bảng 40: Mô tả Usecase đăng ký thi thử cho học viên.............................................................................85
Bảng 41: Mô tả Usecase cập nhật trạng thái thi thử tự động.................................................................86
Bảng 42: Mô tả Usecase thêm tài liệu...........................................................................................................87
Bảng 43: Mô tả Usecase chỉnh sửa thông tin tài liệu................................................................................88
Bảng 44: Mô tả Usecase xem danh sách tài liệu........................................................................................89
Bảng 45: Mô tả Usecase tải tài liệu...............................................................................................................90

13



Bảng 46: Mô tả Usecase thống kê số lượng người dùng theo từng loại...............................................91
Bảng 47: Mô tả Usecase thống kê theo số lượng ghi danh......................................................................92
Bảng 48: Mô tả Usecase thống kê theo doanh thu....................................................................................93
Bảng 49: Mô tả Usecase thống kê lịch sử hoạt động gần đây.................................................................94
Bảng 50: Mô tả Usecase ghi danh cho học viên.........................................................................................96
Bảng 51: Mô tả Usecase xem danh sách ghi danh theo lớp....................................................................97
Bảng 52: Mô tả Usecase cập nhật trạng thái thanh tốn........................................................................98
Bảng 53: Mơ tả Usecase đổi mật khẩu.........................................................................................................99
Bảng 54: Mô tả Usecase cập nhật thông tin cá nhân............................................................................. 100
Bảng 55: Mô tả Usecase đăng nhập với tài khoản hệ thống.................................................................102
Bảng 56: Mô tả Usecase đăng nhập với tài khoản Google....................................................................103
Bảng 57: Mô tả Usecase đăng ký cho học viên........................................................................................104
Bảng 58: Mô tả Usecase quên mật khẩu...................................................................................................105
Bảng 59: Mô tả Usecase điểm danh............................................................................................................107
Bảng 60: Mô tả Usecase xem lịch cá nhân................................................................................................108
Bảng 61: Mô tả Usecase đăng ký thi thử...................................................................................................109
Bảng 62: Mô tả Usecase ghi danh...............................................................................................................110
Bảng 63: Mô tả Usecase đăng ký học bù...................................................................................................111
Bảng 64: Chi tiết dữ liệu bảng Member....................................................................................................115
Bảng 65: Chi tiết dữ liệu bảng Auth..........................................................................................................117
Bảng 66: Chi tiết dữ liệu bảng Room.........................................................................................................117
Bảng 67: Chi tiết dữ liệu bảng Shift...........................................................................................................117
Bảng 68: Chi tiết dữ liệu bảng Study Program.......................................................................................118
Bảng 69: Chi tiết dữ liệu bảng Course.......................................................................................................118
Bảng 70: Chi tiết dữ liệu bảng Classroom................................................................................................119
Bảng 71: Chi tiết dữ liệu bảng Register....................................................................................................119
Bảng 72: Chi tiết dữ liệu bảng Document.................................................................................................120
Bảng 73: Chi tiết dữ liệu bảng Exam Schedule.......................................................................................120
Bảng 74: Chi tiết dữ liệu bảng Schedule...................................................................................................121

Bảng 75: Chi tiết dữ liệu bảng Absent.......................................................................................................122
Bảng 76: Mô tả giao diện tổng quan trang quản lý................................................................................156
Bảng 77: Mô tả giao diện quản lý học viên...............................................................................................157
Bảng 78: Mô tả giao diện upload file excel...............................................................................................158
Bảng 79: Mô tả giao diện thông tin chi tiết học viên..............................................................................160
Bảng 80: Mô tả giao diện quản lý giảng viên...........................................................................................161
Bảng 81: Mô tả giao diện thông tin chi tiết giảng viên..........................................................................164
Bảng 82: Mô tả giao diện quản lý nhân viên............................................................................................165
Bảng 83: Mô tả giao diện thông tin chi tiết nhân viên...........................................................................167
Bảng 84: Mơ tả giao diện quản lý chương trình học..............................................................................168
Bảng 85: Mô tả giao diện thông tin chi tiết chương trình học.............................................................169
Bảng 86: Mơ tả giao diện quản lý khóa học.............................................................................................170
Bảng 87: Mơ tả giao diện thơng tin chi tiết khóa học............................................................................171
Bảng 88: Mơ tả giao diện quản lý lớp học................................................................................................172
Bảng 89: Mô tả giao diện thông tin chi tiết lớp học................................................................................174
Bảng 90: Mô tả giao diện quản lý lịch học................................................................................................175
Bảng 91: Mô tả giao diện thông tin chi tiết buổi học.............................................................................176
Bảng 92: Mô tả giao diện quản lý ca học..................................................................................................176

14


Bảng 93: Mô tả giao diện thông tin chi tiết ca học................................................................................. 177
Bảng 94: Mô tả giao diện quản lý phịng học...........................................................................................178
Bảng 95: Mơ tả giao diện thơng tin chi tiết phịng học..........................................................................179
Bảng 96: Mơ tả giao diện quản lý thi thử.................................................................................................180
Bảng 97: Mô tả giao diện thông tin chi tiết buổi thi thử.......................................................................181
Bảng 98: Mô tả giao diện đăng ký thi thử................................................................................................182
Bảng 99: Mô tả giao diện quản lý tài liệu.................................................................................................183
Bảng 100: Mô tả giao diện thông tin chi tiết tài liệu..............................................................................184

Bảng 101: Mô tả giao diện quản lý ghi danh........................................................................................... 185
Bảng 102: Mô tả giao diện thông tin chi tiết ghi danh...........................................................................186
Bảng 103: Mô tả giao diện đổi mật khẩu..................................................................................................187
Bảng 104: Mô tả giao diện đăng nhập.......................................................................................................188
Bảng 105: Mô tả giao diện đăng ký cho học viên....................................................................................189
Bảng 106: Mô tả giao diện trang chủ người dùng..................................................................................190
Bảng 107: Mô tả giao diện quên mật khẩu...............................................................................................191
Bảng 108: Mô tả giao diện điểm danh.......................................................................................................192
Bảng 109: Mô tả giao diện xem lịch cá nhân...........................................................................................193
Bảng 110: Mô tả giao diện đăng ký thi thử cho học viên......................................................................194
Bảng 111: Mô tả giao diện thông tin chi tiết buổi thi thử.....................................................................195
Bảng 112: Mô tả giao diện ghi danh...........................................................................................................196
Bảng 113: Mô tả giao diện thông tin chi tiết lớp học.............................................................................197
Bảng 114: Mô tả giao diện thông tin chi tiết buổi học người dùng....................................................198
Bảng 115: Mô tả giao diện đăng ký học bù..............................................................................................199
Bảng 116: Mô tả màn hình đăng nhập......................................................................................................200
Bảng 117: Mơ tả màn hình qn mật khẩu..............................................................................................201
Bảng 118: Mơ tả màn hình đăng ký tài khoản........................................................................................203
Bảng 119: Mơ tả màn hình trang chủ........................................................................................................204
Bảng 120: Mơ tả màn hình danh sách khóa học.....................................................................................205
Bảng 121: Mơ tả màn hình danh sách lớp học........................................................................................206
Bảng 122: Mơ tả màn hình chi tiết lịch học của lớp học.......................................................................208
Bảng 123: Mô tả màn hình lịch học cá nhân............................................................................................209
Bảng 124: Mơ tả màn hình chi tiết một buổi học trong lịch học cá nhân.........................................210
Bảng 125: Mơ tả màn hình danh sách lịch kiểm tra..............................................................................211
Bảng 126: Mơ tả màn hình chi tiết lịch thi...............................................................................................212
Bảng 127: Mơ tả màn hình trang cài đặt..................................................................................................214
Bảng 128: Mơ tả màn hình cập nhật thơng tin cá nhân........................................................................216
Bảng 129: Mơ tả màn hình danh sách lớp học của tơi...........................................................................218
Bảng 130: Mơ tả màn hình đổi mật khẩu.................................................................................................219

Bảng 131: Mơ tả màn hình thống kê điểm số...........................................................................................220
Bảng 132: Mơ tả màn hình đổi ngơn ngữ..................................................................................................222
Bảng 133: Kiểm thử các chức năng trang quản trị................................................................................226
Bảng 134: Kiểm thử các chức năng người dùng khơng có tài khoản................................................229
Bảng 135: Kiểm thử các chức năng của học viên....................................................................................230
Bảng 136: Kiểm thử các chức năng của giảng viên................................................................................231
Bảng 137: Kiểm thử các chức năng của học viên trên App................................................................. 232

15


PHẦN MỞ ĐẦU
1.

TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Hiện nay với sự phát triển của cơng nghiệp hóa và hiện đại hóa, thì kinh tế ngày
càng phát triển, hội nhập ngày càng lớn mạnh, đó là lý do mà ngoại ngữ dần dần
trở thành một kỹ năng thiết yếu của mỗi cá nhân. Vì sự cấp thiết của kỹ năng ngoại
ngữ mà các trung tâm ngoại ngữ đã bắt đầu được thành lập và ngày càng có nhiều
trung tâm phát triển với số lượng học viên lớn, nhân viên lớn và đội ngũ giảng
viên đơng đảo. Chính vì vậy mà việc quản lý trung tâm trở nên phức tạp hơn, khó
khăn hơn nếu khơng có sự giúp đỡ của cơng nghệ. Nhận thấy sự cấp thiết của vấn
đề này, nhóm thực hiện đã quyết định xây dựng một hệ thống quản lý trung tâm
ngoại ngữ để có thể thuận tiện hơn trong việc quản lý về mọi mặc của trung tâm,
giúp cho nhân viên dễ dàng thao tác trên website, theo dõi báo cáo nhanh chóng,
nhập xuất dữ liệu dễ dàng.

2.

ĐỐI TƯỢNG NGHIÊN CỨU

Đối với đề tài này, đối tượng nghiên cứu dựa trên nhu cầu sử dụng của các trung
tâm ngoại ngữ, các tổ chức cần sự quản lý của phần mềm để đơn giản hóa việc
quản lý, dễ dàng thuận tiện cho việc thao tác, nhập xuất nhanh chóng và mang lại
hiệu quả cao hơn so với việc không sử dụng phần mềm. Đồng thời kèm theo đó là
các công nghệ áp dụng tạo ra sản phẩm. Cụ thể như sau:



Tập trung nghiên cứu Restful API, Spring Boot để xây dựng nên hệ thống các

APIs hỗ trợ lấy dữ liệu một cách chính xác và nhanh chóng nhất.


Áp dụng cơ sở dữ liệu noSQL là MongoDB để lưu trữ dữ liệu người dùng của

hệ thống.


Về phần hiển thị cho người sử dụng cuối nhóm thực hiện tiến hành nghiên

cứu Framework ReactJS và một số thư viện được hỗ trợ cho ReactJS để xây dựng và xử
lý giao diện và cho người dùng sử dụng.


Về phần bảo mật hệ thống, tiến hành nghiên cứu công nghệ Json Web Token

làm bảo mật cho hệ thống, tất cả các luồng dữ liệu vào ra đều được kiểm soát
16



thông qua Token. Người dùng bắt buộc phải đăng nhập vào hệ thống để có
một Token riêng và mỗi request từ phía người dùng đều phải thơng qua một
“cánh cửa” Interceptor và Token là “chìa khóa”.


Về phần ứng dụng di động, sử dụng Flutter SDK để xây dựng giao diện và xử

lý logic.
3.

PHẠM VI NGHIÊN CỨU
Đề tài này chủ yếu đi tập trung vào việc xử lý các nghiệp vụ cơ bản của một hệ
thống quản lý trung tâm anh ngữ



Về website: quản lý học viên, quản lý giảng viên, quản lý khóa học và lớp

học, xuất danh sách excel, điểm danh học viên, đăng ký học bù. Về phần lõi xử lý, xây
dựng đầy đủ các APIs phục vụ cho phần hiển thị cuối cùng.


Về ứng dụng di động: xem danh sách các lớp học của trung tâm, ghi danh,

chỉnh sửa thông tin cá nhân, xem lịch học, nhận thơng báo khi có lịch học, thống kê điểm
số.
4.

KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
Dựa trên tính cấp thiết của đề tài, khảo sát yêu cầu thực tế và mục tiêu của nhóm

thực hiện đã đặt ra, dự kiến sẽ đạt được:



Xây dựng được một hệ thống quản lý trung tâm anh ngữ với những tính năng

cơ bản của website và ứng dụng.


Xây dựng được các chức năng đã được nêu ra ở “Đề cương chi tiết”, đáp ứng

được nhu cầu cơ bản của một hệ thống quản lý trung tâm anh ngữ bao gồm website và
ứng dụng di động.
5.

Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN
Đề tài hướng đến khả năng tiếp thu, nâng cao kỹ năng lập trình, nghiên cứu công
nghệ mới và đáp ứng nhu cầu của những trung tâm, tổ chức cần sự quản lý. Mục
đích để tạo một hệ thống có thể giúp việc quản lý dễ dàng thuận tiện hơn, tiết kiệm
thời gian, công sức và tiền bạc cho các trung tâm đồng thời giúp cho học viên có
thể theo dõi lịch học dễ dàng hơn, nhận thơng báo nhắc nhở mỗi khi có lịch học,
17


giúp cho các bậc phụ huynh có thể quản lý được lịch học, điểm số của con một
cách thuận tiện nhất.

18



PHẦN NỘI DUNG
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1. SPRING FRAMEWORK
1.1. Tổng quan về Spring Framework
Web service là một phần không thể thiếu của một Website quản lý. Để có thể tạo
ra một Web service chúng ta có thể sử dụng Spring framework.


Spring Framework được phát triển dựa trên ngơn ngữ Java. Nó cung cập một

mơ hình lập trình cho các ứng dụng như Desktop, Mobile, Web.[1]


Spring Framework là framework với mã nguồn mở



Spring Framework là một trong những framework được các lập trình viên sử

dụng nhiều vì sự đơn giản và có cộng đồng hỗ trợ đơng đảo.


Spring framework được chia làm nhiều module, tùy theo mục đích phát triển

ứng dụng mà ta sử dụng một trong các module thích hợp.
1.2. Tổng quan về Spring Boot
Để tạo một Web service cho ứng dụng Web bằng Spring Framework thì chúng ta
sẽ sử dụng Spring Boot.



Spring Boot là một module trong Spring Framework.



Spring Boot ra đời nhầm mục đích bỏ đi những cấu hình phức tạp mà chỉ tập

chung vào tạo ra một ứng dụng độc lập một cách nhanh chóng vào dễ dàng nhất.[2]

Hình 1: Các thành phần cấu thành Spring Boot

Các điểm nổi bật các Spring Boot:


Tạo một ứng dụng độc lập.
18



×