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

Đồ án tốt nghiệp với đề tài "Xây dựng website bán sách sử dụng Laravel" được thực hiện bởi sinh viên Nguyễn Hải Biên (lớp DCCNTT9.IT2, Khoa Công nghệ thông tin, Trường Đại học Công nghệ Đông Á) dưới sự hướng dẫn của ThS. Ngô Thị Hoa vào năm 2023 tại Bắc Ninh.

Theo phân tích của tác giả, công nghệ thông tin ngày càng phát triển mạnh mẽ và trở thành công cụ quan trọng đóng góp vào sự phát triển kinh tế - xã hội. Cùng với xu thế toàn cầu hóa, nhu cầu trao đổi hàng hóa của con người không ngừng gia tăng cả về số lượng và chất lượng. Việc sử dụng mạng Internet cho các hoạt động kinh doanh trực tuyến đang trở thành phương thức phổ biến và được ưa chuộng, giúp người tiêu dùng tiết kiệm đáng kể thời gian và chi phí đi lại.

Trong lĩnh vực kinh doanh sách, tác giả nhận thấy nhu cầu đọc tiểu thuyết và tìm hiểu các tác phẩm văn học nước ngoài của độc giả là rất lớn. Tuy nhiên, nhiều người đọc gặp khó khăn khi tìm kiếm các tác phẩm phù hợp do thiếu kênh phân phối tập trung và thuận tiện. Mặt khác, công tác quản lý tại các cửa hàng sách truyền thống phần lớn vẫn duy trì phương thức ghi chép trên văn bản, giấy tờ. Phương thức này bộc lộ nhiều bất cập: dễ xảy ra sai sót, tốn kém chi phí lưu trữ, gặp khó khăn khi tra cứu hoặc thay đổi thông tin mặt hàng. Do đó, việc ứng dụng phần mềm quản lý và cơ sở dữ liệu điện tử là yêu cầu cấp thiết nhằm cắt giảm chi phí, giảm thiểu sai sót, nâng cao hiệu suất và giảm bớt khối lượng công việc quản lý.

Từ bối cảnh thực tiễn đó, dự án xây dựng website bán sách mang thương hiệu "Book of Moon" được triển khai nhằm cung cấp giải pháp đặt mua tiểu thuyết trực tuyến đa dạng về thể loại và ngôn ngữ cho khách hàng, đồng thời hỗ trợ người quản trị cập nhật chính xác thông tin về sản phẩm, giá cả và đơn hàng.

Mục tiêu nghiên cứu và triển khai của đề tài được tác giả xác định cụ thể như sau:

  1. Mục tiêu tổng quát:

    • Phát triển website thương mại điện tử;
    • Thiết kế giao diện quản lý;
    • Tăng doanh thu bán hàng và giảm chi phí trong công tác quản lý.
  2. Mục tiêu cụ thể:

    • Xây dựng trang web và trang quản lý có giao diện đơn giản, ưa nhìn;
    • Người sử dụng dễ dàng thao tác và sử dụng các chức năng của trang web;
    • Người quản lý cần phải đăng nhập để sử dụng các chức năng quản trị.

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

  • Đối tượng nghiên cứu: Quy trình vận hành, kinh doanh trực tuyến và nghiệp vụ quản lý sản phẩm, đơn hàng của cửa hàng sách tiểu thuyết "Book of Moon"; các kỹ thuật phát triển ứng dụng web trên nền tảng PHP, Laravel Framework và hệ quản trị cơ sở dữ liệu MySQL.
  • Phạm vi nghiên cứu:
    • Không gian: Áp dụng cho mô hình vận hành của cửa hàng sách "Book of Moon" tại Trường Đại học Công nghệ Đông Á (Bắc Ninh).
    • Thời gian: Đồ án được nghiên cứu và hoàn thành trong năm 2023.
    • Nội dung: Tập trung vào hai phân hệ chính gồm phân hệ người dùng (Customer) với các chức năng xem, tìm kiếm, giỏ hàng, đặt hàng, thanh toán và phân hệ quản trị (Admin) với các chức năng quản lý danh mục, ngôn ngữ, sản phẩm, đơn hàng.

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

