Bối cảnh và vấn đề nghiên cứu
Sự phát triển của khoa học công nghệ, đặc biệt là công nghệ thông tin và mạng Internet, đã làm thay đổi hành vi tiêu dùng và phương thức vận hành thương mại trên phạm vi toàn cầu cũng như tại Việt Nam. Nhu cầu mua sắm trực tuyến ngày càng gia tăng, tạo động lực cho các doanh nghiệp chuyển dịch mô hình kinh doanh từ truyền thống sang thương mại điện tử nhằm mở rộng thị trường, tối ưu hóa chi phí vận hành và tăng doanh thu. Tuy nhiên, theo ghi nhận của tác giả trong đồ án tốt nghiệp, hoạt động mua bán trực tuyến vẫn đối mặt với bốn rào cản và quan ngại lớn từ phía người tiêu dùng:
- Nỗi lo ngại về chất lượng thực tế của sản phẩm khi giao dịch từ xa.
- Sự bất an về việc hàng hóa không được vận chuyển an toàn hoặc không đến được tay người nhận.
- Rủi ro liên quan đến tính bảo mật thông tin cá nhân của khách hàng trên hệ thống website thương mại điện tử.
- Mối lo ngại về mức độ an toàn và bảo mật của hạ tầng thanh toán trực tuyến.
Ngược lại, mô hình kinh doanh trên nền tảng web đem lại những lợi ích thiết thực so với phương thức bán hàng truyền thống, bao gồm: khả năng quảng bá thông tin và tiếp thị thị trường toàn cầu với chi phí thấp; cung cấp dịch vụ xuyên suốt 24/7/365; tiết kiệm đáng kể chi phí xuất bản ấn phẩm và chi phí mua vị trí quảng cáo; nâng cao hình ảnh thương hiệu và thiết lập lợi thế cạnh tranh cho doanh nghiệp.
Xuất phát từ thực tiễn trên, tác giả Dương Sơn Bá (sinh viên lớp 19I2, Khoa Khoa học Máy tính, Trường Đại học Công nghệ Thông tin & Truyền thông Việt – Hàn, dưới sự hướng dẫn của TS. Lê Thị Thu Nga) đã thực hiện đề tài tốt nghiệp: "Xây dựng Website bán Điện Thoại và Tablet".
Mục tiêu và nhiệm vụ nghiên cứu của đề tài được xác định cụ thể như sau:
- Nghiên cứu cơ sở lý thuyết và công nghệ nền tảng phục vụ phát triển ứng dụng web và di động hiện đại (Node.js, Express.js, Tailwind CSS, MongoDB, React Native).
- Khảo sát và phân tích yêu cầu nghiệp vụ của hệ thống thương mại điện tử chuyên doanh điện thoại và máy tính bảng; xây dựng mô hình hóa quy trình hoạt động, biểu đồ ca sử dụng (Use Case), biểu đồ trình tự (Sequence Diagram) và cấu trúc dữ liệu NoSQL tương ứng.
- Hiện thực hóa website bán hàng cho phép khách hàng tra cứu, lọc thông tin, đặt hàng, tương tác tư vấn trực tuyến; đồng thời cung cấp giao diện quản trị giúp ban điều hành theo dõi sản phẩm, người dùng và đơn hàng.
- Triển khai thử nghiệm hệ thống trên môi trường máy cục bộ (localhost) và môi trường máy chủ trực tuyến (hosting Vercel), cùng với việc phát triển ứng dụng di động hỗ trợ trên thiết bị cá nhân.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Quy trình quản lý, kinh doanh trực tuyến các mặt hàng công nghệ (điện thoại di động, máy tính bảng); kiến trúc phần mềm hướng dịch vụ web mã nguồn mở và cơ sở dữ liệu phi quan hệ.
- Phạm vi không gian: Triển khai thử nghiệm tại Trường Đại học Công nghệ Thông tin & Truyền thông Việt – Hàn; đưa lên môi trường mạng Internet công cộng thông qua nền tảng đám mây Vercel.
- Phạm vi thời gian: Đồ án được hoàn thành và bảo vệ vào tháng 11 năm 2021.
Cơ sở lý thuyết và phương pháp
Để xây dựng hệ thống website thương mại điện tử hoàn chỉnh, tác giả đã tiếp cận nghiên cứu và lựa chọn các công nghệ, công cụ mã nguồn mở dựa trên ngôn ngữ lập trình JavaScript/TypeScript và kiến trúc cơ sở dữ liệu hướng tài liệu.
Khung công nghệ và nền tảng sử dụng
Hệ thống được phát triển dựa trên tập hợp các công nghệ sau:
| STT |
Công nghệ / Nền tảng |
Vai trò trong hệ thống |
Đặc tính kỹ thuật chính |
| 1 |
Node.js |
Môi trường thực thi phía Server (Backend) |
Dựa trên V8 JavaScript Engine của Google Chrome; cơ chế lập trình hướng sự kiện, mô hình I/O non-blocking đơn luồng (single-thread); tối ưu bộ nhớ RAM, xử lý đồng thời nhiều truy vấn không cần bộ nhớ đệm (no buffer), giấy phép mã nguồn mở MIT. |
| 2 |
Express.js |
Web Framework cho Node.js |
Hỗ trợ định tuyến (routing) linh hoạt theo các phương thức HTTP và URL; cung cấp các lớp trung gian (middleware) để xử lý yêu cầu và trả về phản hồi; hỗ trợ xây dựng giao diện lập trình ứng dụng (API). |
| 3 |
Tailwind CSS |
CSS Framework cho giao diện (Frontend) |
Framework hướng tiện ích (utility-first); không cung cấp component dựng sẵn như Bootstrap mà sử dụng các class riêng biệt giúp kiểm soát kích thước CSS, loại bỏ mã thừa, tăng tốc độ tải trang và linh hoạt tùy biến. |
| 4 |
MongoDB |
Hệ quản trị cơ sở dữ liệu NoSQL |
Lưu trữ dữ liệu dạng tài liệu (Document) theo cấu trúc JSON/BSON linh hoạt; không ràng buộc khóa chính/khóa ngoại chặt chẽ như RDBMS truyền thống; truy vấn nhanh nhờ cơ chế đánh chỉ mục tự động trên trường _id và lưu đệm trên RAM. |
| 5 |
React Native |
Framework phát triển ứng dụng di động |
Khung phát triển đa nền tảng mã nguồn mở do Facebook phát triển; sử dụng JavaScript để xây dựng ứng dụng chạy đồng thời trên iOS và Android với hiệu năng tương đương mã gốc (native performance). |
| 6 |
WebSocket |
Giao thức truyền thông |
Thiết lập kênh giao tiếp hai chiều thời gian thực phục vụ tính năng trò chuyện và tư vấn giữa khách hàng và quản trị viên. |
Phương pháp nghiên cứu và nguồn dữ liệu
Tác giả áp dụng các phương pháp kỹ thuật phần mềm chuyên ngành:
- Phương pháp phân tích và thiết kế hệ thống: Sử dụng ngôn ngữ mô hình hóa thống nhất (UML) để xây dựng biểu đồ ca sử dụng tổng quát và chi tiết cho từng tác nhân; thiết kế các biểu đồ trình tự thể hiện luồng dữ liệu của các tác vụ trọng yếu (thêm giỏ hàng, đặt hàng, nhắn tin tư vấn).
- Phương pháp thiết kế cơ sở dữ liệu hướng tài liệu: Thiết kế lược đồ collection và quan hệ logic giữa các tập dữ liệu phục vụ thương mại điện tử trong MongoDB.
- Nguồn dữ liệu: Dữ liệu thông số kỹ thuật, hình ảnh, phân loại và giá bán thực tế của các dòng điện thoại, máy tính bảng được thiết lập trong cơ sở dữ liệu thử nghiệm của đề tài.
Thiết kế và triển khai hệ thống
Phân tích yêu cầu chức năng và giao diện
Hệ thống được thiết kế với giao diện mang phong cách tối giản, hiện đại, trực quan với hai tông màu chủ đạo: màu trắng (#fff) và màu xanh ngọc (#06c1d4). Các chức năng được phân cấp cụ thể cho 3 nhóm tác nhân chính:
- Khách hàng tiềm năng (Free User / Khách vãng lai): Người dùng chưa tạo tài khoản; có quyền xem danh mục sản phẩm, cấu hình chi tiết, giá bán, tình trạng hàng hóa, tìm kiếm - lọc sản phẩm, xem bài viết tin tức và tiến hành đăng ký tài khoản.
- Khách hàng thành viên (Customer): Người dùng đã đăng ký và đăng nhập thành công vào hệ thống. Các nghiệp vụ được phép thực hiện gồm:
- Đăng ký/Đăng nhập: Yêu cầu số điện thoại gồm 10 chữ số (mỗi số điện thoại chỉ gắn với một tài khoản duy nhất), mật khẩu từ 8 ký tự trở lên. Mật khẩu được mã hóa trước khi lưu vào cơ sở dữ liệu. Sau khi đăng nhập đúng, hệ thống trả về mã xác thực
access token để phục vụ các yêu cầu API. Khi đăng xuất, mã access token sẽ bị vô hiệu hóa/xóa bỏ.
- Quản lý giỏ hàng và đặt hàng: Thêm, bớt, cập nhật số lượng hoặc xóa sản phẩm trong giỏ hàng. Khi đặt hàng, hệ thống kiểm tra tồn kho trong cơ sở dữ liệu; nếu còn hàng thì tạo đơn đặt hàng và làm trống giỏ hàng ảo.
- Tương tác và hỗ trợ: Gửi đánh giá (chấm sao và viết nhận xét), gửi bình luận sản phẩm, và sử dụng khung chat thời gian thực qua giao thức WebSocket để nhận tư vấn trực tiếp từ ban quản trị.
- Quản trị viên (Admin): Đăng nhập vào bảng điều khiển quản trị bằng tài khoản chuyên biệt; quản lý danh mục thương hiệu và nhóm sản phẩm; thêm, sửa, xóa sản phẩm, điều chỉnh giá bán và giá khuyến mại; quản lý tài khoản người dùng; xuất bản bài viết tin tức; trả lời bình luận của khách hàng; theo dõi thống kê và trực tiếp hỗ trợ giải đáp thắc mắc qua tin nhắn.
Thiết kế cơ sở dữ liệu
Cơ sở dữ liệu MongoDB của hệ thống bao gồm 13 collection chính, lưu trữ các thực thể nghiệp vụ:
| Tên Collection |
Khóa chính / Trường liên kết |
Các trường dữ liệu chính |
Chức năng lưu trữ |
| Brand |
_id (ObjectId) |
BrandName (String), BrandImage (String) |
Thương hiệu sản phẩm |
| GroupProduct |
_id (ObjectId), Id_Brand (ObjectId) |
GroupName (String) |
Nhóm sản phẩm trực thuộc thương hiệu |
| Product |
_id (ObjectId) |
ProductName, DisplayImage, Processor, Ram, Memory, FrontCamera, BackCamera, OperatingSystem (String); Price, Quantity (Number) |
Thông số chi tiết, cấu hình phần cứng, số lượng kho và giá bán sản phẩm |
| User |
_id (ObjectId) |
PhoneNumber, Password, Avatar, Name, Address (String) |
Hồ sơ thông tin cá nhân và tài khoản khách hàng |
| Cart |
_id (ObjectId), Id_Product, Id_User (ObjectId) |
Amount (Number) |
Dữ liệu giỏ hàng của từng khách hàng |
| Evalute |
_id (ObjectId), Id_Product, Id_User (ObjectId) |
Star (Number), Content (String), Time (Date) |
Số sao đánh giá và phản hồi của người dùng |
| Comment |
_id (ObjectId), Id_Product, Id_User (ObjectId) |
Content (String), Time (Date) |
Bình luận công khai dưới sản phẩm |
| ReplyComment |
_id (ObjectId), Id_Comment, Id_User (ObjectId) |
Content (String), Time (Date) |
Phản hồi lại các bình luận |
| Post |
_id (ObjectId) |
ThumbImgae, Title, Content (String), CreatedAt (Date) |
Bài viết tin tức trên trang web |
| Admin |
_id (ObjectId) |
Avatar, DisplayName, UserName, PassWord (String), CreatedAt (Date) |
Tài khoản phân quyền quản trị hệ thống |
| Message |
_id (ObjectId), Id_User (String) |
MessageContent, Role (String), Time (Date) |
Lịch sử tin nhắn trò chuyện tư vấn trực tuyến |
| ShopingHistory |
_id (ObjectId), Id_User (String) |
Name, Address, Status (String), TotalMoney (Number), Time (Date) |
Thông tin chung của đơn hàng đã đặt |
| ProductShopingHistory |
_id (ObjectId), Id_ShopingHistory, Id_Product (String) |
Price, PriceSale, Amount (Number) |
Chi tiết các mặt hàng và đơn giá trong đơn hàng đã mua |
Triển khai hệ thống
Hệ thống được tác giả thiết lập và kiểm thử trên hai môi trường:
- Môi trường máy cục bộ (Localhost): Khởi chạy thông qua lệnh dòng lệnh
npm run dev tại thư mục gốc mã nguồn. Môi trường này mang lại ưu điểm tốc độ xử lý nhanh, không phụ thuộc đường truyền mạng, tuy nhiên chỉ có thể truy cập nội bộ.
- Môi trường máy chủ đám mây (Hosting Vercel): Triển khai gói dịch vụ miễn phí trên Vercel để phục vụ truy cập diện rộng qua Internet:
- Trang dành cho khách hàng:
https://do-an-phonex-client.app
- Trang dành cho quản trị viên:
https://do-an-phonex-admin.app (Tài khoản mặc định: admin, mật khẩu: 12345678).
- Đặc điểm kỹ thuật ghi nhận: Do sử dụng gói dịch vụ miễn phí, ứng dụng sẽ tự động rơi vào trạng thái ngủ (tắt) nếu sau 30 phút không có lượt truy cập. Khi truy cập lại lần đầu tiên sẽ phát sinh lỗi khởi động; người dùng cần chờ khoảng 3 phút để hệ thống đánh thức và hoạt động bình thường.
- Ứng dụng di động (Mobile App): Do điều kiện và năng lực kỹ thuật trong giai đoạn làm đồ án có hạn, ứng dụng React Native chỉ được triển khai và chạy thử nghiệm trực tiếp trên thiết bị điện thoại cá nhân của tác giả.
Nội dung chính theo từng chương
CÔNG CỤ CÔNG NGHỆ SỬ DỤNG
Chương này tập trung trình bày tổng quan lý thuyết, ưu nhược điểm và cơ chế hoạt động của các công nghệ cấu thành giải pháp. Tác giả đi sâu vào cơ chế non-blocking I/O và vòng lặp sự kiện (event loop) của Node.js; cách thức khởi tạo máy chủ HTTP đơn giản; các lệnh cài đặt và ví dụ thiết lập lớp trung gian điều hướng với Express.js (npm install express). Đồng thời, tác giả so sánh sự khác biệt căn bản giữa framework giao diện Tailwind CSS và Bootstrap, làm rõ lợi thế của việc sử dụng các class tiện ích độc lập. Về tầng cơ sở dữ liệu, chương làm rõ cấu trúc tài liệu NoSQL của MongoDB, đối chiếu tập lệnh thao tác CRUD giữa ngôn ngữ SQL truyền thống và MongoDB (các lệnh: use test;, db.insert(), db.update(), db.remove(), db.find()), cùng các kiểu dữ liệu hỗ trợ (String, Number, Boolean, Double, Array, Object, Timestamp, Date, Binary data, ObjectId). Cuối cùng, tác giả giới thiệu về framework React Native với khả năng tái sử dụng mã nguồn cho cả hai nền tảng Android và iOS.
PHÂN TÍCH MÔ HÌNH HỆ THỐNG
Nội dung chương 2 là phần trọng tâm về thiết kế kỹ thuật của đồ án. Tác giả phân tích cụ thể các yêu cầu chức năng nghiệp vụ, xác lập 3 nhóm tác nhân (khách hàng tiềm năng, khách hàng thành viên, quản trị viên) và xây dựng hệ thống biểu đồ ca sử dụng từ mức tổng quát đến chi tiết (đăng ký, giỏ hàng, đặt hàng, bình luận, đánh giá, trò chuyện tư vấn). Mô hình hóa 5 bước của quy trình mua hàng tại cửa hàng trực tuyến được đặc tả chi tiết. Tác giả cũng xây dựng các biểu đồ trình tự (Sequence Diagram) mô tả luồng gửi nhận gói tin giữa trình duyệt, máy chủ và cơ sở dữ liệu khi người dùng thao tác thêm sản phẩm vào giỏ hàng, xác nhận đặt hàng và nhắn tin tư vấn trực tuyến qua WebSocket. Phần cuối chương là việc đặc tả chi tiết cấu trúc bảng dữ liệu cho 13 collection MongoDB kèm theo sơ đồ biểu diễn mối quan hệ logic giữa các thực thể.
TRIỂN KHAI HỆ THỐNG
Chương 3 trình bày các bước cài đặt, vận hành thử nghiệm và triển khai sản phẩm phần mềm. Tác giả hướng dẫn chi tiết quy trình chạy hệ thống tại môi trường phát triển cục bộ và các bước xuất bản lên nền tảng đám mây Vercel (đăng ký tài khoản, khởi tạo dự án, tải mã nguồn lên host, liên kết tên miền). Các đường dẫn trang người dùng, trang quản trị cùng thông tin tài khoản đăng nhập quản trị viên được công bố. Tác giả nêu rõ các hạn chế vận hành thực tế của gói hosting miễn phí (độ trễ tải trang ban đầu, cơ chế ngắt dịch vụ sau 30 phút không hoạt động). Đồng thời, đồ án thể hiện các hình ảnh chụp giao diện hoàn thiện của website: trang chủ, trang chi tiết sản phẩm, chức năng tìm kiếm, đánh giá, bình luận, xem lịch sử đơn hàng, khung trò chuyện tư vấn và các màn hình quản trị nghiệp vụ.
Kết quả và đóng góp
Kết quả kỹ thuật đạt được
- Hoàn thiện website bán hàng đa chức năng:
- Xây dựng thành công giao diện người dùng theo phong cách tối giản với tông màu trắng (
#fff) và xanh ngọc (#06c1d4), hỗ trợ đầy đủ các tính năng duyệt sản phẩm, lọc theo giá (tăng/giảm), phân loại theo thương hiệu, cấu hình và danh mục.
- Hiện thực hóa cơ chế quản lý phiên làm việc thông qua mã xác thực
access token, mã hóa mật khẩu người dùng và kiểm soát chặt chẽ quy tắc đăng ký (số điện thoại 10 số, mật khẩu từ 8 ký tự).
- Tích hợp thành công chức năng giao tiếp thời gian thực giữa khách hàng và quản trị viên nhờ công nghệ WebSocket.
- Xây dựng hoàn chỉnh hệ thống quản trị nội dung (CMS) cho phép quản trị viên thêm mới, sửa, xóa sản phẩm, điều chỉnh giá khuyến mại, duyệt bài viết, kiểm soát tài khoản người dùng và phản hồi bình luận.
- Thiết kế cấu trúc dữ liệu NoSQL đồng bộ:
- Xây dựng hoàn chỉnh 13 collection trong MongoDB với các trường dữ liệu được định kiểu rõ ràng, bảo đảm liên kết logic phục vụ đầy đủ vòng đời của một đơn hàng trực tuyến.
- Triển khai thực tế trên môi trường mạng:
- Đưa hệ thống lên môi trường trực tuyến thông qua hosting Vercel với hai phân hệ độc lập: trang người dùng (
https://do-an-phonex-client.app) và trang quản trị (https://do-an-phonex-admin.app).
Đóng góp của đề tài
Theo tự đánh giá của tác giả trong đồ án, công trình mang lại các đóng góp thiết thực:
- Minh chứng tính khả thi của việc kết hợp ngăn xếp công nghệ JavaScript hiện đại (Node.js, Express.js, Tailwind CSS, MongoDB) trong việc xây dựng một hệ sinh thái thương mại điện tử chuyên ngành thiết bị di động với hiệu năng tốt và chi phí đầu tư hạ tầng thấp.
- Đề xuất được giải pháp quản trị hoạt động kinh doanh trực tuyến trực quan cho chủ cửa hàng, giúp kết nối khách hàng với dịch vụ một cách nhanh chóng và tiện lợi.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của hệ thống
Các hạn chế được tác giả thẳng thắn thừa nhận trong văn bản báo cáo gồm:
- Hạ tầng máy chủ phụ thuộc gói miễn phí: Việc triển khai trên nền tảng Vercel với gói dịch vụ miễn phí dẫn đến hiện tượng máy chủ tự ngắt sau 30 phút không phát sinh truy vấn. Người dùng truy cập lần đầu phải đối mặt với tình trạng báo lỗi và cần thời gian chờ khoảng 3 phút để hệ thống khởi động lại; tốc độ tải trang chịu ảnh hưởng bởi đường truyền mạng công cộng.
- Phạm vi triển khai ứng dụng di động còn hẹp: Do hạn chế về mặt năng lực và thời gian thực hiện của sinh viên, phân hệ ứng dụng di động viết bằng React Native chưa thể xuất bản lên các kho ứng dụng (Google Play, App Store) mà mới chỉ dừng lại ở mức chạy thử nghiệm nội bộ trên thiết bị điện thoại cá nhân của tác giả.
- Báo cáo còn một số thiếu sót: Như lời cảm ơn tác giả đã nêu, do hạn chế về kinh nghiệm thực tế của sinh viên nên đồ án khó tránh khỏi những điểm chưa hoàn thiện về mặt tối ưu hóa hệ thống.
Hướng phát triển
Dựa trên cấu trúc mục lục và các nội dung định hướng được đề cập trong đồ án:
- Nâng cấp gói hạ tầng máy chủ thương mại hoặc cấu hình máy chủ riêng để đảm bảo tính sẵn sàng cao, duy trì trạng thái hoạt động liên tục 24/7 và cải thiện tốc độ phản hồi.
- Tiếp tục hoàn thiện mã nguồn ứng dụng di động React Native, tiến hành đóng gói và triển khai chính thức trên các nền tảng hệ điều hành di động phổ biến.
- Mở rộng các tính năng nghiệp vụ thanh toán trực tuyến nâng cao và tối ưu hóa hệ thống bảo mật thông tin giao dịch.
Giá trị tham khảo
Đồ án tốt nghiệp của tác giả Dương Sơn Bá mang lại giá trị tham khảo chuyên môn rõ ràng cho các nhóm đối tượng sau:
- Sinh viên ngành Công nghệ thông tin, Khoa học máy tính, Kỹ thuật phần mềm: Đồ án là tài liệu tham khảo cụ thể về cách tổ chức báo cáo tốt nghiệp kỹ thuật, từ bước khảo sát yêu cầu, mô hình hóa nghiệp vụ (UML Use Case, Sequence Diagram) cho đến thiết kế cơ sở dữ liệu NoSQL.
- Người nghiên cứu và phát triển ứng dụng web Full-stack: Cung cấp tài liệu thực hành về việc áp dụng Node.js kết hợp Express.js và MongoDB, phương pháp xây dựng giao diện bằng Tailwind CSS, và giải pháp tích hợp giao thức WebSocket vào bài toán tư vấn trực tuyến.
- Nội dung đáng tham khảo nhất:
- Phần thiết kế cơ sở dữ liệu (Chương 2): Bảng đặc tả chi tiết 13 collection của hệ thống bán hàng điện tử, phản ánh đầy đủ các quan hệ từ tài khoản, sản phẩm, giỏ hàng, bài viết đến tin nhắn tư vấn và lịch sử mua hàng.
- Quy trình và đặc tả biểu đồ tuần tự (Sequence Diagram): Luồng dữ liệu rõ ràng cho các nghiệp vụ thêm giỏ hàng, kiểm tra hàng tồn khi đặt hàng và cơ chế truyền nhận tin nhắn thời gian thực.
Câu hỏi thường gặp
1. Hệ thống quy định điều kiện đăng ký tài khoản khách hàng mới như thế nào?
Người dùng đăng ký bắt buộc phải nhập số điện thoại gồm chính xác 10 chữ số (mỗi số điện thoại chỉ được đăng ký một tài khoản duy nhất), mật khẩu có độ dài từ 8 ký tự trở lên và mật khẩu xác nhận phải khớp hoàn toàn. Khi dữ liệu hợp lệ, máy chủ sẽ tiến hành mã hóa mật khẩu trước khi lưu trữ vào cơ sở dữ liệu MongoDB.
2. Cơ chế xác thực sau khi người dùng đăng nhập thành công diễn ra ra sao?
Khi người dùng nhập đúng số điện thoại và mật khẩu, hệ thống sẽ khởi tạo một mã xác thực access token gửi về cho trình duyệt. Mã access token này được sử dụng để xác thực danh tính trong các lần gọi API tiếp theo của hệ thống. Khi người dùng thực hiện thao tác đăng xuất, hệ thống sẽ xóa bỏ access token, vô hiệu hóa quyền truy cập vào các chức năng yêu cầu xác thực.
3. Bảng cơ sở dữ liệu nào trong hệ thống quản lý chi tiết cấu hình phần cứng của thiết bị?
Bảng Product quản lý toàn bộ cấu hình phần cứng của sản phẩm, bao gồm các trường: vi xử lý (Processor), bộ nhớ RAM (Ram), bộ nhớ lưu trữ (Memory), camera trước (FrontCamera), camera sau (BackCamera), hệ điều hành (OperatingSystem), cùng với giá bán (Price), số lượng trong kho (Quantity) và đường dẫn ảnh đại diện (DisplayImage).
4. Tại sao website triển khai trên hosting Vercel gặp tình trạng lỗi khi truy cập lần đầu?
Do tác giả sử dụng gói hosting Vercel miễn phí, hệ thống sẽ tự động tắt sau 30 phút nếu không có người truy cập nhằm tiết kiệm tài nguyên. Do đó, người dùng mở trang lần đầu sau khoảng nghỉ sẽ gặp lỗi máy chủ chưa sẵn sàng; hệ thống cần khoảng 3 phút để kích hoạt lại dịch vụ trước khi vận hành bình thường.
5. Giải pháp công nghệ nào được sử dụng để xây dựng tính năng trò chuyện tư vấn trực tuyến giữa khách hàng và quản trị viên?
Hệ thống sử dụng giao thức truyền thông WebSocket kết hợp với collection Message trong cơ sở dữ liệu MongoDB (lưu trữ các trường: Id_User, MessageContent, Time, Role) để truyền tải và lưu trữ tin nhắn theo thời gian thực hai chiều giữa người dùng và quản trị viên.
Kết luận
Báo cáo đồ án tốt nghiệp "Xây dựng Website bán Điện Thoại và Tablet" của sinh viên Dương Sơn Bá đã hoàn thành mục tiêu nghiên cứu và ứng dụng ngăn xếp công nghệ JavaScript hiện đại vào bài toán thương mại điện tử chuyên ngành thiết bị số. Công trình cung cấp giải pháp thiết kế toàn diện từ phân tích yêu cầu, xây dựng 13 collection dữ liệu trên nền tảng MongoDB đến việc triển khai thử nghiệm trên nền tảng đám mây Vercel và thiết bị di động cá nhân. Mặc dù còn những giới hạn về mặt hạ tầng máy chủ miễn phí và phạm vi thử nghiệm ứng dụng di động, đồ án là tài liệu tham khảo kỹ thuật có giá trị thực tiễn cho sinh viên chuyên ngành công nghệ thông tin trong việc phân tích, thiết kế và phát triển các hệ thống web hướng dịch vụ.