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

Khóa luận tốt nghiệp kỹ sư Công nghệ thông tin chuyên ngành Công nghệ phần mềm của hai tác giả Nguyễn Đăng Trường và Nguyễn Hữu Tiến (Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, thực hiện dưới sự hướng dẫn của TS. Mai Anh Thơ) tập trung giải quyết bài toán tiếp cận và phân phối ấn phẩm truyện tranh trực tuyến tại Việt Nam thông qua đề tài "Xây dựng website đọc, bán sách MangaComic".

Theo trình bày của các tác giả, sự phát triển nhanh chóng của công nghệ cùng sự phổ biến của các thiết bị di động như điện thoại thông minh, máy tính bảng và máy tính xách tay với chi phí phần cứng ngày càng dễ tiếp cận đã làm thay đổi căn bản phương thức tiếp nhận thông tin và giải trí của độc giả. Trong bối cảnh truyền thống, người đọc sách và truyện tranh gặp nhiều trở ngại thực tế như: phải trực tiếp đến cửa hàng sách hoặc thư viện, tiêu tốn thời gian di chuyển, phụ thuộc vào khung giờ mở cửa, và gặp khó khăn khi tìm kiếm các tác phẩm mới hoặc các bộ truyện yêu thích. Đặc biệt, việc tiếp cận và sở hữu các bộ truyện tranh (manga/comic) có bản quyền hoặc các đầu sách hiếm khi được phát hành, cập nhật định kỳ đặt ra thách thức không nhỏ cho cộng đồng người đọc trong nước. Do đó, việc xây dựng một nền tảng trực tuyến tích hợp đồng thời hai nhu cầu: đọc truyện điện tử và đặt mua sách trực tiếp được xác định là một đòi hỏi thực tiễn cấp thiết.

Khóa luận xác định hệ thống các mục tiêu nghiên cứu cụ thể bao gồm:

  1. Phát triển một nền tảng website cho phép người dùng dễ dàng tìm kiếm, đọc và mua các bộ sách trực tuyến với các tính năng hỗ trợ như đánh giá và bình luận.
  2. Cung cấp một hệ thống quản lý sách đa dạng, bao gồm các tính năng lọc theo thể loại giúp người dùng tiếp cận thuận tiện với các bộ truyện yêu thích.
  3. Tạo lập môi trường tương tác, nơi người dùng có thể chia sẻ và đánh giá sách, góp phần xây dựng cộng đồng bạn đọc và khuyến khích tham gia các hoạt động trao đổi, thảo luận, chia sẻ trải nghiệm đọc.
  4. Xây dựng giao diện người dùng thân thiện, dễ sử dụng, bảo đảm trải nghiệm đọc truyện và mua sắm trực tuyến mượt mà trên môi trường máy tính.
  5. Đảm bảo tính bảo mật và bảo vệ quyền lợi của người dùng khi thực hiện giao dịch mua bán bằng các phương thức thanh toán an toàn và cơ chế bảo mật thông tin tài khoản.

Nhiệm vụ thực hiện khóa luận được phân định rõ ràng thành hai phần:

  • Về lý thuyết: Nghiên cứu các công nghệ gồm Spring Boot, kiến trúc RESTful API, cơ chế JSON Web Token (JWT), thư viện ReactJS, Tailwind CSS, ngôn ngữ HTML/CSS và hệ quản trị cơ sở dữ liệu quan hệ (SQL Server và MySQL).
  • Về thực hành:
    1. Sử dụng Spring Boot để thiết kế và hiện thực hóa hệ thống RESTful API truyền tải dữ liệu về phía Frontend.
    2. Sử dụng cơ sở dữ liệu quan hệ để lưu trữ toàn bộ dữ liệu người dùng và hệ thống.
    3. Sử dụng JWT để xác thực và ủy quyền truy cập cho hệ thống API với cơ chế phân quyền rõ ràng.
    4. Sử dụng framework ReactJS, HTML và Tailwind CSS để thiết kế, xử lý giao diện người dùng và đồng bộ hóa tương tác dữ liệu.
    5. Ứng dụng mẫu thiết kế Dependency Injection nhằm giảm thiểu sự phụ thuộc ghép nối giữa các lớp đối tượng trong mã nguồn.

