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

xây dựng website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc

79 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 Website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc
Tác giả Nguyễn Đức Duy
Người hướng dẫn TS. Phạm Ngọc Hưng
Trường học Trường Đại Học Phenikaa
Chuyên ngành Công nghệ thông tin
Thể loại Đồ án/Khóa luận tốt nghiệp
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 79
Dung lượng 2,78 MB

Nội dung

LỜI CAM ĐOAN Tên tôi là: NGUYỄN ĐỨC DUY Mã sinh viên: 19010054 Lớp: K13 CNTT VJ Ngành: Công nghệ thông tin Tôi đã thực hiện đồ án/khóa luận tốt nghiệp với đề tài: Xây dựng website bán hà

Trang 1

Xây dựng Website bán hàng trực tuyến ứng dụng

cho cửa hàng đồ may mặc

Sinh viên: Nguyễn Đức Duy

Mã số sinh viên: 19010054 Khóa: K13

Ngành: Công nghệ thông tin Việt Nhật Hệ: Đại học chính quy

Giảng viên hướng dẫn: TS Phạm Ngọc Hưng

Hà Nội – Năm 2023

Copies for internal use only in Phenikaa University

Trang 2

ĐỒ ÁN/KHÓA LUẬN TỐT NGHIỆP

TÊN ĐỀ TÀI

Xây dựng Website bán hàng trực tuyến ứng dụng

cho cửa hàng đồ may mặc

Sinh viên: Nguyễn Đức Duy

Mã số sinh viên: 19010054 Khóa: K13

Ngành: Công nghệ thông tin Việt Nhật Hệ: Đại học chính quy

Giảng viên hướng dẫn: TS Phạm Ngọc Hưng

Hà Nội – Năm 2023

Copies for internal use only in Phenikaa University

Trang 3

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC PHENIKAA

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

Độc lập - Tự do - Hạnh phúc

NHẬN XÉT ĐỒ ÁN/KHÓA LUẬN TỐT NGHIỆP CỦA GIẢNG VIÊN HƯỚNG DẪN Giảng viên hướng dẫn: Phạm Ngọc Hưng Khoa :Công nghệ thông tin Tên đề tài: Xây dựng website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc Sinh viên thực hiện: Nguyễn Đức Duy Lớp:Công nghệ thông tin Việt Nhật NỘI DUNG NHẬN XÉT I Nhận xét ĐAKLTN: - Nhận xét về hình thức:………

………

- Tính cấp thiết của đề tài:………

………

- Mục tiêu của đề tài:………

………

- Nội dung của đề tài: ………

………

- Tài liệu tham khảo: ………

Copies for internal use only in Phenikaa University

Trang 4

………

- Phương pháp nghiên cứu: ………

………

- Tính sáng tạo và ứng dụng:………

………

II Nhận xét tinh thần và thái độ làm việc của sinh viên: ………

………

………

………

III Kết quả đạt được: ………

………

………

………

IV Kết luận: Đồng ý cho bảo vệ: Không đồng ý cho bảo vệ:

Hà Nội, ngày … tháng … năm 2023

GIẢNG VIÊN HƯỚNG DẪN

(Ký, ghi rõ họ tên)

Copies for internal use only in Phenikaa University

Trang 5

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC PHENIKAA

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

Độc lập - Tự do - Hạnh phúc

NHẬN XÉT ĐỒ ÁN/KHÓA LUẬN TỐT NGHIỆP

CỦA GIẢNG VIÊN PHẢN BIỆN

Giảng viên hướng dẫn: Phạm Ngọc Hưng Khoa: Công nghệ thông tin

Tên đề tài: Xây dựng website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc

Sinh viên thực hiện: Nguyễn Đức Duy Lớp: Công nghệ thông tin Việt Nhật

- Đảm bảo tính cấp thiết, hiện đại, không trùng

lặp:

- Nội dung:

Copies for internal use only in Phenikaa University

Trang 6

- Mức độ thực

hiện:

II Kết quả đạt

được:

III Ưu nhược điểm:

IV Kết luận: Đồng ý cho bảo vệ: Không đồng ý cho bảo vệ:

Trang 7

LỜI CAM ĐOAN

Tên tôi là: NGUYỄN ĐỨC DUY

Mã sinh viên: 19010054 Lớp: K13 CNTT VJ

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

Tôi đã thực hiện đồ án/khóa luận tốt nghiệp với đề tài: Xây dựng website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc

Tôi xin cam đoan đây là đề tài nghiên cứu của riêng tôi và được sự hướng dẫn của: TS.Phạm Ngọc Hưng

Các nội dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa được các tác giả khác công bố dưới bất kỳ hình thức nào Nếu phát hiện có bất kỳ hình thức gian lận nào tôi xin hoàn toàn chịu trách nhiệm trước pháp luật

Trang 8

LỜI CẢM ƠN

Em xin gửi lời cảm ơn sâu sắc và biết ơn đến Trường đại học Phenikaa và Khoa Công nghệ thông tin, cũng như đến tất cả thầy/cô giảng viên đã hỗ trợ và hướng dẫn em trong suốt quá trình học và thực hiện đồ án của mình

Trường đại học Phenikaa và Khoa Công nghệ thông tin đã tạo ra một môi trường học tập và nghiên cứu thú vị và phát triển Nhờ sự đầu tư và chỉ bảo của Trường và Khoa, em đã có cơ hội tiếp cận với những kiến thức và công nghệ mới nhất, cũng như tham gia vào các hoạt động của khoa và các đề tài thực tế

Đặc biệt, em muốn bày tỏ lòng biết ơn sâu sắc đến giảng viên hướng dẫn em trong quá trình thực hiện đồ án, đó là TS Phạm Ngọc Hưng Những hướng dẫn chi tiết

và phản hồi cụ thể của thầy đã giúp em nắm vững kiến thức, phát triển kỹ năng và đặc biệt là hiểu rõ hơn về quy trình xây dựng một trang web tin tức hiệu quả Sự tận tâm, kiến thức sâu rộng và sự động viên của Thầy, của Khoa, của Trường là nguồn động viên lớn lao giúp em vượt qua những khó khăn và hoàn thành đồ án một cách tốt nhất

Đồ án này không chỉ là một phần quan trọng trong quá trình học tập của em mà còn là cơ hội để em phát triển thêm kỹ năng và kiến thức Những bài học và kinh nghiệm

mà em đã được học từ Trường, Khoa và các thầy/cô sẽ luôn là tài sản quý báu trong sự nghiệp của em Em tự hào và biết ơn sự hỗ trợ và cơ hội mà Trường, Khoa cùng với các thầy/cô đã mang lại cho em

Một lần nữa, em xin bày tỏ lòng biết ơn chân thành và sâu sắc đến Trường đại học Phenikaa, Khoa Công nghệ thông tin và các thầy/cô đã ủng hộ và hướng dẫn em trong suốt thời gian qua

Copies for internal use only in Phenikaa University

Trang 9

MỤC LỤC

LỜI CAM ĐOAN v

LỜI CẢM ƠN vi

DANH MỤC BẢNG BIỂU ix

DANH MỤC HÌNH ẢNH x

MỞ ĐẦU 1

CHƯƠNG 1: TỔNG QUAN 3

1.1 Tổng quan về Website bán hàng trực tuyến 3

1.1.1 Website bán hàng trực tuyến là gì 3

1.1.2 Lợi ích của một website bán hàng trực tuyến 4

1.2 Giới thiệu đề tài “Xây dựng Website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc” 5

1.2.1 Tổng quan về đề tài 5

