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 và được ứng dụng sâu rộng vào các lĩnh vực kinh tế, sản xuất và đời sống, việc xây dựng các nền tảng kỹ thuật số giúp nâng cao chất lượng công việc, tối ưu hiệu suất, tiết kiệm chi phí và thời gian vận hành. Đối với các doanh nghiệp vừa và nhỏ hoặc các cửa hàng kinh doanh đơn lẻ, mô hình bán hàng truyền thống phụ thuộc vào mặt bằng vật lý thường bị giới hạn bởi phạm vi địa lý hẹp, chỉ tiếp cận được khách hàng tại địa phương. Bên cạnh đó, việc phụ thuộc vào các mạng xã hội như Facebook bộc lộ nhiều điểm hạn chế trong khâu quản lý dữ liệu, chăm sóc khách hàng và xử lý giao dịch.

Đề tài "Xây dựng website bán giày cho cửa hàng Giayrep.vn" do sinh viên Lê Văn Minh thực hiện (ngành Công nghệ Thông tin, Khoa Công nghệ Số, Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng, dưới sự hướng dẫn của ThS. Đỗ Phú Huy vào tháng 09/2021) được triển khai nhằm giải quyết các bài toán vận hành thực tế nói trên.

Mục tiêu và nhiệm vụ nghiên cứu của đồ án bao gồm:

  1. Xây dựng một website thương mại điện tử chuyên kinh doanh giày dép hoạt động liên tục 24/7, giúp mở rộng tệp khách hàng trên phạm vi toàn quốc qua môi trường Internet.
  2. Giảm thiểu áp lực nhân sự tư vấn trực tiếp thông qua việc cung cấp đầy đủ thông tin sản phẩm và các kênh liên lạc trực tuyến.
  3. Hoàn thiện công cụ quản lý, thống kê kho hàng, theo dõi đơn hàng và doanh thu nhằm hạn chế sai sót trong quá trình giao dịch.
  4. Tích hợp song song hai phương thức thanh toán: thanh toán thường và thanh toán trực tuyến (online), đồng thời thiết lập cơ chế tự động chuyển đổi trạng thái về đơn hàng thường khi giao dịch online phát sinh lỗi để hỗ trợ khách hàng xử lý thủ công.

Đố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ẻ trực tuyến, quản lý sản phẩm, đơn hàng, kho bãi và hệ thống cơ sở dữ liệu phục vụ website thương mại điện tử Giayrep.vn.
  • Phạm vi không gian và thời gian: Nghiên cứu nghiệp vụ tại cửa hàng Giayrep.vn, thực hiện trong khuôn khổ đồ án tốt nghiệp tại Đại học Đà Nẵng với tiến độ triển khai gồm 7 giai đoạn trong thời gian 16 tuần:
STT Nội dung công việc Thời gian thực hiện
1 Tìm hiểu quy trình nghiệp vụ thực tế của cửa hàng 1 tuần
2 Phân tích thiết kế hệ thống 3 tuần
3 Xây dựng cơ sở dữ liệu 3 tuần
4 Thiết kế giao diện website 2 tuần
5 Xây dựng các chức năng chính 4 tuần
6 Kiểm thử hệ thống 1 tuần
7 Viết báo cáo và làm slide 2 tuần

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