Đối tượng nghiên cứu của đồ án là quy trình đọc truyện trực tuyến, giao dịch mua bán sách (bao gồm ấn bản vật lý và ấn bản điện tử), cơ chế tương tác cộng đồng bạn đọc và hệ thống quản trị nội dung số. Phạm vi nghiên cứu về mặt không gian tập trung vào nền tảng ứng dụng web trên máy tính; phạm vi thời gian thực hiện đề tài kéo dài từ ngày 28/08/2024 đến ngày 10/06/2025, trải qua hai giai đoạn liên tục từ tiểu luận chuyên ngành đến khóa luận tốt nghiệp kỹ sư.


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

Đồ án xây dựng dựa trên nền tảng kiến trúc Client - Server với phương thức giao tiếp phi trạng thái qua giao thức HTTP/HTTPS, tuân thủ các nguyên lý thiết kế của RESTful API. Hệ thống áp dụng mẫu thiết kế Dependency Injection trong hệ sinh thái Spring Framework nhằm phân tách mối quan tâm và giảm mức độ phụ thuộc giữa các tầng dịch vụ.

Phương pháp nghiên cứu thực tế được nhóm tác giả áp dụng bao gồm:

  • Phương pháp khảo sát, phân tích hiện trạng: Khảo sát đối sánh trực tiếp hai nền tảng đọc truyện và sách điện tử phổ biến trên thị trường là Waka (Việt Nam) và Wattpad (quốc tế) để đúc rút các ưu điểm giao diện, phương thức vận hành cũng như nhận diện các hạn chế về mặt thương mại điện tử và tương tác cộng đồng.
  • Phương pháp phân tích và thiết kế hệ thống theo định hướng đối tượng: Sử dụng ngôn ngữ mô hình hóa hợp nhất (UML) để xây dựng hệ thống sơ đồ ca sử dụng (Use Case Diagram), sơ đồ tuần tự (Sequence Diagram) và sơ đồ cơ sở dữ liệu quan hệ.
  • Phương pháp phát triển phần mềm lặp từng bước: Phân chia vòng đời dự án thành các giai đoạn thiết kế cơ sở dữ liệu, xây dựng codebase, phát triển API backend, thiết kế giao diện frontend, lắp ráp hệ thống, triển khai thử nghiệm và sửa lỗi.
  • Phương pháp kiểm thử chức năng (Functional Testing): Xây dựng bộ kịch bản kiểm thử chi tiết phân tách theo từng vai trò người dùng nhằm xác minh tính chính xác của các luồng nghiệp vụ.

Nguồn dữ liệu của nghiên cứu bao gồm tài liệu kỹ thuật chuyên ngành công nghệ phần mềm, dữ liệu khảo sát từ các nền tảng thực tế, cùng cơ sở dữ liệu mẫu do nhóm tự tổng hợp và thiết lập về tác phẩm truyện tranh, tác giả, thể loại, chương truyện, người dùng và dữ liệu mô phỏng giao dịch thanh toán.

Hệ thống khảo sát Đặc điểm chức năng chính Hạn chế ghi nhận trong văn bản
Waka (waka.vn) Giao diện thân thiện; kho sách đa dạng; hỗ trợ thanh toán qua thẻ ngân hàng, ví điện tử, thẻ cào; hỗ trợ đọc offline; có đánh giá sách. Thiếu tính năng xây dựng cộng đồng mạnh mẽ; chưa tạo ra môi trường tương tác chuyên sâu giữa các người dùng.
Wattpad (wattpad.com) Nền tảng toàn cầu; mạnh về cộng đồng sáng tác tự do; hỗ trợ tương tác cao (bình luận, đánh giá, cuộc thi viết); gói trả phí Premium. Chưa phát triển mạnh tính năng bán sách thương mại; chủ yếu tập trung vào chia sẻ truyện và đọc miễn phí.

Thiết kế và triển khai hệ thống

Hệ thống MangaComic được thiết kế theo mô hình kiến trúc phân tầng Client - Server. Trong mô hình này, máy khách gửi yêu cầu đến máy chủ thông qua giao thức HTTP; máy chủ xử lý logic nghiệp vụ, tương tác với cơ sở dữ liệu và phản hồi dữ liệu dưới dạng JSON để giao diện người dùng hiển thị.

