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

Trong bối cảnh công nghệ thông tin và thương mại điện tử phát triển mạnh mẽ, nhu cầu mua sắm trực tuyến đã trở thành một xu hướng phổ biến trong đời sống xã hội, mở rộng từ các mặt hàng điện tử, gia dụng đến các sản phẩm phục vụ đời sống tinh thần và văn hóa. Cửa hàng nhạc cụ dân tộc Yuuki hoạt động với mô hình cung cấp các mặt hàng nhạc cụ truyền thống ra thị trường, bao gồm cả những sản phẩm do cơ sở tự chế tác và các sản phẩm nhập từ các nguồn bên ngoài.

Thực tiễn quản lý và kinh doanh tại cửa hàng đặt ra bài toán về việc làm thế nào để quảng bá thương hiệu hiệu quả, tiếp cận khách hàng tiềm năng và tối ưu hóa quy trình vận hành với chi phí và công sức thấp nhất. Việc áp dụng giải pháp phần mềm và website bán hàng là hướng đi cần thiết nhằm đáp ứng nhu cầu quản lý cũng như bắt kịp xu hướng số hóa trong kinh doanh.

Xuất phát từ thực tiễn trên, đề tài "Xây dựng website giới thiệu và cung cấp nhạc cụ dân tộc cho cửa hàng Yuuki" được sinh viên Cao Văn An (Lớp D18PM03, Viện Kỹ thuật – Công nghệ, Trường Đại học Thủ Dầu Một) thực hiện dưới sự hướng dẫn khoa học của ThS. Nguyễn Hữu Vĩnh vào tháng 11 năm 2021.

Mục tiêu nghiên cứu của đề tài được xác định cụ thể gồm:

  1. Xây dựng một hệ thống website mới phù hợp, dễ hiểu và dễ thao tác cho người sử dụng.
  2. Tìm hiểu và nắm bắt toàn diện hệ thống quản lý bán hàng, xác định các đối tượng cần quản lý để xây dựng ứng dụng sát với nhu cầu thực tiễn.
  3. Hỗ trợ tối ưu hóa công tác quản trị của cửa hàng, giúp quy trình quản lý diễn ra thuận tiện, dễ dàng và chính xác hơn.
  4. Rèn luyện tư duy, khả năng sáng tạo trong thiết kế giao diện tương tác người dùng và vận dụng các kiến thức chuyên ngành vào giải quyết bài toán thực tế.

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

  • Đối tượng nghiên cứu: Website quản lý và giới thiệu sản phẩm của cửa hàng nhạc cụ dân tộc.
  • Phạm vi nghiên cứu: Tập trung vào các quy trình nghiệp vụ bán hàng thực tế tại cửa hàng nhạc cụ dân tộc Yuuki, bao gồm việc trưng bày danh mục nhạc cụ, tìm kiếm thông tin sản phẩm, quản lý giỏ hàng, tiếp nhận đơn đặt hàng, tích hợp thanh toán và xử lý đơn hàng từ phía quản trị viên.

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

