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 nhanh chóng, thương mại điện tử đã trở thành phương thức kinh doanh phổ biến, hỗ trợ người tiêu dùng mua sắm trực tuyến thuận tiện và giúp các cơ sở kinh doanh tiết kiệm chi phí trung gian, chi phí giao dịch cũng như thời gian vận hành. Việc tự động hóa tìm kiếm và cung cấp thông tin theo nhu cầu của khách hàng trên môi trường mạng tạo điều kiện để các cửa hàng bán lẻ mở rộng quy mô tiếp cận thị trường.

Tuy nhiên, tác giả chỉ ra rằng thương mại điện tử tại Việt Nam vẫn đối mặt với một số rào cản tâm lý từ phía người tiêu dùng:

  • Sự lo ngại về chất lượng sản phẩm thực tế so với hình ảnh trực tuyến.
  • Rủi ro hàng hóa thất lạc hoặc không đến được tay người nhận trong quá trình vận chuyển.
  • Mối quan ngại về tính bảo mật thông tin cá nhân của khách hàng trên hệ thống website.
  • Vấn đề an toàn và bảo mật của các cổng thanh toán điện tử.

So với mô hình bán hàng truyền thống, bán hàng qua website mang lại nhiều lợi thế cạnh tranh:

  • Tiếp thị và quảng bá thông tin sản phẩm trên diện rộng với chi phí thấp.
  • Nâng cao chất lượng dịch vụ và hỗ trợ khách hàng nhanh chóng.
  • Tăng doanh thu bán hàng và giảm thiểu chi phí quản lý mặt bằng, nhân sự.
  • Tạo lập lợi thế cạnh tranh cho các cửa hàng bán lẻ vừa và nhỏ.

Đề tài "Xây dựng website quản lý bán quần áo cho cửa hàng FM CLOSET" do sinh viên Đinh Thị Quỳnh (ngành Kỹ thuật phần mềm, Trường Đại học Thủ Dầu Một) thực hiện dưới sự hướng dẫn của ThS. Nguyễn Hữu Vĩnh nhằm giải quyết các yêu cầu thực tiễn trên.

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

  1. Nghiên cứu tổng quan về thương mại điện tử và các công nghệ phát triển web mã nguồn mở.
  2. Phân tích các yêu cầu chức năng và phi chức năng cho hệ thống bán hàng thời trang trực tuyến.
  3. Thiết kế kiến trúc hệ thống, sơ đồ ca sử dụng (Use Case), biểu đồ tuần tự và cơ sở dữ liệu quan hệ cho website.
  4. Triển khai xây dựng hệ thống website thương mại điện tử hoàn chỉnh cho cửa hàng FM Closet, cho phép giới thiệu sản phẩm thời trang và nhận đơn đặt hàng trực tuyến.

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

  • Đối tượng nghiên cứu: Quy trình quản lý, kinh doanh bán lẻ thời trang và trải nghiệm mua sắm của khách hàng trên Internet.
  • Phạm vi không gian và công nghệ: Khách hàng sử dụng các thiết bị kết nối mạng (máy tính, điện thoại thông minh, máy tính bảng) truy cập website bán hàng; hệ thống dừng lại ở phạm vi giới thiệu sản phẩm và nhận đặt hàng qua mạng cho cửa hàng FM Closet.
  • Phạm vi thời gian: Đề tài được hoàn thành vào tháng 05/2021.

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

