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

Trong xu thế công nghiệp hóa, hiện đại hóa và sự phát triển mạnh mẽ của khoa học – kỹ thuật, lĩnh vực thương mại điện tử đã có những bước tiến vượt bậc. Các hệ thống website bán hàng trực tuyến ngày càng hoàn thiện nhằm đáp ứng nhu cầu mua sắm tiện lợi, giúp người tiêu dùng tiết kiệm thời gian và công sức. Thực tiễn giai đoạn dịch bệnh COVID-19 bùng phát cùng việc thực hiện giãn cách xã hội theo Chỉ thị số 16 của Thủ tướng Chính phủ đã hạn chế việc người dân đến các cửa hàng vật lý, từ đó thúc đẩy nhu cầu giao dịch trực tuyến gia tăng nhanh chóng ở hầu hết các mặt hàng, bao gồm sách và truyện tranh.

Đối với các cửa hàng kinh doanh sách truyện truyền thống, việc mở và duy trì hoạt động đòi hỏi chi phí lớn về mặt bằng, tài chính, cơ sở vật chất và nhân sự. Đồng thời, công tác quản lý thủ công bộc lộ nhiều thách thức lớn:

  • Khó khăn trong việc kiểm soát và quản lý số lượng lớn đầu sách một cách nhanh chóng và tối ưu thời gian.
  • Nguy cơ hư hỏng, thất lạc dữ liệu hoặc sai lệch thông tin trong quá trình lưu trữ sổ sách.
  • Hạn chế trong việc hỗ trợ người mua tiếp cận và tìm kiếm đúng sản phẩm mong muốn một cách thuận tiện.

Xuất phát từ những vấn đề thực tiễn đó, đề tài “Xây Dựng Website Bán Truyện Tranh TMW” được thực hiện nhằm xây dựng giải pháp phần mềm hỗ trợ bán hàng trực tuyến, số hóa quy trình quản trị và nâng cao hiệu quả kinh doanh.

Mục tiêu nghiên cứu

Đề tài xác định các mục tiêu cụ thể:

  1. Xây dựng một website thương mại điện tử hoàn chỉnh phục vụ nhu cầu mua truyện tranh của khách hàng, đảm bảo giao diện thân thiện, dễ sử dụng cho mọi phân khúc người dùng.
  2. Thiết kế hệ thống quản trị chuyên biệt (trang Admin) giúp người quản lý dễ dàng kiểm soát các chức năng của hệ thống, quản lý sản phẩm, đơn hàng, danh mục, bài viết và tài khoản người dùng.
  3. Vận dụng kiến thức chuyên ngành Kỹ thuật Phần mềm vào thực tiễn, nâng cao năng lực phân tích thiết kế hệ thống và phát triển ứng dụng web tương tác.

Đối tượng và phạm vi nghiên cứu

  • Đối tượng nghiên cứu: Hệ thống website thương mại điện tử phục vụ việc mua bán và quản lý truyện tranh.
  • Phạm vi nghiên cứu: Mô hình vận hành và quy trình nghiệp vụ của một cửa hàng kinh doanh truyện tranh quy mô vừa và nhỏ; địa bàn khảo sát thực tế tại khu vực thành phố Thủ Dầu Một, tỉnh Bình Dương (thời điểm thực hiện: tháng 11/2021).

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

Khung lý thuyết và công nghệ sử dụng