Đồ án ứng dụng các nền tảng công nghệ, kiến trúc phần mềm và thư viện lập trình web mã nguồn mở để hiện thực hóa hệ thống:

  • Kiến trúc phần mềm Model-View-Controller (MVC): Mô hình phân tách ứng dụng thành ba tầng độc lập:
    • Model: Chịu trách nhiệm truy vấn, xử lý và làm việc trực tiếp với cơ sở dữ liệu.
    • View: Đảm nhận vai trò hiển thị dữ liệu sang mã HTML và cung cấp giao diện tương tác cho người dùng.
    • Controller: Đóng vai trò cầu nối tiếp nhận các yêu cầu (requests) từ người dùng, gọi Model xử lý dữ liệu và chuyển kết quả tương ứng sang View.
  • Laravel Framework: Nền tảng PHP mã nguồn mở do Taylor Otwell phát triển, hỗ trợ kiến trúc MVC. Tác giả phân tích các ưu điểm của Laravel gồm: cập nhật các tính năng mới của PHP, tài liệu hoàn chỉnh, tích hợp công cụ dòng lệnh Artisan để quản trị cơ sở dữ liệu/tạo khung MVC, tính năng Reverse Routing tự động ánh xạ URL theo tên định tuyến. Về nhược điểm, framework này không tích hợp sẵn cổng thanh toán mặc định, có sự gián đoạn cấu trúc khi nâng cấp từ bản 4 lên bản 5, và cơ chế tải lại toàn bộ trang web (full page reload) có thể gây tải chậm hơn so với mô hình backend chỉ trả JSON API.
  • Công cụ môi trường XAMPP: Môi trường máy chủ phát triển cục bộ tích hợp máy chủ web Apache (giao tiếp HTTP), hệ quản trị cơ sở dữ liệu MySQL, ngôn ngữ kịch bản phía máy chủ PHP và ngôn ngữ lập trình Perl.
  • Thư viện giao diện Bootstrap: Framework giao diện HTML/CSS/JavaScript (được Twitter phát triển từ giữa năm 2010, phát hành chính thức tháng 8/2011), sử dụng hệ thống lưới Grid System 12 cột (độ rộng tiêu chuẩn 940px) và tích hợp tính năng Responsive Web Design tự động co giãn giao diện tương thích với đa dạng kích thước màn hình.
  • Thư viện jQuery: Thư viện JavaScript do John Resig phát triển năm 2006 với phương châm "Viết ít hơn, làm nhiều hơn", cung cấp các hàm xử lý cây cấu trúc Document Object Model (DOM) và các tác vụ gọi Asynchronous JavaScript and XML (AJAX) để cập nhật dữ liệu máy chủ không cần tải lại toàn bộ trang.

Phương pháp nghiên cứu thực tế được tác giả sử dụng là phương pháp phân tích - thiết kế hướng đối tượng thông qua ngôn ngữ mô hình hóa UML (gồm sơ đồ ca sử dụng Use Case, sơ đồ tuần tự Sequence Diagram, sơ đồ lớp Class Diagram), kết hợp thiết kế cơ sở dữ liệu quan hệ trên MySQL và phương pháp phát triển phần mềm theo các giai đoạn tuần tự.

Thiết kế và triển khai

Hệ thống được thiết kế hoàn chỉnh từ kiến trúc phân tầng, mô hình dữ liệu quan hệ đến các giao diện chức năng cụ thể cho hai nhóm đối tượng: khách hàng và quản trị viên.

Kiến trúc cơ sở dữ liệu

Cơ sở dữ liệu của website Giayrep.vn được xây dựng trên hệ quản trị MySQL, bao gồm 11 bảng dữ liệu có cấu trúc như sau:

Tên bảng Chức năng lưu trữ trong hệ thống
admins Thông tin tài khoản quản trị viên và nhân viên phân quyền
articles Danh sách bài viết và tin tức hiển thị trên website
categories Danh mục phân loại các dòng sản phẩm giày
contacts Dữ liệu phản hồi, liên hệ từ người dùng gửi về ban quản trị
orders Chi tiết các mặt hàng thuộc đơn hàng đã đặt
page_statics Nội dung các trang tĩnh (chính sách, điều khoản, bảo mật)
password_resets Mã xác thực và dữ liệu phục vụ tính năng đặt lại mật khẩu
products Thông tin chi tiết sản phẩm giày (tên, giá, hình ảnh, khuyến mãi, số lượng, mô tả)
ratings Dữ liệu đánh giá điểm sao (1-5 sao) và nhận xét của người dùng
transactions Dữ liệu giao dịch, trạng thái thanh toán và tổng tiền đơn hàng
users Dữ liệu tài khoản thành viên (email, mật khẩu, họ tên, địa chỉ, số điện thoại)

Thiết kế luồng xử lý và biểu đồ tuần tự (Sequence Diagram)

Hệ thống thiết lập 8 biểu đồ tuần tự mô tả chi tiết tương tác giữa tác nhân (Actor), Giao diện (View/Interface), Bộ điều khiển (Controller) và Mô hình dữ liệu (Model/Database):

  • Luồng xác thực đăng nhập: Người dùng nhập email và mật khẩu qua giao diện $\rightarrow$ Controller kiểm tra cú pháp và định dạng $\rightarrow$ nếu sai trả về lỗi tại giao diện, nếu đúng gửi yêu cầu truy vấn đến Model $\rightarrow$ Model kiểm tra bảng users/admins trong CSDL $\rightarrow$ trả kết quả về Controller để phân quyền và chuyển hướng vào trang chủ hoặc dashboard quản trị.
  • Luồng xử lý đơn hàng và thanh toán: Người dùng chọn sản phẩm vào giỏ $\rightarrow$ kiểm tra thông tin $\rightarrow$ chọn hình thức thanh toán thường hoặc thanh toán online $\rightarrow$ hệ thống lưu đơn hàng vào bảng transactions và orders ở trạng thái chờ xử lý $\rightarrow$ nếu giao dịch online thất bại, hệ thống gửi thông báo lỗi và tự động bảo lưu trạng thái đơn hàng thường để xử lý đối soát sau.

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