Ngăn xếp công nghệ của hệ thống được lựa chọn và tổ chức đồng bộ:

  • Phía giao diện người dùng (Frontend): Ứng dụng thư viện ReactJS với cấu trúc module hóa dựa trên thành phần (component-based), sử dụng cú pháp JSX và cơ chế Virtual DOM cùng mô hình luồng dữ liệu một chiều (one-way data binding) giúp tối ưu hóa hiệu năng render. Giao diện được định dạng bằng Tailwind CSS thông qua các lớp tiện ích (utility classes) kết hợp cùng HTML chuẩn, hỗ trợ mở rộng với các thư viện như React Router.
  • Phía máy chủ (Backend): Sử dụng ngôn ngữ Java trên nền tảng framework Spring Boot. Tầng bảo mật tích hợp Spring Security kết hợp với mã thông báo JSON Web Token (JWT) sử dụng thuật toán mã hóa (HS512 và RSA) để chứng thực danh tính và phân quyền truy cập endpoint. Tầng dữ liệu sử dụng Spring Data JPA kết hợp Hibernate nhằm tự động hóa việc ánh xạ đối tượng - quan hệ (ORM) và thực thi các thao tác CRUD. Hệ thống sử dụng Spring Validation để kiểm tra tính hợp lệ của dữ liệu đầu vào và Java Mail Sender truyền thông điệp qua giao thức SMTP phục vụ gửi email tự động (xác thực tài khoản, khôi phục mật khẩu).
  • Cơ sở dữ liệu: Sử dụng hệ quản trị cơ sở dữ liệu quan hệ MySQL để quản lý cấu trúc bảng, khóa chính, khóa ngoại và chỉ mục cho toàn bộ dữ liệu của hệ thống.
  • Tích hợp bên thứ ba: Tích hợp API cổng thanh toán trực tuyến MoMo hỗ trợ các phương thức quét mã QR, thẻ ATM nội địa và thẻ thanh toán quốc tế (Credit Card). Hệ thống còn tích hợp trợ lý ảo thông minh mgcChatAI nhằm hỗ trợ giải đáp và tư vấn trực tuyến cho bạn đọc.
Thành phần Công nghệ / Thư viện sử dụng Vai trò kỹ thuật trong hệ thống
Giao diện (Frontend) ReactJS, HTML, Tailwind CSS Xây dựng giao diện tương tác động, hiển thị trang đọc sách, giỏ hàng, bảng điều khiển quản trị.
Hạt nhân (Backend) Spring Boot, Spring Framework Xử lý logic nghiệp vụ, quản lý phụ thuộc (DI), cung cấp hệ thống RESTful API.
Bảo mật & Ủy quyền Spring Security, JWT (HS512 / RSA) Xác thực phiên làm việc, phân quyền người dùng, bảo vệ các endpoint API.
Tương tác dữ liệu Spring Data JPA, Hibernate, MySQL Ánh xạ thực thể ORM, quản lý giao dịch cơ sở dữ liệu và lưu trữ dữ liệu bền vững.
Xác thực dữ liệu Spring Validation Rà soát và kiểm soát tính hợp lệ của dữ liệu đầu vào từ phía máy khách.
Dịch vụ thông báo Java Mail Sender (SMTP) Gửi email tự động xác thực kích hoạt tài khoản và cấp lại mật khẩu.
Thanh toán số MoMo Payment API Xử lý giao dịch thanh toán trực tuyến qua mã QR, ATM và thẻ tín dụng.
Tư vấn người dùng Trợ lý mgcChatAI Cung cấp luồng hội thoại tự động hỗ trợ tư vấn đầu sách và dịch vụ.

Kiểm thử hệ thống được tiến hành thông qua kế hoạch kiểm thử chức năng hoàn chỉnh, bao quát các ca kiểm thử cho từng phân hệ khách hàng và phân hệ quản trị viên trước khi đưa vào đóng gói và triển khai.


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

Chương 1: Khảo sát hiện trạng và xác định yêu cầu