Đồ án ứng dụng mô hình kiến trúc phần mềm và các công nghệ phát triển web mã nguồn mở phổ biến:

  • Mô hình kiến trúc MVC (Model – View – Controller): Phân tách ứng dụng thành ba thành phần độc lập nhằm đáp ứng nguyên lý phân tách mối quan tâm (Separation of Concerns - SoC):
    • Model: Xử lý logic nghiệp vụ và tương tác trực tiếp với cơ sở dữ liệu.
    • View: Đảm nhận nhiệm vụ hiển thị dữ liệu và tiếp nhận tương tác từ giao diện người dùng.
    • Controller: Tiếp nhận yêu cầu từ người dùng qua View, điều phối dữ liệu với Model và trả kết quả về View.
    • Đặc tính kỹ thuật: Tiết kiệm băng thông, cho phép đội ngũ phát triển giao diện (Front-end) và xử lý logic (Back-end) làm việc độc lập mà không can thiệp vào mã nguồn của nhau.
  • Ngôn ngữ lập trình PHP (Hypertext Preprocessor): Ngôn ngữ kịch bản phía máy chủ (Server Script) chạy trên nền PHP Engine kết hợp cùng các trình chủ web (Apache, IIS). PHP có tốc độ xử lý nhanh, cú pháp gần với C và Java, tích hợp sẵn các thư viện kết nối cơ sở dữ liệu quan hệ phong phú.
  • Framework Laravel: PHP Framework mã nguồn mở do Taylor Otwell phát triển theo kiến trúc MVC. Laravel cung cấp hệ thống đóng gói mô-đun (modular), trình quản lý phụ thuộc (Composer), công cụ ánh xạ và truy vấn cơ sở dữ liệu, cùng khả năng tích hợp các dịch vụ hỗ trợ như gửi thư điện tử (Mail service).
  • Hệ quản trị cơ sở dữ liệu MySQL và công cụ phpMyAdmin: MySQL là hệ quản trị cơ sở dữ liệu quan hệ dạng máy chủ (server-based), có tốc độ truy xuất cao, tính ổn định và khả năng phân quyền quản trị. Công cụ phpMyAdmin hỗ trợ quản lý cơ sở dữ liệu thông qua giao diện web trực quan.
  • Phương pháp nghiên cứu và phát triển phần mềm:
    • Áp dụng phương pháp phân tích thiết kế hướng đối tượng (OOAD) kết hợp ngôn ngữ mô hình hóa thống nhất (UML) để xây dựng sơ đồ Use Case, biểu đồ phân cấp chức năng và biểu đồ tuần tự (Sequence Diagram).
    • Sử dụng môi trường phát triển cục bộ XAMPP và trình soạn thảo Sublime Text 3 để xây dựng mã nguồn.

Thiết kế và triển khai

Hệ thống được thiết kế phục vụ hai tác nhân chính với các phân hệ chức năng và cấu trúc dữ liệu cụ thể:

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

Tác nhân Nhóm chức năng chính Mô tả chi tiết chức năng
Khách hàng (Customer) Tài khoản Đăng ký thành viên, đăng nhập, đăng xuất hệ thống.
Khám phá sản phẩm Xem danh sách sản phẩm theo danh mục/thương hiệu, xem chi tiết sản phẩm, tìm kiếm sản phẩm theo từ khóa, sắp xếp theo giá và chữ cái.
Mua hàng & Giỏ hàng Thêm sản phẩm vào giỏ hàng, cập nhật số lượng, xóa sản phẩm trong giỏ hàng, áp dụng mã giảm giá (Coupon).
Đặt hàng & Thanh toán Điền thông tin giao hàng, chọn hình thức thanh toán (chuyển khoản qua VNPay hoặc thanh toán khi nhận hàng - COD), nhận thư điện tử xác nhận đơn hàng.
Quản trị viên (Admin) Xác thực hệ thống Đăng nhập và đăng xuất trang quản trị.
Quản lý danh mục Xem danh sách, thêm mới, chỉnh sửa thông tin, xóa danh mục sản phẩm.
Quản lý thương hiệu Xem danh sách, thêm mới, chỉnh sửa thông tin, xóa thương hiệu sản phẩm.
Quản lý sản phẩm Xem danh sách, thêm mới thông tin và hình ảnh sản phẩm, sửa thông tin, xóa sản phẩm.
Quản lý khuyến mãi Xem danh sách mã giảm giá, thêm mới mã giảm giá, xóa mã giảm giá.
Quản lý đơn hàng Xem danh sách đơn hàng, xem chi tiết đơn hàng, cập nhật trạng thái xử lý đơn hàng, xóa đơn hàng.

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