Để giải quyết bài toán đặt ra, tác giả đã vận dụng các cơ sở lý thuyết về kỹ thuật phần mềm, kiến trúc ứng dụng web và hệ quản trị cơ sở dữ liệu quan hệ, kết hợp với các phương pháp phân tích thiết kế hệ thống hướng đối tượng.

1. Nền tảng công nghệ và kiến trúc

  • Ngôn ngữ lập trình PHP: Được lựa chọn làm ngôn ngữ kịch bản phía máy chủ do tính linh hoạt, phổ biến và dễ sử dụng trong phát triển ứng dụng web.
  • Laravel Framework: Là một PHP framework mã nguồn mở và miễn phí, hỗ trợ quá trình phát triển phần mềm theo mô hình kiến trúc MVC (Model - View - Controller). Framework cung cấp cấu trúc cơ bản giúp đẩy nhanh tiến độ lập trình, tăng tính ổn định cho ứng dụng, giảm thiểu việc viết lại mã nguồn trùng lặp và phân tách độc lập giữa mã nguồn xử lý logic và giao diện hiển thị HTML.
  • Mô hình kiến trúc MVC:
    • Controller: Tiếp nhận và điều hướng các yêu cầu từ phía người dùng, kích hoạt các phương thức xử lý nghiệp vụ tương ứng.
    • Model: Chứa logic nghiệp vụ, định nghĩa đối tượng dữ liệu (Class), các phương thức xử lý và truy xuất cơ sở dữ liệu.
    • View: Đảm nhận vai trò hiển thị dữ liệu và tiếp nhận tương tác của người dùng, chứa các thành phần giao diện đồ họa (GUI) như hình ảnh, hộp văn bản (textbox).
  • Hệ quản trị cơ sở dữ liệu MySQL: Là 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 tích hợp chặt chẽ với Apache và PHP. Tác giả phân tích rõ ưu điểm của MySQL về tốc độ xử lý cao, ổn định, hỗ trợ bảo mật nhiều cấp, tương thích các chuẩn SQL và khả năng mở rộng. Đồng thời, văn bản cũng chỉ ra nhược điểm: khi số lượng bản ghi tăng lớn, tốc độ truy xuất sẽ giảm dần, đòi hỏi các giải pháp can thiệp kỹ thuật như tạo bộ nhớ đệm (cache) hoặc phân tải cơ sở dữ liệu qua nhiều máy chủ.

2. Phương pháp nghiên cứu và phân tích thiết kế

  • Phương pháp phân tích hệ thống hướng đối tượng: Sử dụng hệ thống ký hiệu và biểu đồ UML (Unified Modeling Language) để mô hình hóa toàn bộ yêu cầu và hành vi hệ thống:
    • Biểu đồ ca sử dụng (Use Case Diagram): Xác định ranh giới hệ thống, tác nhân và các chức năng tương tác.
    • Biểu đồ tuần tự (Sequence Diagram): Mô tả tuần tự thời gian và luồng thông điệp trao đổi giữa đối tượng giao diện, điều khiển và cơ sở dữ liệu cho từng chức năng.
    • Biểu đồ hoạt động (Activity Diagram): Mô hình hóa luồng xử lý nghiệp vụ, điều kiện rẽ nhánh và trạng thái kết thúc của các ca sử dụng.
    • Biểu đồ lớp (Class Diagram): Mô tả cấu trúc các đối tượng thực thể trong hệ thống phần mềm.
  • Phương pháp thiết kế dữ liệu quan hệ: Xây dựng sơ đồ quan hệ thực thể (ERD) và chuẩn hóa danh mục các bảng dữ liệu lưu trữ trên hệ quản trị MySQL.
  • Phương pháp phân tách phân hệ: Toàn bộ hệ thống được chia làm hai phân hệ độc lập về mặt quyền hạn: phân hệ khách hàng (Customer) và phân hệ quản trị (Admin).