Chương này phản ánh toàn diện kết quả khảo sát thực tế và việc thiết lập yêu cầu phần mềm:

  • Khảo sát hiện trạng: Đánh giá ưu nhược điểm vận hành của Waka và Wattpad, xác định khoảng trống nghiệp vụ cần lấp đầy: kết hợp giữa tính năng đọc truyện trực tuyến, mô hình kinh doanh bán sách (cả sách vật lý và sách số), cùng hệ sinh thái tương tác bạn đọc.
  • Yêu cầu chức năng: Phân định rõ 3 nhóm tác nhân chính:
    1. Khách vãng lai: Tìm kiếm sách theo từ khóa, xem chi tiết sách, đọc thử các chương miễn phí, đăng ký tài khoản qua Gmail/username, đăng nhập và yêu cầu khôi phục mật khẩu qua email.
    2. Khách hàng: Đọc sách online miễn phí hoặc sách có phí đã mua; đánh giá số sao (0–5 sao) kèm nhận xét; bình luận theo từng chương sách; thêm sách vào danh sách yêu thích/theo dõi; quản lý giỏ hàng; mua sách và thanh toán (tiền mặt COD hoặc chuyển khoản MoMo); xem lịch sử đơn hàng; quản lý lịch sử đọc (lưu vị trí chương, xóa lịch sử); cập nhật thông tin cá nhân; tham gia các cuộc thi về sách (tải bài thi); đọc bài viết tin tức; tích điểm đổi vật phẩm; và sử dụng chatbot mgcChatAI.
    3. Quản trị viên: Quản lý toàn bộ tài khoản người dùng (xem, sửa, khóa tài khoản khách hàng, cấp quyền, không được tự khóa tài khoản admin); quản lý danh mục sách (thêm, sửa, xóa, theo dõi tồn kho và lượt bán); quản lý chapter (tiêu đề, danh sách hình ảnh); quản lý đơn hàng (cập nhật trạng thái: đang xử lý, đã vận chuyển, đã hoàn thành, bị hủy); quản lý khuyến mãi/voucher; quản lý và tổ chức cuộc thi về sách; đăng và quản lý bài viết/tin tức; quản lý danh mục vật phẩm đổi thưởng.
  • Yêu cầu phi chức năng: Đảm bảo an toàn thông tin cá nhân và giao dịch thanh toán; tối ưu hóa hiệu suất nhằm giảm thời gian tải trang; và xây dựng giao diện trực quan, dễ thao tác.

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

Chương này trình bày cơ sở công nghệ và kiến trúc nền tảng của hệ thống:

  • Phân tích chi tiết mô hình Client - Server 2 thành phần, giải thích cơ chế trao đổi bản tin yêu cầu - phản hồi qua HTTP.
  • Trình bày đặc tính kỹ thuật của ReactJS với Component-based, JSX, Virtual DOM và tính chất ràng buộc dữ liệu một chiều (one-way data binding).
  • Nêu rõ nguyên lý thiết kế giao diện bằng Tailwind CSS với các utility classes dựng sẵn giúp tinh giản mã nguồn CSS.
  • Làm rõ cấu trúc phân tầng của Spring Boot, tính năng bảo mật của Spring Security kết hợp với mã hóa JSON Web Token (JWT) theo thuật toán HS512/RSA.
  • Mô tả cơ chế ánh xạ quan hệ của Spring Data JPA với Hibernate, quy tắc kiểm tra ràng buộc của Spring Validation, cơ chế gửi thư điện tử bằng Java Mail Sender qua giao thức SMTP, và phương thức kết nối với cổng thanh toán điện tử MoMo.
  • Trình bày đặc điểm vận hành của hệ quản trị cơ sở dữ liệu quan hệ MySQL theo mô hình máy khách - máy chủ.

Chương 3: Phân tích và thiết kế hệ thống

Nội dung chương 3 tập trung vào mô hình hóa chi tiết hệ thống:

  • Biểu đồ ca sử dụng (Use Case): Xây dựng biểu đồ ca sử dụng tổng quát cho 3 tác nhân: khách vãng lai, khách hàng và quản trị viên; đi kèm 26 bảng đặc tả ca sử dụng chi tiết (bao gồm điều kiện tiên quyết, điều kiện sau, luồng chính, luồng phụ và luồng ngoại lệ cho các tác vụ: đăng ký, đăng nhập, quên mật khẩu, tìm kiếm, đánh giá, bình luận, mua sách, thanh toán, quản lý giỏ hàng, tham gia cuộc thi, đổi vật phẩm, quản lý chapter, quản lý sách, quản lý voucher...).
  • Biểu đồ tuần tự (Sequence Diagram): Mô tả chi tiết tiến trình tương tác giữa Actor, Giao diện (Boundary), Bộ điều khiển (Controller/Service) và Cơ sở dữ liệu cho các chức năng trọng yếu: đăng ký, đăng nhập, quên mật khẩu, tìm kiếm sách, xem chi tiết sách, bình luận, xem lịch sử đơn hàng, thêm vào giỏ hàng, quản lý lịch sử đọc, và quản lý thông tin tài khoản.
  • Thiết kế cơ sở dữ liệu: Thiết lập hệ thống lược đồ quan hệ chuẩn hóa với các thực thể chính phục vụ lưu trữ dữ liệu, tiêu biểu như: Account_roles, Cart_book, Order_details, Favorites_book, Rating, Reading_history, Book_genre, Chapter_content, Item_exchange_history, Point_transaction...
  • Thiết kế giao diện: Trình bày chi tiết cấu trúc wireframe và giao diện thực tế của hơn 40 màn hình hệ thống (từ màn hình trang chủ, đăng ký, xác nhận email, chi tiết sách cứng/sách mềm/miễn phí, giao diện đọc truyện, giao diện giỏ hàng, cổng thanh toán MoMo, đến giao diện quản trị dashboard, quản lý người dùng, quản lý chapter, quản lý khuyến mãi, quản lý cuộc thi và vật phẩm).

