Bối cảnh và vấn đề nghiên cứu

Trong nền kinh tế hiện đại, hoạt động mua bán trực tuyến và quản lý cửa hàng đã trở thành một phần thiết yếu đối với các doanh nghiệp bán lẻ. Sự bùng nổ của công nghệ số và thói quen mua sắm trực tuyến ngày càng phổ biến của người tiêu dùng mở ra nhiều cơ hội phát triển cho thị trường thương mại điện tử. Theo phân tích của tác giả, thương mại điện tử mang lại nhiều ưu điểm nổi bật so với mô hình cửa hàng vật lý truyền thống:

  • Hệ thống hoạt động liên tục 24/7, xóa bỏ rào cản về mặt địa lý và thời gian, giúp khách hàng mua sắm mọi lúc mọi nơi và tiết kiệm chi phí, thời gian di chuyển.
  • Doanh nghiệp tối ưu hóa ngân sách và nhân lực nhờ cắt giảm chi phí thuê mặt bằng, chi phí vận hành cửa hàng trực tiếp và giảm số lượng nhân sự cần thiết.
  • Khả năng tiếp cận thị trường rộng lớn, dễ dàng triển khai các chiến dịch quảng cáo trực tuyến hướng tới từng nhóm khách hàng mục tiêu.
  • Thu thập và phân tích dữ liệu mua sắm của khách hàng nhằm thấu hiểu hành vi tiêu dùng, từ đó nâng cao chất lượng dịch vụ và trải nghiệm mua hàng.

Trong bối cảnh cạnh tranh khốc liệt của ngành bán lẻ thiết bị di động, việc không ứng dụng công nghệ vào bán hàng và quản lý sẽ khiến doanh nghiệp tụt hậu. Do đó, đề tài "Xây dựng website bán điện thoại bằng công nghệ MERN Stack" được thực hiện nhằm nắm bắt quy trình vận hành và nghiệp vụ thương mại điện tử thực tế.

Mục tiêu nghiên cứu của đề tài gồm:

  1. Xây dựng và chuẩn hóa các quy trình nghiệp vụ của bài toán bán hàng trực tuyến dựa trên nhu cầu sử dụng thực tế và khảo sát các ứng dụng tương tự.
  2. Xây dựng cơ sở dữ liệu phù hợp với các hành vi và nhu cầu sử dụng trang web của khách hàng.
  3. Vận dụng kiến thức chuyên ngành và các công nghệ phần mềm mới để hoàn thiện ứng dụng theo quy trình phát triển phần mềm chuẩn mực.

Đề cương khóa luận xác định 5 nhiệm vụ cụ thể được đánh số như sau:

  1. Phân tích các yêu cầu hệ thống của một trang web thương mại điện tử.
  2. Thiết kế cơ sở dữ liệu để quản lý sản phẩm, khách hàng, đơn hàng và các đối tượng cùng hoạt động liên quan.
  3. Xây dựng giao diện người dùng thân thiện và dễ sử dụng.
  4. Tích hợp hệ thống thanh toán trực tuyến an toàn và hiệu quả.
  5. Vận dụng kiến thức đã học và kiến thức tự tìm hiểu vào giải quyết bài toán đặt ra trong đề tài.

Về đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Sự kết hợp giữa nền tảng công nghệ phần mềm với kiến thức thực tế về quản lý và xây dựng hệ thống website kinh doanh điện thoại.
  • Phạm vi nghiên cứu: Khảo sát lý thuyết và thực tiễn thị trường bán lẻ điện thoại tại Việt Nam; hành vi của người tiêu dùng trực tuyến; quy trình quản lý cửa hàng và công nghệ phần mềm hiện đại; thời gian thực hiện đề tài từ ngày 19/02/2024 đến ngày 09/07/2024 tại Khoa Công nghệ Thông tin, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.

Cơ sở lý thuyết và phương pháp

