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

Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ và trở thành động lực then chốt cho sự phát triển kinh tế - xã hội, việc chuyển đổi từ các phương thức vận hành truyền thống sang các nền tảng số hóa đã trở thành yêu cầu thiết yếu đối với các đơn vị kinh doanh. Đặc biệt, trong lĩnh vực phát hành và kinh doanh sách, các hình thức quảng bá và phân phối thông qua website trực tuyến mang lại lợi thế vượt trội về tốc độ truyền tải thông tin, tối ưu hóa chi phí vận hành và mở rộng khả năng tiếp cận khách hàng trên diện rộng so với các kênh thông tin đại chúng truyền thống như báo in, radio hay truyền hình.

Tuy nhiên, tại nhiều cơ sở kinh doanh sách vừa và nhỏ, việc quản lý hàng hóa, theo dõi đơn hàng và lưu trữ thông tin khách hàng vẫn còn phụ thuộc vào các quy trình ghi chép sổ sách thủ công. Phương thức quản lý truyền thống này bộc lộ nhiều bất cập như tốc độ truy xuất chậm, dễ xảy ra sai sót dữ liệu và gây khó khăn cho người quản lý trong việc kiểm soát dòng luân chuyển hàng hóa. Đồng thời, người mua sách gặp nhiều rào cản về thời gian và khoảng cách địa lý khi phải đến trực tiếp cửa hàng để tìm kiếm và lựa chọn đầu sách mong muốn.

Trước thực trạng đó, đề tài "Xây dựng website bán sách Online Book" được nhóm tác giả tại Viện Kỹ thuật – Công nghệ, Trường Đại học Thủ Dầu Một thực hiện nhằm giải quyết các nhiệm vụ và mục tiêu cụ thể sau:

  1. Xây dựng một hệ thống website thương mại điện tử phục vụ hoạt động bán sách trực tuyến, cho phép khách hàng dễ dàng tìm kiếm, xem chi tiết, đưa sách vào giỏ hàng và thực hiện quy trình đặt hàng, thanh toán qua Internet.
  2. Thiết lập hệ thống quản trị nội bộ dành cho người quản lý nhằm tự động hóa các thao tác thêm, sửa, xóa, tìm kiếm thông tin sách, theo dõi lịch sử giao dịch và xử lý các hóa đơn đặt hàng từ khách hàng.
  3. Đơn giản hóa công tác quản lý tài khoản người dùng, lưu trữ thông tin giao dịch và hỗ trợ người quản lý kiểm soát dữ liệu khách hàng một cách khoa học.

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

  • Đối tượng nghiên cứu: Quy trình nghiệp vụ bán lẻ sách trực tuyến, cấu trúc dữ liệu quản lý ấn phẩm và cơ chế tương tác giữa người dùng (khách hàng, quản trị viên) với hệ thống thông tin dựa trên nền tảng web.
  • Đối tượng sử dụng hướng tới: Các cửa hàng, nhà sách có quy mô vừa và nhỏ; người dùng có nhu cầu tìm kiếm, tham khảo và mua sách trực tuyến.
  • Phạm vi thời gian và không gian: Đề tài được triển khai thực hiện trong thời gian hơn 1 tháng (hoàn thành vào tháng 07/2021) tại Viện Kỹ thuật – Công nghệ, Trường Đại học Thủ Dầu Một.
  • Ràng buộc thiết kế: Giao diện tối giản, loại bỏ chi tiết thừa; màu sắc hài hòa; cấu trúc bố cục rõ ràng; sử dụng phông chữ không chân (sans-serif) nhằm đảm bảo trải nghiệm đọc và tương tác thuận tiện.

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

Đề tài áp dụng các nguyên lý phát triển phần mềm mã nguồn mở kết hợp quy trình phân tích thiết kế hệ thống thông tin theo mô hình hướng đối tượng.

Khung công nghệ và công cụ phát triển