Thiết kế và triển khai

Hệ thống website bán sách "Book of Moon" được thiết kế và triển khai dựa trên các phân tích kỹ thuật chi tiết từ tác nhân, trường hợp sử dụng đến cấu trúc dữ liệu vật lý.

1. Phân tích tác nhân và chức năng hệ thống

Hệ thống xác định hai tác nhân (Actor) chính tham gia vào các tiến trình nghiệp vụ:

STT Tên Actor Ý nghĩa và quyền hạn trong hệ thống
1 Admin Có toàn quyền điều hành, quản lý, theo dõi mọi hoạt động của hệ thống; thực hiện toàn bộ các chức năng quản trị.
2 Customer Khách hàng truy cập website, tìm kiếm, xem thông tin sản phẩm, đặt mua, quản lý giỏ hàng, đăng ký, đăng nhập và thanh toán.

Các chức năng được phân bổ cụ thể theo từng phân hệ:

  • Chức năng phân hệ người dùng (Customer):

    1. Đặt hàng: Cho phép người dùng đặt mua các cuốn sách/tiểu thuyết trên website.
    2. Thanh toán: Người dùng chọn sản phẩm vào giỏ hàng, nhấn thanh toán; hệ thống kiểm tra thông tin, yêu cầu đăng nhập và điều hướng đến trang thanh toán.
    3. Xem thông tin sản phẩm: Hiển thị chi tiết hình ảnh, nội dung, giá bán của đầu sách.
    4. Tìm kiếm sản phẩm: Tìm kiếm đầu sách theo nhu cầu trên website.
    5. Quản lý giỏ hàng: Cho phép người dùng theo dõi và xóa sản phẩm khỏi giỏ hàng.
  • Chức năng phân hệ quản trị (Admin):

    1. Đăng nhập / Đăng xuất: Xác thực quyền quản trị qua email, mật khẩu để bắt đầu hoặc kết thúc phiên làm việc.
    2. Quản lý danh mục sản phẩm: Thực hiện thêm mới, chỉnh sửa, ẩn/hiển thị và xóa danh mục.
    3. Quản lý ngôn ngữ: Thực hiện thêm mới, chỉnh sửa, ẩn/hiển thị và xóa ngôn ngữ sản phẩm.
    4. Quản lý sản phẩm: Thực hiện thêm mới, chỉnh sửa, ẩn/hiển thị và xóa thông tin sách.
    5. Quản lý đơn hàng: Xem danh sách đơn hàng, ẩn/hiển thị và cập nhật trạng thái đơn hàng.

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

Cơ sở dữ liệu của hệ thống được xây dựng trên MySQL, bao gồm 12 bảng phục vụ lưu trữ nghiệp vụ thương mại điện tử và các bảng hỗ trợ vận hành mặc định của Laravel Framework:

STT Tên bảng Ý nghĩa nghiệp vụ Khóa chính / Khóa ngoại tiêu biểu
1 tbl_admin Quản lý tài khoản quản trị viên admin_id (PK)
2 tbl_category_product Quản lý danh mục sản phẩm category_id (PK)
3 tbl_pub Quản lý ngôn ngữ sản phẩm pub_id (PK)
4 tbl_product Quản lý thông tin sách/tiểu thuyết product_id (PK), category_id (FK), pub_id (FK)
5 tbl_customer Quản lý tài khoản khách hàng customer_id (PK)
6 tbl_shipping Quản lý thông tin địa chỉ giao hàng shipping_id (PK)
7 tbl_order Quản lý thông tin tổng quan đơn hàng order_id (PK), customer_id (FK), shipping_id (FK)
8 tbl_order_detail Quản lý chi tiết từng mặt hàng trong đơn order_details_id (PK), order_id (FK), product_id (FK)
9 migrations Quản lý khởi tạo cấu trúc bảng Laravel id (PK)
10 personal_access_tokens Quản lý mã token xác thực người dùng id (PK), tokenable_id (FK)
11 users Quản lý người dùng hệ thống chung id (PK)
12 password_reset_tokens Quản lý token phục vụ đặt lại mật khẩu email, token