Khóa luận áp dụng ngăn xếp công nghệ MERN Stack và dịch vụ đám mây Cloudinary để xây dựng toàn bộ hệ thống:

  • MongoDB: Hệ quản trị cơ sở dữ liệu NoSQL hướng tài liệu (document-oriented), lưu trữ dữ liệu theo định dạng giống JSON. Các ưu điểm được tác giả phân tích gồm cấu trúc phi quan hệ linh hoạt, khả năng mở rộng quy mô theo chiều ngang, hỗ trợ dữ liệu lồng ghép (embedded data) và ngôn ngữ truy vấn phong phú. Nhược điểm được ghi nhận gồm yêu cầu dung lượng RAM lớn do dữ liệu vận hành chủ yếu trên bộ nhớ, thay đổi mặc định chưa ghi xuống đĩa tức thời nên có rủi ro mất dữ liệu khi mất nguồn đột ngột, và thiếu các ràng buộc toàn vẹn nghiêm ngặt cho các mô hình giao dịch đòi hỏi tính chính xác tuyệt đối.
  • Express.js: Khung phát triển ứng dụng web tối giản cho Node.js, cung cấp hệ thống định tuyến (routing) xử lý các phương thức HTTP (GET, POST, PUT, DELETE), cơ chế chuỗi hàm trung gian (middleware) để kiểm soát quyền, ghi log, kiểm tra dữ liệu, hỗ trợ template engine và thiết kế các giao diện lập trình ứng dụng RESTful API.
  • React.js: Thư viện giao diện người dùng do Facebook phát triển, vận hành theo kiến trúc thành phần (component-based) độc lập và tái sử dụng, sử dụng Virtual DOM để tăng tốc độ hiển thị và cú pháp mở rộng JSX kết hợp giữa JavaScript và HTML.
  • Node.js: Môi trường thực thi JavaScript phía máy chủ sử dụng mô hình sự kiện đơn luồng (single-thread) và cơ chế vào/ra không chặn (non-blocking I/O). Ưu điểm gồm hiệu năng cao với các kết nối đồng thời, tính đồng nhất ngôn ngữ JavaScript giữa client và server, kho gói NPM phong phú; nhược điểm gồm nguy cơ quá tải nếu gặp tác vụ nặng về CPU và hiện tượng lồng hàm phức tạp (callback hell).
  • Cloudinary: Dịch vụ đám mây chuyên trách lưu trữ, xử lý và phân phối đa phương tiện (hình ảnh, video), cung cấp API/SDK để cắt ghép, đổi kích thước, tạo ảnh thu nhỏ và phân phối dữ liệu qua mạng phân phối nội dung (CDN).

Về phương pháp nghiên cứu, nhóm tác giả triển khai các phương pháp sau:

  • Khảo sát và đối chuẩn hiện trạng: Phân tích trực tiếp 3 website bán lẻ điện thoại lớn tại Việt Nam gồm Thế Giới Di Động, Di Động Việt và CellphoneS nhằm xác định các điểm chung, tính năng riêng biệt và các điểm yếu kỹ thuật cần khắc phục.
  • Khảo sát người dùng và xây dựng Persona: Thu thập ý kiến thực tế của người dùng, phân tích hành vi và tạo lập 2 chân dung khách hàng điển hình (Persona 1 và Persona 2) để xác định tiêu chí phát triển hệ thống.
  • Mô hình hóa phần mềm: Phân tích yêu cầu và thiết kế hệ thống theo mô hình chuẩn UML gồm lược đồ Use Case tổng quan, lược đồ phân rã theo nhóm, sơ đồ tuần tự (Sequence Diagram), sơ đồ hoạt động (Activity Diagram) và lược đồ quan hệ thực thể (ERD).
  • Nguồn tài liệu tham khảo: 8 tài liệu học thuật và kỹ thuật về MERN Stack, MongoDB, Express.js, ReactJS, Node.js, quy trình CI/CD qua GitHub Actions, cùng đồ án tốt nghiệp khóa trước về hệ thống bán điện thoại đa nền tảng (năm 2022).

Thiết kế và triển khai

Hệ thống được thiết kế theo kiến trúc Client - Server tách biệt:

  • Phía Client sử dụng React.js để hiển thị giao diện và tương tác với người dùng.
  • Phía Server sử dụng Node.js và Express.js để tiếp nhận các yêu cầu HTTP, xử lý logic nghiệp vụ và tương tác với cơ sở dữ liệu MongoDB thông qua các API RESTful.
  • Toàn bộ hình ảnh sản phẩm, danh mục, thương hiệu và banner quảng cáo được tải lên và quản lý tập trung trên nền tảng Cloudinary.