Chương 4: Cài đặt và kiểm thử

Chương này tài liệu hóa quá trình hiện thực hóa giải pháp:

  • Đặc tả yêu cầu cấu hình môi trường phát triển và môi trường chạy phần mềm; hướng dẫn thực thi chương trình và cấu trúc cây thư mục mã nguồn.
  • Thiết lập kế hoạch và mục tiêu kiểm thử: xác định các tiêu chí nghiệm thu chức năng, độ bao phủ các trường hợp kiểm thử cho từng giao diện.
  • Trình bày quy trình kiểm thử và công cụ thực hiện; lập bảng kết quả kiểm thử chức năng chi tiết cho toàn bộ các chức năng của khách hàng (đăng ký, đăng nhập, tìm kiếm, đặt hàng, đọc truyện...) và quản trị viên (quản lý người dùng, duyệt đơn, tạo voucher, thêm chapter truyện...).

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

Về kết quả ứng dụng, khóa luận đã thiết kế và xây dựng thành công website MangaComic vận hành hoàn chỉnh với các năng lực nghiệp vụ cụ thể:

  • Hiện thực hóa nền tảng đọc truyện trực tuyến hỗ trợ phân loại linh hoạt giữa tác phẩm miễn phí và tác phẩm trả phí; tích hợp tính năng đọc thử các chương mở đầu đối với sách tính phí.
  • Xây dựng hoàn chỉnh phân hệ thương mại điện tử chuyên biệt: phân tách rõ ràng quy trình xử lý giữa sách in (ấn bản cứng - hỗ trợ nhận hàng thanh toán tiền mặt COD hoặc chuyển khoản) và sách điện tử (ấn bản mềm - xử lý tự động cấp quyền đọc ngay sau khi thanh toán trực tuyến thành công qua MoMo).
  • Cung cấp không gian tương tác người dùng gồm: đánh giá sách (thang điểm 0–5 sao kèm cập nhật trung bình số sao tự động), bình luận trực tiếp ở chân trang của từng chương truyện, lưu tủ sách yêu thích và theo dõi tiến độ đọc sách cá nhân.
  • Tích hợp hệ sinh thái gắn kết độc giả: cơ chế tích lũy điểm thưởng từ hoạt động mua sách và tham gia sự kiện để đổi vật phẩm lưu niệm, tính năng tổ chức và nộp bài thi liên quan đến sách trực tuyến, cùng kênh tư vấn giải đáp tự động mgcChatAI.
  • Xây dựng bảng điều khiển quản trị (Admin Dashboard) trực quan, cho phép quản lý vòng đời dữ liệu sách, nội dung từng chapter, kiểm duyệt đơn hàng, cấu hình voucher giảm giá, quản lý bài viết tin tức và khóa tài khoản vi phạm.

Về mặt giải pháp kỹ thuật, đề tài đã chứng minh tính khả thi của việc kết hợp kiến trúc Spring Boot - ReactJS trong các ứng dụng phân phối nội dung số có lưu lượng tương tác đọc lớn, áp dụng cơ chế xác thực JWT bảo đảm an toàn kết nối RESTful API và đồng bộ hóa trạng thái giao dịch thông qua webhook/API của cổng thanh toán MoMo.