1.2.2 Lý do chọn đề tài 6

1.2.3 Đối tượng nghiên cứu 6

1.2.4 Phạm vi 7

1.2.5 Lợi ích 8

1.3 Những yếu tố cần thiết cho việc xây dựng đề tài 9

1.3.1 Lên Mục tiêu và Lập kế hoạch 9

1.3.2 Lên ý tưởng, thiết kế giao diện 10

1.3.3 Ngôn ngữ lập trình 10

1.3.4 Hosting Domain 12

1.4 Mô tả công nghệ , ngôn ngữ lập trình được sử dụng trong hệ thống 12

1.4.1 Phía FrontEnd - ReactJS 12

1.4.2 Phía BackEnd - NodeJS 14

1.4.3 Hệ quản trị cơ sở dữ liệu - MongoDB 16

Copies for internal use only in Phenikaa University

Trang 10

1.4.4 Lý do sử dụng ReactJs , NodeJs , MongoDb để xây dựng hệ thống 19

CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 21

2.1 Phân tích yêu cầu 21

2.1.1 Yêu cầu từ phía người mua hàng 21

2.1.2 Yêu cầu từ phía cửa hàng 21

2.2 Các tác nhân của hệ thống 22

2.2.1 Khách hàng: 22

2.2.2 Quản trị viên: 22

2.3 Chức năng của hệ thống 23

2.4 Lược đồ UseCase của hệ thống 23

2.4.1 Xác định UseCase 23

2.4.2 Xây dựng biểu đồ UseCase và đặc tả về Use Case 25

2.5 Biểu đồ tuần tự của hệ thống 41

2.6 Biểu đồ hoạt động của hệ thống 44

CHƯƠNG 3: THIẾT KẾ VÀ ĐẶC TẢ CƠ SỞ DỮ LIỆU 49

3.1 Biểu đồ quan hệ cơ sở dữ liệu 49

3.2 Bảng thiết kế cơ sở dữ liệu 50

CHƯƠNG 4 : KẾT QUẢ ĐẠT ĐƯỢC 55

4.1 Giao diện sản phẩm 55

4.2 Lợi ích và hạn chế 62

CHƯƠNG 5 : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 64

5.1 Kết luận 64

5.2 Hướng phát triển tương lai 64

DANH MỤC TÀI LIỆU THAM KHẢO 66

Copies for internal use only in Phenikaa University

Trang 11

DANH MỤC BẢNG BIỂU

Bảng 2.1 Chức năng của hệ thống 23

Bảng 2.2 Đặc tả UseCase đăng ký 26

Bảng 2.3 Đặc tả UseCase đăng nhập 27

Bảng 2.4 Đặc tả Use Case xem thông tin cá nhân 28

Bảng 2.5 Đặc tả Use Case sửa thông tin cá nhân 29

Bảng 2.6 Đặc tả Use Case quản lý danh mục sản phẩm 30

Bảng 2.7 Đặc tả Use Case xem thông tin sản phẩm 32

Bảng 2.8 Đặc tả Use Case chọn sản phẩm cần mua 33

Bảng 2.9 Đặc tả Use Case thêm vào giỏ hàng 34

Bảng 2.10 Đặc tả Use Case loại sản phẩm khỏi giỏ hàng 35

Bảng 2.11 Đặc tả Use Case thanh toán 36

Bảng 2.12 Đặc tả Use Case tiếp nhận đơn hàng 39

Bảng 2.13 Đặc tả Use Case xác nhận đơn hàng và giao hàng 39

Bảng 2.14 Đặc tả Use Case thống kê 40

Bảng 3.1 Bảng user 50

Bảng 3.2 Bảng SaleStatics 51

Bảng 3.3 Bảng Products 52

Bảng 3.4 Bảng review 53

Bảng 3.5 Bảng order 53

Copies for internal use only in Phenikaa University

Trang 12

DANH MỤC HÌNH ẢNH

Hình 2.1: Biểu đồ UseCase tổng quan 25

Hình 2.2 : Nhóm UseCase đăng ký đăng nhập 25

Hình 2.3 : Nhóm UseCase quản lý thông tin cá nhân 28

Hình 2.4 : Nhóm UseCase quản lý danh mục sản phẩm 30

Hình 2.5: Nhóm UseCase mua hàng 32

Hình 2.6 :Nhóm UseCase xử lý đơn hàng 38

Hình 2.7: Biểu đồ tuần tự Use Case đăng ký 41

Hình 2.8: Biểu đồ tuần tự Use Case Đăng nhập 42

Hình 2.9 :Biểu đồ tuần tự Use Case sửa thông tin cá nhân 42

Hình 2.10 :Biểu đồ tuần tự Use Case quản lý danh mục sản phẩm 43

Hình 2.11 :Biểu đồ tuần tự Use Case mua hàng và xử lý đơn hàng 43

Hình 2.12 :Biểu đồ hoạt động Use Case đăng ký 44

Hình 2.13 :Biểu đồ hoạt động Use Case đăng nhập 45

Hình 2.14 :Biểu đồ hoạt động Use Case sửa thông tin cá nhân 46

Hình 2.15 :Biểu đồ hoạt động Use Case quản lý sản phẩm 47

Hình 2.16 :Biểu đồ hoạt động Use Case tiếp nhận xử lý đơn hàng 48

Hình 3.1 :Biểu đồ quan hệ cơ sở dữ liệu 49

Hình 4.1 : Giao diện trang chủ 55

Hình 4.2 : Giao diện danh sách sản phẩm 56

Hình 4.3 : Giao diện Thông tin chi tiết của sản phẩm 57

Hình 4.4 : Giao diện đăng ký , đăng nhập 58

Hình 4.5 : Giao diện giỏ hàng 58

Hình 4.6 :Giao diện Thêm , Sửa ,Xóa sản phẩm 60

Hình 4.7: Giao diện quản lý đơn hàng 61

Copies for internal use only in Phenikaa University

Trang 13

Hình 4.8: Giao diện thống kê 62

Copies for internal use only in Phenikaa University

Trang 14

MỞ ĐẦU

Trong thời đại số hóa ngày nay, việc có một nền tảng thương mại điện tử mạnh mẽ trở thành yếu tố quyết định cho sự phát triển và thành công của nhiều doanh nghiệp Website thương mại điện tử không chỉ là một công cụ để trình bày sản phẩm mà còn là cầu nối giữa doanh nghiệp và khách hàng, mang lại trải nghiệm mua sắm trực tuyến thú vị và thuận tiện

Việc lựa chọn đề tài "Xây dựng Website bán hàng trực tuyến cho cửa hàng

đồ may mặc" là một bước quan trọng trong việc nắm bắt cơ hội và đáp ứng nhu cầu thị trường ngày càng đa dạng Ngành thời trang và đồ may mặc luôn thay đổi nhanh chóng, và khách hàng ngày càng mong đợi trải nghiệm mua sắm tiện lợi và đáng tin cậy trực tuyến Điều này đặt ra một thách thức lớn cho các cửa hàng đồ may mặc truyền thống, và cần có sự hiện đại hóa để thích nghi với môi trường kinh doanh mới

Với đề tài này, việc sử dụng công nghệ và các ngôn ngữ lập trình hiện đại ReactJs và NodeJs mong muốn không chỉ xây dựng một nền tảng thương mại điện

tử chất lượng cao cho cửa hàng đồ may mặc mà còn cung cấp một giải pháp toàn diện Tập trung vào việc cải thiện giao diện người dùng, quản lý sản phẩm và quản