Phân quyền và các nhóm chức năng

Hệ thống xác định 3 tác tử tương tác gồm: Quản trị viên (Admin), Khách hàng (Customer) và Người truy cập chưa đăng nhập (Guest). Tổng cộng 27 chức năng được xây dựng và phân quyền cụ thể:

STT Tên chức năng Quản trị viên Khách hàng Người truy cập
1 Đăng ký tài khoản Không Có Có
2 Đăng nhập hệ thống Có Có Có
3 Quên mật khẩu qua email Có Có Có
4 Đăng xuất Có Có Không
5 Đổi mật khẩu Có Có Không
6 Tìm kiếm sản phẩm theo từ khóa Có Có Có
7 Lọc sản phẩm khi tìm kiếm Có Có Có
8 Xem danh sách sản phẩm Có Có Có
9 Xem chi tiết sản phẩm Có Có Có
10 Thêm sản phẩm vào giỏ hàng Có Có Không
11 Bình luận sản phẩm Có Có Có
12 Mua hàng và thanh toán trực tuyến Có Có Không
13 Tra cứu thông tin bảo hành Có Có Có
14 Tùy chỉnh thông tin cá nhân Có Có Không
15 Theo dõi và xem chi tiết đơn hàng Có Có Không
16 Áp dụng phiếu giảm giá (Voucher) Có Có Không
17 Đánh giá sản phẩm đã mua Có Có Không
18 Quản lý tài khoản người dùng Có Không Không
19 Quản lý sản phẩm Có Không Không
20 Quản lý danh mục sản phẩm Có Không Không
21 Quản lý thương hiệu Có Không Không
22 Quản lý đơn hàng Có Không Không
23 Quản lý bình luận Có Không Không
24 Quản lý banner quảng cáo Có Không Không
25 Quản lý voucher khuyến mãi Có Không Không
26 Quản lý tin tức Có Không Không
27 Xem báo cáo thống kê số liệu Có Không Không

Thiết kế cơ sở dữ liệu

Cơ sở dữ liệu MongoDB của hệ thống bao gồm 13 tập hợp (collection/bảng) chính cùng các đối tượng lồng nhau (embedded schema) để quản lý toàn diện thông tin:

Tên bảng / Tập hợp Cấu trúc đối tượng con lồng nhau Mục đích quản lý
Users - Lưu trữ tài khoản, mật khẩu, họ tên, email, số điện thoại, địa chỉ và phân quyền.
Products Ratings Quản lý thông tin chung của sản phẩm, mô tả, hình ảnh và điểm đánh giá lồng nhau.
ProductVariants Attributes Quản lý các biến thể sản phẩm theo màu sắc, bộ nhớ, đơn giá, tồn kho và thông số kỹ thuật.
Brands - Quản lý thương hiệu, hình ảnh đại diện và liên kết danh mục.
Carts Array Items Lưu trữ giỏ hàng của từng người dùng cùng danh sách sản phẩm và số lượng chọn mua.
Categories - Quản lý danh mục sản phẩm, hình ảnh và nguồn gốc quốc gia.
Comments - Quản lý nội dung bình luận, phản hồi (reply) và liên kết người dùng/sản phẩm.
Orders Array Order Items, Object change Lưu trữ dữ liệu đơn hàng, chi tiết danh mục hàng hóa, trạng thái xử lý và nhật ký đổi trả.
Vouchers - Lưu trữ mã khuyến mãi, phần trăm/giá trị giảm giá và điều kiện áp dụng.
Banners - Quản lý banner hình ảnh quảng cáo hiển thị trên trang chủ và các trang sự kiện.
News - Lưu trữ các bài viết tin tức công nghệ và thông báo của cửa hàng.
Provinces Array province, district, commune Quản lý danh mục địa giới hành chính (tỉnh/thành, quận/huyện, phường/xã) phục vụ giao hàng.
UserAccess - Theo dõi lượt truy cập và phiên làm việc của người dùng trên hệ thống.