Cấu trúc chi tiết của các bảng nghiệp vụ cốt lõi:

  • tbl_admin: admin_id (int 10, Auto_increment), admin_email (varchar 100), admin_password (varchar 255), admin_name (varchar 255), admin_phone (varchar 255), created_at (timestamp), update_at (timestamp).
  • tbl_category_product: category_id (int 10, Auto_increment), category_name (varchar 255), category_desc (text), slug_category (text), category_status (int 11), created_at (timestamp), update_at (timestamp).
  • tbl_pub: pub_id (int 10, Auto_increment), pub_name (varchar 255), pub_desc (text), pub_slug (text), pub_status (int 11), created_at (timestamp), update_at (timestamp).
  • tbl_product: product_id (int 10, Auto_increment), category_id (int 10), pub_id (int 10), product_name (varchar 255), product_desc (text), product_content (text), product_price (varchar 255), product_image (varchar 255), product_status (int 11), created_at (timestamp), update_at (timestamp).
  • tbl_shipping: shipping_id (int 10, Auto_increment), shipping_name (varchar 255), shipping_address (varchar 255), shipping_phone (varchar 255), shipping_email (varchar 255), created_at (timestamp), updated_at (timestamp).
  • tbl_order: order_id (bigint 20, Auto_increment), customer_id (int 10), shipping_id (int 10), order_total (varchar 50), order_status (int 11), created_at (timestamp), update_at (timestamp).
  • tbl_order_detail: order_details_id (bigint 20, Auto_increment), order_id (bigint 20), product_id (int 10), product_name (varchar 255), product_price (varchar 50), product_sales_quantity (int 11), created_at (timestamp), update_at (timestamp).
  • tbl_customer: customer_id (int 10, Auto_increment), customer_name (varchar 255), customer_email (varchar 255), customer_password (varchar 255), customer_phone (varchar 255), created_at (timestamp), updated_at (timestamp).

3. Quy trình tương tác nghiệp vụ

Tác giả đã chi tiết hóa quy trình xử lý của từng chức năng thông qua hệ thống kịch bản Use Case, biểu đồ tuần tự và biểu đồ hoạt động:

  • Đăng nhập quản trị (Login): Admin nhập email và password vào form. Hệ thống thực hiện kiểm tra xác thực. Nếu hợp lệ, phiên làm việc được thiết lập cho phép truy cập các chức năng quản trị; nếu sai, hệ thống hiển thị thông báo lỗi và cung cấp tùy chọn "quên mật khẩu".
  • Quản lý danh mục, ngôn ngữ và sản phẩm: Đều tuân thủ quy trình kiểm tra dữ liệu đầu vào trước khi thực thi truy vấn cơ sở dữ liệu:
    • Thêm mới: Nhận dữ liệu từ form, kiểm tra tính hợp lệ, thêm bản ghi mới vào bảng tương ứng và thông báo thành công.
    • Chỉnh sửa: Tải dữ liệu cũ lên giao diện cập nhật, nhận thông tin sửa đổi, xác thực và lưu vào cơ sở dữ liệu.
    • Xóa: Kích hoạt xác nhận cảnh báo xóa, nếu người dùng đồng ý sẽ thực hiện xóa bản ghi trong bảng và cập nhật lại danh sách hiển thị.
  • Quản lý đơn hàng: Admin kiểm tra danh sách đơn đặt hàng từ khách hàng, chọn đơn hàng cần xử lý và thực hiện cập nhật chuyển đổi trạng thái đơn hàng.
  • Tương tác của khách hàng: Khách hàng duyệt danh sách sản phẩm, sử dụng thanh tìm kiếm, chọn xem chi tiết sản phẩm, thực hiện đưa sản phẩm vào giỏ hàng và chuyển sang tiến trình đặt hàng/thanh toán.

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