lý đơn hàng để đảm bảo trải nghiệm mua sắm trực tuyến thú vị và dễ dàng cho khách hàng Đồng thời, cũng phát triển các tính năng bảo mật và thanh toán an toàn để tạo sự tin tưởng cho khách hàng trong quá trình mua sắm trực tuyến

Trong phạm vi của đề tài, sẽ tập trung vào các cửa hàng đồ may mặc, đặc biệt là những cửa hàng có nhu cầu mở rộng hoạt động trực tuyến hoặc cải thiện trải nghiệm mua sắm trực tuyến cho khách hàng của họ Đề tài sẽ xây dựng một ứng dụng web bán quần áo sử dụng các công nghệ như React và Node.js và bao gồm các chức năng quản lý sản phẩm, đơn hàng, thanh toán và giao diện người dùng Tuy nhiên, đề tài không mở rộng để xây dựng một hệ thống hoàn chỉnh cho toàn bộ thị trường mà chỉ tập trung vào một phần nhỏ của nó

Copies for internal use only in Phenikaa University

Trang 15

Ngoài ra đề tài này có ý nghĩa khoa học bởi nó mang lại cơ hội để nghiên cứu và áp dụng kiến thức về phát triển phần mềm, giao diện người dùng, quản lý

dữ liệu và thương mại điện tử trong ngữ cảnh thực tế Nó cũng có thể đóng góp vào nghiên cứu về tối ưu hóa trải nghiệm mua sắm trực tuyến

Về mặt thực tiễn, đề tài này hứa hẹn mang lại lợi ích cho cả cửa hàng và khách hàng trong lĩnh vực thương mại điện tử thời trang Việc phát triển một ứng dụng web bán quần áo ứng dụng cho cửa hàng đồ may mặc sẽ giúp cải thiện trải nghiệm mua sắm trực tuyến và tối ưu hóa quản lý kinh doanh, đồng thời tạo ra cơ hội mới cho các cửa hàng trong ngành này

Copies for internal use only in Phenikaa University

Trang 16

CHƯƠNG 1: TỔNG QUAN 1.1 Tổng quan về Website bán hàng trực tuyến

1.1.1 Website bán hàng trực tuyến là gì

Một website bán hàng trực tuyến, còn được biết đến như trang web thương mại điện tử (e-commerce website), đóng vai trò quan trọng trong cách mà doanh nghiệp và người tiêu dùng tương tác với thị trường và sản phẩm Được tạo ra trên nền tảng Internet, các trang web bán hàng trực tuyến là một phần không thể thiếu của cách thức tiêu dùng hiện đại Điều này cho phép người dùng truy cập và mua sắm từ bất kỳ đâu trên thế giới, mở ra cơ hội to lớn cho doanh nghiệp mở rộng và phát triển

Các trang web bán hàng trực tuyến thường cung cấp một giao diện trực quan cho người tiêu dùng Giao diện này không chỉ nên dễ sử dụng mà còn nên phản ánh thương hiệu của doanh nghiệp Thiết kế hấp dẫn, bố cục logic và sự dễ dàng trong việc tìm kiếm sản phẩm là các yếu tố quan trọng để tạo ra trải nghiệm người dùng tích cực Các trang web thường đi kèm với các tính năng như tìm kiếm nâng cao, bộ lọc sản phẩm, và khả năng so sánh sản phẩm để giúp người tiêu dùng tìm kiếm và so sánh các sản phẩm một cách dễ dàng

Sự đa dạng của sản phẩm và dịch vụ trên các trang web bán hàng trực tuyến

là không giới hạn Chúng ta có thể tìm thấy từ quần áo, giày dép, đồ trang sức, thiết bị điện tử, đồ gia dụng, thực phẩm, sách, đến dịch vụ như vé máy bay, khách sạn, và nhiều lĩnh vực khác Điều này tạo ra sự thuận tiện cho người tiêu dùng, vì

họ có thể mua sắm cho mọi nhu cầu từ một nền tảng duy nhất

Như vậy, một website bán hàng trực tuyến không chỉ là một cửa hàng ảo

mà còn là một nền tảng đa dạng, tiện lợi, và đầy tiềm năng để kinh doanh phát triển và tạo ra nguồn thu nhập trực tuyến

Copies for internal use only in Phenikaa University

Trang 17

1.1.2 Lợi ích của một website bán hàng trực tuyến

Website bán hàng trực tuyến mang lại nhiều lợi ích quan trọng cho cả người tiêu dùng và doanh nghiệp Dưới đây là một số lợi ích chính của việc sử dụng và kinh doanh qua trang web bán hàng trực tuyến:

Đối với Người Tiêu Dùng:

Sự tiện lợi: Người tiêu dùng có thể mua sắm và tìm kiếm sản phẩm mọi lúc, mọi nơi, 24/7, mà không cần phải di chuyển đến cửa hàng thông thường Điều này giúp tiết kiệm thời gian và công sức

Sự lựa chọn đa dạng: Các trang web bán hàng trực tuyến thường có danh mục rộng rãi và đa dạng về sản phẩm và dịch vụ, cho phép người tiêu dùng dễ dàng tìm kiếm và so sánh các sản phẩm khác nhau

Ưu đãi và khuyến mãi: Người tiêu dùng thường có cơ hội tận hưởng các ưu đãi, giảm giá và khuyến mãi độc quyền trên các trang web bán hàng trực tuyến Điều này có thể giúp họ tiết kiệm tiền và có trải nghiệm mua sắm tốt hơn

Tìm kiếm và đánh giá sản phẩm: Người tiêu dùng có thể tìm kiếm thông tin chi tiết về sản phẩm, đọc đánh giá từ người khác, và tìm hiểu về kinh nghiệm của những người đã mua sản phẩm đó trước đây, giúp họ đưa ra quyết định mua hàng thông minh hơn

Thanh toán an toàn: Hệ thống thanh toán trực tuyến thường được bảo mật, giúp bảo vệ thông tin cá nhân và tài chính của người tiêu dùng trong quá trình mua sắm

Đối với Doanh Nghiệp:

Mở rộng phạm vi khách hàng: Website bán hàng trực tuyến giúp doanh nghiệp tiếp cận được một lượng lớn khách hàng trên toàn thế giới, không giới hạn bởi vị trí địa lý

Copies for internal use only in Phenikaa University

Trang 18

Tiết kiệm chi phí vận hành: Doanh nghiệp có thể tiết kiệm nhiều chi phí liên quan đến việc vận hành cửa hàng vật lý như thuê mặt bằng, lương nhân viên,

và chi phí điều hành hàng ngày

Quản lý dễ dàng: Các tính năng quản lý trực tuyến giúp doanh nghiệp dễ dàng theo dõi lượng tồn kho, đơn hàng, và thông tin khách hàng

Thu thập dữ liệu khách hàng: Doanh nghiệp có thể thu thập dữ liệu về hành

vi mua sắm của khách hàng, từ đó tạo ra chiến lược tiếp thị và phát triển sản phẩm hiệu quả hơn

Mở cửa 24/7: Một trang web bán hàng trực tuyến hoạt động liên tục, giúp doanh nghiệp phục vụ khách hàng xuyên suốt ngày và đêm

Như vậy một website bán hàng trực tuyến là một công cụ quan trọng để kết nối doanh nghiệp và người tiêu dùng, giúp cả hai bên tận hưởng nhiều lợi ích về tiện lợi, sự lựa chọn, và tiết kiệm thời gian và tiền bạc

1.2 Giới thiệu đề tài “Xây dựng Website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc”

1.2.1 Tổng quan về đề tài

