1. Trang chủ
  2. » Luận Văn - Báo Cáo

(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

57 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề 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
Tác giả Ngô Văn Hải, Trương Quang Tịnh
Người hướng dẫn ThS. Lê Thị Minh Châu
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Tp. Hồ Chí Minh
Chuyên ngành Công Nghệ Thông Tin
Thể loại tiểu luận
Năm xuất bản 2020
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 57
Dung lượng 2,81 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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... LỜI NÓI ĐẦUTrong những năm gần đây với sự phá

Trang 1

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:

Trang 2

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:

Lớp: 17110IS Khoá: 2017-2021 Ngành: CÔNG NGHỆ THÔNG TIN

TP.HCM, Tháng 7 – 2020

Trang 3

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 2: Trương Quang Tịnh MSSV: 17110381

Ngành: Công nghệ Thông tin

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

Trang 4

Độ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

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: ……….

Tp Hồ Chí Minh, ngày tháng năm 202

Giáo viên phản biện

Trang 6

LỜI CẢM ƠN

Nhóm em xin chân thành cảm ơn quí 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 quí 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ể hoà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 hoà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

Trang 7

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ê ̣n 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 HOÁ YÊ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 Mô tả chi tiết từng chức năng của các tác nhân: 22

4.2 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

Trang 8

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 Các bước cài đặt 49

6.2 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

Trang 9

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 hoá đơ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

Trang 10

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

Trang 11

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 yê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 hoá yê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.

Trang 12

CHƯƠNG 1: KHẢO SÁT HIỆN TRẠNG

Thương mại điê ̣n tử ngày càng bùng nổ trên toà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.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:

Trang 13

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

nhâ ̣p và đăng kí

Lưu trữ Người QTV hoă ̣c người dùng phải

đăng nhâ ̣p để sử dụng phần mềm, nếu người dùng chưa có tài khoản thì

có thể đăng ký.

QTV: quản trị viên

2 Câ ̣p nhâ ̣t sản phẩm Lưu trữ QTV có thể thêm, xoá, sửa sản phẩm QTV: quản trị viên

3 Tính tiền Tính toán Tính tổng tiền khi người dùng

checkout sản phẩm

thông tin

về sản phẩm

Tra cứu Việc tìm thông tin sản phẩm dựa trên

thông tin tên sản phẩm, loại sản 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:

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

Trang 14

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 đó:

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ỗ (in- place).

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

Trang 15

 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…

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.

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.

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.

Trang 16

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.

Trang 17

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

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

Bảng 3 Bảng Users

Trang 18

3.2.1.2 Products (_id, title, prices, warranty, brand, description, content, images, category, quantity, sold, isDelete, createdAt, updatedAt)

ST

Bảng 3 Bảng Products 3.2.1.3 Categories (_id, name, createdAt, updatedAt)

ST

Bảng 3 Bảng Categories

Trang 19

3.2.1.4 Checkout (_id, userId, name, email, address, cart, status, payments, tax, deliveryCharges, createdAt, updatedAt)

ST

Bảng 3 Bảng Checkout

Trang 20

3.2 Thiết kế dữ liệu

Sơ đồ thiết kế dữ liệu

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

Trang 21

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

- 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

Trang 22

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

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

phẩm

QTV có quyền cập nhật sản phẩm nếu có sản phẩm có sai sót

4 Xoá sản phẩm QTV sẽ xoá sản phẩm khi không kinh doanh mặt

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

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

Trang 23

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

Khi xem sản phẩm, người dùng có thể xem các sản phẩm có liên quan đến loại sản phẩm người dùng đang xem.

21 Cập nhật thông

tin

Khách hàng có thể tự cập nhật thông tin cá nhân

Bảng 4 Bảng mô tả chức năng của khách hàng

Trang 24

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

Trang 25

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

Trang 26

Hình 4 Biểu đồ usecase mua hàng của khách hàng

Hình 4 Sơ đồ thống kê

Trang 27

4.2.2 Đặc tả use-case

Use Case Đăng nhập

Các bước thực hiện

(1) Click vào nút đăng nhập (2) Nhập email và password (3) Nhấn nút “Đăng Nhập” hoặc nhấn Enter (4) Nếu đăng nhập thất bại, sẽ có thông báo lỗi (5) Nếu đăng nhập thành công thì có thể thực hiện được các

tác vụ được cho phép.

Luồng sự kiện rẽ nhánh:

- Thành viên đăng nhập không thành công: hệ

thống báo quá trình đăng nhập không thành công Chọn đăng ký hay đăng nhập lại.

- Hệ thống yêu cầu nhập lại tên và mật khẩu Nếu

đồng ý quay trở lại bước 2 UC kết thúc.

- Thành viên đăng nhập thành công có thể sử dụng

các chức năng mà hệ thống cung cấp.

Bảng 4 Đặc tả use case đăng nhập

Trang 28

4.2.2.2 Đặc tả use-case đăng ký Use Case Đăng Kí

Tác nhân kích hoạt Khách xem

Các bước thực hiện

(1) Vào trang chủ của website (2) Chọn Login sau đó chọn Register trong giao diện Login (3) Tiến hành nhập thông tin khách hàng muốn thêm vào,

bao gồm : tên, email, password.

(4) Nhập xong bấm nút “Register”

(5) Nếu thêm thành công, thông tin đọc giả sẽ được cập nhật

vào CSDL và hiển thị thông báo “Đăng kí thành công”.

UC kết thúc.

(6) Nếu thêm thất bại, thông báo lỗi và quay lại bước 3.

Thành viên đăng nhập thành công có thể sử dụng các chức năng mà hệ thống cung cấp.

Bảng 4 Đặc tả use case đăng ký

Ngày đăng: 24/12/2023, 11:26

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w