Đóng góp chính của đề tài là xây dựng được một giải pháp phần mềm tích hợp toàn diện, giải quyết hài hòa khoảng trống giữa mô hình nền tảng đọc sách đơn thuần (như Wattpad, Waka) và các sàn thương mại điện tử thông thường, tạo ra mô hình vận hành khép kín từ đọc thử, tương tác cộng đồng cho đến sở hữu ấn phẩm.


Hạn chế và hướng phát triển

Dựa trên nội dung đánh giá phần kết luận và phạm vi triển khai của đồ án, các hạn chế và hướng mở rộng được ghi nhận như sau:

Hạn chế của đề tài:

  • Ứng dụng hiện mới chỉ được thiết kế, tối ưu hóa giao diện và trải nghiệm người dùng tập trung trên môi trường trình duyệt máy tính (Desktop Web), chưa phát triển phiên bản ứng dụng di động độc lập (Mobile App).
  • Cơ chế tư vấn của trợ lý ảo mgcChatAI dừng lại ở mức hỗ trợ các nghiệp vụ cơ bản, chưa khai thác sâu các mô hình ngôn ngữ lớn (LLM) để đưa ra khuyến nghị phân tích ngữ cảnh chuyên sâu.
  • Các phương thức thanh toán trực tuyến phụ thuộc chủ yếu vào một cổng trung gian duy nhất là MoMo; hệ thống xử lý bản quyền nội dung số đối với các tệp hình ảnh chương truyện ở mức độ bảo vệ cơ bản trên giao diện web.

Hướng phát triển tiếp theo:

  • Mở rộng phát triển ứng dụng di động đa nền tảng (trên hệ điều hành Android và iOS) nhằm tối ưu hóa trải nghiệm đọc truyện tranh cầm tay.
  • Nghiên cứu tích hợp thêm các cổng thanh toán điện tử phổ biến khác (như VNPAY, ZaloPay, thẻ thanh toán quốc tế trực tiếp qua ngân hàng) để đa dạng hóa lựa chọn cho khách hàng.
  • Nâng cấp năng lực của trợ lý ảo mgcChatAI và phát triển thuật toán gợi ý sách cá nhân hóa dựa trên lịch sử đọc và hành vi tương tác của từng người dùng.
  • Tối ưu hóa hiệu năng lưu trữ và tải hình ảnh các chương truyện tranh bằng cách tích hợp mạng phân phối nội dung (CDN) và áp dụng các cơ chế bảo vệ bản quyền tệp hình ảnh chặt chẽ hơn.

Giá trị tham khảo

Đồ án tốt nghiệp "Xây dựng website đọc, bán sách MangaComic" mang lại giá trị tham khảo học thuật và ứng dụng thực tiễn rõ nét:

  • Đối tượng tham khảo: Sinh viên các ngành Công nghệ thông tin, Kỹ thuật phần mềm, Hệ thống thông tin; các lập trình viên đang nghiên cứu phát triển ứng dụng web full-stack kết hợp Spring Boot và ReactJS; cũng như các nhóm phát triển đề tài về thương mại điện tử hoặc xuất bản nội dung số.
  • Nội dung giá trị tiêu biểu:
    • Bộ tài liệu đặc tả 26 ca sử dụng chi tiết, bao quát đầy đủ các kịch bản ngoại lệ trong nghiệp vụ bán sách và đọc sách trực tuyến.
    • Thiết kế kiến trúc phân tầng kết hợp bảo mật Spring Security với cơ chế token JWT (RSA/HS512) và xử lý xác thực qua email SMTP.
    • Lược đồ cơ sở dữ liệu quan hệ hoàn chỉnh giải quyết đồng thời mối quan hệ giữa sách, chương truyện, giỏ hàng, giao dịch đơn hàng, lịch sử đọc và cơ chế tích điểm thưởng đổi vật phẩm.
    • Quy trình tích hợp kỹ thuật giữa hệ thống Backend Spring Boot với cổng thanh toán trung gian trực tuyến MoMo.

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

1. Hệ thống MangaComic phân quyền truy cập thành những vai trò nào và quyền hạn của khách vãng lai gồm những gì?
Hệ thống phân định 3 vai trò tác nhân: Khách vãng lai, Khách hàng (đã đăng ký và đăng nhập) và Quản trị viên. Trong đó, khách vãng lai chỉ có quyền tìm kiếm sách bằng từ khóa, xem thông tin chi tiết của sách, đọc thử các đầu sách miễn phí hoặc các chương truyện được cấu hình miễn phí, đăng ký tài khoản mới và thực hiện quy trình khôi phục mật khẩu.