Website bán hàng trực tuyến đã trở thành một phần quan trọng trong cuộc sống hiện đại, giúp cho việc mua sắm trở nên thuận tiện và linh hoạt hơn bao giờ hết Đặc biệt, trong bối cảnh thị trường thời trang đang trỗi dậy, việc có một nền tảng trực tuyến mạnh mẽ có khả năng thể hiện và bán sản phẩm thời trang đang trở nên cần thiết hơn bao giờ hết Đề tài "Xây dựng website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc" chính là một nỗ lực để kết hợp sự phát triển của công nghệ và ngành thời trang, mang đến một trải nghiệm mua sắm đỉnh cao cho khách hàng và giúp cửa hàng đồ may mặc tối ưu hóa quản lý sản phẩm, tối ưu hóa doanh số bán hàng, và tạo lợi nhuận bền vững Để thực hiện đề tài này cần kết hợp kiến thức về phát triển web, quản lý kinh doanh, và thời trang để tạo ra một nền tảng trực tuyến độc đáo, thu hút và phục vụ khách hàng một cách tốt nhất

Copies for internal use only in Phenikaa University

Trang 19

1.2.2 Lý do chọn đề tài

Việc lựa chọn đề tài “Xây dựng Website bán hàng trực tuyến cho cửa hàng

đồ may mặc” vì sự kết hợp của nhiều yếu tố quan trọng Thứ nhất, thị trường thời trang trực tuyến đang phát triển mạnh mẽ và việc tạo ra một nền tảng trực tuyến

sẽ giúp các cửa hàng của đáp ứng được nhu cầu của khách hàng hiện đại Khách hàng ngày càng quan tâm đến việc mua sắm trực tuyến và em muốn đáp ứng mong đợi này bằng cách mang đến cho họ trải nghiệm mua sắm tốt nhất và thuận tiện nhất

Mục tiêu của đề tài này là xây dựng một trang web bán hàng trực tuyến hoàn chỉnh giúp cửa hàng tiếp cận được lượng lớn khách hàng tiềm năng và mở rộng thị trường Em muốn tạo ra một giao diện người dùng hấp dẫn và thân thiện với người dùng, cung cấp thông tin chi tiết về sản phẩm và tích hợp các tính năng thanh toán an toàn Ngoài ra, em muốn quản lý sản phẩm và đơn hàng hiệu quả hơn, tạo cơ hội cho khách hàng dễ dàng tìm kiếm sản phẩm và thực hiện giao dịch

1.2.3 Đối tượng nghiên cứu

Đối tượng nghiên cứu của đề tài xây dựng website bán hàng trực tuyến cho cửa hàng đồ may mặc có thể được phân chia thành hai khía cạnh chính :

Khách hàng hay người mua hàng: Đây là những người sẽ truy cập và sử

dụng website để mua sắm sản phẩm đồ may mặc Nghiên cứu này có thể tập trung vào việc hiểu nhu cầu, mong muốn, và hành vi mua sắm trực tuyến của khách hàng Điều này bao gồm việc nghiên cứu về việc làm thế nào để thu hút và duy trì

họ trên trang web, cải thiện trải nghiệm người dùng, và thúc đẩy giao dịch trực tuyến

Chủ cửa hàng và quản lý website: Đối tượng này bao gồm những người

chịu trách nhiệm xây dựng, quản lý và phát triển website bán hàng trực tuyến Nghiên cứu có thể liên quan đến việc phân tích các công nghệ và công cụ phát triển website, quản lý dữ liệu sản phẩm, quản lý đơn đặt hàng và lưu trữ thông tin

Copies for internal use only in Phenikaa University

Trang 20

khách hàng, cũng như xác định cách tối ưu hóa quy trình kinh doanh trực tuyến

để tạo ra lợi nhuận và tối ưu hóa hoạt động của cửa hàng

Ngoài ra, có thể có các đối tượng khác như đối thủ cạnh tranh trong ngành, các nhà cung cấp sản phẩm, hoặc các yếu tố khác có thể ảnh hưởng đến thành công của website bán hàng trực tuyến

1.2.4 Phạm vi

Phạm vi nghiên cứu của đề tài "Xây dựng website bán hàng trực tuyến cho cửa hàng đồ may mặc" bao gồm các khía cạnh sau:

Phân tích thị trường: Nghiên cứu về thị trường đồ may mặc trực tuyến,

bao gồm phân tích người tiêu dùng, đối thủ cạnh tranh, và các xu hướng thị trường hiện tại

Thiết kế và phát triển website: Tạo ra một giao diện website hấp dẫn và dễ

sử dụng cho người mua hàng Bao gồm cả quản lý sản phẩm, giỏ hàng, thanh toán trực tuyến và các tính năng khác liên quan đến trải nghiệm mua sắm trực tuyến

Quản lý cơ sở dữ liệu: Tạo và quản lý cơ sở dữ liệu sản phẩm, thông tin

khách hàng, đơn hàng và lịch sử giao dịch

Tối ưu hóa trải nghiệm người dùng: Nghiên cứu và áp dụng các kỹ thuật

tối ưu hóa trải nghiệm người dùng để tạo ra trải nghiệm mua sắm trực tuyến tốt nhất cho khách hàng

Quản lý đơn hàng và thanh toán: Phát triển hệ thống quản lý đơn hàng và

thanh toán để xử lý các giao dịch mua sắm trực tuyến một cách hiệu quả và an toàn

Hỗ trợ khách hàng: Xây dựng hệ thống hỗ trợ khách hàng để giải quyết

các thắc mắc và yêu cầu hỗ trợ từ khách hàng

Copies for internal use only in Phenikaa University

Trang 21

Đánh giá hiệu suất: Đánh giá hiệu suất của website bán hàng trực tuyến

thông qua việc theo dõi và phân tích dữ liệu về giao dịch, lượng truy cập, và các chỉ số khác

Luật pháp và tuân thủ: Nghiên cứu về các quy định pháp luật liên quan

đến hoạt động thương mại điện tử và đảm bảo rằng website tuân thủ các quy định này

1.2.5 Lợi ích

Xây dựng một trang website bán hàng trực tuyến ứng dụng cho cửa hàng

đồ may mặc có thể mang lại nhiều lợi ích cho cửa hàng đó, bao gồm:

Thứ nhất, website bán hàng trực tuyến giúp cửa hàng quần áo tiếp cận được

nhiều tệp khách hàng không chỉ phục vụ khách hàng địa phương mà có thể thu hút người mua

từ khắp nơi trên toàn quốc Điều này mở ra những cơ hội mới để mở rộng thị trường và tăng doanh thu

Thứ hai, website cho phép cửa hàng trưng bày, quảng bá sản phẩm một

cách chi tiết và hấp dẫn hơn Khách hàng có thể xem hình ảnh sản phẩm, đọc mô

tả chi tiết và đánh giá từ người dùng khác Điều này giúp xây dựng niềm tin và tạo điều kiện thuận lợi cho các quyết định mua sắm

Thứ ba, các công cụ thanh toán trực tuyến tích hợp giúp quá trình thanh

toán nhanh chóng và thuận tiện Khách hàng có thể dễ dàng mua sản phẩm và thanh toán mọi lúc, mọi nơi, tăng cơ hội chuyển đổi lượt truy cập thành đơn hàng

Thứ tư, khách hàng có thể dễ dàng tìm kiếm sản phẩm và sử dụng tính năng

tìm kiếm, lọc để tìm được sản phẩm phù hợp nhất với nhu cầu của mình Điều này giúp cải thiện trải nghiệm mua sắm và tăng sự hài lòng của khách hàng