Bố cục khóa luận được triển khai thành các chương và phần nội dung chuyên biệt theo đúng tiến trình phân tích, thiết kế và cài đặt hệ thống phần mềm:

Lời mở đầu và Chương 1. Lý do chọn đề tài

Nội dung chương tập trung giới thiệu sự cần thiết của việc xây dựng website bán sách trực tuyến "Book of Moon". Tác giả trình bày thực trạng kinh doanh sách tiểu thuyết, chỉ rõ sự hạn chế của công tác quản lý thủ công truyền thống bằng giấy tờ và nêu bật lợi ích của công nghệ thông tin trong việc tối ưu hóa chi phí và nhân lực.

Chương 1 cũng xác định hệ thống mục tiêu tổng quát, mục tiêu cụ thể, nội dung thực hiện và phân chia phương pháp triển khai thành hai phân hệ User và Admin. Đồng thời, tác giả dành dung lượng giới thiệu nền tảng công nghệ sử dụng bao gồm ngôn ngữ kịch bản PHP, Laravel Framework với mô hình MVC (Controller, Model, View), và hệ quản trị cơ sở dữ liệu quan hệ MySQL kèm theo đánh giá ưu nhược điểm kỹ thuật của MySQL.

Phân tích và thiết kế hệ thống

Đây là nội dung trọng tâm của đồ án, chiếm khối lượng phân tích lớn với các đặc tả kỹ thuật hoàn chỉnh:

  • Phân tích yêu cầu chức năng và tác nhân: Trình bày chi tiết 2 tác nhân (Admin, Customer), 5 chức năng người dùng trên website và 6 nhóm chức năng quản trị.
  • Đặc tả ca sử dụng (Use Case): Hệ thống hóa bảng mô tả chi tiết cho Use Case Login, các Use Case CRUD (Thêm, Sửa, Xóa) danh mục sản phẩm, ngôn ngữ sản phẩm, sản phẩm và Use Case cập nhật trạng thái đơn hàng (Bảng 4 đến Bảng 14).
  • Mô hình hóa động: Trình bày 13 biểu đồ tuần tự (Hình 7 đến Hình 19) và 10 biểu đồ hoạt động (Hình 20 đến Hình 29) mô tả chi tiết luồng xử lý từ giao diện qua hệ thống đến cơ sở dữ liệu đối với các thao tác đăng nhập, thêm/sửa/xóa thực thể, xem, tìm kiếm và thêm giỏ hàng.
  • Mô hình hóa tĩnh và cấu trúc dữ liệu: Xây dựng biểu đồ lớp (Hình 30), danh mục 12 bảng cơ sở dữ liệu (Bảng 15) và chi tiết thuộc tính, kiểu dữ liệu, ràng buộc khóa chính/khóa ngoại của từng bảng (Bảng 16 đến Bảng 27).

Cài đặt hệ thống website

Chương này phản ánh kết quả lập trình và đóng gói ứng dụng thông qua hệ thống giao diện thực tế đã được xây dựng:

  • Giao diện người dùng: Cài đặt hoàn thiện giao diện trang chủ, giao diện trang chi tiết sản phẩm, giao diện đăng nhập/đăng ký tài khoản và giao diện quản lý giỏ hàng của khách hàng.
  • Giao diện quản trị: Triển khai các màn hình quản trị nội bộ gồm giao diện trang đăng nhập dành cho admin, giao diện danh sách quản lý danh mục sản phẩm, giao diện quản lý ngôn ngữ sản phẩm, biểu mẫu thêm mới ngôn ngữ sản phẩm và giao diện theo dõi, xử lý đơn hàng.

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