Cài đặt và vận hành

Hệ thống được đóng gói và vận hành trên nền tảng máy chủ Node.js. Quá trình cấu hình đòi hỏi thiết lập danh mục các biến môi trường tại máy chủ bao gồm: cấu hình cổng mạng (port), đường dẫn kết nối cơ sở dữ liệu MongoDB URI, các khóa bí mật xác thực JWT, thông tin định danh API Cloudinary (Cloud name, API Key, API Secret) và các thông số kết nối dịch vụ thư điện tử dùng cho luồng xử lý quên mật khẩu.


Nội dung chính theo từng chương

Chương 1. Khảo sát hiện trạng

Chương 1 tập trung đánh giá thực trạng các giải pháp thương mại điện tử chuyên ngành thiết bị di động đang vận hành trên thị trường. Tác giả thực hiện khảo sát chi tiết 3 nền tảng lớn gồm Thế Giới Di Động, Di Động Việt và CellphoneS. Kết quả chỉ ra các điểm chung: cả 3 website đều có năng lực tìm kiếm nhanh, hiển thị sản phẩm nổi bật ngay trang chủ, tương thích tốt với thiết bị di động và tích hợp công cụ tư vấn khách hàng qua Zalo hoặc chat trực tiếp. Về điểm riêng, Thế Giới Di Động và Di Động Việt hỗ trợ đăng nhập qua Google/Facebook; CellphoneS có hệ thống tư vấn tự động kết hợp nhân viên và chính sách bảo hiểm; Di Động Việt tích hợp tin tức và quản lý điểm thưởng.

Phân tích cũng làm rõ nhiều hạn chế phổ biến trên các trang web hiện nay:

  • Đa số hệ thống thiếu hỗ trợ đa ngôn ngữ, gây cản trở cho người dùng nước ngoài.
  • Ràng buộc đăng ký tài khoản bắt buộc để sử dụng một số tiện ích cơ bản.
  • Kênh chat trực tuyến chưa thực sự phổ biến hoặc phản hồi chậm.
  • Thiếu tính năng công khai đánh giá/phản hồi minh bạch từ khách hàng.
  • Thiếu chức năng theo dõi hành trình đơn hàng chi tiết sau khi đặt.
  • Hiệu năng xử lý API ở một số hệ thống còn chậm và chưa phát triển ứng dụng di động riêng biệt.

Dựa trên việc xây dựng 2 chân dung người dùng mẫu (Persona 1 và Persona 2), chương này xác lập danh mục các tiêu chí cần đạt: tối ưu hóa giao diện và tốc độ tải, hoàn thiện tính năng đánh giá minh bạch, tinh gọn quy trình thanh toán và cung cấp công cụ theo dõi đơn hàng sau mua.

Chương 2: Cơ sở lý thuyết

Chương 2 trình bày tổng quan lý thuyết về bộ công nghệ MERN Stack và dịch vụ Cloudinary. Tác giả đi sâu phân tích cơ chế hoạt động của từng thành phần: MongoDB với mô hình lưu trữ tài liệu JSON/BSON không cấu trúc; Express.js với cơ chế định tuyến RESTful và hệ thống middleware; React.js với khái niệm Virtual DOM, phân rã component và cú pháp JSX; Node.js với vòng lặp sự kiện (event loop) đơn luồng và kiến trúc I/O không chặn. Tác giả cũng phân tích chi tiết các tính năng của nền tảng Cloudinary từ việc lưu trữ đám mây, tối ưu hóa ảnh tự động đến khả năng phân phối qua mạng CDN toàn cầu, làm cơ sở lý thuyết vững chắc cho việc thiết kế kiến trúc hệ thống.

Chương 3: Tài liệu mô tả hệ thống chức năng