Copies for internal use only in Phenikaa University

Trang 22

Thứ năm, các website bán hàng trực tuyến còn mang lại lợi ích tiếp thị,

quảng cáo Các cửa hàng có thể tận dụng các kênh tiếp thị trực tuyến để tiếp cận khách hàng tiềm năng và xây dựng thương hiệu của mình một cách hiệu quả

Cuối cùng, việc theo dõi và phân tích dữ liệu trực tuyến có thể giúp các cửa

hàng hiểu rõ hơn về hành vi của khách hàng để tối ưu hóa chiến lược kinh doanh

và sản phẩm

Như vậy việc thiết lập website bán hàng trực tuyến có thể mang lại nhiều lợi ích quan trọng, từ việc tăng doanh số bán hàng đến nâng cao trải nghiệm của khách hàng và tối ưu hóa việc quản lý kinh doanh cho cửa hàng

1.3 Những yếu tố cần thiết cho việc xây dựng đề tài

1.3.1 Lên Mục tiêu và Lập kế hoạch

Tạo ra một trang web bán hàng độc đáo và hấp dẫn, thể hiện được thương hiệu và phong cách của cửa hàng đồ may mặc

Cung cấp trải nghiệm mua sắm trực tuyến thuận tiện và an toàn cho khách hàng,Tối ưu hóa cách hiển thị sản phẩm để làm nổi bật các mặt hàng Có thể giúp người dùng dễ dàng xem chất lượng , màu sắc , giá cả , tương tác về sản phẩm

Đảm bảo trang web cung cấp trải nghiệm mua sắm thuận tiện, dễ sử dụng

và an toàn cho khách hàng Tích hợp giỏ hàng mua sắm, chức năng đăng nhập và đăng ký tài khoản, và quy trình thanh toán trơn tru

Quản lý đơn hàng , thống kê , thêm sửa xóa sản phẩm từ phía quản trị viên , kiểm soát chức năng một cách hệ thống không chỉ giúp tối ưu hóa hoạt động kinh doanh mà còn tạo ra một môi trường quản lý linh hoạt và hiệu quả cho trang web

Xác định rõ từng mốc thời gian để đảm bảo rằng quá trình làm diễn ra một cách hiệu quả và có hướng đi cụ thể Sau đó lập bảng biểu kế hoạch một cách chi tiết để có thể kịp với tiến độ của đề tài

Copies for internal use only in Phenikaa University

Trang 23

1.3.2 Lên ý tưởng, thiết kế giao diện

Sự hiểu biết về nguyên tắc thiết kế giao diện (UI/UX): Điều này bao gồm việc hiểu cách người dùng tương tác với trang web, cách sắp xếp thông tin một cách hợp lý và làm cho giao diện thân thiện với người dùng

Sử dụng màu sắc và hình ảnh: Hiểu cách sử dụng màu sắc, hình ảnh và biểu

đồ để tạo ra giao diện hấp dẫn và dễ xem và nhận xét

Adobe XD hoặc Figma: Đây là các công cụ thiết kế giao diện người dùng (UI) phổ biến và mạnh mẽ Chúng cho phép tạo wireframe, mockup và prototype các giao diện trang web một cách dễ dàng

1.3.3 Ngôn ngữ lập trình

FrontEnd :

HTML và CSS: Đây là cơ sở của thiết kế giao diện Bạn cần nắm vững HTML để tạo cấu trúc trang web và CSS để tùy chỉnh giao diện, màu sắc, và kiểu dáng

Responsive Design: Hiểu cách tạo giao diện đáp ứng để trang web hiển thị đẹp trên cả máy tính và thiết bị di động

Thư viện CSS hoặc Framework: Sử dụng thư viện CSS như Bootstrap, Material-UI, Semantic UI, Foundation, hoặc Tailwind CSS để tạo giao diện đẹp

và nhanh chóng mà không cần viết CSS từ đầu

JavaScript: Cần nắm vững JavaScript để thực hiện các chức năng tương tác trên trang web, như hiển thị sản phẩm, thêm vào giỏ hàng, và tương tác với người dùng

ReactJs hoặc các framework tương đương: Việc sử dụng các framework sẽ giúp người dùng quản lý trạng thái, xây dựng các thành phần tái sử dụng, và tạo giao diện phức tạp Từ đó đem lại hiệu quả cao nhất cho việc xử lý giao diện cho

Copies for internal use only in Phenikaa University

Trang 24

người dùng , tăng tốc quá trình phát triển và giảm thiểu những rủi ro có thể xảy ra trong khi coding

Routing: Sử dụng các thư viện định tuyến như React Router hoặc Vue Router để quản lý routing và điều hướng giữa các trang

Thao tác với API: Biết cách gửi các yêu cầu HTTP để tương tác với máy chủ và lấy dữ liệu từ API

dữ liệu (DBMS) phù hợp như PostgreSQL, MySQL, MongoDB, hoặc SQLite giúp quản lý dữ liệu một cách hiệu quả Hệ thống quản lý cơ sở dữ liệu cho phép thực hiện các truy vấn phức tạp để hiển thị thông tin sản phẩm một cách linh hoạt và hiệu quả, đồng thời cung cấp cơ sở cho việc xử lý mã nguồn Chính vì vậy quản

lý cơ sở dữ liệu không chỉ đơn giản là việc lưu trữ dữ liệu mà còn là một phần quan trọng của việc phát triển và duy trì các ứng dụng và hệ thống thông tin hiện đại Nó đóng vai trò quan trọng trong việc đảm bảo tính hiệu quả và an toàn của

hệ thống, cũng như trong việc đáp ứng các yêu cầu phức tạp của người dùng

API Design: Thiết kế các API cho phép giao tiếp giữa front-end và end, bao gồm các phương thức như GET, POST, PUT, và DELETE để thực hiện các thao tác CRUD

back-Copies for internal use only in Phenikaa University

Trang 25

Bảo mật: Đảm bảo tính bảo mật của ứng dụng bằng cách xác thực người dùng, quản lý quyền truy cập và xử lý các vấn đề bảo mật phổ biến như SQL injection và Cross-Site Scripting (XSS)

Optimization và Performance: Tối ưu hóa hiệu suất của ứng dụng để đảm bảo tải nhanh và hoạt động mượt mà trên các thiết bị và mạng khác nhau

1.3.4 Hosting Domain

Hosting domain là dịch vụ cung cấp không gian lưu trữ trực tuyến cho các tệp và dữ liệu liên quan đến một trang web cụ thể, được lưu trữ trên một tên miền (domain) riêng biệt Điều này cho phép lập trình viên đưa trang web của mình lên Internet để người dùng có thể truy cập nó thông qua việc nhập tên miền vào trình duyệt web Hosting domain cung cấp các tài nguyên cần thiết để duy trì và truy cập trang web , bao gồm không gian lưu trữ, băng thông mạng, và các tính năng bảo mật

Một số dịch vụ hosting domain phổ biến bao gồm shared hosting (hosting chia sẻ), VPS hosting (Virtual Private Server hosting), và dedicated hosting (hosting riêng) Mỗi loại hosting có đặc điểm và mức độ kiểm soát khác nhau, tùy thuộc vào nhu cầu của trang web cụ thể

Tóm lại, hosting domain là dịch vụ cung cấp không gian lưu trữ và tài nguyên cần thiết để đưa trang web của bạn lên Internet để người dùng có thể truy cập thông qua tên miền của bạn

1.4 Mô tả công nghệ , ngôn ngữ lập trình được sử dụng trong hệ thống 1.4.1 Phía FrontEnd - ReactJS