Dựa trên toàn bộ nội dung đồ án, các kết quả và đóng góp cụ thể được tác giả ghi nhận bao gồm:

  • Kết quả xây dựng hệ thống:

    • Hoàn thành phân tích, thiết kế và cài đặt hệ thống website thương mại điện tử "Book of Moon" chuyên kinh doanh tiểu thuyết với đầy đủ hai phân hệ người dùng và quản trị viên.
    • Xây dựng thành công cơ sở dữ liệu quan hệ gồm 12 bảng trên hệ quản trị MySQL, đảm bảo liên kết dữ liệu giữa các thực thể sản phẩm, danh mục, ngôn ngữ (tbl_pub), khách hàng, đơn hàng và địa chỉ giao hàng.
    • Thiết kế và tài liệu hóa hoàn chỉnh hệ thống mô hình UML gồm 6 biểu đồ Use Case tổng quát và chi tiết, 13 biểu đồ tuần tự, 10 biểu đồ hoạt động và 1 biểu đồ lớp.
    • Triển khai các màn hình chức năng hoạt động thực tế: từ trang chủ, chi tiết sản phẩm, giỏ hàng phía người dùng đến các chức năng quản lý danh mục, ngôn ngữ, sản phẩm và đơn hàng phía quản trị.
  • Giải pháp và đóng góp của đề tài:

    • Đưa ra giải pháp số hóa quy trình quản lý bán sách tiểu thuyết, thay thế phương thức quản lý ghi chép giấy tờ truyền thống vốn dễ gây nhầm lẫn và khó tra cứu.
    • Ứng dụng mô hình MVC thông qua Laravel Framework giúp mã nguồn được tổ chức rõ ràng, tách biệt logic nghiệp vụ khỏi giao diện hiển thị, hỗ trợ bảo trì và phát triển ứng dụng thuận tiện.
    • Cung cấp một kênh mua sắm trực tuyến chuyên biệt về tiểu thuyết đa dạng thể loại và ngôn ngữ, tạo điều kiện thuận lợi cho độc giả tiếp cận tác phẩm văn học theo sở thích cá nhân.

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

  • Hạn chế:

    • Tác giả tự nhìn nhận trình độ hiểu biết còn hạn hẹp nên đồ án khó tránh khỏi những thiếu sót trong quá trình nghiên cứu và cài đặt phần mềm.
    • Về mặt chức năng, hệ thống mới chỉ dừng lại ở quy trình đặt hàng và lưu thông tin giao hàng nội bộ qua bảng tbl_shipping và tbl_order, chưa tích hợp các cổng thanh toán trực tuyến của bên thứ ba.
    • Đồ án chưa triển khai các giải pháp xử lý phân tải cơ sở dữ liệu hoặc thiết lập bộ nhớ đệm (cache) cho MySQL như những hạn chế về hiệu năng dữ liệu lớn đã được phân tích ở phần lý thuyết.
    • Chưa có nội dung kiểm thử phần mềm tự động (unit test, integration test) và đánh giá an toàn bảo mật chuyên sâu.
  • Hướng nghiên cứu và phát triển tiếp:

    • Tiếp thu các ý kiến đóng góp của hội đồng hướng dẫn để hoàn thiện, cải tiến chất lượng nội dung và chức năng của phần mềm.
    • Tối ưu hóa hiệu năng truy xuất cơ sở dữ liệu MySQL khi quy mô bản ghi tăng cao bằng cách áp dụng kỹ thuật caching hoặc phân tải máy chủ dữ liệu.
    • Nâng cấp và mở rộng các tính năng nghiệp vụ, tích hợp các phương thức thanh toán trực tuyến hiện đại và cải tiến trải nghiệm người dùng trên website.

Giá trị tham khảo