Nhóm công nghệ Công cụ / Ngôn ngữ Vai trò và đặc tính kỹ thuật trong đề tài
Xử lý phía máy chủ (Back-end) PHP (Hypertext Preprocessor) Ngôn ngữ kịch bản mã nguồn mở chạy trên máy chủ, cú pháp tương đồng C/Java, tối ưu hóa cho ứng dụng web động, tích hợp trực tiếp vào HTML và tương thích với máy chủ web Apache/IIS.
Xử lý phía máy khách (Front-end) HTML5, CSS, JavaScript, jQuery HTML5 xây dựng cấu trúc nội dung siêu văn bản; CSS định dạng kiểu dáng, phân tách giao diện và mã nguồn; JavaScript và thư viện jQuery xử lý tương tác giao diện người dùng, hoạt ảnh và bắt sự kiện client-side.
Hệ quản trị cơ sở dữ liệu MySQL Hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở, đi kèm với PHP trên nền tảng gói cài đặt máy chủ cục bộ (XAMPP/MAMP) để lưu trữ và truy vấn toàn bộ dữ liệu hệ thống.
Môi trường phát triển tích hợp (IDE) Visual Studio, Adobe Dreamweaver CC Visual Studio hỗ trợ lập trình mã nguồn; Dreamweaver CC cung cấp giao diện soạn thảo trực quan WYSIWYG, hỗ trợ thiết kế web responsive và quản lý tệp tin.

Phương pháp nghiên cứu và thu thập dữ liệu

  • Phương pháp khảo sát nhu cầu: Thu thập và tổng hợp các yêu cầu nghiệp vụ thực tế từ đối tượng người đọc sách và chủ nhà sách, xác định các tính năng cốt lõi cần có của một website thương mại điện tử bán sách.
  • Phương pháp mô hình hóa hướng đối tượng (UML): Sử dụng các biểu đồ chuẩn gồm biểu đồ ca sử dụng (Use Case Diagram), biểu đồ hoạt động (Activity Diagram), biểu đồ tuần tự (Sequence Diagram) và biểu đồ lớp (Class Diagram) để chuẩn hóa các quy trình tương tác và luồng dữ liệu.
  • Phương pháp thiết kế cơ sở dữ liệu quan hệ: Chuẩn hóa các bảng dữ liệu, xác định các khóa chính (PK), khóa ngoại (FK) và ràng buộc toàn vẹn dữ liệu cho các thực thể người dùng, sách, giỏ hàng và đơn hàng.

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

Hệ thống được tổ chức thành hai phân hệ tương tác chính dành cho hai nhóm tác nhân: Khách hàng và Người quản lý.

                           +------------------------------------+
                           |    HỆ THỐNG ONLINE BOOK (PHP)      |
                           +-----------------+------------------+
                                             |
                     +-----------------------+-----------------------+
                     |                                               |
     +---------------+---------------+               +---------------+---------------+
     |     Phân hệ Khách hàng        |               |      Phân hệ Người quản lý    |
     +---------------+---------------+               +---------------+---------------+
     | - Đăng ký, Đăng nhập          |               | - Đăng nhập quản trị          |
     | - Xem sách, Chi tiết sách     |               | - Quản lý danh mục sách       |
     | - Lọc, Liệt kê theo danh mục  |               | - Quản lý tài khoản KH        |
     | - Quản lý giỏ hàng            |               | - Xử lý hóa đơn đặt hàng      |
     | - Đặt hàng & Thanh toán       |               | - Phân quyền hệ thống         |
     | - Xem lịch sử đơn hàng        |               | - Quản lý nhà cung cấp        |
     | - Cập nhật hồ sơ cá nhân      |               +---------------+---------------+
     +---------------+---------------+                               |
                     |                                               |
                     +-----------------------+-----------------------+
                                             |
                           +-----------------+------------------+
                           | Cơ sở dữ liệu quan hệ MySQL        |
                           | (Address, Admin, Books, Cart,      |
                           |  Login, Orders, Order_address)     |
                           +------------------------------------+

1. Phân tích tác nhân và các ca sử dụng (Use Case)

  • Tác nhân Khách hàng: Thực hiện các chức năng đăng ký, đăng nhập, đăng xuất, cập nhật thông tin cá nhân, đổi mật khẩu, duyệt danh mục sách, xem chi tiết ấn phẩm, quản lý giỏ hàng (thêm, sửa số lượng, xóa sách), tiến hành đặt hàng, nhập thông tin giao nhận và theo dõi lịch sử đơn hàng. Tác nhân này không có quyền xóa tài khoản trên hệ thống.
  • Tác nhân Người quản lý: Đăng nhập trang quản trị, theo dõi và tìm kiếm thông tin tài khoản khách hàng (không được xóa thông tin tài khoản khách hàng), quản lý kho sách (thêm mới, chỉnh sửa, xóa, tìm kiếm), quản lý nhà cung cấp, phân quyền nhân viên và tiếp nhận, cập nhật trạng thái xử lý hóa đơn bán lẻ.

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

Cơ sở dữ liệu MySQL của hệ thống bao gồm 7 bảng dữ liệu quan hệ chính với cấu trúc chi tiết như sau:

Tên bảng Thuộc tính chính Kiểu dữ liệu Ràng buộc Diễn giải chức năng
Address Address_id
User_id
Name
Address
Mobile
Checkout_id
Int(11)
Int(11)
Varchar(200)
Varchar(200)
Varchar(20)
Varchar(100)
PK
FK
Not null
Not null
Not null
Not null
Lưu trữ thông tin địa chỉ giao nhận hàng của từng lần thanh toán.
Admin 1 (Id)
Username
Password
Int(4)
Varchar(50)
Varchar(50)
PK
Not null
Not null
Lưu trữ tài khoản và mật khẩu đăng nhập của quản trị viên.
Books Book_id
Bookname
Img
Author
Detail
Price
Category
Int(100)
Varchar(300)
Varchar(300)
Varchar(200)
Varchar(2000)
Varchar(200)
Varchar(100)
PK
Not null
Not null
Not null
Not null
Not null
Not null
Quản lý thông tin chi tiết của sách: tên, ảnh minh họa, tác giả, mô tả tóm tắt, đơn giá và thể loại.
Cart Cart_id
Book_id
Bookname
Img
Price
Total_price
Quantity
User_id
Int(255)
Varchar(100)
Varchar(200)
Varchar(200)
Varchar(100)
Varchar(100)
Varchar(100)
Int(100)
PK
FK
Not null
Not null
Not null
Not null
Not null
FK
Lưu thông tin các mục hàng khách đang chọn trong giỏ cùng tổng tiền tạm tính.
Login User_id
Username
Password
Name
Mobile
Int(10)
Varchar(200)
Varchar(200)
Varchar(255)
Varchar(100)
PK
Not null
Not null
Not null
Not null
Quản lý tài khoản định danh, mật khẩu và thông tin liên hệ của khách hàng.
Orders ID
Order_id
Book_id
Book_name
Img
Price
Quantity
Total_price
User_id
Date_of_purchase
Status
Payment_method
Paid
Int(11)
Varchar(255)
Varchar(200)
Varchar(255)
Varchar(200)
Varchar(200)
Int(11)
Varchar(255)
Varchar(100)
Varchar(100)
Varchar(100)
Varchar(255)
Varchar(100)
PK
Not null
FK
Not null
Not null
Not null
Not null
Not null
FK
Not null
Not null
Not null
Not null
Lưu trữ chi tiết đơn hàng: trạng thái xử lý, phương thức thanh toán, tình trạng trả tiền và ngày mua.
Order_address ID
Address_id
Order_id
Int(11)
Int(11)
Varchar(250)
PK
FK
Not null
Bảng liên kết trung gian giữa địa chỉ nhận hàng và mã định danh đơn hàng.

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

Báo cáo đề tài được bố cục thành 4 chương chính theo tiến trình phát triển phần mềm:

Chương 1: Tổng quan đề tài

Chương này trình bày lý do lựa chọn đề tài xuất phát từ nhu cầu khắc phục các hạn chế của phương thức quản lý sách truyền thống bằng giấy tờ. Tác giả xác định mục tiêu xây dựng website bán sách trực tuyến hỗ trợ cả người mua và người bán, xác lập các yêu cầu chức năng (phân chia theo người quản lý và khách hàng), các ràng buộc kỹ thuật về giao diện (màu sắc hài hòa, không chi tiết thừa, font chữ không chân) và phạm vi ứng dụng dành cho các nhà sách vừa và nhỏ. Đồng thời, chương 1 giới thiệu tổng quan về các công nghệ nền tảng được lựa chọn gồm ngôn ngữ PHP, bộ ba công nghệ giao diện HTML/CSS/JavaScript cùng công cụ soạn thảo Adobe Dreamweaver CC.

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

Chương 2 tập trung chi tiết hóa kiến trúc hệ thống thông qua các công cụ mô hình hóa phần mềm. Nội dung bao gồm:

  • Thiết lập danh sách tác nhân, biểu đồ Use Case tổng quát và 13 Use Case chức năng: UC1 (Đăng nhập), UC2 (Đăng ký), UC3 (Tìm kiếm), UC4 (Xem trang chủ), UC5 (Xem sách), UC6 (Xem chi tiết sách), UC7 (Liệt kê sách), UC8 (Quản lý tài khoản), UC9 (Quản lý sách), UC10 (Quản lý phân quyền), UC11 (Quản lý nhà cung cấp), UC12 (Quản lý hoá đơn), UC13 (Quản lý giỏ hàng).
  • Xây dựng bảng đặc tả chi tiết cho từng Use Case (mô tả mục đích, điều kiện tiên quyết, luồng sự kiện chính và luồng sự kiện phụ xử lý lỗi).
  • Thiết kế hệ thống biểu đồ hoạt động (Activity chart) và biểu đồ tuần tự (Sequence diagram) cho các luồng nghiệp vụ: Đăng nhập, đăng ký, xem trang chủ, xem sách/chi tiết sách, quản lý tài khoản, quản lý sách, quản lý hóa đơn và quản lý giỏ hàng.
  • Xây dựng mô hình cơ sở dữ liệu quan hệ và đặc tả chi tiết 7 bảng dữ liệu lưu trữ vật lý (Address, Admin, Books, Cart, Login, Orders, Order_address).