Khái Niệm :

ReactJS là một thư viện chứa nhiều JavaScript mã nguồn mở được Facebook xây dựng và phát triển Thư viện này được sử dụng để tạo ra các ứng dụng trang web hấp dẫn với hiệu quả cao, tốc độ load nhanh và mã tối thiểu Mỗi

Copies for internal use only in Phenikaa University

Trang 26

website sử dụng ReactJS phải chạy nhanh, mượt và có khả năng mở rộng cao, thao tác thực hiện đơn giản

Có thể nói, hầu hết các tính năng hay sức mạnh của ReactJS thường bắt đầu

từ việc tập trung vào các phần riêng lẻ Do đó thay vì làm việc trên toàn bộ ứng dụng của website thì ReactJS lại cho phép các Developer phá vỡ giao diện phức tạp của người dùng trở nên đơn giản hơn nhiều Điều này có nghĩa là các Render

dữ liệu không chỉ được thực hiện ở vị trí server mà còn có thể thực hiện ở vị trí Client khi sử dụng ReactJS

Các thành phần chính của ReactJS:

Một ReactJS bao gồm các thành phần chính dưới đây:

Redux: là một phần cực kỳ quan trọng đối với ReactJS và được sử dụng phổ biến Trong một ReactJS không có các module chuyên dụng để xử lý dữ liệu nên nó được thiết lập một cách độc lập bằng việc chia nhỏ view thành các thành phần khác nhau giúp chúng liên kết chặt chẽ với nhau tốt hơn Sự liên kết và các mối quan hệ giữa các component trong ReactJS cần được quan tâm đặc biệt bởi chỉ có một luồng dữ liệu duy nhất là luồng dữ liệu từ cha sang con Việc sử dụng luồng dữ liệu một chiều này có phần khó khăn đối với những người mới tìm hiểu

sử dụng và ứng dụng vào các đề tài Bên cạnh các mặt hạn chế, ReactJS có thể phát huy được tất cả chức năng cũng như vai trò của mình trong quá trình sử dụng

cơ chế một chiều này Bởi các chức năng của view trở nên phức tạp hơn rất nhiều

Virtual Dom: là một phần quan trọng mà hầu như các framework đều sử dụng nó như một ReactJS Người dùng không cần thao tác trực tiếp trên Dom mà vẫn có thể thấy được view và các thay đổi đó Bởi Virtual Dom đóng vai trò là một model và kiêm cả vai trò là một view nên sự thay đổi một trong hai nhân tố

sẽ kéo theo các nhân tố khác thay đổi Ngược lại, nếu bạn không thao tác trực tiếp trên các phân tử Dom, bạn vẫn có thể thực hiện được các cơ chế Data Binding

Những lợi ích khi sử dụng ReactJS

Copies for internal use only in Phenikaa University

Trang 27

ReactJS mang lại nhiều lợi ích cho người dùng công nghệ hiện nay:

ReactJS tạo ra cho bản thân nó một Dom ảo, nơi các Component được tồn tại trên đó và việc tạo ra Dom giúp cải thiện hiệu suất làm việc tốt hơn Khi bạn cần cập nhật các thông tin lên Dom hoặc thay đổi gì đó, ReactJS đều có thể tính toán trước và thực hiện chúng Nhờ đó mà ReactJS sẽ tránh được các thao tác cần

có trên Dom và không tốn thêm bất cứ hành động nào khác

Việc viết code trở nên dễ dàng hơn bởi nó sử dụng một cú pháp đặc biệt là JSX, cho phép trộn được giữa code HTML và JavaScript Bên cạnh đó người dùng

có thể sử dụng đoạn code này để thêm vào hàm Render mà không cần thực hiện việc nối chuỗi Điều này được đánh giá là một trong những đặc tính mới cực kỳ thú vị của ReactJS Đồng thời, việc chuyển đổi các đoạn HTML thành các hàm khởi động đều được thực hiện từ bộ biến đổi chính là JSX

ReactJS có nhiều công cụ phát triển nhờ cài đặt thêm ứng dụng mở rộng của Chrome chuyên sử dụng cho ReactJS Các lập trình viên có thể debug code một cách dễ dàng hơn, giúp bạn quan sát trực tiếp vào Virtual Dom

Thư viện ReactJS thân thiện với SEO, được sự hỗ trợ từ các Render, trả về

trình duyệt dưới dạng khi bạn chạy ReactJS trên server và Virtual Dom

1.4.2 Phía BackEnd - NodeJS

Khái Niệm:

Node.js là một nền tảng được xây dựng trên JavaScript runtime của Chrome với mục đích xây dựng các ứng dụng mạng nhanh chóng và có thể mở rộng được một cách dễ dàng hơn Node.js sử dụng mô hình I/O lập trình theo sự kiện, non-blocking, do đó node js khá gọn nhẹ và hiệu quả - công cụ hoàn hảo cho các ứng dụng chuyên sâu về dữ liệu theo thời gian thực chạy trên các thiết bị phân tán

Node.js là môi trường runtime mã nguồn mở đa nền tảng, được sử dụng để phát triển các ứng dụng mạng và ứng dụng server-side Các ứng dụng Node.js

Copies for internal use only in Phenikaa University

Trang 28

được viết bằng JavaScript và có thể chạy trong Node.js runtime trên OS X, Microsoft Windows và Linux

Node.js cũng cung cấp một thư viện bao gồm rất nhiều các module JavaScript khác nhau nhằm đơn giản hóa việc phát triển các ứng dụng web, qua

đó giảm thiểu tình trạng sử dụng quá nhiều Node.js

Các tính năng của NodeJS :

Sau đây là một số tính năng quan trọng giúp Node.js trở thành lựa chọn hàng đầu cho các kiến trúc sư phần mềm

Lập trình hướng sự kiện và không đồng bộ: Toàn bộ API trong thư viện Node.js đều không đồng bộ, hay không bị chặn Về cơ bản điều này có nghĩa là một server sử dụng Node.js sẽ không bao giờ chờ một API trả về dữ liệu Server

sẽ chuyển sang API kế tiếp sau khi gọi API đó và cơ chế thông báo của Events trong Nodejs giúp server nhận được phản hồi từ lần gọi API trước

Cực kỳ nhanh chóng: Được xây dựng trên Công cụ JavaScript V8 của Google Chrome, thư viện Node.js có khả năng xử lý mã vô cùng nhanh

Đơn luồng/Single thread nhưng có khả năng mở rộng cao: Node.js sử dụng một mô hình luồng đơn với vòng lặp sự kiện/event Cơ chế event cho phép máy chủ phản hồi non-blocking và cũng cho phép khả năng mở rộng cao hơn so với các server truyền thống hỗ trợ giới hạn các thread để xử lý yêu cầu Node.js sử dụng một chương trình đơn luồng,cùng một chương trình có thể cung cấp dịch vụ cho một số lượng yêu cầu lớn hơn so với các máy chủ truyền thống như Apache HTTP Server

Không có buffer - Các ứng dụng Node.js không có vùng nhớ tạm thời (buffer) cho bất kỳ dữ liệu nào Các ứng dụng này chỉ đơn giản xuất dữ liệu theo khối

Nên và không nên sử dụng Node.js:

Copies for internal use only in Phenikaa University

Trang 29

Nên sử dụng Node js cho những lĩnh vực nào?

Dưới đây là một số lĩnh vực mà Node.js đang cho thấy những đóng góp hết sức quan trọng:

- Các ứng dụng liên quan đến I/O

- Các ứng dụng Data Streaming

