Tải bản đầy đủ (.pdf) (102 trang)

Xây dựng website bán giày 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 (8.45 MB, 102 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

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CƠNG NGHỆ THÔNG TIN

XÂY DỰNG WEBSITE BÁN GIÀY TRỰC TUYẾN

GVHD: ThS. NGUYỄN MINH ĐẠO
SVTH : TƠ LÊ TẤN ĐẠT

SKL010943

Tp. Hồ Chí Minh, tháng 6/2023


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
----------

ĐỒ ÁN TỐT NGHIỆP

XÂY DỰNG WEBSITE BÁN GIÀY TRỰC TUYẾN

SVTH: TƠ LÊ TẤN ĐẠT
MSSV: 19110030
Khóa: 2019
Ngành: CÔNG NGHỆ THÔNG TIN
GVHD: ThS. NGUYỄN MINH ĐẠO


Thành phố Hồ Chí Minh, tháng 6 năm 2023


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc
*******
NHIỆM VỤ THỰC HIỆN KHÓA LUẬN TỐT NGHIỆP
Họ và tên Sinh viên: Tô Lê Tấn Đạt

MSSV: 19110030

Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng website bán giày trực tuyến
Nội dung thực hiện:
Lý thuyết:
-

Tìm hiểu MERN Stack: MongoDB, ExpressJS, ReactJS, NodeJS.

-

Tìm hiểu Restful APIs và cách gắn các APIs.

Thực hành:
-

Xây dựng website thương mại điện tử, với các tính năng chính như sau:
o Cho phép quản trị viên xem được dữ liệu của hệ thống (doanh thu, người dùng,
sản phẩm, đơn hàng, đánh giá) và có thể thêm, xóa, cập nhật dữ liệu.
o Cho phép người dùng thực hiện các chức năng bản: xem, tìm kiếm, chọn lọc sản

phẩm, thêm sản phẩm vào giỏ hàng, đặt hàng và có thể thanh tốn trực tuyến,
xem các đơn hàng của mình.

Thời gian thực hiện: 15 tuần (Bắt đầu từ 20/2/2023 đến 29/5/2023)
Chữ ký của SV: ……………………………………………………………

Tp. Hồ Chí Minh, tháng 6 năm 2022
TRƯỞNG NGÀNH CNTT
(Ký & ghi rõ họ tên)

GIẢNG VIÊN HƯỚNG DẪN
(Ký & ghi rõ họ tên)

I


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độ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: Tô Lê Tấn Đạt

MSSV: 19110030

Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng website bán giày trực tuyến
Họ và tên Giáo viên hướng dẫn: Th.S Nguyễn Minh Đạo
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, tháng 6 năm 2022
GIẢNG VIÊN HƯỚNG DẪN
(Ký & ghi rõ họ tên)

II


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độ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: Tô Lê Tấn Đạt

MSSV: 19110030

Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng website bán giày trực tuyến

Họ và tên Giáo viên phản biệ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, tháng 6 năm 2022
GIẢNG VIÊN PHẢN BIỆN
(Ký & ghi rõ họ tên)

III


LỜI CẢM ƠN
Đầu tiên, em xin cảm ơn trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh
đặc biệt Khoa Đào tạo Chất lượng cao vì đã tạo điều kiện cho em được học tập, trao
dồi kỹ năng và kiến thức nền tảng để thực hiện đề tài này.
Bên cạnh đó, em xin được gửi lời cảm ơn chân thành nhất đến thầy Nguyễn
Minh Đạo, người thầy đã tận tình dạy bảo em cơ những kiến thức cơ bản từ những

năm đầu đại học đến hướng dẫn thực hiện đề tài này.
Xin cảm ơn đến những người bạn, các anh, các chị đang học và đã tốt nghiệp
đã giúp đỡ em đặc biệt khi gặp khó khăn trong suốt thời gian em học tập và thực hiện
đồ án trong trường Sư phạm Kỹ Thuật thành phố Hồ Chí Minh.
Em chân thành cảm ơn.
Sinh viên thực hiện
Tô Lê Tấn Đạt– 19110030

IV


TĨM TẮT TIẾNG VIỆT
1. Các vấn đề nghiên cứu
-

Tìm hiểu về nghiệp vụ từ các hệ thống tương tự trên thị trường và phân tích ưu
nhược và áp dụng điểm phù hợp.

-

Tìm hiểu về MongoDB, NodeJS, ExpressJS và áp dụng vào API cho hệ thống
mua bán giày

-

Tìm hiểu về ReactJS để xây dựng giao diện người dùng và các chức năng của hệ
thống mua bán giày.

2. Các vấn đề phát sinh
-


Độ bảo mật của hệ thống.

-

Hoàn tiền trong Paypal.

-

Tốc độ xử lý hệ thống còn chậm.

3. Các phương pháp giải quyết vấn đề
-

Sử dụng JWT để cải thiện độ bảo mật của hệ thống

4. Kết quả đạt được
-

Hệ thống mua bán giày gồm: website cho người dùng cuối và cho quản trị viên.

-

Đáp ứng được các chức năng cơ bản.

V


Mục lục
LỜI CẢM ƠN ...........................................................................................................IV

TÓM TẮT TIẾNG VIỆT ........................................................................................... V
DANH MỤC HÌNH ẢNH ........................................................................................IX
DANH MỤC BẢNG BIỂU ......................................................................................XI
DANH MỤC TỪ VIẾT TẮT................................................................................. XIII
KẾ HOẠCH THỰC HIỆN.....................................................................................XIV
CHƯƠNG 1: PHẦN MỞ ĐẦU .................................................................................. 1
1.1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI ................................................................... 1
1.2. ĐỐI TƯỢNG NGHIÊN CỨU ......................................................................... 1
1.3. PHẠM VI NGHIÊN CỨU ............................................................................... 1
1.4. KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC ................................................................. 1
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ........................................................................... 3
2.1. NODEJS ........................................................................................................... 3
2.1.1.Khái niệm ................................................................................................... 3
2.1.2.Các tính năng của NodeJS ......................................................................... 3
2.1.3.Ưu điểm và nhược điểm của NodeJS ......................................................... 3
2.2. EXPRESSJS ..................................................................................................... 4
2.2.1.Khái niệm ................................................................................................... 4
2.2.2.Các tính năng của ExpressJS ..................................................................... 4
2.3. MONGODB ..................................................................................................... 5
2.3.1.Định nghĩa .................................................................................................. 5
2.3.2.Các tính năng nổi trội của MongoDB ........................................................ 5
2.3.3.Ưu điểm và nhược điểm của MongoDB .................................................... 6
2.4. REACTJS ......................................................................................................... 7
2.4.1.Tổng quan về ReactJS ................................................................................ 7
2.4.2.Đặc trưng của ReactJS ............................................................................... 7
2.5. JSON WEB TOKEN ........................................................................................ 8
2.5.1.Định nghĩa .................................................................................................. 8
2.5.2.Ưu điểm của JSON Web Token ................................................................. 8
CHƯƠNG 3: KHẢO SÁT HIỆN TRẠNG ................................................................. 9
3.1. KHẢO SÁT HIỆN TRẠNG ............................................................................ 9

VI


3.1.1.BITIS.COM.VN ......................................................................................... 9
3.1.2.ANANAS.VN .......................................................................................... 10
3.1.3.NIKE.COM.VN ....................................................................................... 11
3.1.4.KẾT LUẬN .............................................................................................. 11
3.2. XÁC ĐỊNH YÊU CẦU.................................................................................. 12
3.2.1. Yêu cầu chức năng .................................................................................. 12
3.2.2. u cầu phi chức năng ............................................................................ 12
3.3. MƠ HÌNH HÓA YÊU CẦU .......................................................................... 13
3.3.1 Bảng chức năng ........................................................................................ 13
3.3.2. Lược đồ Usecase ..................................................................................... 15
3.3.3. Đặc tả Usecase ........................................................................................ 15
CHƯƠNG 4. THIẾT KẾ PHẦN MỀM .................................................................... 41
4.1. LƯỢC ĐỒ LỚP ............................................................................................. 41
4.2. CHI TIẾT BẢNG DỮ LIỆU .......................................................................... 42
4.2.1 Collection users ........................................................................................ 42
4.2.2 Collection addresses ................................................................................. 43
4.2.1 Collection vouchers.................................................................................. 43
4.2.1 Collection orders ...................................................................................... 44
4.2.1 Collection paymentResult ........................................................................ 44
4.2.1 Collection orderItems ............................................................................... 44
4.2.1 Collection address .................................................................................... 45
4.2.1 Collection reviews.................................................................................... 45
4.2.1 Collection products .................................................................................. 46
4.2.1 Collection inventory ................................................................................. 47
4.2.1 Collection categories ................................................................................ 47
4.3. LƯỢC ĐỒ TUẦN TỰ ................................................................................... 48
4.4. SƠ ĐỒ ERD ................................................................................................... 62

4.5. GIAO DIỆN NGƯỜI DÙNG ........................................................................ 63
4.4.1. Đăng nhập ............................................................................................... 63
4.4.2.

Đăng ký ............................................................................................. 63

4.4.3.

Trang chủ người dùng ....................................................................... 65

4.4.4.

Trang tất cả sản phẩm ........................................................................ 67
VII


4.4.5.

Trang tìm kiếm sản phẩm .................................................................. 68

4.4.6.

Trang thơng tin tài khoản .................................................................. 68

4.4.7.

Trang thông tin đơn hàng .................................................................. 69

4.4.8.


Trang thông tin địa chỉ giao hàng...................................................... 69

4.4.9.

Trang giỏ hàng................................................................................... 70

4.4.10.

Trang tạo đơn hàng ............................................................................ 71

4.4.11.

Trang thống kê................................................................................... 72

4.4.12.

Trang quản lý tài khoản ..................................................................... 73

4.4.13.

Trang quản lý đơn hàng ..................................................................... 73

4.4.14.

Trang quản lý sản phẩm .................................................................... 74

4.4.15.

Trang quản lý voucher ....................................................................... 75


CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ PHẦN MỀM .......................................... 76
5.1. CÔNG CỤ DÙNG TRONG DỰ ÁN ............................................................. 76
5.2. CÀI ĐẶT ỨNG DỤNG ................................................................................. 76
5.2.1 Thư viện và môi trường ........................................................................... 76
5.2.2 Lệnh cài đặt và chạy chương trình ........................................................... 76
5.2.3 Các bước cài đặt ....................................................................................... 76
5.3. KẾ HOẠCH KIỂM THỬ .............................................................................. 77
5.4.1. Kịch bản kiểm thử ................................................................................... 77
5.4.2. Kết quả kiểm thử ..................................................................................... 77
CHƯƠNG 6: TỔNG KẾT ........................................................................................ 82
6.1. KẾT QUẢ ĐẠT ĐƯỢC ................................................................................ 82
6.2. ƯU ĐIỂM....................................................................................................... 82
6.3. NHƯỢC ĐIỂM .............................................................................................. 82
6.4. HƯỚNG PHÁT TRIỂN ................................................................................. 82
CHƯƠNG 7: TÀI LIỆU THAM KHẢO .................................................................. 84

VIII


DANH MỤC HÌNH ẢNH
Hình 1 Trang Bitis ....................................................................................................... 9
Hình 2 Trang ananas ................................................................................................. 10
Hình 3 Trang nike ..................................................................................................... 11
Hình 4 Lược đồ usecase ............................................................................................ 15
Hình 5 Lược đồ lớp ................................................................................................... 41
Hình 6 Lược đồ tuần tự đăng nhập ........................................................................... 48
Hình 7 Lược đồ tuần tự đăng ký ............................................................................... 48
Hình 8 Lược đồ tuần tự đăng xuất ............................................................................ 49
Hình 9 Lược đồ tuần tự xem tồn bộ sản phẩm ........................................................ 50
Hình 10 Lược đồ tuần tự tìm kiếm bằng từ khóa ...................................................... 51

Hình 11 Lược đồ tuần tự lọc sản phẩm ..................................................................... 51
Hình 12 Lược đồ tuần tự xem chi tiết sản phẩm ....................................................... 52
Hình 13 Lược đồ tuần tự xem tất cả người dùng ...................................................... 52
Hình 14 Lược đồ tuần tự khóa tài khoản người dùng ............................................... 53
Hình 15 Lược đồ tuần tự tạo sản phẩm mới.............................................................. 53
Hình 16 Lược đồ tuần tự cập nhật sản phẩm ............................................................ 54
Hình 17 Lược đồ tuần tự xóa sản phẩm .................................................................... 54
Hình 18 Lược đồ tuần tự Xem toàn bộ đơn hàng ..................................................... 55
Hình 19 Lược đồ tuần tự cập nhật trạng thái đơn hàng ............................................ 55
Hình 20 Lược đồ tuần tự xem bình luận sản phẩm ................................................... 56
Hình 21 Lược đồ tuần tự phê duyệt bình luận .......................................................... 56
Hình 22 Lược đồ tuần tự thêm địa chỉ giao hàng..................................................... 57
Hình 23 Lược đồ tuần tự cập nhật thông tin tài khoản ............................................. 57
Hình 24 Lược đồ tuần tự đổi mật khẩu ..................................................................... 58
Hình 25 Lược đồ tuần tự xem lịch sử giao hàng ....................................................... 58
Hình 26 Lược đồ tuần tự thanh tốn ......................................................................... 59
Hình 27 Lược đồ tuần tự xem trạng thái đơn hàng ................................................... 59
Hình 28 Lược đồ tuần tự xem bình luận sản phẩm ................................................... 60
Hình 29 Lược đồ tuần tự thêm sản phẩm vào giỏ hàng ............................................ 60
Hình 30 Lược đồ tuần tự đổi số lượng sản phẩm trong giỏ hàng ............................. 61
Hình 31 Lược đồ ERD .............................................................................................. 62
Hình 32 Giao diện đăng nhập ................................................................................... 63
Hình 33 Giao diện Đăng ký ...................................................................................... 63
Hình 34 Giao diện trang chủ người dùng .................................................................. 65
Hình 35 Giao diện trang tất cả sản phẩm .................................................................. 67
Hình 36 Giao diện trang tìm kiếm sản phẩm ............................................................ 68
Hình 37 Giao diện trang thơng tin tài khoản ............................................................. 68
Hình 38 Giao diện trang thơng tin đơn hàng............................................................. 69
Hình 39 Giao diện trang thơng tin địa chỉ giao hàng ................................................ 69


IX


Hình 40 Giao diện trang giỏ hàng ............................................................................. 70
Hình 41 Giao diện trang tạo đơn hàng ...................................................................... 71
Hình 42 Giao diện trang thống kê ............................................................................. 72
Hình 43 Giao diện trang quản lý tài khoản .............................................................. 73
Hình 44 Giao diện trang quản lý đơn hàng ............................................................... 73
Hình 45 Giao diện trang quản lý sản phẩm ............................................................... 74
Hình 46 Giao diện trang quản lý voucher ................................................................. 75

X


DANH MỤC BẢNG BIỂU
Bảng 1: Danh mục từ viết tắt ................................................................................. XIII
Bảng 2 Kế hoạch thực hiện ..................................................................................... XV
Bảng 3 Chức năng của quản trị viên ......................................................................... 13
Bảng 4 Chức năng của khách hàng ........................................................................... 14
Bảng 5 Chức năng của khách hàng vãng lai ............................................................. 14
Bảng 6 Kịch bản đăng nhập ...................................................................................... 16
Bảng 7 Kịch bản đăng ký .......................................................................................... 18
Bảng 8 Kịch bản đăng xuất ....................................................................................... 19
Bảng 9 Kịch bản xem toàn bộ sản phẩm ................................................................... 20
Bảng 10 Kịch bản tìm kiếm sản phẩm bằng từ khóa ................................................ 21
Bảng 11 Kịch bản lọc sản phẩm................................................................................ 21
Bảng 12 Kịch bản xem chi tiết sản phẩm.................................................................. 22
Bảng 13 Kịch bản xem tất cả người dùng ................................................................. 23
Bảng 14 Kịch bản khóa tài khoản người dùng .......................................................... 24
Bảng 15 Kịch bản tạo sản phẩm................................................................................ 25

Bảng 16 Kịch bản cập nhật sản phẩm ....................................................................... 26
Bảng 17 Kịch bản xóa sản phẩm ............................................................................... 27
Bảng 18 Kịch bản xem toàn bộ đơn hàng ................................................................. 28
Bảng 19 Kịch bản cập nhật đơn hàng ....................................................................... 28
Bảng 20 Kịch bản xem tất cả bình luận của một sản phẩm ...................................... 29
Bảng 21 Kịch bản phê duyệt sản phẩm ..................................................................... 30
Bảng 22 Kịch bản thêm địa chỉ giao ......................................................................... 31
Bảng 23 Kịch bản cập nhật thông tin tài khoản ........................................................ 32
Bảng 24 Kịch bản đổi mật khẩu ................................................................................ 33
Bảng 25 Kịch bản xem lịch sử đặt hàng ................................................................... 34
Bảng 26 Kịch bản xem trạng thái đơn hàng .............................................................. 35
Bảng 27 Kịch bản thanh tốn .................................................................................... 36
Bảng 28 Kịch bản bình luận sản phẩm ..................................................................... 37
Bảng 29 Kịch bản thêm sản phẩm vào giỏ hàng ....................................................... 38
Bảng 30 Kịch bản đổi số lượng sản phẩm giỏ hàng ................................................. 39
Bảng 31 Kịch bản xóa sản phẩm khỏi giỏ hàng........................................................ 40
Bảng 32 Bảng collection users .................................................................................. 42
Bảng 33 Bảng collection addresses ........................................................................... 43
Bảng 34 Bảng collection vouchers ............................................................................ 43
Bảng 35 Bảng collection orders ................................................................................ 44
Bảng 36 Bảng collection paymentResult .................................................................. 44
Bảng 37 Bảng collection orderItems ......................................................................... 45
Bảng 38 Bảng collection address .............................................................................. 45
Bảng 39 Bảng collection reivews .............................................................................. 46

XI


Bảng 40 Bảng collection products ............................................................................ 47
Bảng 41 Bảng collection inventory ........................................................................... 47

Bảng 42 Bảng collection categories .......................................................................... 47
Bảng 43 Giao diện đăng nhập ................................................................................... 63
Bảng 44 Giao diện Đăng ký ...................................................................................... 64
Bảng 45 Giao diện trang chủ người dùng ................................................................. 66
Bảng 46 Giao diện trang tất cả sản phẩm.................................................................. 68
Bảng 47 Giao diện trang tìm kiếm sản phẩm ............................................................ 68
Bảng 48 Giao diện trang thông tin tài khoản ............................................................ 69
Bảng 49 Giao diện trang thông tin đơn hàng ............................................................ 69
Bảng 50 Giao diện trang thông tin địa chỉ giao hàng ............................................... 70
Bảng 51 Giao diện trang giỏ hàng ............................................................................ 70
Bảng 52 Giao diện trang tạo đơn hàng...................................................................... 71
Bảng 53 Giao diện trang thống kê ............................................................................ 72
Bảng 54 Giao diện trang quản lý tài khoản .............................................................. 73
Bảng 55 Giao diện trang quản lý đơn hàng............................................................... 74
Bảng 56 Giao diện trang quản lý sản phẩm .............................................................. 74
Bảng 57 Giao diện trang quản lý voucher................................................................. 75
Bảng 58 Kịch bản kiểm thử ...................................................................................... 77
Bảng 59 Bảng kiểm thử TC_01 ................................................................................ 77
Bảng 60 Bảng kiểm thử TC_02 ................................................................................ 78
Bảng 61 Bảng kiểm thử TC_03 ................................................................................ 79
Bảng 62 Bảng kiểm thử TC_04 ................................................................................ 79
Bảng 63 Bảng kiểm thử TC_05 ................................................................................ 81

XII


DANH MỤC TỪ VIẾT TẮT
Số thứ tự

Ký hiệu chữ viết tắt


Từ viết đầy đủ

1

API

Application Programming Interface

2

UI

User Interface

3

JWT

JSON Web Token

4

URL

Uniform Resource Locator

Bảng 1: Danh mục từ viết tắt

XIII



KẾ HOẠCH THỰC HIỆN
Tuần Ngày

Công việc dự kiến

Kết quả

- Khảo sát thực tế
- Xác định chức năng
1+2+3

20/2 - 13/3

- Thiết kế lược đồ usecase, lược đồ
lớp

Hồn thành

- Tìm hiểu NodeJS, ExpressJS.
- Tìm hiểu và thiết kế MongoDB
- Áp dụng MongoDB vào hệ thống.

- Tìm hiểu về JWT và áp dụng vào
phân quyền và bảo mật của hệ
thống
Xây dựng APIs:
4+5+6


13/3 – 3/4

- Đăng nhập, đăng ký, quên mật
khẩu, cập nhật mật khẩu

Hồn thành

- Lấy thơng tin tài khoản, cập nhật
thơng tin tài khoản.
- Lấy danh sách người dùng, khóa,
mở khóa tài khoản người dùng

- Tìm hiểu Restful API
- Xây dựng giao diện trang đăng nhập,
đăng ký, quên mật khẩu và quản lý
tài khoản người dùng.

7+8

3/4 - 16/4

- Ghép APIs: Đăng nhập, đăng ký,
quên mật khẩu, cập nhật mật khẩu,
thông tin tài khoản.

Hồn thành

Xây dựng APIs:
-


Xem, thêm, sửa, xóa sản phẩm

- Xem, thêm, sửa category

XIV


- Xây dựng giao diện quản lý sản
phẩm.
- Xây dựng giao diện trang chủ, chi tiết
sản phẩm

9

17/4-24/4

- Ghép APIs của sản phẩm vào giao
diện quản lý sản phẩm và trang chủ,
chi tiết sản phẩm.

Hồn thành

- Xây dựng chức năng tìm kiếm, lọc
sản phẩm.

- Xây dựng chức năng giỏ hàng.
- Xây dựng giao diện đơn hàng của
người dùng và admin
10+11


24/4 - 8/5

- Xây dựng chức năng quản lý đơn
hàng.

Hoàn thành

- Xây dựng chức năng bình luận
- Tìm hiểu thanh tốn và áp dụng
vào hệ thống.
- Viết báo cáo
12

8/5 - 15/5

13

15/5 - 22/5

- Kiểm thử chương trình và sửa lỗi
- Hồn thành báo cáo và web

Hoàn thành
Hoàn thành

Bảng 2 Kế hoạch thực hiện

XV



CHƯƠNG 1: PHẦN MỞ ĐẦU
1.1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Hiện tại công nghệ thông tin đang được phát triển mạnh mẽ kéo theo những
sản phẩm liên quan tới công nghệ được làm ra với tốc độ nhanh chóng và ngày
càng phổ biến và hoạt động hiệu quả. Đặc biệt kỳ đại dịch COVID-19 đã thay
đổi thói quen người dùng rất lớn. Người dùng ngày càng quan tâm với việc mua
sắm trực tuyến.
Nắm bắt thói quen đó em đã nhận ra được rằng nhu cầu mua giày trực tuyến
của người dùng ngày càng nhiều và sản phẩm mà em hướng tới là giày dép. Em
quyết định tìm hiểu và thực hiện đề tài “Xây dựng website bán giày trực tuyến”.
1.2. ĐỐI TƯỢNG NGHIÊN CỨU
Đối tượng nghiên cứu của đề tài dựa trên nhu cầu mua giày nhanh chóng. Đồng
thời kèm theo đó là cơng nghệ được sử dụng vào để xây dưng hệ thống. Cụ thể như
sau:
− Nghiên cứu Restful API, NodeJS, ExpressJs để xây dựng các APIs tương tác
với cơ sở dữ liệu nhanh, hiệu quả và chính xác nhất.
− Nghiên cứu cơ sở dữ liệu NoSQL cụ thể là MongoDB để lưu trữ dữ liệu của
người dùng hệ thống.
− Về phần hiển thị cho người dùng thì nghiên cứu thư viện ReactJS và một số
thư viện, framework hỗ trợ cho ReactJS để xây dựng và xử lý giao diện.
− Về phần bảo mật, tiến hành nghiên cứu công nghệ JWT và kèm theo sử dụng
một số “best practices” để đảm bảo an toàn dữ liệu cho người dùng.
1.3. PHẠM VI NGHIÊN CỨU
Đề tài này chủ yếu tập trung vào việc xử lý các nghiệp vụ cơ bản của một
website thương mại điện thử như là xem thông tin sản phẩm, thêm vào giỏ hàng, xem
lịch sử giao dịch,… Về phần hệ thống xử lý, xây dựng đầy đủ APIs phục vụ cho phần
giao diện hiển thị cuối cùng.

1.4. KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
− Nắm được cơ bản và cách sử dụng cơ bản về MERN.

1


− Xây dựng được một website bán giày với những tính năng cơ bản như: Xem
thơng tin sản phẩm, thêm chỉnh sửa giỏ hàng, thanh tốn và bình luận sản
phẩm đã mua ở phía người dùng; Quản lý sản phẩm, quản lý người dùng và
thống kê ở phía người quản trị.

2


CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. NODEJS
2.1.1.Khái niệm
NodeJS là một mơi trường runtime JavaScript đa nền tảng và có mã nguồn mở,
NodeJS còn là một thư viện được sử dụng để chạy các ứng dụng web bên ngồi trình
duyệt của khách hàng.
Là một nền tảng phía máy chủ được xây dựng trên JavaScript Engine của Google
Chrome (V8 Engine) được phát triển bởi Ryan Dahl vào năm 2009 với phiên bản mới
nhất là v19.8.1, NodeJS cung cấp một thư viện phong phú gồm nhiều modules
JavaScript khác nhau giúp đơn giản hóa rất nhiều trong việc phát triển các ứng dụng
web.
2.1.2.Các tính năng của NodeJS
Lập trình hướng sự kiện và bất đồng bộ: Tồn bộ API trong thư viện NodeJS đều
khơng đồng bộ, một máy chủ sử dụng NodeJS không đợi một API trả về dữ liệu mà
chuyển sang API kế tiếp sau khi gọi API đó và nhận phản hồi từ lần gọi API trước
nhờ cơ chế thông báo của Events trong NodeJS.
Xử lý cực kỳ nhanh chóng: Được xây dựng trên V8 JavaScript Engine của Google
Chrome, NodeJS có khả năng thực thi code rất nhanh.
Xử lý đơn luồng (Single Thread) nhưng có khả năng mở rộng cao: NodeJS sử

dụng mơ hình đơn luồng với event loop cho phép máy chủ phản hồi non-blocking, do
đó các ứng dụng có thể xử lý số lượng yêu cầu lớn hơn rất nhiều so với các máy chủ
truyền thống như Apache HTTP Server.
Khơng có vùng nhớ tạm thời: Các ứng dụng NodeJS khơng có vùng nhớ tạm
thời (buffer) cho bất kỳ dữ liệu nào mà chỉ đơn giản xuất dữ liệu theo từng phần
(chunk), giúp tiết kiệm thời gian xử lý file.
Node Package Manager (NPM): Với hơn 50,000 packages khác nhau, các nhà
phát triển phần mềm có thể dễ dàng xây dựng và phát triển ứng dụng của mình dựa
trên những packages sẵn có.
2.1.3.Ưu điểm và nhược điểm của NodeJS
Ưu điểm:
3



×