Chương 3: Cài đặt và giao diện

Chương này minh họa kết quả triển khai giao diện người dùng thực tế của ứng dụng website thông qua 14 màn hình chức năng:

  1. Giao diện trang chủ: Hiển thị menu danh mục, logo thương hiệu, giỏ hàng và liên kết đăng nhập/đăng ký.
  2. Giao diện trang thanh toán: Tiếp nhận thông tin giao hàng (họ tên, địa chỉ, quận/huyện, tỉnh/thành phố, quốc gia, số điện thoại) và trả về kết quả trạng thái đặt hàng.
  3. Giao diện trang chi tiết sách: Trình bày đầy đủ thông tin ấn phẩm gồm tác giả, mô tả nội dung, giá bán và hình ảnh.
  4. Giao diện trang xem thông tin tài khoản & đổi mật khẩu: Cho phép khách hàng tra cứu và cập nhật dữ liệu cá nhân.
  5. Giao diện trang sách bán chạy: Phân loại và đề xuất các đầu sách có lượng tiêu thụ cao.
  6. Giao diện giỏ hàng & Lịch sử đặt hàng: Cho phép điều chỉnh số lượng mua, loại bỏ sản phẩm và theo dõi các đơn hàng đã đặt trong quá khứ.
  7. Giao diện quản trị hệ thống: Bao gồm màn hình đăng nhập admin, bảng điều khiển quản trị, giao diện quản lý tài khoản khách hàng, giao diện quản lý danh mục sách và giao diện tiếp nhận/xử lý hóa đơn.

Chương 4: Đánh giá kết quả và hướng phát triển

Chương cuối cùng tổng kết các kết quả đạt được sau quá trình nghiên cứu và lập trình. Tác giả đánh giá mức độ hoàn thiện của các chức năng đã cam kết, phân tích các ưu điểm về mặt giao diện và vận hành, đồng thời thẳng thắn chỉ ra các điểm còn hạn chế của phần mềm để xác định các định hướng nâng cấp, hoàn thiện tiếp theo.


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

Kết quả triển khai thực tế

  • Đề tài đã xây dựng hoàn chỉnh website bán sách trực tuyến "Online Book" với đầy đủ các phân hệ chức năng tương thích cho cả hai nhóm người dùng (khách hàng và quản trị viên).
  • Thiết lập thành công chu trình xử lý nghiệp vụ bán hàng khép kín: từ khâu hiển thị danh mục, chọn lọc ấn phẩm, quản lý giỏ hàng, thu thập thông tin giao nhận, lưu trữ hóa đơn cho đến quản lý đơn hàng phía quản trị.
  • Cơ sở dữ liệu quan hệ gồm 7 bảng được liên kết chặt chẽ qua các khóa ngoại, bảo đảm tính toàn vẹn dữ liệu cho thông tin người dùng, đơn hàng và danh mục sách.

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

  • Cung cấp một giải pháp phần mềm mã nguồn mở ứng dụng trực tiếp công nghệ PHP và MySQL, giúp các nhà sách quy mô vừa và nhỏ chuyển đổi phương thức quản lý thủ công bằng giấy tờ sang phương thức số hóa.
  • Chuẩn hóa tài liệu phân tích thiết kế hệ thống thông tin bán lẻ với đầy đủ các biểu đồ ca sử dụng, biểu đồ hoạt động, biểu đồ tuần tự và mô hình dữ liệu, làm tài liệu tham khảo cho việc xây dựng các ứng dụng web thương mại điện tử tương tự.

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

Hạn chế

  • Thời gian nghiên cứu và thực hiện đề tài tương đối ngắn (khoảng hơn 1 tháng), do đó kinh nghiệm lập trình và thiết kế của nhóm tác giả còn một số điểm bỡ ngỡ.
  • Mức độ bảo mật của website mới dừng lại ở mức tương đối cơ bản.
  • Chưa mở rộng tích hợp sâu các cổng thanh toán trực tuyến tự động của bên thứ ba cũng như các thuật toán gợi ý sản phẩm thông minh.