2. Quy trình thanh toán trên website được thiết kế khác biệt như thế nào giữa ấn bản sách in và ấn bản điện tử?
Hệ thống phân định rạch ròi quy trình xử lý theo loại sản phẩm: Đối với sách in (bản cứng), khách hàng bắt buộc phải nhập địa chỉ giao hàng, họ tên, số điện thoại và được lựa chọn giữa hình thức trả tiền mặt khi nhận hàng (COD) hoặc thanh toán trực tuyến qua MoMo. Đối với sách điện tử (bản mềm), hệ thống bỏ qua bước nhập địa chỉ giao hàng, bắt buộc khách hàng phải thanh toán trực tuyến qua cổng MoMo; ngay sau khi giao dịch thành công, quyền đọc toàn bộ các chương của tác phẩm sẽ được kích hoạt tức thì trên tài khoản.

3. Ngăn xếp công nghệ cốt lõi được sử dụng để phát triển hệ thống gồm những thành phần nào?
Hệ thống sử dụng ngăn xếp công nghệ bao gồm: Phía Frontend dùng ReactJS, Tailwind CSS và HTML; Phía Backend xây dựng trên nền tảng Spring Boot, Spring Security, Spring Data JPA/Hibernate, Spring Validation và Java Mail Sender; Xác thực người dùng qua JWT (HS512/RSA); Hệ quản trị cơ sở dữ liệu sử dụng MySQL; Dịch vụ bên thứ ba gồm cổng thanh toán trực tuyến MoMo và trợ lý ảo tư vấn mgcChatAI.

4. Khóa luận thiết kế những tính năng cụ thể nào nhằm thúc đẩy tính tương tác cộng đồng và giữ chân độc giả?
Hệ thống tích hợp 4 nhóm tính năng tương tác chuyên biệt: tính năng đánh giá sách theo thang điểm từ 0 đến 5 sao có kèm nhận xét; tính năng bình luận trao đổi theo từng chương truyện cụ thể; hệ thống tổ chức cuộc thi về sách cho phép người dùng đăng ký và tải file bài thi trực tiếp; cùng cơ chế tích lũy điểm thưởng từ hoạt động mua sách để đổi lấy các vật phẩm trong kho quà tặng của nền tảng.

5. Cơ chế xác thực và bảo mật danh tính người dùng trong hệ thống được thực thi bằng giải pháp nào?
Bảo mật hệ thống được xây dựng trên tầng Spring Security, sử dụng mã thông báo JSON Web Token (JWT) kết hợp thuật toán mã hóa chữ ký số (HS512 và RSA) để xác thực và ủy quyền truy cập cho từng yêu cầu API. Đồng thời, quá trình đăng ký và khôi phục mật khẩu bắt buộc phải kích hoạt và xác thực danh tính thông qua đường dẫn liên kết gửi tự động qua giao thức SMTP bằng Java Mail Sender.


Kết luận

Khóa luận tốt nghiệp "Xây dựng website đọc, bán sách MangaComic" của hai sinh viên Nguyễn Đăng Trường và Nguyễn Hữu Tiến đã hoàn thành toàn diện các mục tiêu đề ra về việc thiết kế và xây dựng một hệ thống phân phối truyện tranh trực tuyến đa chức năng. Đồ án thể hiện quy trình phân tích và thiết kế phần mềm bài bản từ khâu khảo sát thực tế, mô hình hóa hệ thống bằng biểu đồ UML, thiết kế cơ sở dữ liệu quan hệ chuẩn hóa cho đến hiện thực hóa mã nguồn trên nền tảng Spring Boot và ReactJS. Điểm nổi bật của đề tài nằm ở việc tích hợp đồng bộ giữa nghiệp vụ đọc truyện số, thương mại điện tử với cổng thanh toán MoMo và các tính năng tương tác cộng đồng như đánh giá, bình luận, thi đua và tích điểm đổi quà. Kết quả nghiên cứu là tài liệu tham khảo có giá trị kỹ thuật cao cho sinh viên chuyên ngành công nghệ phần mềm trong việc phát triển các ứng dụng web phức hợp phục vụ chuyển đổi số ngành xuất bản.