- Các ứng dụng dữ liệu chuyên sâu theo thời gian thực (DIRT)

- Các ứng dụng dựa trên API JSON

- Các ứng dụng Single Page

Không nên sử dụng Node js cho những lĩnh vực nào?

Không nên sử dụng Node.js cho các ứng dụng CPU chuyên sâu

Các ưu điểm của Node js

Node.js là một framework nguồn mở được thông qua theo MIT license (Giấy phép MIT là giấy phép phần mềm miễn phí có nguồn gốc tại Viện Công nghệ Massachusetts (MIT).)

Sử dụng JavaScript để xây dựng toàn bộ các ứng dụng server side

Framework gọn nhẹ bao gồm các module tối thiểu Các module khác có thể được thêm theo nhu cầu của từng ứng dụng

Không đồng bộ theo mặc định, nhờ vậy, hoạt động nhanh hơn các framework khác

Framework đa nền tảng chạy trên Windows, MAC hoặc Linux

1.4.3 Hệ quản trị cơ sở dữ liệu - MongoDB

Khái niệm:

Copies for internal use only in Phenikaa University

Trang 30

MongoDB là một hệ thống cơ sở dữ liệu NoSQL mã nguồn mở có kiến trúc hướng tài liệu (document-oriented), được thiết kế để lưu trữ một lượng lớn dữ liệu

và cho phép bạn làm việc với dữ liệu đó một cách hiệu quả Hệ thống cơ sở dữ liệu NoSQL cung cấp một giải pháp thay thế cho cơ sở dữ liệu quan hệ truyền thống sử dụng SQL (Ngôn ngữ truy vấn có cấu trúc) Trong MongoDB, dữ liệu được lưu trữ trong các document sử dụng cấu trúc giống JSON để biểu diễn và tương tác với dữ liệu

Cơ sở dữ liệu MongoDB được phát triển và quản lý bởi MongoDB.Inc, được phát hành lần đầu vào năm 2009 Nó cũng hỗ trợ driver cho tất cả các ngôn ngữ phổ biến như C, C ++, C # và Net, Go, Java, Node.js, Perl, PHP, Python, Motor, Ruby, Scala, Swift, Mongoid Vì vậy, bạn có thể tạo một ứng dụng bằng bất kỳ ngôn ngữ nào trong số này Ngày nay có rất nhiều công ty đã sử dụng MongoDB như Facebook, Nokia, eBay, Adobe, Google, v.v để lưu trữ lượng lớn

dữ liệu của họ

Kiến trúc của cơ sở dữ liệu NoSQL MongoDB :

Database: Hiểu một cách đơn giản, nó có thể được coi là vùng chứa vật lý cho dữ liệu Mỗi database có tập file riêng trên file system với nhiều database hiện

có trên một single MongoDB server

Collection: Một nhóm các database document có thể được gọi là một collection RDBMS tương đương với bộ sưu tập là một table Toàn bộ collection tồn tại trong một single database Không có schema nào khi nói đến các collection Bên trong collection, các document khác nhau có thể có các trường khác nhau nhưng hầu hết các document trong một collection đều có cùng một mục đích hoặc phục vụ cùng một mục tiêu

Document: Một tập hợp các cặp key - value có thể được chỉ định là một document Các document được liên kết với các dynamic schema Lợi ích của dynamic schema là document trong một collection không nhất thiết phải có cùng

Copies for internal use only in Phenikaa University

Trang 31

cấu trúc hoặc các trường Ngoài ra, các trường phổ biến trong document của collection có thể có nhiều loại dữ liệu khác nhau

Ưu điểm của MongoDb:

Đây là các đặc điểm giúp MongoDB trở thành một trong những cơ sở dữ liệu NoSQL tốt nhất:

- Nền tảng dữ liệu phân tán

- Phát triển nhanh, lặp lại

- Mô hình dữ liệu linh hoạt

- Giảm TCO (tổng chi phí sở hữu)

- Cam kết lâu dài

Nhược điểm của MongoDb:

Mặc dù có rất nhiều ưu điểm, nhưng MongoDB cũng có một số hạn chế Tuy nhiên, hầu hết các nhược điểm này đều có thể được khắc phục hoặc cải thiện trong tương lai

Không hỗ trợ join: MongoDB không hỗ trợ join giống như Cơ sở dữ liệu quan hệ Tuy nhiên, ta có thể sử dụng chức năng join bằng mã hóa nó theo cách thủ công, nhưng nó có thể làm chậm quá trình thực thi và ảnh hưởng đến hiệu suất

Sử dụng nhiều bộ nhớ: MongoDB lưu trữ dữ liệu dưới dạng key-value, và

do không hỗ trợ join nên có sự dư thừa dữ liệu, dẫn đến việc tốn bộ nhớ không cần thiết

Data size bị giới hạn: không được phép lưu trữ nhiều hơn 16MB dữ liệu trong document

Nesting trong BSON bị hạn chế: bạn không được phép phân cấp dữ liệu nhiều hơn 100 cấp độ

Copies for internal use only in Phenikaa University

Trang 32

1.4.4 Lý do sử dụng ReactJs , NodeJs , MongoDb để xây dựng hệ thống

ReactJS cho giao diện người dùng (UI):

ReactJS là một thư viện JavaScript phát triển bởi Facebook dành cho việc xây dựng giao diện người dùng (UI) động và tương tác

Lý do chọn ReactJS là vì nó cho phép bạn tạo giao diện người dùng phức tạp một cách dễ dàng và hiệu quả bằng cách sử dụng các thành phần (components) tái sử dụng

Điều này giúp cải thiện trải nghiệm người dùng, làm tăng tốc độ phát triển

và bảo trì , cung cấp khả năng tương tác tốt, ví dụ như lựa chọn sản phẩm, thêm vào giỏ hàng, và thanh toán

Node.js cho phía máy chủ (Server-side):

Node.js là môi trường chạy mã JavaScript phía máy chủ, cho phép phát triển cả phía máy chủ và phía máy khách bằng cùng một ngôn ngữ (JavaScript), tạo tính đồng nhất trong đề tài

Với khả năng xử lý nhiều kết nối đồng thời, Node.js phù hợp cho các ứng dụng web đòi hỏi thời gian thực và tương tác liên tục, như cập nhật giá sản phẩm, quản lý lịch sử giao dịch, và xử lý đặt hàng

Node.js cũng tích hợp tốt với các thư viện và framework phía máy chủ như Express.js để xây dựng RESTful APIs

MongoDB cho quản lý cơ sở dữ liệu:

MongoDB là một hệ quản lý cơ sở dữ liệu NoSQL, phù hợp cho các ứng dụng web có cấu trúc dữ liệu thay đổi nhanh và đòi hỏi linh hoạt

Với cấu trúc dữ liệu dưới dạng tài liệu (document) JSON-like, MongoDB

là lựa chọn tốt cho việc lưu trữ thông tin sản phẩm, lịch sử giao dịch, thông tin người dùng, và dữ liệu liên quan đến đơn hàng

Copies for internal use only in Phenikaa University

Trang 33

MongoDB cung cấp khả năng mở rộng dễ dàng, giúp ứng dụng xử lý tải

cao và mở rộng khi cần

Bởi vậy sự kết hợp của ReactJS, Node.js, và MongoDB cung cấp một giải

pháp phát triển linh hoạt, đồng nhất và hiệu quả cho việc xây dựng một trang web

bán hàng trực tuyến cho cửa hàng đồ may mặc ReactJS và Node.js cho phép phát