Đề tài khai thác các công nghệ nền tảng trong phát triển phần mềm web:

  1. Framework Laravel (PHP):

    • Là một PHP framework mã nguồn mở theo mô hình kiến trúc MVC (Model - View - Controller).
    • Sử dụng các tính năng hiện đại của PHP: Namespaces, Interfaces, Overloading, Anonymous functions, Shorter array syntax.
    • Cơ chế bảo mật tích hợp: sử dụng PDO (PHP Data Objects) để chống tấn công SQL Injection, sử dụng token ẩn để phòng chống tấn công CSRF (Cross-Site Request Forgery), tự động mã hóa (escape) biến hiển thị trên View để ngăn chặn tấn công XSS (Cross-Site Scripting).
    • Tích hợp sẵn API dựa trên thư viện SwiftMailer hỗ trợ gửi email qua local hoặc điện toán đám mây.
    • Hạn chế được ghi nhận: tính tương thích khi nâng cấp giữa các phiên bản còn hạn chế và tài nguyên tương đối nặng đối với các thiết bị di động.
  2. Hệ quản trị cơ sở dữ liệu MySQL:

    • Hệ thống quản trị cơ sở dữ liệu quan hệ (RDBMS) mã nguồn mở hoạt động theo mô hình Client - Server.
    • Đặc điểm: cài đặt linh hoạt, hiệu năng xử lý dữ liệu cao, tiêu chuẩn bảo mật mạnh mẽ và tính phổ biến cao trong phát triển ứng dụng web.
    • Giới hạn: chưa tối ưu cho các hệ thống dữ liệu siêu lớn mang tính phân tán toàn quốc (như ngân hàng, dữ liệu dân số quốc gia).
  3. Công nghệ Ajax (Asynchronous JavaScript and XML):

    • Cơ chế hoạt động: Trình duyệt phía Client tạo đối tượng XMLHttpRequest gửi HTTP Request đến máy chủ; máy chủ xử lý dữ liệu và trả về phản hồi (Response); JavaScript tại Client tiếp nhận và cập nhật trực tiếp lên giao diện.
    • Tác dụng: Cho phép tải và cập nhật từng phần của trang web thông qua cơ chế callback mà không cần nạp lại toàn bộ trang, giúp tiết kiệm băng thông máy chủ và nâng cao trải nghiệm người dùng.

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

Tác giả kết hợp các phương pháp nghiên cứu thực nghiệm và kỹ thuật phần mềm:

  • Khảo sát thực trạng: Khảo sát hoạt động kinh doanh sách truyện tại khu vực thành phố Thủ Dầu Một.
  • Thu thập yêu cầu: Tiếp cận nhu cầu thực tế của người mua và người bán để xác định các yêu cầu chức năng, phi chức năng.
  • Phân tích và thiết kế hệ thống: Sử dụng ngôn ngữ mô hình hóa UML để xây dựng sơ đồ ca sử dụng (Use Case Diagram), sơ đồ phân rã chức năng (Functional Decomposition Diagram) và sơ đồ quan hệ thực thể (ERD).
  • Hiện thực hóa và kiểm thử: Lập trình xây dựng mã nguồn, thiết kế giao diện và kiểm thử các kịch bản sử dụng trên môi trường web.

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

1. Phân tích các tác nhân (Actors)

Hệ thống phân quyền cho 3 nhóm tác nhân chính với các vai trò tương ứng:

STT Tác nhân (Actor) Phạm vi chức năng chính
1 Khách hàng Đăng ký, đăng nhập, đăng xuất, xem/tìm kiếm/lọc sản phẩm, mua hàng, đổi mật khẩu, quản lý thông tin tài khoản, xem trạng thái đơn hàng, xem/thêm bài viết trên diễn đàn, bình luận và đánh giá sản phẩm, bình luận bài viết.
2 Admin Đăng nhập/đăng xuất, quản trị danh mục, quản trị thương hiệu, quản trị sản phẩm, quản trị đơn hàng, quản trị tài khoản nhân viên, quản trị tài khoản khách hàng, duyệt bài viết diễn đàn, quản lý bình luận.
3 Nhân viên Đăng nhập/đăng xuất, quản trị tài khoản khách hàng, kiểm duyệt bài viết người dùng gửi lên diễn đàn, quản lý và xóa bình luận vi phạm.

2. Danh mục và đặc tả Use Case

Hệ thống thiết lập 23 nhóm use case chính phục vụ đầy đủ luồng nghiệp vụ mua bán và quản trị:

STT Tên Use Case Ý nghĩa nghiệp vụ Tác nhân thực hiện
1 Đăng nhập Xác thực quyền truy cập vào hệ thống Khách hàng, Admin, Nhân viên
2 Đăng ký Tạo tài khoản người dùng mới Khách hàng
3 Đăng xuất Thoát phiên làm việc khỏi hệ thống Khách hàng, Admin, Nhân viên
4 Xem sản phẩm Hiển thị danh sách và chi tiết truyện tranh Khách hàng
5 Mua sản phẩm Chọn hàng vào giỏ và thực hiện đặt hàng Khách hàng
6 Xem bài viết Xem nội dung chia sẻ trên diễn đàn Khách hàng
7 Thêm bài viết Đăng bài viết mới chờ quản trị duyệt Khách hàng
8 Đổi mật khẩu Cập nhật mật khẩu bảo mật tài khoản Khách hàng
9 Bình luận bài viết Gửi nhận xét tại bài viết diễn đàn Khách hàng
10 Bình luận sản phẩm Gửi ý kiến nhận xét về đầu truyện Khách hàng
11 Đánh giá sản phẩm Chấm điểm số sao cho sản phẩm Khách hàng
12 Tìm kiếm sản phẩm Tra cứu truyện theo từ khóa tên Khách hàng
13 Lọc sản phẩm Lọc truyện theo danh mục và thương hiệu Khách hàng
14 Quản lý thương hiệu Thêm, sửa, xóa thương hiệu/nhà xuất bản Admin
15 Quản lý sản phẩm Thêm, sửa, xóa thông tin truyện tranh Admin
16 Quản lý đơn hàng Cập nhật trạng thái, xử lý và xóa đơn hàng Admin
17 Quản lý danh mục Thêm, sửa, xóa các thể loại truyện Admin
18 Quản lý TK nhân viên Thêm, sửa, xóa tài khoản phân quyền nhân viên Admin
19 Quản lý TK khách hàng Thêm, sửa, xóa hoặc cập nhật tài khoản khách Admin, Nhân viên
20 Quản lý bình luận Xóa bỏ các bình luận không phù hợp Admin, Nhân viên
21 Duyệt bài viết Kiểm duyệt nội dung bài viết trước khi hiển thị Admin, Nhân viên
22 Thông tin tài khoản Xem và chỉnh sửa hồ sơ cá nhân Khách hàng
23 Thông tin đơn hàng Theo dõi tiến trình và lịch sử mua sắm Khách hàng

Quy trình nghiệp vụ tiêu biểu:

  • Nghiệp vụ Mua sản phẩm (Use case 5): Khách hàng chọn sản phẩm đưa vào giỏ hàng -> Nhấn thanh toán -> Nhập thông tin giao hàng (họ tên, địa chỉ, số điện thoại) -> Chọn phương thức thanh toán -> Hệ thống kiểm tra hợp lệ, lưu thông tin vào bảng Order, Order_detail, Ship, Payment và hiển thị thông báo đặt hàng thành công.
  • Nghiệp vụ Quản trị sản phẩm/danh mục/thương hiệu (Admin): Admin truy cập trang quản trị -> Chọn chức năng tương ứng (Thêm/Sửa/Xóa) -> Nhập thông tin hoặc xác nhận thao tác -> Hệ thống cập nhật cơ sở dữ liệu MySQL và tải lại danh sách hiển thị.

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

Cơ sở dữ liệu của website được chuẩn hóa và tổ chức thành 12 bảng chính:

STT Tên bảng CSDL Mục đích lưu trữ
1 Admin Thông tin tài khoản quản trị viên và nhân viên quản lý
2 Brand Thông tin thương hiệu, nhà phát hành truyện tranh
3 Category Thể loại và danh mục phân loại truyện tranh
4 Product Dữ liệu chi tiết truyện (tên, giá bán, số lượng, mô tả, hình ảnh, mã danh mục, mã thương hiệu)
5 Post Nội dung các bài viết trên chuyên mục diễn đàn
6 Comment Nội dung bình luận của người dùng trên sản phẩm
7 Comment_post Nội dung bình luận của người dùng trên các bài viết
8 Order Thông tin đơn đặt hàng tổng quát của khách hàng
9 Order_detail Chi tiết từng sản phẩm và số lượng trong đơn hàng
10 Ship Thông tin địa chỉ và hình thức vận chuyển giao nhận
11 Payment Phương thức và trạng thái thanh toán đơn hàng
12 Rating Dữ liệu chấm điểm, số sao đánh giá sản phẩm

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

Chương 1: Giới thiệu