Chương 1: Đặt vấn đề và định hướng giải pháp

Chương này phân tích tính cấp thiết của việc ứng dụng công nghệ thông tin vào thương mại bán lẻ nhằm tháo gỡ rào cản địa lý và tiết kiệm chi phí cho cửa hàng Giayrep.vn. Tác giả phân chia chi tiết các nhóm chức năng theo 4 vai trò tác nhân:

  • Người dùng chung: Đăng ký thành viên, xem thông tin sản phẩm (giá, ảnh, mô tả), tìm kiếm theo tên/danh mục, lọc theo giá, gửi liên hệ, xem và cập nhật giỏ hàng.
  • Khách hàng (đã đăng nhập): Quản lý thông tin tài khoản, đánh giá sản phẩm, đặt hàng, theo dõi đơn hàng đã mua, sản phẩm yêu thích, sản phẩm mua sau.
  • Nhân viên: Đăng nhập, cập nhật thông tin cá nhân, tra cứu và cập nhật dữ liệu sản phẩm, khách hàng, đơn hàng, danh mục; xem báo cáo doanh thu theo ngày/tháng/năm.
  • Quản lý: Có toàn quyền quản trị cao nhất, thực hiện phân quyền và tạo tài khoản nhân viên, quản lý danh mục, kho hàng, sản phẩm, đơn hàng và các thiết lập trang tĩnh. Chương 1 cũng đưa ra bảng kế hoạch triển khai chi tiết kéo dài 16 tuần từ khâu khảo sát đến khi hoàn thiện báo cáo.

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

Nội dung chương 2 tập trung trình bày các công nghệ nền tảng của dự án:

  • Phân tích nguyên lý làm việc của kiến trúc MVC trong ứng dụng web.
  • Đánh giá ưu điểm và hạn chế của Laravel Framework, nêu rõ vai trò của công cụ dòng lệnh Artisan và cơ chế định tuyến Reverse Routing.
  • Trình bày thành phần của bộ công cụ XAMPP (Apache, MySQL, PHP, Perl) trong việc thiết lập máy chủ phát triển cục bộ.
  • Giới thiệu lịch sử phát triển, cấu trúc Grid System 12 cột và cơ chế Responsive Web Design của Bootstrap qua các phiên bản.
  • Giới thiệu thư viện jQuery, cơ chế thao tác DOM và giao thức truyền tải bất đồng bộ AJAX.

Chương 3: Phân tích chức năng

Chương 3 là phần trọng tâm phân tích kỹ thuật với hệ thống 19 biểu đồ Use Case và 8 biểu đồ tuần tự (Sequence Diagram). Tác giả xây dựng 47 bảng đặc tả ca sử dụng chi tiết (bao gồm mô tả Use Case, dòng sự kiện chính - Main Flow, dòng sự kiện khác - Alternative/Exception Flow) cho các chức năng:

  • Nhóm người dùng: Đăng ký (Bảng 23-25), Đăng nhập (Bảng 1-3), Quản lý thông tin cá nhân (Bảng 26-28), Quên mật khẩu (Bảng 29-31), Xem chi tiết sản phẩm (Bảng 32-33), Tìm kiếm sản phẩm (Bảng 34-35), Đánh giá sản phẩm (Bảng 36-38), Quản lý giỏ hàng (Bảng 39-40), Thanh toán (Bảng 41-43), Xem tin tức (Bảng 44-45), Liên hệ (Bảng 46-47).
  • Nhóm quản trị: Quản lý danh mục (Bảng 4-6), Quản lý sản phẩm (Bảng 7-9), Quản lý tin tức (Bảng 10-12), Quản lý đơn hàng (Bảng 13-14), Quản lý kho (Bảng 15-17), Quản lý trang tĩnh (Bảng 18-20), Quản lý liên hệ (Bảng 21-22), Phân quyền người dùng.

Chương 4: Thiết kế hệ thống

Chương 4 mô tả kiến trúc tổng thể của hệ thống, thiết lập biểu đồ lớp (Class Diagram) và mô hình hóa cơ sở dữ liệu quan hệ. Nội dung chi tiết bao gồm danh mục 11 bảng dữ liệu (từ Bảng 48 đến Bảng 59) với các trường thông tin cụ thể phục vụ lưu trữ sản phẩm, phân loại danh mục, tin tức, tài khoản quản trị, thành viên, đánh giá sản phẩm, đơn hàng và các giao dịch.