Hệ thống sử dụng cơ sở dữ liệu quan hệ gồm 10 bảng dữ liệu chính để quản lý toàn bộ thực thể và giao dịch:

STT Tên bảng dữ liệu Mục đích lưu trữ Các trường dữ liệu chính (Thuộc tính)
1 tbl_customer Thông tin tài khoản khách hàng customer_id (PK, int), customer_name, customer_email, customer_password, customer_phone
2 tbl_admin Thông tin tài khoản quản trị admin_id (PK, int), admin_name, admin_email, admin_password, admin_phone
3 tbl_product Thông tin chi tiết sản phẩm product_id (PK, int), product_name, product_des, product_price, product_image, product_status, category_id (FK), brand_id (FK)
4 tbl_brand Thông tin thương hiệu sản phẩm brand_id (PK, int), brand_name, brand_des, brand_status
5 tbl_category_product Phân loại danh mục sản phẩm category_id (PK, int), category_name, category_des, category_status
6 tbl_order Thông tin tổng quan đơn hàng order_id (PK, int), customer_id (FK), Note_id (FK), payment_id (FK), order_total, order_status
7 tbl_order_detail Chi tiết từng món trong đơn order_details_id (PK, int), order_it (FK), product_id (FK), product_name, product_price, product_qty
8 tbl_ghichu Địa chỉ và ghi chú giao hàng Note_id (PK, int), firstName, lastName, Note_addressLine, Note_province, Note_district, Note_phone, Note_email, note_order
9 tbl_payment Hình thức thanh toán payment_id (PK, int), payment_method, payment_status
10 tbl_coupon Mã giảm giá và khuyến mãi coupon_id (PK, int), coupon_name, coupon_code, qty_coupon, total_discount, coupon_condition

3. Quy trình nghiệp vụ và biểu đồ tuần tự

Tác giả đã xây dựng hệ thống biểu đồ tuần tự (Sequence Diagram) và đặc tả chi tiết 17 ca sử dụng (Use Case) tiêu biểu:

  • Đặc tả Use Case phía Khách hàng: Đăng ký tài khoản, Đăng nhập, Tìm kiếm sản phẩm, Xem chi tiết sản phẩm, Thêm vào giỏ hàng, Xem giỏ hàng, Thanh toán đơn hàng.
  • Đặc tả Use Case phía Quản trị viên: Đăng nhập hệ thống, Xem chi tiết đơn hàng, Xóa đơn hàng, Thêm/Sửa/Xóa sản phẩm, Thêm/Sửa/Xóa danh mục sản phẩm, Thêm/Xóa mã giảm giá, Thêm/Sửa/Xóa thương hiệu sản phẩm.
  • Quy trình đặt hàng và thanh toán: Khi khách hàng chọn phương thức chuyển khoản, hệ thống chuyển tiếp đến giao diện thanh toán VNPay; đối với hình thức thanh toán khi nhận hàng, hệ thống tự động gửi thư điện tử chứa thông tin xác nhận đơn hàng về địa chỉ email của khách hàng.

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

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

Chương 1 giới thiệu lý do lựa chọn đề tài, mục tiêu nghiên cứu, đối tượng, phạm vi và ý nghĩa khoa học - thực tiễn của đề tài. Nội dung chương tập trung trình bày các công nghệ nền tảng phục vụ việc xây dựng website bao gồm:

  • Ngôn ngữ lập trình PHP, cơ chế thông dịch kịch bản của PHP Engine qua máy chủ web.
  • Hệ quản trị cơ sở dữ liệu MySQL và công cụ quản trị phpMyAdmin.
  • Kiến trúc phần mềm MVC và phân tích ưu điểm phân tách mã nguồn giữa dữ liệu, giao diện và logic điều khiển.
  • Laravel Framework: các dịch vụ tích hợp, cú pháp, kiến trúc module và khả năng quản lý gói phụ thuộc.

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