Chương mở đầu trình bày tổng quan về lý do hình thành đề tài, mục đích nghiên cứu, đối tượng, phạm vi và phương pháp tiếp cận. Tác giả chỉ ra sự chuyển dịch hành vi mua sắm sang trực tuyến trong bối cảnh dịch bệnh và khó khăn của các cửa hàng sách truyền thống. Đề tài tập trung giải quyết bài toán quản lý và bán hàng cho cửa hàng truyện tranh vừa và nhỏ thông qua giải pháp công nghệ.

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

Nội dung chương 2 tập trung phân tích các nền tảng lý thuyết và công nghệ cốt lõi:

  • Cấu trúc framework Laravel, mô hình MVC, tính năng quản lý gói phụ thuộc và các lớp bảo mật (PDO, CSRF, XSS).
  • Hệ quản trị cơ sở dữ liệu quan hệ MySQL, nguyên lý mô hình Client - Server và đặc tính lưu trữ dữ liệu.
  • Công nghệ Ajax, phương thức hoạt động bất đồng bộ qua đối tượng XMLHttpRequest nhằm nâng cao tốc độ tải trang.

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

Chương 3 là phần trọng tâm kỹ thuật của đồ án, bao gồm:

  • Xác lập danh sách 3 nhóm tác nhân (Admin, Nhân viên, Khách hàng) và bảng tổng hợp 23 use case.
  • Xây dựng sơ đồ Use Case tổng thể cho từng tác nhân.
  • Đặc tả chi tiết 36 luồng sự kiện (luồng chính, luồng phụ, điều kiện tiên quyết và điều kiện cuối) của các ca sử dụng.
  • Thiết kế mô hình cơ sở dữ liệu quan hệ với 12 thực thể bảng và sơ đồ phân rã chức năng hệ thống.

Chương 4: Giao diện trang web

Chương 4 mô tả toàn bộ hệ thống giao diện thực tế của ứng dụng (minh họa từ Hình 8 đến Hình 41 trong văn bản), chia thành hai phân hệ rõ rệt:

  • Phân hệ Client (Người dùng): Giao diện Trang chủ, Đăng ký, Đăng nhập, Chi tiết sản phẩm, Danh mục sản phẩm, Thương hiệu sản phẩm, Giỏ hàng, Thông tin đặt hàng, Thanh toán, Đặt hàng thành công, Thông tin tài khoản, Đổi mật khẩu, Tất cả bài viết và Thêm bài viết.
  • Phân hệ Quản trị (Admin & Nhân viên): Giao diện Thêm/Sửa/Liệt kê danh mục, Thêm/Sửa/Liệt kê sản phẩm, Quản lý đơn hàng và chi tiết đơn hàng, Quản lý và duyệt bài viết, Quản lý/Thêm/Sửa/Xóa tài khoản Admin và tài khoản khách hàng.

Chương 5: Kết luận

Chương tổng kết các kết quả đạt được sau quá trình nghiên cứu, thiết kế và lập trình website; đồng thời nêu rõ các định hướng phát triển và hoàn thiện hệ thống trong tương lai.


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

Kết quả chính

  • Phân tích và đặc tả hoàn chỉnh 23 use case nghiệp vụ bán hàng và quản trị trực tuyến.
  • Xây dựng thành công cơ sở dữ liệu quan hệ gồm 12 bảng liên kết phục vụ đầy đủ lưu trữ thông tin sản phẩm, bài viết diễn đàn, đơn hàng và tài khoản người dùng.
  • Lập trình và thiết kế hoàn chỉnh hệ thống giao diện với hơn 34 màn hình chức năng cho cả hai phân hệ Client và Quản trị.
  • Tích hợp thành công các cơ chế lọc, tìm kiếm sản phẩm theo tên, danh mục, thương hiệu, cùng các tính năng tương tác người dùng như đánh giá sao, bình luận và đăng bài viết diễn đàn.

Đóng góp của đề tài

  • Đưa ra giải pháp số hóa quy trình kinh doanh và quản trị cho các cửa hàng truyện tranh quy mô vừa và nhỏ, giải quyết các hạn chế về quản lý tồn kho và lưu trữ dữ liệu thủ công.
  • Ứng dụng hiệu quả kiến trúc MVC của Laravel kết hợp cơ chế xử lý dữ liệu bất đồng bộ Ajax và hệ quản trị MySQL để tạo ra ứng dụng web có cấu trúc rõ ràng, bảo mật và tương tác nhanh.

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