Chương 5: Kết quả cài đặt

Trình bày kết quả lập trình và triển khai thực tế qua các giao diện chức năng hoàn thiện:

  • Phía người dùng: Giao diện trang chủ, giao diện đăng ký, giao diện đăng nhập, giao diện chi tiết và đánh giá sản phẩm (chọn số sao từ 1 đến 5 và nhập nhận xét), giao diện giỏ hàng (thay đổi số lượng, xóa sản phẩm), giao diện thanh toán trực tuyến.
  • Phía quản trị viên: Giao diện đăng nhập quản trị, giao diện tổng quan (dashboard thống kê), giao diện quản lý danh mục (thêm/sửa/xóa/trạng thái hiển thị), giao diện quản lý sản phẩm (thuộc tính giá, % khuyến mãi, hàng nổi bật), giao diện quản lý tin tức, giao diện quản lý đơn hàng (lọc theo tình trạng, thống kê theo ngày tháng), giao diện quản lý các trang tĩnh.

Chương 6: Kết luận và phương hướng phát triển

Đánh giá tổng kết các mục tiêu đã đạt được so với kế hoạch ban đầu và đề xuất các phương hướng nghiên cứu phát triển tiếp theo cho hệ thống.

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

Đồ án ghi nhận các kết quả thực tế cụ thể sau quá trình triển khai:

  • Xây dựng hoàn chỉnh website bán giày trực tuyến cho Giayrep.vn đáp ứng đầy đủ yêu cầu nghiệp vụ của 4 nhóm tác nhân (người dùng chung, khách hàng, nhân viên, quản lý).
  • Hoàn thiện mô hình cơ sở dữ liệu gồm 11 bảng quan hệ chuẩn hóa trên MySQL, đảm bảo khả năng liên kết dữ liệu giữa sản phẩm, danh mục, đơn hàng, khách hàng và hệ thống đánh giá.
  • Tích hợp thành công chức năng đánh giá sản phẩm từ 1 đến 5 sao có kiểm soát đăng nhập, giúp thu thập phản hồi của khách hàng.
  • Xây dựng giải pháp thanh toán linh hoạt kết hợp cơ chế xử lý ngoại lệ: khi thanh toán online phát sinh sự cố, đơn hàng tự động chuyển về trạng thái đơn hàng thường trong cơ sở dữ liệu để nhân viên liên hệ xử lý, tránh mất mát thông tin giao dịch.
  • Xây dựng hệ thống quản trị nội dung (CMS) hỗ trợ quản lý kho (lọc hàng tồn kho, hàng bán chạy, hàng hết), quản lý đơn hàng và thống kê doanh thu theo mốc thời gian tùy chọn.

Về mặt giải pháp, tác giả đã đóng góp một tài liệu phân tích thiết kế hệ thống chi tiết theo chuẩn UML ứng dụng cho mô hình bán lẻ quy mô vừa và nhỏ, đồng thời kiểm chứng tính khả thi của việc kết hợp Laravel, Bootstrap và jQuery trong việc xây dựng ứng dụng web thương mại điện tử hoàn chỉnh.

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

Dựa trên nội dung báo cáo và phạm vi công nghệ được tác giả trình bày:

  • Hạn chế:
    • Hệ thống chưa tích hợp hoàn chỉnh các cổng thanh toán trực tuyến chuyên dụng đa dạng qua API của các bên trung gian tài chính độc lập (do framework Laravel thuần không hỗ trợ sẵn module thanh toán chuyên biệt).
    • Chưa xây dựng kiến trúc RESTful API riêng biệt để tối ưu hóa việc phân tách backend cho các nền tảng ứng dụng di động (Mobile App) mà vẫn chủ yếu sử dụng cơ chế render giao diện MVC truyền thống.
    • Khả năng tương thích ngược của mã nguồn còn phụ thuộc vào phiên bản framework Laravel, đòi hỏi cấu hình môi trường máy chủ phức tạp hơn khi triển khai thực tế so với môi trường phát triển XAMPP.
  • Hướng phát triển:
    • Hoàn thiện tích hợp thêm nhiều cổng thanh toán điện tử trực tuyến an toàn.
    • Tối ưu hóa hiệu năng hệ thống và xây dựng hệ thống API phục vụ phát triển ứng dụng di động chạy song song với website.
    • Mở rộng các module phân tích dữ liệu bán hàng nâng cao và tự động hóa quy trình chăm sóc khách hàng.

Giá trị tham khảo