Chương 3 trình bày chi tiết tài liệu yêu cầu phần mềm và đặc tả hệ thống. Hệ thống được chia tách thành 2 phân hệ lớn là Phân hệ Khách hàng và Phân hệ Quản trị viên, bao gồm 6 nhóm Use Case:

  1. Nhóm Quản lý tài khoản người dùng (Đăng ký, Đăng nhập, Đổi mật khẩu, Quên mật khẩu qua email, Cập nhật thông tin cá nhân).
  2. Nhóm Tìm kiếm và xem sản phẩm (Tìm kiếm theo từ khóa, Lọc sản phẩm theo danh mục/thương hiệu, Xem chi tiết sản phẩm, Xem thông số kỹ thuật).
  3. Nhóm Quản lý giỏ hàng và thanh toán (Thêm vào giỏ, Thay đổi số lượng, Cập nhật thuộc tính biến thể, Xóa sản phẩm, Đặt hàng và thanh toán).
  4. Nhóm Quản lý lịch sử mua hàng (Xem danh sách đơn, Chi tiết đơn, Xác nhận/Hủy đơn, Đổi/Trả hàng, Tra cứu bảo hành, Đánh giá sản phẩm).
  5. Nhóm Tương tác trực tuyến (Bình luận sản phẩm, Phản hồi khách hàng).
  6. Nhóm Quản lý hệ thống (Quản lý người dùng, sản phẩm, danh mục, thương hiệu, đơn hàng, đổi trả, bình luận, voucher, banner, tin tức, tỉnh thành và thống kê doanh thu).

Tác giả xây dựng đầy đủ các bảng quy tắc nghiệp vụ, bảng danh sách xử lý và biểu đồ tuần tự (Sequence Diagram), biểu đồ hoạt động (Activity Diagram) cho 12 nghiệp vụ trọng yếu nhất của hệ thống.

Chương 4: Thiết kế phần mềm

Chương 4 tập trung vào việc hiện thực hóa các yêu cầu chức năng thành các mô hình kỹ thuật. Nội dung chương trình bày sơ đồ kiến trúc tổng thể hệ thống backend và lược đồ thực thể kết hợp (ERD). Cấu trúc dữ liệu được chi tiết hóa thành 13 bảng/collection và 6 đối tượng nhúng đặc thù của cơ sở dữ liệu MongoDB, giải quyết bài toán quản lý quan hệ phức tạp giữa sản phẩm gốc và nhiều biến thể (màu sắc, dung lượng bộ nhớ, đơn giá, số lượng tồn kho) cùng lịch sử biến động trạng thái đơn hàng.

Chương 5: Hướng dẫn cài đặt

Chương 5 cung cấp tài liệu kỹ thuật về quy trình triển khai ứng dụng. Nội dung bao gồm việc hướng dẫn thiết lập danh sách các biến môi trường tại máy chủ, cách thức kết nối hệ thống cơ sở dữ liệu MongoDB, cấu hình dịch vụ lưu trữ đám mây Cloudinary và các câu lệnh khởi chạy hệ thống bằng môi trường Node.js.


Kết quả và đóng góp

Về kết quả đạt được:

  • Xây dựng hoàn chỉnh website thương mại điện tử chuyên doanh điện thoại di động đáp ứng đầy đủ 27 chức năng nghiệp vụ đề ra, bao gồm cả phân hệ người dùng cuối và phân hệ quản trị hệ thống.
  • Hoàn thành đúng tiến độ kế hoạch thực hiện gồm 20 giai đoạn công việc kéo dài từ ngày 18/02/2024 đến ngày 06/07/2024: từ khảo sát yêu cầu, thiết kế kiến trúc/CSDL, phát triển tuần tự các module chức năng (tài khoản, danh mục, sản phẩm, đơn hàng, bình luận, thanh toán, giỏ hàng, tìm kiếm, voucher, banner), đến thu thập phản hồi người dùng và hoàn thiện khóa luận.
  • Thiết kế thành công mô hình cơ sở dữ liệu NoSQL tối ưu trên MongoDB, xử lý hiệu quả bài toán sản phẩm nhiều biến thể kỹ thuật và hệ thống địa giới hành chính 3 cấp (tỉnh, huyện, xã) phục vụ vận chuyển.
  • Thu thập và tổng hợp thành công dữ liệu khảo sát người dùng thực tế với 6 bộ kết quả khảo sát đánh giá về giao diện và chức năng của website sau khi hoàn thiện.

