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

(TIỂU LUẬN) TIỂU LUÂN CHUYÊN NGÀNH ̣ đề tài xây DỰNG và THIẾT kế hệ THỐNG cửa HÀNG bán LINH KIỆN điện tử sử DỤNG CÔNG NGHỆ MERN STACK

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 (2.84 MB, 57 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA CÔNG NGHÊ ̣ THÔNG TIN
----------

TIỂU LUẬN CHUYÊN NGÀNH
Đề tài: XÂY DỰNG VÀ THIẾT KẾ HỆ THỐNG CỬA HÀNG
BÁN LINH KIỆN ĐIỆN TỬ
SỬ DỤNG CÔNG NGHỆ MERN STACK

GVHD: Ths. LÊ THỊ MINH CHÂU
Sinh viên thực hiên:
̣
NGƠ VĂN HẢI

17110292

TRƯƠNG QUANG TỊNH

17110381

Lớp: 17110IS
Khố: 2017-2021
Ngành: CƠNG NGHỆ THƠNG TIN

TP.HCM, Tháng 7 – 2020

Tieu luan


Báo cáo tiểu luận chuyên ngành



BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA CÔNG NGHÊ ̣ THÔNG TIN
----------

TIỂU LUẬN CHUYÊN NGÀNH
Đề tài: XÂY DỰNG VÀ THIẾT KẾ HỆ THỐNG CỬA HÀNG
BÁN LINH KIỆN ĐIỆN TỬ
SỬ DỤNG CÔNG NGHỆ MERN STACK

GVHD: Ths. LÊ THỊ MINH CHÂU
Sinh viên thực hiên:
̣
NGÔ VĂN HẢI

17110292

TRƯƠNG QUANG TỊNH

17110381

Lớp: 17110IS
Khố: 2017-2021
Ngành: CƠNG NGHỆ THƠNG TIN

TP.HCM, Tháng 7 – 2020

Tieu luan



Báo cáo tiểu luận chuyên ngành

XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
*******
Tp. Hồ Chí Minh, ngày 01 tháng 07 năm 2020

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Họ và tên Sinh viên 1: Ngô Văn Hải
MSSV: 17110292
Họ và tên Sinh viên 2: Trương Quang Tịnh
MSSV: 17110381
Ngành: Công nghệ Thông tin
Chuyên ngành: Hệ thống thông tin
Lớp: 17110IS
Họ và tên Giáo viên hướng dẫn: Th.S. Lê Thị Minh Châu
SĐT: 0902200557
Tên đề tài: XÂY DỰNG VÀ THIẾT KẾ HỆ THỐNG CỬA HÀNG BÁN LINH KIỆN
ĐIỆN TỬ SỬ DỤNG CÔNG NGHỆ MERN STACK
NHẬN XÉT:
1. Về nội dung đề tài và 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
Giáo viên hướng dẫn
(Ký & ghi rõ họ tên)

Tieu luan

năm 202


Báo cáo tiểu luận chuyên ngành

XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
*******
Tp. Hồ Chí Minh, ngày 01 tháng 07 năm 2020

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên 1: Ngô Văn Hải
MSSV: 17110292
Họ và tên Sinh viên 2: Trương Quang Tịnh
MSSV: 17110381
Ngành: Công nghệ Thông tin

Lớp: 17110IS
Chuyên ngành: Hệ thống thông tin
Tên đề tài: XÂY DỰNG VÀ THIẾT KẾ HỆ THỐNG CỬA HÀNG BÁN LINH KIỆN
ĐIỆN TỬ SỬ DỤNG CÔNG NGHỆ MERN STACK
Họ và tên Giáo viên phản biện: ………………………………………………………….
NHẬN XÉT:
1. Về nội dung đề tài và 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
Giáo viên phản biện
(Ký & ghi rõ họ tên)

Tieu luan

năm 202



Báo cáo tiểu luận chuyên ngành

Tieu luan


Báo cáo tiểu luận chuyên ngành
LỜI CẢM ƠN
Nhóm em xin chân thành cảm ơn q thầy cơ đã giúp đỡ thực hiện đề tài này. Đặc biệt cô
Lê Thị Minh Châu đã tận tình hướng dẫn, giúp đỡ, chỉ bảo nhóm trong suốt thời gian
thực hiện tiểu luận chuyên ngành.
Đồng thời nhóm cũng xin trân trọng cảm ơn những tình cảm q báu mà các thầy cơ
trong trường Đai Học sư phạm kỹ thuật TPHCM đã truyền đạt cho nhóm, những kinh
nghiệm, kỹ thuật và cách thức trong việc xây dựng đề tài này.
Và cuối cùng nhóm cũng xin được gửi lời cảm ơn đến những người bạn đã gắn bó,
những đàn anh, đàn chị đã chia sẻ kinh nghiệm và những kiến thức và nhất là trong thời
gian thực hiện đề tài, để đề tài có thể hồn thành một cách thành cơng nhất.
Song, do cịn nhiều hạn chế đề tài nhóm xây dựng khơng tránh khỏi những thiếu sót. Rất
mong được thầy cơ và các bạn đóng góp ý kiến để chương trình ngày càng hồn thiện và
được đưa vào sử dụng. Chúng em xin chân thành cảm ơn.
TP.HCM, ngày…. tháng …. năm …
Sinh viên thực hiê ̣n
Ngô Văn Hải
Trương Quang Tịnh

Tieu luan


Báo cáo tiểu luận chuyên ngành


MỤC LỤC
LỜI NÓI ĐẦU.........................................................................................................................................10
CHƯƠNG 1: KHẢO SÁT HIỆN TRẠNG.............................................................................................11
1.1.

Phân tích hiêṇ trạng:...............................................................................................................11

1.2.

Phân tích yêu cầu.....................................................................................................................11

1.2.1.

Yêu cầu chức năng nghiêp̣ vụ:........................................................................................11

1.2.2.

Bảng yêu cầu chức năng nghiêp̣ vụ:...............................................................................12

1.2.3.

Bảng yêu cầu chức năng hê ̣ thống:.................................................................................12

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

MongoDB..................................................................................................................................13

2.1.1.


Ưu điểm của của Mongo DB...........................................................................................13

2.1.2.

Nhược điểm của của Mongo DB.....................................................................................13

2.2.

ExpressJS.................................................................................................................................14

2.3.

React..........................................................................................................................................14

2.4.

NodeJS......................................................................................................................................14

CHƯƠNG 3: PHÂN TÍCH TRANG WEB............................................................................................16
3.1

Thành phần dữ liệu..................................................................................................................16

3.1.1.

Thành phần tổ chức.........................................................................................................16

3.2.1.

Thành phần dữ liệu..........................................................................................................16


3.2.

Thiết kế dữ liệu........................................................................................................................19

CHƯƠNG 4: MƠ HÌNH HỐ U CẦU VÀ PHÂN TÍCH HỆ THỐNG........................................21
4.1.

Các tác nhân và chức năng:....................................................................................................21

4.1.1.
4.2.

Mô tả chi tiết từng chức năng của các tác nhân:...........................................................22

Sơ đồ use-case...........................................................................................................................24

4.2.1.

Sơ đồ usecase:...................................................................................................................24

4.2.2.

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

4.3.

Biểu đồ hoạt động:...................................................................................................................36

4.3.1.


Đăng ký thành viên:.........................................................................................................36

4.3.2.

Đăng nhập vào hệ thống:.................................................................................................36

4.3.3.

Đổi mật khẩu:...................................................................................................................37

4.3.4.

Tìm kiếm sản phẩm:........................................................................................................37

4.3.5.

Xem sản phẩm:.................................................................................................................38

4.3.6.

Xem giỏ hàng:..................................................................................................................38

Tieu luan


Báo cáo tiểu luận chuyên ngành
4.3.7.

Xem thông tin cá nhân:...................................................................................................39


CHƯƠNG 5: THIẾT KẾ GIAO DIỆN..................................................................................................40
5.1.

Trang người dùng....................................................................................................................40

5.1.1.

Trang đăng nhập (Login)................................................................................................40

5.1.2.

Trang đăng kí (Register).................................................................................................40

5.1.3.

Trang chủ (Home)............................................................................................................41

5.1.4.

Trang sản phẩm (Products).............................................................................................42

5.1.5.

Trang chi tiết sản phẩm...................................................................................................42

5.1.6.

Trang danh sách địa chỉ khách hàng..............................................................................43


5.1.8.

Trang đặt hàng.................................................................................................................43

5.1.9.

Trang xem lịch sử giao dịch............................................................................................44

5.2.

Trang quản trị người dùng.....................................................................................................45

5.2.1.

Trang chủ.........................................................................................................................45

5.2.2.

Trang quản lý người dùng...............................................................................................45

5.2.3.

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

5.2.4.

Trang quản lý loại sản phẩm...........................................................................................46

5.2.5.


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

5.2.6.

Trang chi tiết đơn hàng...................................................................................................47

6.1

Để cài đặt ứng dụng.................................................................................................................49

6.1.1.
6.2

Các bước cài đặt...............................................................................................................49

Kiểm thử phần mềm................................................................................................................52

6.2.1.

Chức năng đăng ký..........................................................................................................52

6.2.2.

Chức năng đăng nhập......................................................................................................53

6.2.3.

Chức năng quên mật khẩu..............................................................................................53

6.2.4.


Chức năng tạo lại mật khẩu............................................................................................54

CHƯƠNG 7: TỔNG KẾT......................................................................................................................55
7.1. Kết quả đạt được..........................................................................................................................55
7.2. Ưu điểm và nhược điểm...............................................................................................................55
7.2.1. Ưu điểm..................................................................................................................................55
7.2.2. Nhược điểm............................................................................................................................55
7.3. Kinh nghiệm đạt được..................................................................................................................55
7.4. Hướng phát triển trong tương lai................................................................................................55

Tieu luan


Báo cáo tiểu luận chun ngành
DANH MỤC HÌNH ẢNH
Hình 3. 1 Thiết kế dữ liệu........................................................................................................................19
Y
Hình 4. 1 Sơ đồ tổng quát của hệ thống.................................................................................................25
Hình 4. 2 Biểu đồ usecase đăng kí đăng nhập........................................................................................25
Hình 4. 3 Biểu đồ uscase tìm kiếm sản phẩm........................................................................................26
Hình 4. 4 Biểu đồ usecase quản lí đơn hàng..........................................................................................26
Hình 4. 5 Biểu đồ usecase mua hàng của khách hàng...........................................................................27
Hình 4. 6 Sơ đồ thống kê.........................................................................................................................27
Hình 4. 7 Biểu đồ hoạt dộng đăng ký thành viên..................................................................................37
Hình 4. 8 Biểu đồ hoạt dộng đăng nhập hệ thống.................................................................................37
Hình 4. 9 Biểu đồ hoạt động đổi mật khẩu............................................................................................38
Hình 4. 10 Biểu đồ hoạt động tìm kiếm sản phẩm.................................................................................38
Hình 4. 11 Biểu đồ hoạt động xem sản phẩm........................................................................................39
Hình 4. 12 Biểu đồ hoạt động xem giỏ hàng..........................................................................................39

Hình 4. 13 Biểu đồ hoạt động xem thơng tin cá nhân...........................................................................40
Hình 5. 1 Trang dăng nhập.....................................................................................................................41
Hình 5. 2 Trang đăng ký.........................................................................................................................41
Hình 5. 3 Trang chủ (client)....................................................................................................................42
Hình 5. 4 Trang sản phẩm......................................................................................................................43
Hình 5. 5 Trang chi tiết sản phẩm..........................................................................................................43
Hình 5. 6 Trang danh sách địa chỉ khách hàng...........................................................................................44
Hình 5. 7 Trang giỏ hàng........................................................................................................................44
Hình 5. 8 Trang đặt hàng........................................................................................................................45
Hình 5. 9 Trang lịch sử giao dịch............................................................................................................45
Hình 5. 10 Trang chủ (Admin)...............................................................................................................46
Hình 5. 11 Trang quản lý người dùng....................................................................................................46
Hình 5. 12 Trang quản lý sản phẩm.......................................................................................................47
Hình 5. 13 Trang quản lý loại sản phẩm................................................................................................47
Hình 5. 14 Trang quản lý đơn hàng.......................................................................................................48
Hình 5. 15 Trang chi tiết đơn hàng........................................................................................................48
Hình 5. 16 Trang xuất hố đơn...............................................................................................................50
Y
Hình 6. 1 Giao diện visual studio code (client)......................................................................................46
Hình 6. 2 Giao diện visual studio code (server).....................................................................................47
Hình 6. 3 Màn hình Intergrate Command Line (client).......................................................................47
Hình 6. 4 Màn hình Intergrate Command Line (server)......................................................................47
Hình 6. 5 Màn hình Intergrate Command Line (client).......................................................................48
Hình 6. 6 Màn hình Intergrate Command Line (server)......................................................................48

Tieu luan


Báo cáo tiểu luận chuyên ngành
DANH MỤC BẢNG

YBảng 1. 1 Bảng yêu cầu chức năng nghiệp vụ..........................................................................................
Bảng 1. 2 Bảng yêu cầu chức năng hệ thống..........................................................................................13
Y
Bảng 3. 1 Bảng Users...............................................................................................................................16
Bảng 3. 2 Bảng Products.........................................................................................................................17
Bảng 3. 3 Bảng Categories......................................................................................................................17
Bảng 3. 4 Bảng Checkout........................................................................................................................18
Bảng 4. 1 Bảng các tác nhân và chức năng............................................................................................22
Bảng 4. 2 Bảng mô tả chức năng của quản trị viên...............................................................................23
Bảng 4. 3 Bảng mô tả chức năng của khách..........................................................................................23
Bảng 4. 4 Bảng mô tả chức năng của khách hàng.................................................................................24
Bảng 4. 5 Đặc tả use case đăng nhập......................................................................................................28
Bảng 4. 6 Đặc tả use case đăng ký..........................................................................................................29
Bảng 4. 7 Đặc tả use case thanh toán.....................................................................................................30
Bảng 4. 8 Đặc tả use case tìm kiếm sản phẩm........................................................................................30
Bảng 4. 9 Đặc tả use case thêm sản phẩm..............................................................................................31
Bảng 4. 10 Đặc tả use case xoá sản phẩm...............................................................................................31
Bảng 4. 11 Đặc tả use case xem sản phẩm..............................................................................................32
Bảng 4. 12 Đặc tả use case xem thông tin cá nhân................................................................................32
Bảng 4. 13 Đặc tả use case thêm vào giỏ hàng.......................................................................................33
Bảng 4. 14 Đặc tả use case nhận và giao hàng.......................................................................................33
Bảng 4. 15 Đặc tả use case cập nhật thông tin sản phẩm......................................................................34
Bảng 4. 16 Đặc tả use case thêm loại sản phẩm.....................................................................................34
Bảng 4. 17 Đặc tả use case xoá loại sản phẩm........................................................................................35
Bảng 4. 18 Đặc tả use case cập nhật loại sản phẩm...............................................................................35
Bảng 4. 19 Đặc tả use case quên mật khẩu............................................................................................36

Y
Bảng 6. 1 Kiểm thử chức năng đăng ký.................................................................................................49
Bảng 6. 2 Kiểm thử chức năng đăng nhập.............................................................................................50

Bảng 6. 3 Kiểm thử chức năng quên mật khẩu.....................................................................................50
Bảng 6. 4 Kiểm thử chức năng tạo lại đổi mật khẩu.............................................................................51

Tieu luan


Báo cáo tiểu luận chuyên ngành

LỜI NÓI ĐẦU
Trong những năm gần đây với sự phát triển vượt trội của khoa học kỹ thuật đặt biệt
là công nghệ thông tin, với những ứng dụng của công nghệ thông tin vào các lĩnh vực đã
đóng góp phần to lớn cho sự nghiệp phát triển của con người. Cùng với sự phát triển
nhanh chóng của Internet thì các hình thức mua và bán hàng hóa cho mọi người ngày
càng đa dạng và phát triển hơn. Các ứng dụng Web ngày càng trở nên phổ biến. Trước
nhu cầu đó, cùng với u cầu mơn học, nhóm chúng em quyết định chọn đề tài Xây dựng
Website bán hàng trực tuyến, cụ thể là bán linh kiện và thiết bị điện tử.
Bài báo cáo này sẽ đề câ ̣p đến quá trình thực hiê ̣n đề tài từ lúc xây dựng ý tưởng,
khảo sát hiê ̣n trạng, xác định yêu cầu, phân tích thiết kế hê ̣ thống, thiết kế giao diê ̣n…
cho đến lúc cài đă ̣t, kiểm thử và hoàn thiê ̣n chương trình. Bài báo cáo gồm các Chương
chính như sau:








Chương 1: Khảo sát hiê ̣n trạng
Chương 2: Cơ sở lý thuyết

Chương 3: Phân tích trang web
Chương 4: Thiết kế giao diện
Chương 5: Mơ hình hố u cầu và phân tích hệ thống
Chương 6: Cài đặt và thử nghiệm
Chương 7: Tổng kết.

Tieu luan


Báo cáo tiểu luận chuyên ngành

CHƯƠNG 1: KHẢO SÁT HIỆN TRẠNG
1.1. Phân tích hiêṇ trạng:
Thương mại điê ̣n tử ngày càng bùng nổ trên tồn cầu, và Việt Nam chính là một
trong những đất nước sử dụng điện thoại di động thường xuyên nhất. Theo báo cáo từ
Picodi cho biết, cứ 10 giao dịch thì 8 giao dịch được thực hiện bằng internet mỗi ngày
trong năm 2019.
Bên cạch những món đồ da dụng được mua hàng ngày thì những linh kiê ̣n thiết bị
điê ̣n tử ngày càng được khách hàng tin tưởng và mua nhiều hơn. Do đó, nhu cầu xây
dựng một website bán các thiết bị điện tử trở nên thiết yếu. Chính vì vậy, nhóm đã quyết
định chọn đề tài “Xây dựng và thiết kế website bán linh kiện và thiết bị điện tử” này, mục
đích là tạo ra một sản phẩm đáp ứng được nhu cầu của thị trường hiện nay.
Với các chức năng hoàn chỉnh, có tính đóng gói cùng với giao diện nổi bật, dễ
dàng thao tác. Nhóm quyết định chọn Website phongvu.vn là tài liệu tham khảo để phát
triển đề tài lần này.
1.2. Phân tích yêu cầu
1.2.1. Yêu cầu chức năng nghiêp̣ vụ:
Lưu trữ:
- Người dùng: tên, email, mật khẩu
- Sản phẩm: tên, giá tiền, bảo hành, nhãn hiệu, mô tả, nô ̣i dung, hình ảnh,

loại sản phẩm, số lượng sản phẩm, số lượng sản phẩm đã bán, sản phẩm đã
xoá.
- Loại sản phẩm: tên loại.
- Đơn hàng: thông tin người mua, địa chỉ, giỏ hàng, số lượng, giá, tổng giá,
trạng thái đơn hàng, chi phí giao hàng.
Tra cứu:
- Sản phẩm: Theo mơ ̣t tiêu chuẩn nào đó.
- Đơn hàng: Theo mô ̣t tiêu chuẩn nào đó.
- Loại sản phẩm: Theo mô ̣t tiêu chuẩn nào đó.
Tính toán:
- Tính tổng tiền khi mua sản phẩm.
- Thống kê doanh thu.
Kết xuất:
- Báo cáo doanh thu.

Tieu luan


Báo cáo tiểu luận chuyên ngành
1.2.2. Bảng yêu cầu chức năng nghiêp̣ vụ:
STT Công viêc̣ Chức năng
Quy định
1
Đăng
Lưu trữ
Người QTV hoă ̣c người dùng phải
nhâ ̣p và
đăng nhâ ̣p để sử dụng phần mềm,
đăng kí
nếu người dùng chưa có tài khoản thì

có thể đăng ký.
2
Câ ̣p nhâ ̣t Lưu trữ
QTV có thể thêm, xoá, sửa sản
sản phẩm
phẩm.
3

Tính tiền

Tính tốn

Ghi chú
QTV: quản
trị viên
QTV: quản
trị viên

Tính tổng tiền khi người dùng
checkout sản phẩm

4

Tra

cứu Tra cứu

Việc tìm thơng tin sản phẩm dựa trên

thơng


tin

thơng tin tên sản phẩm, loại sản

về

sản

phẩm.

phẩm
Bảng 1. Bảng yêu cầu chức năng nghiệp vụ
1.2.3. Bảng yêu cầu chức năng hê ̣ thống:
STT
1

Nội dung

Mô tả chi tiết

Phân quyền sử dụng

Quản trị viên: được phép sử dụng tất cả
các chức năng

-

Người dùng chỉ được sử dụng ở tầng giao
diện người dùng gồm các chức năng cơ bản sau: đăng

kí, đăng nhập, xem hoặc mua sản phẩm…
Bảng 1. Bảng yêu cầu chức năng hệ thống

Tieu luan

Ghi chú


Báo cáo tiểu luận chuyên ngành

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
MERN stack là tâ ̣p hợp của bốn công nghệ mã nguồn mở đều liên quan đến Javascript
được sử dụng rô ̣ng rãi đó là: MongoDB, ExpressJS, React/React Native, NodeJS. Người
ta dùng MERN stack để xây dựng React Universal App. Trong đó:
2.1.

MongoDB
MongoDB là một cơ sở dữ liệu mã nguồn mở và là cơ sở dữ liệu NoSQL (*) hàng
đầu, được hàng triệu người sử dụng. MongoDB được viết bằng C++.
Ngoài ra, MongoDB là một cơ sở dữ liệu đa nền tảng, hoạt động trên các khái
niệm Collection và Document, nó cung cấp hiệu suất cao, tính khả dụng cao và khả
năng mở rộng dễ dàng.
2.1.1. Ưu điểm của của Mongo DB
 Ít schema hơn: Vì schema được sinh ra là để nhóm các đối tượng vào 1
cụm, dễ quản lý. Ví dụ như tạo một schema tên là Students chẳng hạn thì
chỉ có những gì liên quan đến student thì mới được cho vào schema này.
Trong khi đó trong mongodb thì chỉ 1 collection ta có thể chứa nhiều
document khác nhau. Với mỗi document thì số trường, nội dung, kích
thước lại có thể khác nhau.
 Cấu trúc của một đối tượng rõ ràng.

 Khơng có các Join phức tạp.
 Khả năng mở rộng cực lớn: việc mở rộng dữ liệu mà khơng phải lo đến các
vấn đề như khóa ngoại, khóa chính, kiểm tra ràng buộc... MongoDB cho
phép thực hiện replication và sharding nên việc mở rộng cũng thuận lợi
hơn.
 Sử dụng bộ nhớ trong để lưu giữ cửa sổ làm việc cho phép truy cập dữ liệu
nhanh hơn. Việc cập nhật được thực hiện nhanh gọn nhờ update tại chỗ (inplace).
2.1.2. Nhược điểm của của Mongo DB
 Dữ liệu được caching, lấy RAM làm trọng tâm hoạt động vì vậy khi hoạt
động yêu cầu một bộ nhớ RAM lớn

Tieu luan


Báo cáo tiểu luận chuyên ngành
 Như đã giới thiệu ở trên, mọi thay đổi về dữ liệu mặc định đều chưa được
ghi xuống ổ cứng ngay lập tức vì vậy khả năng bị mất dữ liệu từ nguyên
nhân mất điện đột xuất là rất cao.
 Do là một hệ quản trị cơ sở dữ liệu mới ra đời và phát triển chưa được lâu,
nên MongoDB cũng chưa thể hổ trợ các tính năng liên quan đến việc bảo
mật cơ sở dữ liệu một cách hoàn chỉnh và ổn định như các đàn anh đi trước.
(*): NoSQL là một dạng CSDL mã nguồn mở không sử dụng Transact-SQL để truy vấn
thơng tin. NoSQL viết tắt bởi: None-Relational SQL, hay có nơi thường gọi là Not-Only
SQL. CSDL này được phát triển trên Javascript Framework với kiểu dữ liệu JSON. (Cú
pháp của JSON là “key: value”) NoSQL ra đời như là 1 mảnh vá cho những khuyết điểm
và thiếu xót cũng như hạn chế của mơ hình dữ liệu quan hệ RDBMS về tốc độ, tính năng,
khả năng mở rộng, memory cache…
2.2.

ExpressJS

Expressjs là một framework được xây dựng trên nền tảng của Nodejs. Nó cung
cấp các tính năng mạnh mẽ để phát triển web hoặc mobile. Expressjs hỗ trợ các
method HTTP và midleware tạo ra API vơ cùng mạnh mẽ và dễ sử dụng.
Để có thể áp dụng cơng nghệ này cho đề tài, nhóm sẽ sử dụng Expressjs để phát
triển các services là các Rest API. Mục đích của việc dùng Rest API là vì chúng ta
có thể dễ dàng phát triển hệ thống trên nhiều nền tảng khác không chỉ riêng cho
việc viết web trực tuyến, đồng thời như đã nói ở trên về cơng dụng của
Microservices thì phát triển hệ thống như thế này là sẽ chia hệ thống ra thành 2
thành phần đó là server và client. Server ở đây chính là các services được chia nhỏ
ra với ExpressJS Framework, ở đây xử lý dữ liệu sau đó sẽ trả dữ liệu có ích về
cho Client hiển thị cho người dùng.

2.3.

React
React là một thư viện JavaScript mã nguồn mở, giao diện người dùng để xây
dựng giao diện người dùng hoặc các thành phần UI. Nó được duy trì bởi Facebook
và một cộng đồng các nhà phát triển và công ty cá nhân. React có thể được sử
dụng như một cơ sở để phát triển các ứng dụng trang web hoặc di động.

2.4.

NodeJS
Node.js là một hệ thống phần mềm được thiết kế để viết các ứng dụng internet có
khả năng mở rộng, đặc biệt là máy chủ web. Chương trình được viết bằng C, C++,
JavaScript, sử dụng kỹ thuật điều khiển theo sự kiện, nhập/xuất khơng đồng bộ
để tối thiểu tổng chi phí và tối đa khả năng mở rộng.

Tieu luan



Báo cáo tiểu luận chuyên ngành
NodeJS ra đời nhờ những lập trình viên đầu tiên của JavaScript mở rộng nó từ
một ngơn ngữ chỉ có thể thực thi trên trình duyệt thành ngơn ngữ có thể thực thi
độc lập trên máy tính.
NodeJS cũng giống với trình duyệt hiện nay, được chạy dựa trên V8 JavaScript
engine - cơng cụ giúp trình duyệt dịch và thực thi JavaScript. Ngoài ra, NodeJS
cung cấp một số thư viện khơng có sẵn trong V8 engine.

Tieu luan


Báo cáo tiểu luận chuyên ngành

CHƯƠNG 3: PHÂN TÍCH TRANG WEB
3.1

Thành phần dữ liệu
3.1.1. Thành phần tổ chức
3.1.1.1. Front-end
Phần front-end của một trang web là phần tương tác với người dùng. Tất
cả mọi thứ bạn nhìn thấy khi điều hướng trên Internet, từ các font chữ,
màu sắc cho tới các menu xổ xuống và các thanh trượt, là một sự kết hợp
của HTML, CSS, và JavaScript được điều khiển bởi trình duyệt máy tính
của bạn.
Nó sẽ thực hiện việc nhận và gửi dữ liệu giữa giao diện người dùng với
Server thông qua các API.
3.1.1.2. Back-end
Xử lý các dữ liệu được gửi đến từ phía Client để lưu xuống Database,
lấy dữ liệu thô từ dưới Database, điều chỉnh trở về các dữ liệu có ích để

hiển thị trên UI và trả về cho Client:

3.2.1. Thành phần dữ liệu
3.2.1.1. Users (_id, name, email, password, addresses, role, cart, isBlock,
createdAt, updatedAt)
ST
Tên Cột
Kiểu
Miền Dữ Liệu
Ý Nghĩa
T
1
_id
ObjectID
Khóa chính
Mã ID của user.
2
Name
String
Tên của user
3
Email
String
Địa chỉ email của người dung
4
Password
String
Mật khẩu của người dung
5
Addresses

String
Danh sách địa chỉ người dung
6
Cart
Array
Giỏ hàng
7
isBlock
Boolean
Trạng thái user
8
createdAt
Date
Ngày tạo user
9
updatedAt
Date
Ngày cập nhật user
Bảng 3. Bảng Users

Tieu luan


Báo cáo tiểu luận chuyên ngành
3.2.1.2. Products (_id, title, prices, warranty, brand, description, content,
images, category, quantity, sold, isDelete, createdAt, updatedAt)
ST
T
1
2

3
4
5
6
7
8
9
10
11
12
13
14

Tên Cột
_id
Title
Prices
Warranty
Brand
Description
Content
Images
Category
Quantity
Sold
isDelete
createdAt
updatedAt

Kiểu


Miền Dữ Liệu

Ý Nghĩa

ObjectID
Khóa chính
Mã ID của sản phẩm.
String
Tên của sản phẩm
Number
Giá sản phẩm
String
Hạn bảo hành sản phẩm
String
Nhãn hiệu
String
Mô tả sản phẩm
String
Nội dung sản phẩm
Object
Hình ảnh
String
Loại sản phẩm
Number
Số lượng sản phẩm
Number
Số sản phẩm đã bán
Boolean
Trạng thái sản phẩm (Đã xoá)

Date
Ngày tạo sản phẩm
Date
Ngày cập nhật sản phẩm
Bảng 3. Bảng Products

3.2.1.3. Categories (_id, name, createdAt, updatedAt)
ST
T
1
2
3
4

Tên Cột
_id
Name
createdAt
updatedAt

Kiểu

Miền Dữ Liệu

Ý Nghĩa

ObjectID
Khóa chính
Mã ID của loại sản phẩm.
String

Tên của loại sản phẩm
Date
Ngày tạo sản phẩm
Date
Ngày cập nhật sản phẩm
Bảng 3. Bảng Categories

Tieu luan


Báo cáo tiểu luận chuyên ngành

3.2.1.4. Checkout (_id, userId, name, email, address, cart, status, payments,
tax, deliveryCharges, createdAt, updatedAt)
ST
T
1
2
3
4
5
6
7
8
9
10
11
12
13


Tên Cột
_id
userId
Name
Email
Address
Cart
Status
Total
Payments
Tax
deliveryCharges
createdAt
updatedAt

Kiểu

Miền Dữ Liệu

ObjectID
Khóa chính
String
String
String
String
Array
Boolean
Number
String
Number

String
Date
Date
Bảng 3. Bảng Checkout

Tieu luan

Ý Nghĩa
Mã ID của đơn hàng.
Mã người mua
Tên người mua
Email người mua
Địa chỉ người mua
Giỏ hàng
Trạng thái đơn hàng
Tổng đơn hàng
Trạng thái thanh toán
Thuế đơn hàng
Chi phí giao hàng
Ngày tạo đơn hàng
Ngày cập nhật


Báo cáo tiểu luận chuyên ngành
3.2. Thiết kế dữ liệu
Sơ đồ thiết kế dữ liệu

Hình 3. Thiết kế dữ liệu

Tieu luan



Báo cáo tiểu luận chun ngành

CHƯƠNG 4: MƠ HÌNH HỐ YÊU CẦU VÀ PHÂN TÍCH HỆ THỐNG
4.1.

Các tác nhân và chức năng:
Tên tác nhân
Khách
Người dùng

Quản trị viên

Chức năng

- Đăng kí
- Xem sản phẩm
- Đăng nhập
- Xem lịch sử đặt hàng
- Đổi mật khẩu
- Quên mật khẩu
- Xem sản phẩm
- Đặt hàng
- Thanh toán
- Đăng nhập
- Quản lý sản phẩm
- Quản lý loại sản phẩm
- Quản lý đơn hàng
- Quản lý người dùng

Bảng 4. Bảng các tác nhân và chức năng

Tieu luan


Báo cáo tiểu luận chuyên ngành
4.1.1. Mô tả chi tiết từng chức năng của các tác nhân:
4.1.1.1. Mô tả chức năng của quản trị viên:
STT
Chức năng
Mô tả
1
Đăng nhập
Đăng nhập vào hệ thống
2
Thêm sản phẩm
QTV sẽ thêm sản phẩm mới
3
Cập nhật sản
QTV có quyền cập nhật sản phẩm nếu có sản
phẩm
phẩm có sai sót
4
Xố sản phẩm
QTV sẽ xố sản phẩm khi khơng kinh doanh mặt
hàng đó nữa
5
Thêm loại sản
QTV có quyền thêm loại sản phẩm
phẩm

6
Xố loại sản
QTV có quyền xố loại sản phẩm
phẩm
7
Tìm kiếm sản
QTV có quyền tìm kiếm sản phẩm
phẩm
8
Xác nhận đơn
QTV sẽ xác nhận đơn hàng khi người dùng đã
hàng
check out
9
Xem người dùng QTV có quyền xem những khách hàng đã sử
dụng website
10
Thống kê
Thống kê sản phẩm đã bán, doanh thu theo một
tiêu chuẩn nào đó
11
Khuyến mãi
Quản lý chính sách khuyến mãi theo loại sản
phẩm
Bảng 4. Bảng mô tả chức năng của quản trị viên
4.1.1.2. Mô tả chức năng của khách:
12
Đăng kí
Đăng kí tài khoản
13

Xem sản phẩm
Khách có thể xem, tìm kiếm sản phẩm, lọc sản
phẩm, sắp xếp sản phẩm
Bảng 4. Bảng mô tả chức năng của khách

Tieu luan


Báo cáo tiểu luận chuyên ngành
4.1.1.3. Mô tả chức năng của khách hàng:
14
Đăng nhập
Đăng nhập vào website
15
Xem sản phẩm
Khách hàng có thể xem, tìm kiếm sản phẩm, lọc
sản phẩm, sắp xếp sản phẩm
16
Lấy lại mật khẩu Lấy lại mật khẩu nếu người dùng quên mật khẩu
17
Quản lý giỏ hàng Người dùng quản lý giỏ hàng của mình
18
Đặt hàng
Đặt hàng khi khách hàng đã thêm món hàng vào
giỏ hàng
19
Thanh tốn
Thanh tốn bằng cách liên kết với tài khoản
paypal
20

Xem các sản
Khi xem sản phẩm, người dùng có thể xem các
phẩm liên quan
sản phẩm có liên quan đến loại sản phẩm người
đến sản phẩm
dùng đang xem.
khác
21
Cập nhật thơng
Khách hàng có thể tự cập nhật thông tin cá nhân
tin
Bảng 4. Bảng mô tả chức năng của khách hàng

Tieu luan


Báo cáo tiểu luận chuyên ngành
4.2. Sơ đồ use-case
4.2.1. Sơ đồ usecase:

Hình 4. Sơ đồ tổng quát của hệ thống

Hình 4. Biểu đồ usecase đăng kí đăng nhập

Tieu luan


Báo cáo tiểu luận chuyên ngành

Hình 4. Biểu đồ uscase tìm kiếm sản phẩm


Hình 4. Biểu đồ usecase quản lí đơn hàng

Tieu luan


×