Đồ án là tài liệu tham khảo thực tế dành cho:

  • Sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm: Đặc biệt là những sinh viên đang làm quen với ngôn ngữ lập trình PHP, mô hình kiến trúc MVC và Laravel Framework trong các đồ án cơ sở ngành hoặc khóa luận tốt nghiệp về thương mại điện tử.
  • Người làm đề tài phân tích thiết kế hệ thống web: Cung cấp tài liệu mẫu trực quan về cách đặc tả yêu cầu, viết kịch bản ca sử dụng (Use Case specification) và vẽ các biểu đồ UML chuẩn tắc (biểu đồ tuần tự, biểu đồ hoạt động, biểu đồ lớp) cho một bài toán bán hàng thực tế.
  • Phần đáng tham khảo nhất: Cấu trúc thiết kế 12 bảng cơ sở dữ liệu quan hệ và hệ thống biểu đồ tương tác chi tiết mô tả rõ ràng các bước thực hiện thao tác CRUD từ giao diện điều khiển đến cơ sở dữ liệu.

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

1. Tên cửa hàng sách và đối tượng sản phẩm chính mà website hướng tới là gì?
Website được xây dựng cho cửa hàng sách mang tên "Book of Moon", chuyên cung cấp các đầu sách tiểu thuyết trực tuyến đa dạng về thể loại và ngôn ngữ, đặc biệt hướng đến người đọc có nhu cầu tìm hiểu các tác phẩm tiểu thuyết nước ngoài.

2. Bảng dữ liệu nào trong cơ sở dữ liệu đảm nhận chức năng quản lý ngôn ngữ sản phẩm?
Theo danh mục và chi tiết thiết kế cơ sở dữ liệu của đồ án, bảng tbl_pub (với các trường pub_id, pub_name, pub_desc, pub_slug, pub_status) được sử dụng để quản lý thông tin ngôn ngữ sản phẩm.

3. Khách hàng cần điều kiện gì để thực hiện chức năng thanh toán trên website?
Theo mô tả chức năng của đồ án, khi người dùng chọn giỏ hàng và nhấn vào nút "Thanh toán", hệ thống sẽ tiến hành kiểm tra thông tin và bắt buộc người dùng phải đăng nhập tài khoản trước khi hiển thị trang thanh toán.

4. Đề tài đã phân tích những nhược điểm kỹ thuật nào của hệ quản trị cơ sở dữ liệu MySQL?
Tác giả đã chỉ ra ba nhược điểm chính: MySQL có những hạn chế về chức năng đối với một số ứng dụng đặc thù; một số chức năng xử lý làm cho hệ thống kém tin cậy hơn so với một vài RDBMS khác; và khi số lượng bản ghi lớn dần, việc truy xuất dữ liệu sẽ trở nên khó khăn, đòi hỏi phải chia tải database ra nhiều server hoặc tạo bộ nhớ cache.

5. Cơ sở dữ liệu của hệ thống gồm bao nhiêu bảng và các bảng mặc định của Laravel là những bảng nào?
Hệ thống sử dụng tổng cộng 12 bảng dữ liệu, trong đó bao gồm các bảng được Laravel khởi tạo phục vụ quản trị và xác thực là: migrations, personal_access_tokens, users và password_reset_tokens.

Kết luận

Đồ án tốt nghiệp "Xây dựng website bán sách sử dụng Laravel" của sinh viên Nguyễn Hải Biên đã giải quyết bài toán tin học hóa quy trình kinh doanh và quản lý bán sách tiểu thuyết cho cửa hàng "Book of Moon". Tác giả đã hoàn thành việc phân tích yêu cầu, mô hình hóa hệ thống bằng các biểu đồ UML chi tiết và thiết kế cơ sở dữ liệu quan hệ gồm 12 bảng trên nền tảng MySQL. Ứng dụng được cài đặt dựa trên kiến trúc MVC của Laravel Framework, cung cấp đầy đủ các giao diện cần thiết cho người dùng mua sách và người quản trị vận hành đơn hàng, danh mục sản phẩm.