Về đóng góp so với các nghiên cứu và hệ thống hiện hành:

  • Giải quyết được các nhược điểm đã chỉ ra từ khảo sát các trang thương mại điện tử thực tế: bổ sung chức năng tra cứu bảo hành trực tuyến cho khách hàng, tích hợp tính năng theo dõi trạng thái đơn hàng sau mua, và thiết lập hệ thống bình luận, đánh giá minh bạch.
  • Ứng dụng thành công ngăn xếp MERN Stack thuần JavaScript giúp thống nhất ngôn ngữ lập trình xuyên suốt từ client đến server, kết hợp dịch vụ Cloudinary giúp tối ưu hóa hiệu năng lưu trữ và tải hình ảnh trên môi trường web.

Hạn chế và hướng nghiên cứu tiếp

Các hạn chế được ghi nhận từ văn bản khóa luận:

  • Chưa phát triển ứng dụng trên các thiết bị di động (chưa có ứng dụng độc lập trên nền tảng iOS và Android).
  • Chưa xây dựng hệ thống hỗ trợ đa ngôn ngữ cho người dùng quốc tế.
  • Khả năng xử lý API cần tiếp tục được tối ưu hóa nhằm đảm bảo hệ thống vận hành mượt mà hơn khi tải dữ liệu lớn.
  • Cơ chế quản lý dữ liệu trên MongoDB chủ yếu vận hành dựa trên bộ nhớ RAM và mặc định chưa ghi tức thời xuống ổ cứng, tiềm ẩn nguy cơ mất dữ liệu khi xảy ra sự cố gián đoạn nguồn điện đột ngột.

Hướng phát triển tiếp theo của đề tài:

  • Mở rộng xây dựng ứng dụng di động trên nền tảng iOS và Android nhằm đem lại trải nghiệm mua sắm linh hoạt hơn cho khách hàng.
  • Tích hợp thêm tính năng đa ngôn ngữ trên giao diện website.
  • Nâng cấp và tối ưu hóa quy trình xử lý API, cải thiện tốc độ truyền tải dữ liệu.
  • Tiếp tục tinh chỉnh giao diện người dùng và nâng cấp các tính năng dựa trên phản hồi bổ sung từ phía người dùng thực tế.

Giá trị tham khảo

Báo cáo khóa luận là tài liệu tham khảo hữu ích cho các nhóm đối tượng:

  • Sinh viên ngành Công nghệ thông tin và Kỹ thuật phần mềm: Cung cấp tài liệu mẫu về quy trình phát triển một ứng dụng web thương mại điện tử hoàn chỉnh từ bước khảo sát hiện trạng, phân tích nghiệp vụ, mô hình hóa UML đến lập trình thực tế bằng MERN Stack.
  • Lập trình viên và người nghiên cứu MERN Stack: Cung cấp giải pháp thiết kế cơ sở dữ liệu NoSQL cho bài toán sản phẩm có nhiều biến thể (ProductVariants, Attributes) và cách thức tích hợp các dịch vụ bên thứ ba như Cloudinary.
  • Các phần nội dung đáng tham khảo nhất:
    1. Bảng ma trận phân quyền chi tiết cho 27 chức năng hệ thống.
    2. Hệ thống đặc tả use case, sơ đồ tuần tự và sơ đồ hoạt động của các luồng nghiệp vụ phức tạp (Mua hàng - thanh toán, Tra cứu bảo hành, Quản lý biến thể sản phẩm).
    3. Bản kế hoạch triển khai dự án mẫu gồm 20 giai đoạn chi tiết từ chuẩn bị đến nghiệm thu.

Câu hỏi thường gặp

1. Khóa luận đã tiến hành khảo sát những website bán điện thoại thực tế nào và phát hiện những điểm chung gì?
Tác giả đã tiến hành khảo sát hiện trạng tại 3 trang web kinh doanh điện thoại lớn tại Việt Nam gồm Thế Giới Di Động, Di Động Việt và CellphoneS. Điểm chung được ghi nhận là cả 3 hệ thống đều cung cấp khả năng tìm kiếm sản phẩm hiệu quả, hiển thị sản phẩm nổi bật ngay trang chủ, giao diện tương thích tốt với thiết bị di động và đều tích hợp tính năng chat trực tuyến để tư vấn khách hàng (qua Zalo hoặc cửa sổ chat trên web).