Chương 2 mô hình hóa toàn bộ yêu cầu nghiệp vụ của hệ thống bằng công cụ UML:

  • Phân tích chức năng dành cho hai nhóm tác nhân: Khách hàng và Quản trị viên (Admin).
  • Xây dựng sơ đồ Use Case tổng quát và biểu đồ phân cấp chức năng cho từng tác nhân.
  • Trình bày bảng đặc tả chi tiết cho 17 Use Case nghiệp vụ chính của hệ thống.
  • Xây dựng các biểu đồ tuần tự (Sequence Diagram) mô tả tương tác luồng dữ liệu cho các chức năng: Đăng ký, Đăng nhập, Tìm kiếm, Thanh toán, Thêm/Sửa/Xóa sản phẩm.

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

Chương 3 chi tiết hóa việc tổ chức lưu trữ dữ liệu của website:

  • Trình bày lược đồ tổng quan 10 bảng cơ sở dữ liệu quan hệ (tbl_customer, tbl_admin, tbl_product, tbl_brand, tbl_category_product, tbl_order, tbl_order_detail, tbl_ghichu, tbl_payment, tbl_coupon).
  • Thiết lập chi tiết từng bảng dữ liệu: định nghĩa tên trường (Field name), kiểu dữ liệu (Type), độ dài tối đa (Max Length) và mục đích sử dụng (Description).

Chương 4. Xây dựng website bán quần áo

Chương 4 trình bày kết quả hiện thực hóa giao diện website trên thực tế:

  • Giao diện người dùng: Giao diện trang chủ, trang đăng ký/đăng nhập, trang hiển thị chi tiết sản phẩm, trang danh sách sản phẩm lọc theo danh mục, trang quản lý giỏ hàng và trang thanh toán đơn hàng.
  • Giao diện quản trị viên: Trang quản lý danh sách và chi tiết đơn hàng, trang quản lý và thêm danh mục sản phẩm, trang quản lý danh sách thương hiệu, trang thêm/sửa sản phẩm và trang quản lý mã giảm giá (Coupon).

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

  • Kết quả triển khai kỹ thuật:
    • Xây dựng thành công ứng dụng web thương mại điện tử hoàn chỉnh trên nền tảng PHP kết hợp Laravel Framework và MySQL.
    • Hiện thực hóa đầy đủ quy trình bán hàng trực tuyến: từ hiển thị, tìm kiếm, phân loại danh mục, quản lý giỏ hàng, áp dụng mã giảm giá đến thanh toán và gửi email xác nhận.
    • Tích hợp thành công phương thức thanh toán trực tuyến qua cổng VNPay và thanh toán tiền mặt khi nhận hàng (COD).
    • Xây dựng phân hệ quản trị (Back-end) cho phép quản trị viên toàn quyền quản lý sản phẩm, thương hiệu, danh mục, mã giảm giá và theo dõi trạng thái đơn hàng.
  • Đóng góp ứng dụng:
    • Đưa ra giải pháp số hóa quy trình kinh doanh thời trang cho cửa hàng bán lẻ FM Closet, giúp cửa hàng mở rộng kênh tiếp cận khách hàng trên Internet với chi phí thấp.
    • Hệ thống hóa quy trình phân tích thiết kế hệ thống theo chuẩn UML cho một ứng dụng thương mại điện tử quy mô vừa và nhỏ.

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

  • Hạn chế được tác giả nêu trong văn bản:
    • Hệ thống mới dừng lại ở mức độ giới thiệu sản phẩm thời trang và tiếp nhận đặt hàng qua mạng, chưa phát triển toàn diện các tính năng nâng cao của một sàn thương mại điện tử lớn.
    • Cơ sở dữ liệu quản trị thông qua phpMyAdmin phù hợp với các dự án quy mô nhỏ và vừa, chưa được kiểm thử tải trên lượng người dùng truy cập lớn đồng thời.
    • Tác giả tự nhận định kiến thức thực tế còn hạn chế nên hệ thống vẫn còn những điểm cần hoàn thiện thêm.
  • Hướng phát triển:
    • Bổ sung và hoàn thiện các chức năng tương tác hỗ trợ khách hàng chuyên sâu hơn qua Internet.
    • Nâng cấp khả năng đồng bộ phiên bản và tối ưu hóa hiệu năng ứng dụng trên nền tảng thiết bị di động.