Đề tài tập trung nghiên cứu nền tảng lý thuyết phát triển ứng dụng web phía máy chủ, phân tích ưu nhược điểm của công nghệ sử dụng và phương pháp khảo sát nghiệp vụ thực tế:

  • Cơ sở lý thuyết về công nghệ PHP: Đề tài nghiên cứu ngôn ngữ lập trình kịch bản mã nguồn mở PHP (Hypertext Preprocessor). Đây là ngôn ngữ chủ yếu dùng để xử lý kịch bản phía máy chủ (server-side), dễ dàng nhúng vào mã HTML và có khả năng tương thích cao trên nhiều hệ điều hành (Linux, Microsoft Windows, macOS). Về mặt tính năng, PHP hỗ trợ lập trình hướng đối tượng (OOP) từ phiên bản 5 trở lên, cung cấp các thư viện tích hợp sẵn để kết nối hệ quản trị cơ sở dữ liệu và có khả năng mở rộng thông qua các nhánh như PHP-GTK. Báo cáo cũng đề cập đến mô hình xử lý của Laravel framework và cổng thanh toán trung gian bên thứ ba (PayPal).
  • Phương pháp nghiên cứu:
    • Phương pháp nghiên cứu tài liệu: Tìm hiểu, tham khảo tài liệu kỹ thuật trên môi trường web, các bài báo chuyên ngành và khảo sát thực trạng công nghệ phát triển web bán hàng.
    • Phương pháp quan sát thực tiễn: Quan sát trực tiếp quy trình bán hàng và quản lý tại một số cửa hàng kinh doanh nhạc cụ dân tộc để thu thập yêu cầu nghiệp vụ.
    • Phương pháp phân tích và mô hình hóa hệ thống: Phân tích dữ liệu thu thập được; sử dụng ngôn ngữ mô hình hóa UML để xây dựng sơ đồ chức năng hệ thống, sơ đồ use case (tổng thể và chi tiết), sơ đồ tuần tự (sequence diagram) và thiết kế cấu trúc các bảng trong cơ sở dữ liệu.
  • Nguồn dữ liệu: Dữ liệu mẫu về danh mục nhạc cụ dân tộc, thông tin cấu trúc đơn hàng, thông tin khách hàng và các quy tắc xử lý trạng thái đơn hàng tại cửa hàng Yuuki.

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

Hệ thống được thiết kế thành hai phân hệ chính: Phân hệ Quản trị (Admin) dành cho người quản lý và Phân hệ Bán hàng dành cho khách hàng/người dùng truy cập website.

1. Phân rã chức năng và mô hình Use Case

Hệ thống phân tách quyền hạn và dòng sự kiện cho các tác nhân (Actor) gồm: Quản lý, Nhân viên, Khách hàng và Khách xem (chưa đăng nhập):

  • Phân hệ Quản trị:
    • Quản lý danh mục sản phẩm: Cho phép Quản lý thực hiện các thao tác Thêm, Sửa, Xóa danh mục sản phẩm (ràng buộc chỉ xóa khi danh mục chưa chứa sản phẩm).
    • Quản lý sản phẩm: Quản lý thực hiện Thêm mới thông tin nhạc cụ, Sửa đổi thông tin chi tiết (giá, mô tả, hình ảnh), Xóa sản phẩm khỏi hệ thống.
    • Quản lý đơn hàng: Quản lý theo dõi danh sách các đơn đặt hàng và cập nhật trạng thái đơn hàng theo tiến trình xử lý.
  • Phân hệ Bán hàng & Công cụ:
    • Khách xem / Khách hàng: Tìm kiếm sản phẩm theo từ khóa; xem chi tiết nhạc cụ; thêm sản phẩm vào giỏ hàng; xem, chỉnh sửa số lượng hoặc xóa sản phẩm khỏi giỏ hàng; đăng ký tài khoản thành viên mới; đăng nhập hệ thống (có tùy chọn lưu mật khẩu); gửi thông tin qua form liên hệ.
    • Đặt hàng và thanh toán: Cung cấp hai phương thức đặt hàng gồm thanh toán khi nhận hàng (cửa hàng liên hệ xác nhận và giao hàng) và thanh toán trực tuyến thông qua cổng thanh toán PayPal.

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

Cơ sở dữ liệu của hệ thống được tổ chức thành 5 bảng chính nhằm lưu trữ toàn bộ thực thể nghiệp vụ:

Tên bảng Tên thuộc tính Kiểu dữ liệu Khóa Mô tả nghiệp vụ
Category idcate
namecate
Int
Int
PK
-
Mã danh mục sản phẩm
Tên danh mục sản phẩm
Order_details order_id
product_id
quantity
price
Int
Int
Int
Float
PK
-
-
-
Mã hóa đơn
Mã sản phẩm đặt mua
Số lượng sản phẩm đặt
Đơn giá sản phẩm
Order_products id
name
phone
address
total
status
Int
Varchar
Int
Varchar
Float
Varchar
PK
-
-
-
-
-
Mã đơn hàng
Họ tên người nhận hàng
Số điện thoại liên hệ
Địa chỉ giao nhận hàng
Tổng giá trị đơn hàng
Trạng thái đơn hàng
Products id
name
idcate
price
details
image
Int
Varchar
Int
Float
Varchar
Varchar
PK
-
-
-
-
-
Mã sản phẩm nhạc cụ
Tên sản phẩm nhạc cụ
Mã danh mục thuộc về
Đơn giá niêm yết
Mô tả chi tiết sản phẩm
Đường dẫn hình ảnh
Userss id
email_id
first_name
last_name
phone
password
address
Int
Varchar
Varchar
Varchar
Int
Varchar
Varchar
PK
-
-
-
-
-
Mã định danh người dùng
Địa chỉ email đăng nhập
Họ người dùng
Tên người dùng
Số điện thoại liên lạc
Mật khẩu tài khoản
Địa chỉ cư trú

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

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

Chương mở đầu trình bày tổng quan về lý do lựa chọn đề tài, nhấn mạnh việc chuyển dịch từ mô hình quản lý thủ công sang ứng dụng phần mềm bán hàng trực tuyến nhằm nâng cao hiệu quả quản lý cho cửa hàng nhạc cụ dân tộc Yuuki. Chương này xác định rõ 4 mục đích nghiên cứu, đối tượng nghiên cứu (website quản lý cửa hàng nhạc cụ dân tộc), phạm vi nghiên cứu (các nghiệp vụ bán hàng thực tế), các phương pháp nghiên cứu (tham khảo tài liệu, quan sát thực tiễn, phân tích dữ liệu) cùng ý nghĩa khoa học và thực tiễn của đề tài trong tiến trình số hóa.

Chương 2: Giới thiệu công nghệ PHP

Chương 2 cung cấp nền tảng kiến thức kỹ thuật về ngôn ngữ PHP (Hypertext Preprocessor). Nội dung làm rõ vai trò của PHP trong việc giao tiếp và xử lý dữ liệu phía máy chủ so với các ngôn ngữ khác như JavaScript hay Python. Tác giả phân tích các khả năng của PHP như thiết lập chương trình máy chủ, tạo dòng tập lệnh độc lập, phát triển ứng dụng mở rộng thông qua PHP-GTK và hỗ trợ đa dạng các hệ cơ sở dữ liệu. Báo cáo cũng chỉ ra các ưu điểm của PHP (mã nguồn mở, đa nền tảng, tốc độ tải nhanh, cú pháp ngắn gọn, tích hợp OOP) và các mặt hạn chế như đặc tính weak type, vấn đề tương thích phiên bản trong các framework như Laravel hay hiệu suất khi tải các ứng dụng quá nặng.

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

Chương 3 là phần trọng tâm về kỹ thuật phần mềm, bao gồm sơ đồ chức năng hệ thống, sơ đồ use case tổng thể và phân tích chi tiết từng use case. Mỗi use case (Thêm/Sửa/Xóa danh mục; Thêm/Sửa/Xóa sản phẩm; Quản lý đơn hàng; Thanh toán, Đặt hàng; Thêm sản phẩm vào giỏ hàng; Tìm kiếm sản phẩm; Xem/Xóa giỏ hàng; Đăng ký; Đăng nhập) đều được mô tả chi tiết qua bảng đặc tả (tác nhân, mô tả, điều kiện cần, dòng sự kiện chính, dòng sự kiện phụ, điều kiện cuối), đi kèm sơ đồ use case và sơ đồ tuần tự tương ứng. Phần cuối chương trình bày chi tiết thiết kế 5 bảng cơ sở dữ liệu (Category, Order_details, Order_products, Products, Userss).

Chương 4: Giao diện phần mềm