Hạn chế

  • Hệ thống được thiết kế hướng đến quy mô vừa và nhỏ, chưa tối ưu hóa cho các hệ thống dữ liệu phân tán lớn cấp độ toàn quốc.
  • Framework Laravel còn tương đối nặng khi truy cập trên các thiết bị di động.
  • Tính liên kết giữa các phiên bản framework chưa cao, việc nâng cấp mã nguồn có nguy cơ gây gián đoạn hệ thống.

Hướng nghiên cứu và phát triển tiếp

  • Tối ưu hóa hiệu năng tải trang trên nền tảng thiết bị di động (Responsive Design / Mobile Optimization).
  • Tích hợp thêm các cổng thanh toán trực tuyến tự động và đơn vị vận chuyển trung gian.
  • Nâng cấp các thuật toán gợi ý sản phẩm và mở rộng tính năng quản lý nâng cao cho diễn đàn người đọc truyện.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho:

  • Sinh viên ngành Kỹ thuật Phần mềm, Công nghệ Thông tin: Tham khảo quy trình phân tích và thiết kế hệ thống thương mại điện tử từ sơ đồ Use Case, đặc tả nghiệp vụ, sơ đồ phân rã chức năng đến thiết kế CSDL quan hệ.
  • Lập trình viên web PHP/Laravel: Học hỏi cách tổ chức kiến trúc ứng dụng web theo mô hình MVC, áp dụng các kỹ thuật bảo mật sẵn có (PDO, CSRF Token, XSS Escape) và xử lý tương tác bất đồng bộ với Ajax.

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

1. Đề tài sử dụng những công nghệ và framework nào để xây dựng website?

Hệ thống được phát triển dựa trên ngôn ngữ PHP với framework Laravel (mô hình MVC), hệ quản trị cơ sở dữ liệu quan hệ MySQL và công nghệ Ajax (sử dụng đối tượng XMLHttpRequest) để xử lý cập nhật dữ liệu bất đồng bộ.

2. Hệ thống phân chia những nhóm người dùng nào và quyền hạn ra sao?

Hệ thống xác định 3 nhóm tác nhân (Actor):

  • Khách hàng: Tìm kiếm, xem, lọc sản phẩm, đặt hàng, quản lý đơn hàng cá nhân, đăng bài diễn đàn, bình luận và đánh giá sản phẩm.
  • Admin: Toàn quyền quản trị danh mục, thương hiệu, sản phẩm, đơn đặt hàng, tài khoản nhân viên, tài khoản khách hàng, duyệt bài viết và quản lý bình luận.
  • Nhân viên: Quản lý tài khoản khách hàng, duyệt bài viết diễn đàn và quản lý/xóa bình luận.

3. Cơ sở dữ liệu của website gồm những bảng nào?

Cơ sở dữ liệu gồm 12 bảng: Admin, Brand, Category, Product, Post, Comment, Comment_post, Order, Order_detail, Ship, Payment và Rating.

4. Các giải pháp bảo mật nào được tích hợp trong ứng dụng?

Ứng dụng khai thác các cơ chế bảo mật có sẵn của Laravel gồm: sử dụng PDO để phòng chống SQL Injection, sử dụng token ẩn để chống tấn công CSRF, và tự động escape các biến hiển thị trên giao diện View nhằm ngăn chặn tấn công XSS.


Kết luận

Đồ án chuyên ngành “Xây Dựng Website Bán Truyện Tranh TMW” do sinh viên Mạch Hoàng Minh Thảo thực hiện dưới sự hướng dẫn của Th.S Nguyễn Hữu Vĩnh đã hoàn thành đầy đủ quy trình phân tích, thiết kế và xây dựng một hệ thống thương mại điện tử hoàn chỉnh. Đề tài giải quyết hiệu quả bài toán quản lý và kinh doanh trực tuyến cho các cửa hàng truyện tranh vừa và nhỏ trong bối cảnh chuyển đổi số và dịch bệnh. Đây là tài liệu học thuật có cấu trúc chặt chẽ, mang giá trị ứng dụng và tham khảo thực tiễn cao cho sinh viên ngành Kỹ thuật Phần mềm.