Giá trị tham khảo

Báo cáo tốt nghiệp có giá trị tham khảo thiết thực cho:

  • Sinh viên ngành Kỹ thuật phần mềm và Công nghệ thông tin: Tài liệu hữu ích khi thực hiện đồ án tốt nghiệp hoặc các bài tập lớn về xây dựng website thương mại điện tử bằng PHP, Laravel và MySQL.
  • Phần đáng tham khảo:
    • Phương pháp phân tích và tài liệu hóa 17 Use Case nghiệp vụ cụ thể.
    • Cấu trúc thiết kế 10 bảng cơ sở dữ liệu quan hệ cho bài toán bán hàng trực tuyến (quản lý sản phẩm, biến thể thương hiệu, danh mục, mã giảm giá, địa chỉ giao hàng và đơn hàng).
    • Quy trình mô hình hóa tương tác giữa View - Controller - Model thông qua biểu đồ tuần tự UML.

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

1. Đề tài sử dụng những công nghệ và công cụ phát triển nào?
Tác giả sử dụng ngôn ngữ lập trình PHP, Laravel Framework, hệ quản trị cơ sở dữ liệu MySQL thông qua phpMyAdmin, môi trường máy chủ cục bộ XAMPP và trình soạn thảo Sublime Text 3.

2. Cơ sở dữ liệu của hệ thống gồm những bảng chính nào?
Hệ thống gồm 10 bảng: tbl_customer (khách hàng), tbl_admin (quản trị viên), tbl_product (sản phẩm), tbl_brand (thương hiệu), tbl_category_product (danh mục), tbl_order (đơn hàng), tbl_order_detail (chi tiết đơn hàng), tbl_ghichu (địa chỉ và thông tin giao hàng), tbl_payment (phương thức thanh toán) và tbl_coupon (mã giảm giá).

3. Khách hàng trên website có thể lựa chọn những hình thức thanh toán nào?
Hệ thống hỗ trợ 2 hình thức thanh toán: chuyển khoản trực tuyến qua cổng VNPay và thanh toán khi nhận hàng (COD). Khi chọn thanh toán khi nhận hàng, hệ thống sẽ tự động gửi thư điện tử xác nhận thông tin đơn hàng cho khách hàng.

4. Phân hệ Quản trị viên (Admin) cho phép quản lý những nghiệp vụ nào?
Quản trị viên có thể quản lý danh mục sản phẩm (thêm, sửa, xóa), thương hiệu (thêm, sửa, xóa), sản phẩm (thêm, sửa, xóa), mã giảm giá (thêm, xóa) và đơn hàng (xem danh sách, xem chi tiết, đổi trạng thái xử lý, xóa đơn hàng).

5. Vì sao tác giả lựa chọn mô hình MVC cho dự án này?
Mô hình MVC giúp phân tách rõ ràng giữa giao diện hiển thị (View), logic điều khiển (Controller) và dữ liệu (Model) theo nguyên lý SoC (Separation of Concerns). Điều này giúp tiết kiệm băng thông, giảm tải cho máy chủ và cho phép phát triển độc lập giữa bộ phận Front-end và Back-end.


Kết luận

Báo cáo tốt nghiệp "Xây dựng website quản lý bán quần áo cho cửa hàng FM CLOSET" của sinh viên Đinh Thị Quỳnh đã hoàn thành mục tiêu xây dựng một ứng dụng thương mại điện tử hoàn chỉnh theo mô hình MVC sử dụng Laravel Framework và cơ sở dữ liệu MySQL. Đề tài thể hiện đầy đủ quy trình kỹ thuật phần mềm từ khảo sát, phân tích yêu cầu, thiết kế UML, thiết kế cơ sở dữ liệu đến triển khai giao diện thực tế. Công trình là tài liệu tham khảo có tính ứng dụng cao cho việc nghiên cứu và phát triển các hệ thống bán hàng trực tuyến vừa và nhỏ.