triển phía máy khách và máy chủ bằng cùng một ngôn ngữ, giảm sự phức tạp và

tạo hiệu suất tốt MongoDB cung cấp khả năng quản lý dữ liệu một cách linh hoạt

và mở rộng khi cần, giúp đáp ứng các yêu cầu của ứng dụng bán hàng trực tuyến

Copies for internal use only in Phenikaa University

Trang 34

CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 2.1 Phân tích yêu cầu

2.1.1 Yêu cầu từ phía người mua hàng

Giao diện người dùng (UI) hấp dẫn: Trang web cần có giao diện thân thiện

và hấp dẫn với thiết kế đẹp, phù hợp với ngành thời trang và hình ảnh thương hiệu của cửa tìm kiếm sản phẩm dễ dàng, giỏ hàng, thanh toán và theo dõi đơn hàng

Hiển thị thông tin sản phẩm: Mỗi sản phẩm phải có hình ảnh chất lượng cao, mô tả chi tiết, thông tin về chất liệu, kích thước, giá cả và tình trạng sản phẩm

Tích hợp công cụ tìm kiếm và bộ lọc: Cho phép khách hàng dễ dàng tìm kiếm sản phẩm theo các tiêu chí như giá cả, màu sắc, kích thước, thương hiệu

Tài khoản người dùng: Một số khách hàng có thể muốn đăng ký tài khoản

để theo dõi đơn hàng, lịch sử mua sắm, và lưu trữ thông tin cá nhân

Thanh toán trực tuyến an toàn: Tích hợp các phương thức thanh toán trực tuyến an toán như thẻ tín dụng, ví điện tử và chuyển khoản ngân hàng

Phản hồi và đánh giá: Khách hàng muốn đọc đánh giá và phản hồi từ những người đã mua sản phẩm trước đó để họ có thể đưa ra quyết định mua hàng

Hỗ trợ khách hàng: Khách hàng muốn có cách liên hệ với dịch vụ hỗ trợ khách hàng dễ dàng, bao gồm số điện thoại, email, hoặc chat trực tuyến

2.1.2 Yêu cầu từ phía cửa hàng

Quản lý sản phẩm: Hệ thống quản lý sản phẩm phải dễ sử dụng và cho phép cửa hàng thêm, chỉnh sửa và xóa sản phẩm một cách hiệu quả Cần có khả năng tải lên hình ảnh sản phẩm, quản lý mô tả, giá cả, và thông tin liên quan

Quản lý đơn hàng: Cửa hàng cần một hệ thống quản lý đơn hàng để xem và

xử lý đơn hàng mới, theo dõi tình trạng giao hàng và xác nhận thanh toán

Copies for internal use only in Phenikaa University

Trang 35

Quản lý khách hàng: Hệ thống quản lý khách hàng giúp theo dõi thông tin

cá nhân của khách hàng, lịch sử mua sắm và tạo cơ hội tương tác tiếp theo

Bảo mật: Bảo mật thông tin khách hàng và giao dịch là ưu tiên hàng đầu Cần có tích hợp bảo mật như SSL để đảm bảo thông tin cá nhân của khách hàng được bảo vệ

Thống kê và báo cáo: Hệ thống phải cung cấp báo cáo về doanh số bán hàng, tồn kho và hoạt động trang web để cửa hàng có cái nhìn tổng quan về hiệu suất kinh doanh

2.2 Các tác nhân của hệ thống

2.2.1 Khách hàng:

Mỗi khách hàng có thể truy cập và xem thông tin về các sản phẩm quần áo trên trang web Họ có khả năng tìm kiếm sản phẩm theo nhiều tiêu chí như loại sản phẩm, màu sắc, kích thước, giá cả, và thương hiệu.Khách hàng có thể thêm sản phẩm vào giỏ hàng, thực hiện thanh toán, và theo dõi tình trạng đơn hàng.Họ cũng có quyền đăng nhập vào tài khoản cá nhân để quản lý đơn hàng, xem lịch sử mua sắm, và đánh giá sản phẩm Ngoài ra, họ có thể đăng ký nhận thông tin khuyến mãi và cập nhật về sản phẩm mới

2.2.2 Quản trị viên:

Họ có quyền quản lý danh mục sản phẩm, thêm, sửa đổi hoặc xóa sản phẩm

từ cửa hàng.Quản trị viên có khả năng quản lý đơn hàng, xem thông tin đặt hàng

từ khách hàng, xác nhận và xử lý đơn hàng.Họ cũng quản lý nguồn cung ứng sản phẩm, theo dõi tồn kho.Quản trị viên có quyền thực hiện các tác vụ quản trị trên trang web như cập nhật thông tin sản phẩm, quản lý tài khoản khách hàng và cấu hình giao diện trang web

Copies for internal use only in Phenikaa University

Trang 36

- Xem thông tin sản phẩm

- Xem thông tin giỏ hàng

- Thêm bớt sản phẩm trong giỏ hàng

- Thực hiện việc mua hàng

Copies for internal use only in Phenikaa University

Trang 37

- Thống kê , quản lý doanh số bán hàng

Ngoài ra còn một số UseCase được cả khách hàng và nhà quản trị sử dụng khác như:

- Đăng nhập

- Xem thông tin cá nhân

- Sửa đổi thông tin cá nhân

Copies for internal use only in Phenikaa University

Trang 38

2.4.2 Xây dựng biểu đồ UseCase và đặc tả về Use Case

Hình 2.1: Biểu đồ UseCase tổng quan

Hình 2.2 : Nhóm UseCase đăng ký đăng nhập

Copies for internal use only in Phenikaa University

Trang 39

Đặc tả UseCase đăng ký

Bảng 2.2 Đặc tả UseCase đăng ký

Tên Use Case Use Case Đăng ký

Đối tượng sử dụng Admin , User

Mô tả Chức năng đăng ký là chức năng cho phép người dùng hoặc quản

trị viên điền các thông tin để tạo ra một tài khoản xác thực từ đó cho phép quản trị viên và người dùng tham gia vào nền tảng hoặc ứng dụng của bạn

Luồng sự kiện chính 1 Chọn vào mục đăng ký thành viên

2 Form đăng ký được hiển thị

3 Nhập các thông tin cần thiết vào form đăng ký

4 Nhấn nút đăng ký

5 Hệ thống thông báo kết quả quá trình nhập thông tin cá nhân.Nếu thông tin nhập không chính xác thì thực hiện luồng nhánh A1 Nếu nhập chính xác thì thực hiện bước 6

6 Hệ thống cập nhật thông tin của khách xem vào danh sách thành viên

7 Use Case kết thúc

Luồng sự kiện rẽ

nhánh A1

Quá trình nhập thông tin không chính xác

1 Hệ thống thông báo thông tin nhập không chính xác

2 Hệ thống yêu cầu khách xem nhập thông tin lại

3 Nếu khách xem đồng ý thì quay về bước 2 của luồng sự kiện chính, nếu không đồng ý thì Use Case kết thúc

4 Hậu điều kiện: Khách hàng trở thành thành viên của hệ thống

Copies for internal use only in Phenikaa University

Ngày đăng: 17/07/2024, 10:33

HÌNH ẢNH LIÊN QUAN

Hình 2.1: Biểu đồ UseCase tổng quan - xây dựng website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc
Hình 2.1 Biểu đồ UseCase tổng quan (Trang 38)
Bảng 2.3. Đặc tả UseCase đăng nhập - xây dựng website bán hàng trực tuyến ứng dụng cho cửa hàng đồ may mặc
Bảng 2.3. Đặc tả UseCase đăng nhập (Trang 40)
w