Chương 4 minh họa kết quả triển khai giao diện thực tế của ứng dụng website sau khi hoàn thiện thiết kế và lập trình. Chương cung cấp cấu trúc luồng giao diện gồm 14 màn hình chức năng chính:

  • Màn hình Đăng ký, Đăng nhập (hỗ trợ tính năng ghi nhớ mật khẩu).
  • Màn hình Trang chủ, Trang Giới thiệu & Liên hệ.
  • Nhóm màn hình Quản lý danh mục sản phẩm (danh sách, form thêm, form sửa, pop-up xác nhận xóa kèm điều kiện ràng buộc dữ liệu).
  • Nhóm màn hình Quản lý đơn hàng và Cập nhật trạng thái đơn hàng.
  • Nhóm màn hình Quản lý sản phẩm (danh sách, form thêm, form sửa, xác nhận xóa).
  • Nhóm màn hình Bán hàng dành cho khách: Trang danh sách sản phẩm, Trang kết quả tìm kiếm, Trang chi tiết sản phẩm, Trang giỏ hàng, Trang đặt hàng và thanh toán (chọn giao tận nơi hoặc thanh toán trực tuyến qua PayPal).

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

Chương tổng kết đánh giá lại các kết quả đã đạt được của đề tài, đối chiếu với mục tiêu ban đầu và chỉ ra các định hướng phát triển, mở rộng hệ thống trong tương lai.

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

  • Kết quả thực nghiệm:
    • Hoàn thành thiết kế và xây dựng website thương mại điện tử chuyên biệt cho cửa hàng nhạc cụ dân tộc Yuuki theo đúng quy trình phát triển phần mềm.
    • Hiện thực hóa đầy đủ 10 nhóm use case nghiệp vụ từ quản lý danh mục, quản lý sản phẩm, quản lý đơn hàng đến giỏ hàng, tìm kiếm và xác thực người dùng.
    • Tích hợp thành công 2 hình thức thanh toán: thanh toán khi giao hàng (COD) và thanh toán trực tuyến thông qua cổng thanh toán bên thứ ba PayPal.
    • Thiết kế hoàn chỉnh cấu trúc cơ sở dữ liệu với 5 bảng liên kết đảm bảo tính toàn vẹn thông tin bán hàng và quản trị.
  • Giải pháp và đóng góp thực tiễn:
    • Cung cấp giải pháp số hóa kênh bán hàng cho các sản phẩm nhạc cụ dân tộc truyền thống, giúp cửa hàng Yuuki quảng bá thương hiệu và tiếp cận khách hàng trên môi trường internet.
    • Hỗ trợ chủ cửa hàng tự động hóa khâu quản lý thông tin nhạc cụ, theo dõi đơn hàng và liên hệ với khách hàng nhanh chóng, giảm thiểu thao tác quản lý thủ công.

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

  • Hạn chế:
    • Hệ thống xây dựng trên nền tảng PHP với cơ chế kiểm tra kiểu lỏng lẻo (weak type), đòi hỏi việc kiểm soát dữ liệu đầu vào phải thật cẩn trọng để tránh sai lệch thông tin.
    • Chưa mở rộng tích hợp nhiều phương thức thanh toán điện tử nội địa ngoài cổng thanh toán quốc tế PayPal.
    • Giao diện và kiến trúc chưa tối ưu chuyên sâu cho các thiết bị di động có cấu hình thấp.
  • Hướng nghiên cứu tiếp:
    • Tiếp tục nâng cấp và hoàn thiện các chức năng nâng cao phục vụ phân tích báo cáo doanh thu, thống kê sản phẩm bán chạy.
    • Tối ưu hóa hiệu năng tải trang, cải tiến bảo mật hệ thống và nâng cao khả năng tương thích trên các nền tảng thiết bị di động.

Giá trị tham khảo