2. Hệ thống được phân chia thành bao nhiêu vai trò tác tử và có tổng cộng bao nhiêu chức năng?
Hệ thống xác định 3 tác tử tương tác gồm: Quản trị viên, Khách hàng và Người truy cập vãng lai. Toàn bộ hệ thống có tổng cộng 27 chức năng được phân thành 6 nhóm Use Case lớn. Trong đó, Quản trị viên có toàn quyền kiểm soát các chức năng quản lý hệ thống (người dùng, danh mục, sản phẩm, đơn hàng, voucher, tin tức, thống kê), còn Khách hàng thực hiện các nghiệp vụ mua sắm, thanh toán, theo dõi đơn hàng, đánh giá, bình luận và tra cứu bảo hành.

3. Cơ sở dữ liệu của dự án được tổ chức như thế nào để quản lý các dòng điện thoại có nhiều phiên bản màu sắc và dung lượng khác nhau?
Nhóm tác giả thiết kế tách biệt bảng Products (chứa thông tin tổng quan, mô tả, danh mục và đối tượng lồng nhau Ratings) và bảng ProductVariants (quản lý chi tiết từng biến thể). Mỗi biến thể liên kết với một sản phẩm gốc và chứa đối tượng nhúng Attributes để quản lý cụ thể các thuộc tính như màu sắc, dung lượng bộ nhớ, đơn giá và số lượng tồn kho tương ứng.

4. Dịch vụ Cloudinary đóng vai trò gì trong kiến trúc kỹ thuật của đồ án?
Cloudinary là dịch vụ đám mây được sử dụng để quản lý và lưu trữ tập trung toàn bộ tài nguyên hình ảnh của trang web (ảnh sản phẩm, danh mục, thương hiệu, banner quảng cáo). Nền tảng này hỗ trợ cắt, xoay, thay đổi kích thước, tạo ảnh thu nhỏ tự động và tối ưu hóa việc phân phối hình ảnh thông qua mạng CDN toàn cầu, giúp giảm tải dung lượng lưu trữ cho máy chủ và tăng tốc độ tải trang.

5. Đề tài được thực hiện trong khoảng thời gian nào và tiến độ được phân bổ ra sao?
Đề tài được thực hiện từ ngày 19/02/2024 đến ngày 09/07/2024 với kế hoạch phân bổ gồm 20 tuần/giai đoạn cụ thể (bắt đầu từ 18/02/2024 đến 06/07/2024). Các giai đoạn trải dài từ khảo sát yêu cầu, thiết kế CSDL (tuần 1-2), xây dựng tuần tự các chức năng quản lý và nghiệp vụ thương mại điện tử (tuần 3-15), thu thập phản hồi và chỉnh sửa (tuần 16-17), đến viết báo cáo và hoàn thiện tài liệu khóa luận cuối cùng (tuần 18-20).


Kết luận

Khóa luận tốt nghiệp của sinh viên Lê Quang Dương và Nguyễn Duy Nguyễn (ngành Công nghệ Thông tin, Đại học Sư phạm Kỹ thuật TP.HCM) đã hoàn thành trọn vẹn mục tiêu xây dựng một website bán điện thoại di động trực tuyến dựa trên bộ công nghệ MERN Stack và dịch vụ Cloudinary. Đề tài đã giải quyết được các yêu cầu thực tế về quản lý danh mục, biến thể sản phẩm, giỏ hàng, thanh toán và xử lý đơn hàng, đồng thời bổ sung các tính năng nâng cao như tra cứu bảo hành và theo dõi trạng thái giao hàng. Toàn bộ quá trình phân tích, thiết kế cơ sở dữ liệu và triển khai phần mềm được trình bày hệ thống, bám sát các phương pháp kỹ thuật phần mềm chuẩn mực. Sản phẩm đạt được cung cấp nguồn tư liệu tham khảo thực tiễn và có giá trị chuyên môn cao cho việc xây dựng các ứng dụng thương mại điện tử hiện đại.