Hướng phát triển

  • Ứng dụng các công nghệ lập trình mới và tối ưu hóa mã nguồn để nâng cao tốc độ tải trang và tính ổn định của hệ thống.
  • Tăng cường các biện pháp bảo mật dữ liệu người dùng và an toàn giao dịch trực tuyến.
  • Mở rộng thêm các tính năng thương mại điện tử nâng cao nhằm giúp người dùng tiếp cận hệ thống thuận tiện và dễ dàng hơn.

Giá trị tham khảo

Báo cáo đề tài mang lại giá trị tham khảo thiết thực cho:

  • Sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm, Hệ thống thông tin: Tham khảo mẫu cấu trúc của một báo cáo môn học / đồ án phát triển phần mềm mã nguồn mở; học hỏi cách mô hình hóa hệ thống từ yêu cầu thực tế sang biểu đồ UML (Use Case, Activity, Sequence Diagram).
  • Lập trình viên mới tiếp cận lập trình web PHP/MySQL: Tham khảo phương pháp thiết kế cấu trúc bảng cơ sở dữ liệu quan hệ cho website thương mại điện tử cơ bản và quy trình kết nối, xử lý form dữ liệu giữa client và server.

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

1. Đề tài sử dụng những công nghệ và công cụ nào để xây dựng website?
Hệ thống sử dụng ngôn ngữ lập trình kịch bản PHP kết hợp hệ quản trị cơ sở dữ liệu MySQL ở phía máy chủ. Giao diện người dùng được xây dựng bằng HTML5, CSS và JavaScript/jQuery. Môi trường phát triển và soạn thảo mã nguồn bao gồm Visual Studio và Adobe Dreamweaver CC trên nền tảng máy chủ cục bộ Apache (XAMPP/MAMP).

2. Người quản lý (Admin) có quyền thực hiện những thao tác nào trên hệ thống?
Người quản lý có các quyền: Đăng nhập quản trị; quản lý danh mục sách (thêm, sửa, xóa, tìm kiếm sách); quản lý thông tin khách hàng (xem và tìm kiếm thông tin, nhưng không được quyền xóa tài khoản khách hàng); quản lý phân quyền; quản lý nhà cung cấp và theo dõi, xử lý hóa đơn đặt hàng.

3. Cơ sở dữ liệu của website gồm những bảng nào?
Cơ sở dữ liệu bao gồm 7 bảng chính: Address (lưu địa chỉ nhận hàng), Admin (tài khoản quản trị), Books (thông tin sách), Cart (thông tin giỏ hàng), Login (tài khoản và thông tin khách hàng), Orders (chi tiết đơn hàng và trạng thái thanh toán) và Order_address (bảng liên kết đơn hàng với địa chỉ nhận hàng).

4. Khách hàng có thể thực hiện các thao tác nào trong phần quản lý giỏ hàng?
Khách hàng có thể thêm sách vào giỏ hàng từ trang danh mục/chi tiết sách, điều chỉnh số lượng từng cuốn sách, xóa từng mục sách ra khỏi giỏ hàng và xem tổng số tiền tạm tính trước khi chuyển sang bước thanh toán.

5. Đề tài được hoàn thành trong khoảng thời gian bao lâu và do đơn vị nào hướng dẫn?
Đề tài được thực hiện trong khoảng thời gian hơn 1 tháng, hoàn thành vào tháng 07/2021 tại Viện Kỹ thuật – Công nghệ, Trường Đại học Thủ Dầu Một dưới sự hướng dẫn của ThS. Nguyễn Hữu Vĩnh.


Kết luận

Đồ án "Xây dựng website bán sách Online Book" của sinh viên Lê Đỗ Đức Thịnh và Lê Quang Chung (Trường Đại học Thủ Dầu Một) đã giải quyết trọn vẹn bài toán xây dựng ứng dụng web thương mại điện tử bán sách quy mô vừa và nhỏ trên nền tảng PHP và MySQL. Báo cáo cung cấp đầy đủ quy trình từ khảo sát yêu cầu, mô hình hóa hệ thống bằng các biểu đồ UML, thiết kế cơ sở dữ liệu quan hệ 7 bảng cho đến xây dựng 14 giao diện người dùng trực quan. Kết quả nghiên cứu là tài liệu tham khảo bổ ích cho sinh viên công nghệ thông tin trong việc nghiên cứu và thực hành phát triển phần mềm mã nguồn mở.