Đồ án là tài liệu tham khảo phù hợp cho:

  • Sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm đang thực hiện đồ án môn học hoặc khóa luận tốt nghiệp về đề tài website thương mại điện tử sử dụng ngôn ngữ PHP và Laravel Framework.
  • Người học cần tài liệu mẫu về quy trình phân tích và thiết kế hệ thống theo chuẩn UML: tài liệu cung cấp hệ thống 47 bảng mô tả use case chi tiết (đầy đủ dòng chính và dòng rẽ nhánh), 19 sơ đồ use case và 8 sơ đồ tuần tự mẫu.
  • Lập trình viên đang tìm hiểu phương pháp tổ chức cấu trúc cơ sở dữ liệu quan hệ cho một website bán hàng trực tuyến với 11 bảng dữ liệu tiêu chuẩn.

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

1. Đồ án sử dụng những công nghệ và framework nào để xây dựng website Giayrep.vn?
Website được phát triển trên nền tảng PHP Framework Laravel (kiến trúc MVC), sử dụng môi trường phát triển XAMPP (tích hợp Apache, MySQL, PHP, Perl), thiết kế giao diện bằng thư viện CSS Bootstrap (hỗ trợ Responsive, Grid System 12 cột) và thư viện JavaScript jQuery để xử lý DOM và các tác vụ AJAX.

2. Cơ sở dữ liệu của hệ thống Giayrep.vn gồm có bao nhiêu bảng và là những bảng nào?
Hệ thống sử dụng cơ sở dữ liệu MySQL gồm 11 bảng: admins (quản trị/nhân viên), articles (tin tức), categories (danh mục), contacts (liên hệ), orders (chi tiết đơn hàng), page_statics (trang tĩnh), password_resets (đổi mật khẩu), products (sản phẩm), ratings (đánh giá sao), transactions (giao dịch đơn hàng) và users (thành viên).

3. Hệ thống xử lý như thế nào khi quá trình thanh toán trực tuyến (online) của khách hàng gặp sự cố?
Theo thiết kế của tác giả tại Chương 1 và Chương 3, đối với các trường hợp thanh toán trực tuyến không thành công, hệ thống sẽ gửi thông báo lỗi cho người dùng và tự động lưu đơn hàng vào cơ sở dữ liệu dưới trạng thái đơn hàng thường ở dạng chờ xử lý, giúp ban quản trị cửa hàng có thể liên hệ trực tiếp với khách hàng để hoàn tất thanh toán.

4. Chức năng quản trị hệ thống phân chia quyền hạn giữa Quản lý và Nhân viên như thế nào?
Hệ thống thiết lập phân quyền hai cấp: Cấp Quản lý có toàn quyền sử dụng tất cả các chức năng, bao gồm tạo tài khoản và phân quyền cho nhân viên, quản lý danh mục, kho hàng, sản phẩm, đơn hàng, tin tức và trang tĩnh. Cấp Nhân viên chỉ được cấp quyền sử dụng một số chức năng nhất định như cập nhật thông tin cá nhân, tìm kiếm và cập nhật dữ liệu sản phẩm, khách hàng, đơn hàng, danh mục và theo dõi thống kê doanh thu.

5. Kế hoạch thực hiện đồ án được tác giả phân bổ trong thời gian bao lâu?
Đồ án được lập kế hoạch và thực hiện trong tổng thời gian 16 tuần, chia làm 7 giai đoạn: Tìm hiểu nghiệp vụ (1 tuần), Phân tích thiết kế hệ thống (3 tuần), Xây dựng cơ sở dữ liệu (3 tuần), Thiết kế giao diện (2 tuần), Xây dựng chức năng chính (4 tuần), Kiểm thử (1 tuần), Viết báo cáo và slide (2 tuần).

Kết luận

Đồ án tốt nghiệp "Xây dựng website bán giày cho cửa hàng Giayrep.vn" của sinh viên Lê Văn Minh đã hoàn thành việc xây dựng một hệ thống website thương mại điện tử hoàn chỉnh trên nền tảng PHP Laravel và hệ quản trị MySQL. Báo cáo cung cấp đầy đủ các bước phân tích nghiệp vụ, mô hình hóa 19 ca sử dụng và 8 biểu đồ tuần tự UML, thiết kế 11 bảng cơ sở dữ liệu quan hệ và hiện thực hóa các giao diện tương tác cho người dùng và ban quản trị. Đây là tài liệu học thuật có giá trị tham khảo thiết thực cho sinh viên ngành Công nghệ thông tin trong việc nghiên cứu và triển khai các ứng dụng web thương mại điện tử theo mô hình MVC.