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

Xây dựng website bán điện thoại di độ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 (2.35 MB, 53 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

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

ĐỒ ÁN 2

XÂY DỰNG WEBSITE BÁN ĐIỆN THOẠI DI ĐỘNGNG WEBSITE BÁN ĐIỆN THOẠI DI ĐỘNGN THOẠI DI ĐỘNGI DI ĐỘNGNG

GV HƯỚNG DẪN: ThS. TRẦN THỊ HỒNG YẾN
SV THỰC HIỆN: LÊ TRỊNH VIỆT TIẾN – 20520801


TP. HỒ CHÍ MINH, THÁNG 6 NĂM 2023


LỜI CẢM ƠN
Em xin gửi lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn Thị Hồng Yến, người đã hướng dẫn nhóm Hồng Yến, người đã hướng dẫn nhómng Yến, người đã hướng dẫn nhómn, người cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi đã h ưới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng d ẫn nhómn nhóm
em trong su t q trình thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn đồng Yến, người đã hướng dẫn nhóm án. Em vơ cùng biến, người đã hướng dẫn nhómt ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn s ực hiện đồ án. Em vô cùng biết ơn sự tận tình chỉ t ận tình chỉn tình ch ỉ
dẫn nhómn c a cơ trong q trình nhóm thực hiện đồ án. Em vô cùng biết ơn sự tận tình chỉc hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn đề tài này. Bước đầu tiếp cận các tài này. B ưới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómc đ ần Thị Hồng Yến, người đã hướng dẫn nhómu ti ến, người đã hướng dẫn nhómp c ận tình chỉn các
cơng nghện đồ án. Em vơ cùng biết ơn sự tận tình chỉ mới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi, nhóm cịn nhiề tài này. Bước đầu tiếp cận cácu thiến, người đã hướng dẫn nhómu sót về tài này. Bước đầu tiếp cận các mặt kiến thức cũng như kinht kiến, người đã hướng dẫn nhómn thức cũng như kinhc cũng như kinh
nghiện đồ án. Em vô cùng biết ơn sự tận tình chỉm thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc tiễn nên khơng tránh khỏi nhiều sai sót. Những nhận xét, góp ýn nên khơng tránh khỏi nhiều sai sót. Những nhận xét, góp ýi nhiề tài này. Bước đầu tiếp cận cácu sai sót. Những nhận xét, góp ýng nhận tình chỉn xét, góp ý
chân tình c a cơ chính là cơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóm sở để nhóm có thể cải tiến và hồn thiện đề tài để nhóm có thể cải tiến và hồn thiện đề tài nhóm có thể nhóm có thể cải tiến và hồn thiện đề tài cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi tiến, người đã hướng dẫn nhómn và hồn thi ện đồ án. Em vô cùng biết ơn sự tận tình chỉn đ ề tài này. Bước đầu tiếp cận các tài
này một cách tốt nhất.t cách t t nhất.t.
Đề tài này. Bước đầu tiếp cận các tài đư c nhóm thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn trong khoảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng thời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi gian 3 tháng, l ần Thị Hồng Yến, người đã hướng dẫn nhómn đ ần Thị Hồng Yến, người đã hướng dẫn nhómu ti ến, người đã hướng dẫn nhómp c ận tình chỉn
các cơng nghện đồ án. Em vô cùng biết ơn sự tận tình chỉ mới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi, bưới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómc đần Thị Hồng Yến, người đã hướng dẫn nhómu đi vào thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc tến, người đã hướng dẫn nhóm nên cịn nhiề tài này. Bước đầu tiếp cận cácu hạn chế về kiếnn chến, người đã hướng dẫn nhóm v ề tài này. Bước đầu tiếp cận các kiến, người đã hướng dẫn nhómn
thức cũng như kinhc cũng như kinh nghiện đồ án. Em vô cùng biết ơn sự tận tình chỉm thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc tiễn nên khơng tránh khỏi nhiều sai sót. Những nhận xét, góp ýn. Do vận tình chỉy, chắc chắn khơng thể tránh khỏic chắc chắn không thể tránh khỏin không thể nhóm có thể cải tiến và hồn thiện đề tài tránh kh ỏi nhiều sai sót. Những nhận xét, góp ýi
những nhận xét, góp ýng sai sót, nhóm rất.t mong nhận tình chỉn đư c những nhận xét, góp ýng sực hiện đồ án. Em vô cùng biết ơn sự tận tình chỉ chỉ bảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómo, ý kiến, người đã hướng dẫn nhómn đóng góp
quý báu c a cô và các bạn chế về kiếnn học cùng lớp để nhóm có thể bổ sung, cải tiến sảnc cùng lới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómp để nhóm có thể cải tiến và hồn thiện đề tài nhóm có th ể nhóm có thể cải tiến và hoàn thiện đề tài b ổ sung, cải tiến sản sung, c ảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi ti ến, người đã hướng dẫn nhómn s ảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn
ph!m cũng như nâng cao kiến, người đã hướng dẫn nhómn thức cũng như kinhc, hồn thiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn bảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn thân và tích lũy thêm cho
bảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn thân nhiề tài này. Bước đầu tiếp cận cácu kinh nghiện đồ án. Em vơ cùng biết ơn sự tận tình chỉm, phục vụ tốt hơn cho công việc thực tế sau này.c vục vụ tốt hơn cho công việc thực tế sau này. t t hơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn cho cơng viện đồ án. Em vơ cùng biết ơn sự tận tình chỉc thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc tến, người đã hướng dẫn nhóm sau này.


Lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi cu i, em xin kính chúc cơ dồng Yến, người đã hướng dẫn nhómi dào sức cũng như kinhc khỏi nhiều sai sót. Những nhận xét, góp ýe, niề tài này. Bước đầu tiếp cận cácm tin để nhóm có thể cải tiến và hồn thiện đề tài có th ể nhóm có thể cải tiến và hồn thiện đề tài ti ến, người đã hướng dẫn nhómp t ục vụ tốt hơn cho công việc thực tế sau này.c
truyề tài này. Bước đầu tiếp cận cácn đạn chế về kiếnt kiến, người đã hướng dẫn nhómn thức cũng như kinhc cho các bạn chế về kiếnn sinh viên.

TP. Hồng Yến, người đã hướng dẫn nhóm Chí Minh, ngày 24 tháng 6 năm
2023
Sinh viên thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn
Lê Trịnh Việt Tiếnnh Việt Tiếnt Tiếnn

1


MỤC LỤC
Chươn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng 1.

TỔNGNG QUAN VỀ ĐỀ TÀI ĐỀ ĐỀ TÀI TÀI.................................................................................8

1.1. Giới thiệu về đề tài..........................................................................................................8
1.2. Phạm vi nghiên cứu.........................................................................................................8
1.3. Phương pháp nghiên cứu...............................................................................................9
1.4. Mục tiêu của đề tài..........................................................................................................9
Chươn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng 2.

CƠ SỞ LÝ THUYẾT LÝ THUYẾTT........................................................................................10

2.1. Tổng quan về Javascript.............................................................................................10
2.1.1.

Giới thiệu.............................................................................................................10

2.1.2.


Ưu điểm...............................................................................................................11

2.1.3.

Nhược điểm........................................................................................................12

2.2. Tổng quan về ReactJS.................................................................................................12
2.2.1.

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

2.2.2.

Ưu điểm...............................................................................................................13

2.2.3.

Nhược điểm........................................................................................................14

2.3. Tổng quan về NodeJS..................................................................................................14
2.3.1.

Giới thiệu.............................................................................................................14

2.3.2.

Ưu điểm...............................................................................................................14

2.3.3.


Nhược điểm........................................................................................................15

2.4. Tổng quan về MongoDB............................................................................................15
2.4.1.

Giới thiệu.............................................................................................................15

2.4.2.

Ưu điểm...............................................................................................................16

2.4.3.

Nhược điểm........................................................................................................16
2


Chươn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng 3.

PHÂN TÍCH THIẾTT KẾT HỆ THỐNG THỐNGNG........................................................17

3.1. Phân tích u cầu đề bài.............................................................................................17
3.1.1.

Phát biểu bài tốn..............................................................................................17

3.1.2.

u cầu bài toán................................................................................................18


3.2. Nghiên cứu hiện trạng.................................................................................................19
3.3. Đặc tả hệ thống..............................................................................................................20
Chươn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng 4.

HIỆ THỐNGN THỰC HỆ THỐNGC HỆ THỐNG THỐNGNG.............................................................................21

4.1. Sơ đồ Use Case..............................................................................................................21
4.1.1.

Sơ đồ Use Case của khách hàng...................................................................21

4.1.2.

Sơ đồ Use Case của khách hàng – thành viên..........................................22

4.1.3.

Sơ đồ Use Case của quản lý..........................................................................23

4.2. Biều đồ phân rã chức năng.........................................................................................23
4.3. Biểu đồ tuần tự...............................................................................................................24
4.3.1.

Biểu đồ tuần tự đăng nhập.............................................................................24

4.3.2.

Biểu đồ tuần tự đăng ký thành viên............................................................25


4.3.3.

Biểu đồ tuần tự tìm kiếm điện thoại............................................................26

4.3.4.

Biểu đồ tuần tự đặt hàng.................................................................................27

4.3.5.

Biểu đồ tuần tự xem thơng tin điện thoại..................................................28

4.3.6.

Biểu đồ tuần tự bình luận...............................................................................29

4.3.7.

Biểu đồ tuần tự hiển thị danh sách điện thoại..........................................30

4.3.8.

Biểu đồ tuần tự thêm điện thoại...................................................................31

4.3.9.

Biểu đồ tuần tự xóa điện thoại......................................................................32

4.3.10.


Biểu đồ tuần tự xem đơn hàng......................................................................33

4.3.11.

Biểu đồ tuần tự xóa thành viên.....................................................................34
3


4.3.12.

Biểu đồ tuần tự xóa đơn hàng.......................................................................35

4.4. Thiết kế cơ sở dữ liệu..................................................................................................35
4.4.1.

Bảng dữ liệu Phone..........................................................................................36

4.4.2.

Bảng dữ liệu User.............................................................................................37

4.4.3.

Bảng dữ liệu Order...........................................................................................37

4.5. Thiết kế giao diện người dùng..................................................................................38
4.5.1.

Giao diện trang chủ..........................................................................................38


4.5.2.

Giao diện chi tiết điện thoại...........................................................................40

4.5.3.

Giao diện đăng ký, đăng nhập......................................................................42

4.5.4.

Giao diện tìm kiếm điện thoại.......................................................................44

4.5.5.

Giao diện đặt hàng............................................................................................44

4.5.6.

Giao diện quản lý điện thoại..........................................................................46

4.5.7.

Giao diện quản lý thành viên........................................................................47

4.5.8.

Giao diện quản lý đơn hàng...........................................................................48

KẾTT LUẬNN...................................................................................................................................... 49
TÀI LIỆ THỐNGU THAM KHẢOO.............................................................................................................50


4


DANH MỤC HÌNH ẢNH
Hình 4.1 – Sơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm đồng Yến, người đã hướng dẫn nhóm Use Case c a khách hàng.......................................................................21
Hình 4.2 – Sơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm đồng Yến, người đã hướng dẫn nhóm Use Case c a khách hàng thành viên................................................22
Hình 4.3 – Sơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóm đồng Yến, người đã hướng dẫn nhóm Use Case c a quảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn lý..............................................................................23
Hình 4.4 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm phân rã chức cũng như kinhc năng...............................................................................24
Hình 4.5 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ đăng nhận tình chỉp..............................................................................24
Hình 4.6 – Biể nhóm có thể cải tiến và hoàn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ đăng ký thành viên.............................................................25
Hình 4.7 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ tìm kiến, người đã hướng dẫn nhómm điện đồ án. Em vơ cùng biết ơn sự tận tình chỉn thoạn chế về kiếni...........................................................26
Hình 4.8 – Biể nhóm có thể cải tiến và hoàn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ đặt kiến thức cũng như kinht hàng..................................................................................27
Hình 4.9 – Biể nhóm có thể cải tiến và hoàn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ xem thơng tin điện đồ án. Em vơ cùng biết ơn sự tận tình chỉn thoạn chế về kiếni.................................................28
Hình 4.10 – Biể nhóm có thể cải tiến và hoàn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ bình luận tình chỉn..............................................................................29
Hình 4.11 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ hiể nhóm có thể cải tiến và hồn thiện đề tàin thị Hồng Yến, người đã hướng dẫn nhóm danh sách điện đồ án. Em vô cùng biết ơn sự tận tình chỉn thoạn chế về kiếni.....................................30
Hình 4.12 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ thêm điện đồ án. Em vô cùng biết ơn sự tận tình chỉn thoạn chế về kiếni................................................................31
Hình 4.13 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ xóa điện đồ án. Em vô cùng biết ơn sự tận tình chỉn thoạn chế về kiếni....................................................................32
Hình 4.14 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ xem đơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn hàng.....................................................................33
Hình 4.15 – Biể nhóm có thể cải tiến và hoàn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ xóa thành viên....................................................................34
Hình 4.16 – Biể nhóm có thể cải tiến và hồn thiện đề tàiu đồng Yến, người đã hướng dẫn nhóm tuần Thị Hồng Yến, người đã hướng dẫn nhómn tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ xóa đơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn hàng......................................................................35
Hình 4.17 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn trang ch ...........................................................................................39
Hình 4.18 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn chi tiến, người đã hướng dẫn nhómt điện đồ án. Em vơ cùng biết ơn sự tận tình chỉn thoạn chế về kiếni..........................................................................41
Hình 4.19 – Giao diện đồ án. Em vô cùng biết ơn sự tận tình chỉn đăng nhận tình chỉp.........................................................................................42
Hình 4.20 – Giao diện đồ án. Em vô cùng biết ơn sự tận tình chỉn đăng ký...............................................................................................43
Hình 4.21 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn tìm kiến, người đã hướng dẫn nhómm sảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn ph!m......................................................................44
Hình 4.22 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn đặt kiến thức cũng như kinht hàng.............................................................................................45
Hình 4.23 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn quảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn lý điện đồ án. Em vơ cùng biết ơn sự tận tình chỉn thoạn chế về kiếni (1)..................................................................46
Hình 4.24 – Giao diện đồ án. Em vô cùng biết ơn sự tận tình chỉn quảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn lý điện đồ án. Em vơ cùng biết ơn sự tận tình chỉn thoạn chế về kiếni (2)..................................................................47
Hình 4.25 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn quảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn lý điện đồ án. Em vơ cùng biết ơn sự tận tình chỉn thoạn chế về kiếni (3)..................................................................47

Hình 4.26 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn quảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn lý thành viên.........................................................................48
Hình 4.27 – Giao diện đồ án. Em vơ cùng biết ơn sự tận tình chỉn quảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn lý đơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn hàng...........................................................................48

5


DANH MỤC BẢNG
Bảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng 3.1 – Đặt kiến thức cũng như kinhc tảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóm hện đồ án. Em vơ cùng biết ơn sự tận tình chỉ th ng....................................................................................................20
Bảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng 4.1 – Bảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng dững nhận xét, góp ý liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu Phone.............................................................................................36
Bảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng 4.2 – Bảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng dững nhận xét, góp ý liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu User................................................................................................37
Bảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng 4.3 – Bảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng dững nhận xét, góp ý liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu Order..............................................................................................37

6


TÓM TẮT ĐỒ ÁN
Đồ án “Xây dựng website bán điện thoại di động” tập trung vào khảo sát thực trạng
các cửa hàng kinh doanh điện thoại di động để từ đó xây dựng website đáp ứng các
nhu cầu cần thiết của một cửa hàng bán điện thoại di động. Đề tài được bắt đầu từ
việc tìm hiểu thực trạng, đưa ra các vấn đề còn tồn đọng và cần cải thiện. Xác định
phạm vi, bài toán, mục tiêu của đề tài. Từ đó đưa ra các chức năng cần có của ứng
dụng. Ngoài việc xử lý các nghiệp vụ cho ứng dụng, em cũng đã tìm hiểu, so sánh
và lựa chọn các công nghệ mới và phù hợp giúp nâng cao trải nghiệm người dùng,
tối ưu chi phí phát triển, triển khai, bảo trì và nâng cấp.
Vì ứng dụng mang tính thực tiễn cao, việc yêu cầu thay đổi thường xuyên và thời
gian phát triển ngắn, quá trình phát triển sản phẩm đã vận dụng mơ hình Agile làm
phương pháp luận chính cho qui trình phát triển phần mềm. Kết quả thu được ở giai
đoạn phân tích, thiết kế được mơ hình hóa bằng UML thơng qua cơng cụ PlantUML
và giao diện được thiết kế bằng Figma. Ở giai đoạn thực hiện, thư viện ReactJS
được sử dụng cho client và NodeJS được sử dụng cho server, sử dụng Visual Studio

Code làm IDE chính.
Phần cuối cùng của đồ án là trình bày kết quả đã thực hiện lên cuốn báo cáo, đưa ra
kết luận và hướng phát triển cho ứng dụng trong tương lai.
Nội dung đồ án được trình bày trong 5 chương, như sau:
 Chương 01 – Tổng quan về đề tài: Xác định mục tiêu, nội dung nghiên cứu,
phạm vi đề tài.
 Chương 02 – Cơ sở lý thuyết: Giới thiệu về các công nghệ được sử dụng,
cách thức hoạt động, ưu điểm, nhược điểm của các công nghệ đó.
 Chương 03 – Phân tích thiết kế hệ thống: Phân tích các yêu cầu chức năng,
yêu cầu phi chức năng.
 Chương 04 – Hiện thực hệ thống: Mô tả các sơ đồ đặc tả Use Case, quy trình
sử dụng, trình tự hệ thống, thiết kế dữ liệu, thiết kế giao diện người dùng.

7


Chương 1. TỔNG QUAN VỀ ĐỀ TÀI
1.1.

Giới thiệu về đề tài
Trong cuột cách tốt nhất.c s ng hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn đạn chế về kiếni với cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi tác đột cách tốt nhất.ng c a đạn chế về kiếni dị Hồng Yến, người đã hướng dẫn nhómch, nhu cần Thị Hồng Yến, người đã hướng dẫn nhómu mua

sắc chắn khơng thể tránh khỏim online c a người cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi tiêu dùng đư c tăng cao nhời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóm sực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ tiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn l i, rõ ràng .
Đặt kiến thức cũng như kinhc biện đồ án. Em vô cùng biết ơn sự tận tình chỉt đ i với cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi các c a hàng bán điện đồ án. Em vô cùng biết ơn sự tận tình chỉn thoạn chế về kiếni di đột cách tốt nhất.ng, vì tác đ ột cách tốt nhất.ng c a
viện đồ án. Em vô cùng biết ơn sự tận tình chỉc cách ly mà nhu cần Thị Hồng Yến, người đã hướng dẫn nhómu sửi lời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm dục vụ tốt hơn cho công việc thực tế sau này.ng điện đồ án. Em vô cùng biết ơn sự tận tình chỉn thoạn chế về kiếni để nhóm có thể cải tiến và hoàn thiện đề tài giảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi trí, học cùng lớp để nhóm có thể bổ sung, cải tiến sảnc tận tình chỉp, làm
viện đồ án. Em vơ cùng biết ơn sự tận tình chỉc… c a người cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi dùng là rất.t lới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn. Nhận tình chỉn thất.y nhu cần Thị Hồng Yến, người đã hướng dẫn nhómu cửi lời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóma hàng và ti ề tài này. Bước đầu tiếp cận cácm
năng trong viện đồ án. Em vô cùng biết ơn sự tận tình chỉc kinh doanh online, nhóm em quyến, người đã hướng dẫn nhómt đị Hồng Yến, người đã hướng dẫn nhómnh xây dực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉng
Website bán điện đồ án. Em vơ cùng biết ơn sự tận tình chỉn thoạn chế về kiếni di đột cách tốt nhất.ng nhằm thúc đẩy doanh thu cho cửa hàngm thúc đ!y doanh thu cho cửi lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóma hàng
và tạn chế về kiếno sực hiện đồ án. Em vô cùng biết ơn sự tận tình chỉ tiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn l i cho người cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi mua thơng qua viện đồ án. Em vơ cùng biết ơn sự tận tình chỉc bán hàng online.
Website sẽ cung cất.p những nhận xét, góp ýng thơng tin chính xác nhất.t c a các s ảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn

ph!m cho người cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi mua. Ngồi ra cịn giúp cửi lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóma hàng quảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn lý các đ ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn hàng
và doanh thu.
1.2.

Phạm vi nghiên cứu
 Phạm vi môi trường:
o Triển khai sản phẩm trên môi trường web.
 Phạm vi chức năng:
o Đối với phía admin:
 Quản lý sản phẩm.
 Quản lý đơn hàng.
 Quản lý tài khoản.
 Thống kê.
o Đối với phía website:
 Đăng nhập, đăng ký.
 Hiển thị danh sách sản phẩm.
 Hiển thị chi tiết sản phẩm.
 Tìm kiếm sản phẩm.
8


 Bộ lọc chi tiết sản phẩm.
 Chức năng giỏ hàng.
 Chức năng đặt hàng.
1.3.

Phương pháp nghiên cứu
 Tham khảo các website liên quan để hiểu rõ nghiệp vụ.
 Lên kế hoạch.
 Tìm hiểu các cơng nghệ sử dụng cho đề tài.

 Triển khai theo kế hoạch sẵn có.
 Kiểm thử và sửa lỗi (nếu có).

1.4.

Mục tiêu của đề tài
 Nắm bắt và áp dụng được các công nghệ mới để xây dựng sản phẩm
đề tài.
 Hiểu rõ nghiệp vụ, chức năng của một website bán điện thoại di động.
 Xây dựng website bán điện thoại di động đáp ứng được các yêu cầu
về giao diện và chức năng đã đề ra.

9


Chương 2. CƠ SỞ LÝ THUYẾT
2.1.

Tổng quan về Javascript

2.1.1. Giới thiệu
Javascript chính là một cách tốt nhất.t ngơn ngững nhận xét, góp ý lận tình chỉp trình web rất.t phổ sung, cải tiến sản biến, người đã hướng dẫn nhómn ngày
nay. Javascript đư c tích h p đồng Yến, người đã hướng dẫn nhómng thời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi nhúng vào HTML để nhóm có thể cải tiến và hồn thiện đề tài hỗ trợ tr
cho website trở để nhóm có thể cải tiến và hoàn thiện đề tài nên s ng đột cách tốt nhất.ng hơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn. Chúng cũng đóng vai trị t ươn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng
tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ như một cách tốt nhất.t phần Thị Hồng Yến, người đã hướng dẫn nhómn c a website, cho phép Client-side Script từ người người cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi
dùng tươn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng tực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ máy ch (Nodejs) để nhóm có thể cải tiến và hồn thiện đề tài tạn chế về kiếno ra những nhận xét, góp ýng website đột cách tốt nhất.ng.
Thơng thười cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng, JavaScript sẽ đư c nhúng trực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc tiến, người đã hướng dẫn nhómp vào một cách tốt nhất.t
website hoặt kiến thức cũng như kinhc chúng đư c tham chiến, người đã hướng dẫn nhómu qua file .js hoặt kiến thức cũng như kinhc .JavaScript.
Mục vụ tốt hơn cho cơng việc thực tế sau này.c đích c a ngơn ngững nhận xét, góp ý đặt kiến thức cũng như kinhc biện đồ án. Em vô cùng biết ơn sự tận tình chỉt này sẽ giúp bạn chế về kiếnn dễn nên khơng tránh khỏi nhiều sai sót. Những nhận xét, góp ý dàng sửi lời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm dục vụ tốt hơn cho công việc thực tế sau này.ng
chúng hơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn trong cơng viện đồ án. Em vơ cùng biết ơn sự tận tình chỉc. Cục vụ tốt hơn cho cơng việc thực tế sau này. thể nhóm có thể cải tiến và hồn thiện đề tài như sau:

 Thay đổi nội dung HTML: Một trong số nhiều phương thức
HTML JavaScript chính là getElementById (). Chúng được sử
dụng để tìm một phần tử của HTML với id =”demo” và dùng
để thay đổi nội dung của phần từ (Internal HTML) sang thành
“Hello JavaScript”
 Thay đổi giá trị thuộc tính HTML: Tổng quan về javascript cịn
có thể sử dụng để thay đổi các giá trị của thuộc tính. Ví dụ:
thay đổi thuộc tính src (source) của tag<img>.
 Thay đổi kiểu HTML: Đây chính là một hoạt động biến thể của
việc thay đổi thuộc tính của HTML ở trên. Ví dụ:
document.getElementById(‘demo’).style.fontSize = ’35px;
 Ẩn các phần tử HTML: Một hoạt động tiếp theo là Javascript
có thể ẩn được các phần tử HTML. Chúng có thể được thực
hiện thơng qua hoạt động thay đổi kiểu hiển thị các phần tử
HTML.
10


 Hiển thị các phần tử HTML: Một điểm đặc biệt là JavaScript
có thể hiển thị được các yếu tố HTML ẩn. Đồng thời, cũng có
thể thực hiện được thơng qua cách thay đổi kiểu hiển thị phần
tử.
2.1.2. Ưu điểm
 Chương trình rất dễ học.
 Những lỗi Javascript rất dễ để phát hiện, từ đó giúp bạn sửa lỗi
một cách nhanh chóng hơn.
 Những trình duyệt web có thể dịch thông qua HTML mà không
cần sử dụng đến một compiler.
 JS có thể hoạt động ở trên nhiều nền tảng và các trình duyệt web
khác nhau.

 Được các chuyên gia đánh giá là một loại ngơn ngữ lập trình nhẹ
và nhanh hơn nhiều so với các ngơn ngữ lập trình khác.
 JS cịn có thể được gắn trên một số các element hoặc những events
của các trang web.
 Những website có sử dụng JS thì chúng sẽ giúp cho trang web đó
có sự tương tác cũng như tăng thêm nhiều trải nghiệm mới cho
người dùng.
 Người dùng cũng có thể tận dụng JS với mục đích là để kiểm tra
những input thay vì cách kiểm tra thủ cơng thơng qua hoạt động
truy xuất database.
 Giao diện của ứng dụng phong phú với nhiều thành phần như Drag
and Drop, Slider để cung cấp đến cho người dùng một Rich
Interface (giao diện giàu tính năng).
 Giúp thao tác với người dùng phía Client và tách biệt giữa các
Client với nhau.

11


2.1.3. Nhược điểm
 JS Code Snippet khá lớn.
 JS dễ bị các hacker và scammer khai thác hơn.
 JS cũng khơng có khả năng đa luồng hoặc đa dạng xử lý.
 Có thể được dùng để thực thi những mã độc ở trên máy tính của
người sử dụng.
 Những thiết bị khác nhau có thể sẽ thực hiện JS khác nhau, từ đó
dẫn đến sự khơng đồng nhất.
 Vì tính bảo mật và an toàn nên các Client-Side Javascript sẽ không
cho phép đọc hoặc ghi các file.
 JS không được hỗ trợ khi bạn sử dụng ở trong tình trạng thiết bị

được kết nối mạng.
2.2.

Tổng quan về ReactJS

2.2.1. Giới thiệu
ReactJS đư c hiể nhóm có thể cải tiến và hồn thiện đề tàiu là một cách tốt nhất.t mã nguồng Yến, người đã hướng dẫn nhómn mở để nhóm có thể cải tiến và hoàn thiện đề tài chức cũng như kinha JavaScript. Nó đư c
ra đời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi vào năm 2013 bở để nhóm có thể cải tiến và hoàn thiện đề tàii Facebook. Mục vụ tốt hơn cho cơng việc thực tế sau này.c đích chính c a viện đồ án. Em vô cùng biết ơn sự tận tình chỉc t ạn chế về kiếno ra
ReactJS là cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi thiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn các ức cũng như kinhng dục vụ tốt hơn cho công việc thực tế sau này.ng web hiện đồ án. Em vô cùng biết ơn sự tận tình chỉu quảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm và hất.p d ẫn nhómn h ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn v ới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi
nỗ trợ lực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc viến, người đã hướng dẫn nhómt mã t i thiể nhóm có thể cải tiến và hồn thiện đề tàiu. Nhà phát triể nhóm có thể cải tiến và hoàn thiện đề tàin ReactJS mong mu n rằm thúc đẩy doanh thu cho cửa hàngng
bất.t kỳ trang web nào sửi lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóm dục vụ tốt hơn cho công việc thực tế sau này.ng ReactJS cũng phảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi mư t mà, nhanh
chóng và khảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm năng mở để nhóm có thể cải tiến và hồn thiện đề tài rột cách tốt nhất.ng cao, dễn nên không tránh khỏi nhiều sai sót. Những nhận xét, góp ý thực hiện đồ án. Em vô cùng biết ơn sự tận tình chỉc hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn.
Hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn nay, các tính năng và điể nhóm có thể cải tiến và hồn thiện đề tàim mạn chế về kiếnnh c a ReactJS đến, người đã hướng dẫn nhómn từ người viện đồ án. Em vơ cùng biết ơn sự tận tình chỉc
tận tình chỉp trung vào các phần Thị Hồng Yến, người đã hướng dẫn nhómn riêng lẻ. Bởi vậy khi làm việc với web thay vì. Bở để nhóm có thể cải tiến và hồn thiện đề tàii vận tình chỉy khi làm viện đồ án. Em vô cùng biết ơn sự tận tình chỉc v ới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi web thay vì
tồn bột cách tốt nhất. ức cũng như kinhng dục vụ tốt hơn cho công việc thực tế sau này.ng c a trang web bằm thúc đẩy doanh thu cho cửa hàngng ReactJS thì các nhà phát tri ể nhóm có thể cải tiến và hồn thiện đề tàin
tính năng có thể nhóm có thể cải tiến và hồn thiện đề tài tách rời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi và chuyể nhóm có thể cải tiến và hoàn thiện đề tàin đổ sung, cải tiến sảni giao diện đồ án. Em vô cùng biết ơn sự tận tình chỉn người cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi dùng từ người
nhiề tài này. Bước đầu tiếp cận cácu cách phức cũng như kinhc tạn chế về kiếnp và biến, người đã hướng dẫn nhómn đổ sung, cải tiến sảni nó đơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómn giảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn hóa hơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómn. Như v ận tình chỉy,
ReactJS khơng chỉ thực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉc hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn render dững nhận xét, góp ý liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu trên tần Thị Hồng Yến, người đã hướng dẫn nhómng Server mà cịn
ở để nhóm có thể cải tiến và hồn thiện đề tài dưới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi Client nững nhận xét, góp ýa.

12


Các thành phần Thị Hồng Yến, người đã hướng dẫn nhómn chính c a ReactJS:
 Redux: là một thành phần quan trọng với ReactJS và được sử
dụng phổ biến. Trong ReactJS, khơng có các module chun
dụng để xử lý dữ liệu, vì vậy nó được thiết lập độc lập bằng
cách chia nhỏ giao diện thành các thành phần khác nhau, giúp
chúng được liên kết chặt chẽ với nhau hơn. Việc liên kết và
quan hệ giữa các thành phần trong ReactJS địi hỏi sự quan tâm

đặc biệt, vì chỉ có một luồng dữ liệu duy nhất từ thành phần
cha sang con. Việc sử dụng luồng dữ liệu một chiều này có thể
khó khăn đối với những người mới tìm hiểu và áp dụng vào các
dự án. Tuy nhiên, bên cạnh những hạn chế, ReactJS có thể khai
thác tối đa chức năng và vai trị của nó trong q trình sử dụng
cơ chế này. Điều này đặc biệt quan trọng khi giao diện trở nên
phức tạp hơn rất nhiều.
 Virtual DOM: là một phần quan trọng được sử dụng trong hầu
hết các framework, như cả ReactJS. Thay vì tương tác trực tiếp
với DOM, người dùng có thể nhìn thấy giao diện và các thay
đổi thơng qua Virtual DOM. Virtual DOM đóng vai trị là một
mơ hình và cũng đồng thời là một giao diện, vì vậy sự thay đổi
ở một trong hai yếu tố này sẽ ảnh hưởng đến những yếu tố
khác. Nếu không tương tác trực tiếp với các phần tử DOM, bạn
vẫn có thể thực hiện được cơ chế Data Binding.
2.2.2. Ưu điểm
 Phù hợp với nhiều thể loại website khác nhau.
 Tận dụng các thành phần đã có.
 Tích hợp được cho cả ứng dụng di động Mobile Application.
 Tối ưu để tăng cường khả năng tìm kiếm SEO.
 Dễ dàng sửa lỗi và gỡ rối Debug.

13


 Render tầng server.
2.2.3. Nhược điểm
 Reactjs chỉ phục vụ cho tầng View. React chỉ là View Library nó
khơng phải là một MVC framework như những framework khác.
Đây chỉ là thư viện của Facebook giúp render ra phần view. Vì thế

React sẽ khơng có phần Model và Controller, mà phải kết hợp với
các thư viện khác. React cũng sẽ không có 2-way binding hay là
Ajax.
 Tích hợp Reactjs vào các framework MVC truyền thống yêu cầu
cần phải cấu hình lại.
 React khá nặng nếu so với các framework khác React có kích
thước tương tương với Angular (Khoảng 35kb so với 39kb của
Angular). Trong khi đó Angular là một framework hồn chỉnh
 Khó tiếp cận cho người mới học Web.
2.3.

Tổng quan về NodeJS

2.3.1. Giới thiệu
NodeJS là một cách tốt nhất.t môi trười cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng runtime chạn chế về kiếny JavaScript đa nề tài này. Bước đầu tiếp cận cácn tảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng
và có mã nguồng Yến, người đã hướng dẫn nhómn mở để nhóm có thể cải tiến và hồn thiện đề tài, đư c sửi lời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm dục vụ tốt hơn cho công việc thực tế sau này.ng để nhóm có thể cải tiến và hồn thiện đề tài chạn chế về kiếny các ức cũng như kinhng dục vụ tốt hơn cho công việc thực tế sau này.ng web bên
ngồi trình duyện đồ án. Em vơ cùng biết ơn sự tận tình chỉt c a client. Nề tài này. Bước đầu tiếp cận cácn tảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng này đư c phát triể nhóm có thể cải tiến và hồn thiện đề tàin bở để nhóm có thể cải tiến và hoàn thiện đề tàii Ryan
Dahl vào năm 2009, đư c xem là một cách tốt nhất.t giảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi pháp hồn hảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómo cho các ức cũng như kinhng
dục vụ tốt hơn cho công việc thực tế sau này.ng sửi lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóm dục vụ tốt hơn cho công việc thực tế sau này.ng nhiề tài này. Bước đầu tiếp cận cácu dững nhận xét, góp ý liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu nhời cảm ơn tới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhóm vào mơ hình hưới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómng sực hiện đồ án. Em vơ cùng biết ơn sự tận tình chỉ kiện đồ án. Em vơ cùng biết ơn sự tận tình chỉn (eventdriven) khơng đồng Yến, người đã hướng dẫn nhómng bột cách tốt nhất..
2.3.2. Ưu điểm
 IO hướng sự kiện không đồng bộ, cho phép xử lý nhiều yêu cầu
đồng thời.
 Sử dụng JavaScript – một ngơn ngữ lập trình dễ học.
 Chia sẻ cùng code ở cả phía client và server.
14


 NPM(Node Package Manager) và module Node đang ngày càng
phát triển mạnh mẽ.
 Cộng đồng hỗ trợ tích cực.

 Cho phép stream các file có kích thước lớn.
2.3.3. Nhược điểm
 IO hướng sự kiện không đồng bộ, cho phép xử lý nhiều yêu cầu
đồng thời.
 Sử dụng JavaScript – một ngơn ngữ lập trình dễ học.
 Chia sẻ cùng code ở cả phía client và server.
 NPM(Node Package Manager) và module Node đang ngày càng
phát triển mạnh mẽ.
 Cộng đồng hỗ trợ tích cực.
 Cho phép stream các file có kích thước lớn.
2.4.

Tổng quan về MongoDB

2.4.1. Giới thiệu
MongoDB là một cách tốt nhất.t database hưới cô Trần Thị Hồng Yến, người đã hướng dẫn nhómng tài liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu (document), một cách tốt nhất.t dạn chế về kiếnng
NoSQL database. Vì thến, người đã hướng dẫn nhóm, MongoDB sẽ tránh cất.u trúc table-based c a
relational database để nhóm có thể cải tiến và hồn thiện đề tài thích ức cũng như kinhng với cô Trần Thị Hồng Yến, người đã hướng dẫn nhómi các tài liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu như JSON có một cách tốt nhất.t
schema rất.t linh hoạn chế về kiếnt gọc cùng lớp để nhóm có thể bổ sung, cải tiến sảni là BSON. MongoDB sửi lời cảm ơn tới cô Trần Thị Hồng Yến, người đã hướng dẫn nhóm dục vụ tốt hơn cho công việc thực tế sau này.ng lưu tr ững nhận xét, góp ý d ững nhận xét, góp ý li ện đồ án. Em vơ cùng biết ơn sự tận tình chỉu
dưới cơ Trần Thị Hồng Yến, người đã hướng dẫn nhómi dạn chế về kiếnng Document JSON nên mỗ trợi một cách tốt nhất.t collection sẽ các các kích c ỡ
và các document khác nhau. Các dững nhận xét, góp ý liện đồ án. Em vơ cùng biết ơn sự tận tình chỉu đư c lưu trững nhận xét, góp ý trong
document kiể nhóm có thể cải tiến và hoàn thiện đề tàiu JSON nên truy vất.n sẽ rất.t nhanh.
Các feature c a MongoDB gồng Yến, người đã hướng dẫn nhómm có:
 Các ad hoc query: hỗ trợ search bằng field, các phép search
thông thường, regular expression searches, và range queries.
 Indexing: bất kì field nào trong BSON document cũng có thể
được index.
15



 Replication: có ý nghĩa là “nhân bản”, là có một phiên bản
giống hệt phiên bản đang tồn tại, đang sử dụng. Với cơ sở dữ
liệu, nhu cầu lưu trữ lớn, địi hỏi cơ sở dữ liệu tồn vẹn, khơng
bị mất mát trước những sự cố ngồi dự đốn là rất cao. Vì vậy,
người ta nghĩ ra khái niệm “nhân bản”, tạo một phiên bản cơ sở
dữ liệu giống hệt cơ sở dữ liệu đang tồn tại, và lưu trữ ở một
nơi khác, đề phịng có sự cố.
 Aggregation: Các Aggregation operation xử lý các bản ghi dữ
liệu và trả về kết quả đã được tính tốn. Các phép tốn tập hợp
nhóm các giá trị từ nhiều Document lại với nhau, và có thể
thực hiện nhiều phép tốn đa dạng trên dữ liệu đã được nhóm
đó để trả về một kết quả duy nhất. Trong SQL, count(*) và
GROUP BY là tương đương với Aggregation trong MongoDB.
 Lưu trữ file: MongoDB được dùng như một hệ thống file tận
dụng những function trên và hoạt động như một cách phân
phối qua sharding.
2.4.2. Ưu điểm
 Dữ liệu lưu trữ phi cấu trúc, không có tính ràng buộc, tồn vẹn nên
tính sẵn sàng cao, hiệu suất lớn và dễ dàng mở rộng lưu trữ.
 Dữ liệu được caching (ghi đệm) lên RAM, hạn chế truy cập vào ổ
cứng nên tốc độ đọc và ghi cao.
2.4.3. Nhược điểm
 Không ứng dụng được cho các mô hình giao dịch nào có u cầu
độ chính xác cao do khơng có ràng buộc.
 Khơng có cơ chế transaction (giao dịch) để phục vụ các ứng dụng
ngân hàng.
 Dữ liệu 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.
16



Chương 3. PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.1.

Phân tích u cầu đề bài

3.1.1. Phát biểu bài toán
Tên bài toán: “Ứng dụng Reactjs và Nodejs vào xây dựng website
quản lí bán điện thoại”.
Đây là một loại hình kinh doanh ảo qua mạng bằng cách xây dựng
một trang web bán điện thoại để mọi người có thể vào đó xem các loại
điện thoại, lựa chọn giữa các hãng, so sánh các loại máy, giá tiền. Với
trang web bán điện thoại trực tuyến, cửa hàng sẽ đưa thông tin các sản
phẩm mới ra mắt hoặc sắp ra mắt lên trang web của mình. Việc đưa thông
tin phải theo một trật tự hợp lý. Ví dụ, khi đưa thơng tin điện thoại thì các
thơng tin phải đầy đủ gồm: Tên hãng, giá tiền, các thông số kĩ thuật như
camera, pin, hệ điêu hành, bộ nhớ, màn hình, ... Người quản trị trang web
cũng có quyền thêm mới, sửa đổi thông tin điện thoại, hoặc xóa đi những
điện thoại đã dừng bán hoặc hết hàng. Mọi sự thay đổi đều được ghi nhận
trong cơ sở dữ liệu để đến với người sử dụng.
Với khách hàng thì được xem trang web, xem thơng tin các loại điện
thoại đang bán nhưng khơng có quyền đặt hàng. Để có thể đặt hàng,
khách hàng cần phải đăng kí là thành viên của trang web. Khi đã là thành
viên, khách hàng đăng nhập vào website theo email và mật khẩu của
mình. Khi đó, khách hàng sẽ có quyền đặt hàng. Bên cạnh đó, khách hàng
có thể tìm kiếm điện thoại theo tên hoặc là theo hãng, khi đặt hàng xong
thì khách hàng có thể thay đổi số lượng theo ý muốn. Khi khách hàng đặt
hàng thành cơng, người quản lí sẽ đối chiếu thông tin đơn hàng của khách
và thông tin được cập nhật trong hệ thống để tiến hành lấy vận chuyển
sản phẩm và thanh tốn cho khách hàng.

Ngồi ra, trang web còn dùng là nơi quảng cáo cho cửa hàng, các loại
điện thoại đang bán và sắp bán tại cửa hàng.

17


3.1.2. Yêu cầu bài toán
3.1.2.1.

Đối với người dùng là khách hàng - không phải thành viên

 Xem thông tin các loại điện thoại, xem thông tin sản phẩm, xem
giá tiền, xem sản phẩm theo giá thấp đến cao hoặc ngược lại.
 Đăng ký tài khoản, đăng nhập.
3.1.2.2.

Đối với người dùng là khách hàng - thành viên

 Xem thông tin các loại điện thoại, xem thông tin sản phẩm, xem
giá tiền, xem sản phẩm theo giá thấp đến cao hoặc ngược lại.
 Đăng ký tài khoản, đăng nhập.
 Tìm kiếm sản phẩm.
 Quản lí tài khoản thành viên của mình.
3.1.2.3.

Đối với người dùng là chủ cửa hàng hoặc quản lý

 Thêm thơng tin các loại điện thoại: Khi có điện thoại mới, admin
sẽ thêm mới thơng tin về sản phẩm đó vào các điện thoại sắp bán.
 Chỉnh sửa thông tin các sản phẩm: Khi có sự thay đổi về thơng tin

điện thoại, người quản lí có thể thay đổi thơng tin để người dùng
cập nhật kịp thời.
 Xóa các điện thoại: Có thể vì một lí do nào đó mà bị dừng bán
hoặc hết hàng và buộc xóa khỏi hệ thống thì người quản lí cũng có
thể xóa được sản phẩm đó.
 Xóa thơng tin các thành viên: Khi khách hàng vi phạm các điều
luật của rạp chiếu phim hoặc vì một lí do nào đó u cầu xóa tài
khoản, người quản lí có thể xóa tồn bộ thơng tin liên quan đến tài
khoản đó.
 Được thêm thơng tin các loại điện thoại: Khi có điện thoại mới,
admin sẽ thêm mới thơng tin về sản phẩm đó vào các điện thoại
sắp bán.

18



×