Báo cáo tốt nghiệp 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 thiết kế hệ thống thông tin bán hàng vừa và nhỏ, cách xây dựng các sơ đồ UML (Use case, Sequence) và thiết kế bảng cơ sở dữ liệu quan hệ.
  • Người phát triển ứng dụng web PHP: Tham khảo cách tổ chức luồng nghiệp vụ website thương mại điện tử cơ bản, các bước tích hợp cổng thanh toán trực tuyến PayPal và xử lý luồng đặt hàng - giao hàng.

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

1. Hệ thống website nhạc cụ dân tộc Yuuki phân quyền những tác nhân nào tham gia? Hệ thống xác định các tác nhân chính gồm: Quản lý (thực hiện toàn bộ nghiệp vụ quản trị danh mục, sản phẩm, trạng thái đơn hàng), Nhân viên (đăng nhập vào hệ thống quản lý), Khách hàng (người dùng đã đăng ký/đăng nhập để mua hàng, quản lý giỏ hàng, thanh toán) và Khách xem (người dùng chưa đăng nhập, thực hiện tìm kiếm, xem thông tin và đăng ký thành viên).

2. Cơ sở dữ liệu của phần mềm gồm những bảng nào và lưu trữ thông tin gì? Cơ sở dữ liệu gồm 5 bảng chính:

  • Category: Lưu trữ mã và tên danh mục nhạc cụ.
  • Products: Lưu thông tin chi tiết về nhạc cụ (mã, tên, mã danh mục, giá, mô tả, hình ảnh).
  • Userss: Lưu thông tin tài khoản người dùng (mã, email, họ tên, điện thoại, mật khẩu, địa chỉ).
  • Order_products: Lưu thông tin đơn đặt hàng (mã hóa đơn, tên người nhận, số điện thoại, địa chỉ nhận hàng, tổng tiền, trạng thái đơn hàng).
  • Order_details: Lưu chi tiết các sản phẩm trong đơn hàng (mã hóa đơn, mã sản phẩm, số lượng, giá bán).

3. Khách hàng có thể thực hiện những hình thức thanh toán nào trên website? Khách hàng có 2 lựa chọn thanh toán tại trang Đặt hàng & Thanh toán:

  • Thanh toán trực tuyến thông qua cổng thanh toán bên thứ ba PayPal.
  • Thanh toán sau khi nhận hàng (mặc định), khi đó cửa hàng sẽ liên hệ xác nhận đơn hàng và nhân viên giao hàng tận nơi.

4. Ràng buộc khi thực hiện thao tác xóa danh mục sản phẩm trong hệ thống là gì? Theo đặc tả nghiệp vụ trong hệ thống, để xóa một danh mục sản phẩm, danh mục đó bắt buộc phải đáp ứng điều kiện là chưa có sản phẩm nào thuộc về danh mục đó nhằm đảm bảo tính toàn vẹn dữ liệu.

5. Vì sao tác giả lựa chọn ngôn ngữ PHP để xây dựng hệ thống? PHP được lựa chọn nhờ các đặc tính: mã nguồn mở, miễn phí, độc lập nền tảng (chạy được trên Linux, Windows, macOS), tốc độ xử lý nhanh, cú pháp ngắn gọn, dễ kết nối cơ sở dữ liệu và hỗ trợ tốt mô hình lập trình hướng đối tượng từ phiên bản 5 trở lên.

Kết luận

Báo cáo tốt nghiệp "Xây dựng website giới thiệu và cung cấp nhạc cụ dân tộc cho cửa hàng Yuuki" của sinh viên Cao Văn An đã hoàn thành việc khảo sát, phân tích thiết kế và hiện thực hóa một hệ thống bán hàng trực tuyến hoàn chỉnh. Đề tài giải quyết hiệu quả bài toán quản lý và quảng bá thương hiệu cho cửa hàng nhạc cụ dân tộc thông qua các chức năng quản trị danh mục, sản phẩm, đơn hàng và tích hợp thanh toán PayPal. Công trình thể hiện quy trình phân tích thiết kế phần mềm rõ ràng và mang lại giá trị ứng dụng thiết thực cho hoạt động kinh doanh của cửa hàng.