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

Trong bối cảnh nền kinh tế và xã hội hiện đại, nông sản đóng vai trò là nguồn cung cấp lương thực, thực phẩm thiết yếu cho đời sống con người. Tuy nhiên, hoạt động quản lý và phân phối bán hàng nông sản tại Việt Nam vẫn đang đối mặt với nhiều rào cản và thách thức lớn. Các vấn đề nổi cộm bao gồm sự biến động phức tạp của thị trường tiêu thụ, áp lực cạnh tranh giữa các đơn vị sản xuất, tính phức tạp của chuỗi cung ứng trung gian, sự thiếu minh bạch về thông tin sản phẩm cũng như những hạn chế trong việc kiểm soát chất lượng và an toàn vệ sinh thực phẩm. Trước thực trạng đó, việc nghiên cứu, xây dựng và ứng dụng các giải pháp công nghệ thông tin hiện đại nhằm số hóa quy trình quản lý bán hàng nông sản là một yêu cầu cấp thiết, mang lại tính khả thi và giá trị ứng dụng cao.

Đề tài đồ án nhóm môn học Phân tích & Thiết kế hướng đối tượng với tên đề tài "Quản lý bán hàng nông sản" (dự án: Xây dựng Website bán nông sản) được thực hiện bởi nhóm sinh viên Nhóm 10 (Lớp CS 353 K, Khoa Công nghệ phần mềm, Trường Khoa học Máy tính – Trường Đại học Duy Tân, Đà Nẵng) dưới sự hướng dẫn của ThS. Lê Minh Thái. Các thành viên thực hiện bao gồm Đỗ Văn Thành (MSSV: 27211241073), Nguyễn Thu Thủy (Trưởng nhóm, MSSV: 27201201171) và Thái Anh Tài (MSSV: 27211200814).

Mục tiêu nghiên cứu và thực hiện của đề tài được xác định cụ thể theo các nhiệm vụ sau:

  1. Phân tích và thiết kế một hệ thống phần mềm hoàn chỉnh phục vụ hoạt động bán và quản lý nông sản, thực phẩm.
  2. Theo dõi và kiểm soát chặt chẽ toàn bộ quá trình lưu thông, bán hàng nông sản từ giai đoạn thu hoạch đến khi tiêu thụ trên thị trường, bao gồm các dữ liệu về nguồn gốc xuất xứ, số lượng, mức giá, chất lượng và tiêu chuẩn an toàn thực phẩm.
  3. Phân tích và nâng cao hiệu quả kinh doanh nông sản thông qua việc quản lý các chỉ số về doanh thu, lợi nhuận, chi phí vận hành, tỷ lệ hao hụt sản phẩm và mức độ hài lòng của khách hàng.
  4. Tăng cường mối liên kết, phối hợp đồng bộ giữa các bên tham gia vào chuỗi cung ứng nông sản, từ người nông dân, nhà phân phối, nhà bán lẻ cho đến người tiêu dùng và các cơ quan quản lý nhà nước.

Về mặt ý nghĩa thực tiễn, đề tài thúc đẩy ứng dụng công nghệ phần mềm vào lĩnh vực nông nghiệp, tạo ra dịch vụ gia tăng cho người dùng; đồng thời hỗ trợ mở rộng kênh phân phối nội địa và xuất khẩu, nâng cao tính minh bạch về nguồn gốc và bảo đảm an toàn thực phẩm theo đúng quy chuẩn.

Đối tượng nghiên cứu của đồ án bao gồm ba nhóm chủ thể chính trong chuỗi giá trị nông sản:

  • Người sản xuất nông sản: Các hộ nông dân, hợp tác xã nông nghiệp, doanh nghiệp sản xuất nông nghiệp.
  • Người trung gian trong chuỗi cung ứng: Các đơn vị phân phối, nhà bán lẻ, đơn vị vận chuyển logistics.
  • Người tiêu dùng nông sản: Các hộ gia đình, nhà hàng, khách sạn và các đơn vị chế biến thực phẩm.

Phạm vi nghiên cứu được xác định rõ:

  • Phạm vi thời gian: Đồ án được triển khai trong mốc thời gian từ ngày 23/08/2023 đến ngày 15/10/2023 (thời gian thực hiện dự án) và từ ngày 07/09/2023 đến ngày 31/10/2023 (phạm vi nghiên cứu lý thuyết và phân tích hệ thống).
  • Phạm vi nội dung kỹ thuật: Tập trung nghiên cứu cơ sở dữ liệu MySQL, các ngôn ngữ và framework lập trình web (HTML, CSS, PHP, Java Spring Boot, Bootstrap, Thymeleaf); áp dụng phương pháp luận phân tích thiết kế hướng đối tượng (OOAD) vào bài toán quản lý bán hàng; khảo sát quy trình quản lý bán lẻ và quy trình xây dựng website thương mại điện tử chuyên ngành nông sản.

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

Đồ án vận dụng phương pháp luận phân tích và thiết kế hệ thống hướng đối tượng (Object-Oriented Analysis and Design - OOAD), kết hợp với chuẩn mô hình hóa ngôn ngữ thống nhất (UML - Unified Modeling Language) để trực quan hóa các yêu cầu nghiệp vụ thành mô hình phần mềm cụ thể.

Phương pháp nghiên cứu thực tế được nhóm tác giả tiến hành qua các bước có hệ thống:

  • Phương pháp nghiên cứu và tổng hợp tài liệu: Thu thập, tổng hợp các tài liệu chuyên ngành liên quan đến kỹ thuật công nghệ phần mềm, quy trình quản lý chuỗi cung ứng nông sản và các công nghệ phát triển web hiện đại.
  • Phương pháp thu thập và phân tích yêu cầu: Khảo sát thực tế nhu cầu của các bên liên quan (người sản xuất, nhà phân phối, khách hàng) để trích xuất danh mục yêu cầu chức năng và yêu cầu phi chức năng.
  • Phương pháp phân tích và lựa chọn giải pháp: Đánh giá, lựa chọn kiến trúc phần mềm, hệ quản trị cơ sở dữ liệu và các công cụ mô hình hóa phù hợp với bài toán bán hàng trực tuyến.
  • Phương pháp thiết kế hệ thống: Xây dựng biểu đồ ca sử dụng (Use Case Diagram), mô tả đặc tả use case, thiết kế sơ đồ lớp đối tượng, sơ đồ hoạt động (Activity Diagram), sơ đồ tuần tự (Sequence Diagram) và sơ đồ thực thể liên kết (Entity Relationship Diagram - ERD).
  • Phương pháp kiểm tra và đánh giá: Kiểm thử, đối chiếu tính năng hệ thống so với yêu cầu đặt ra nhằm đánh giá tính ứng dụng và độ ổn định của giải pháp thiết kế.

Nguồn dữ liệu phục vụ nghiên cứu là các tài liệu kỹ thuật về công nghệ phần mềm, quy trình quản lý đơn hàng, quản lý kho, quản lý danh mục và thông tin nhà cung cấp trong lĩnh vực thương mại điện tử nông sản.


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

Bố cục của báo cáo đồ án được tổ chức thành các phần và chương với các nội dung trọng tâm như sau:

Phần mở đầu

Trình bày tổng quan về dự án xây dựng website bán nông sản, tính cấp thiết và lý do chọn đề tài trong bối cảnh thị trường hiện nay. Xác định rõ mục đích nghiên cứu, ý nghĩa khoa học và thực tiễn, phân loại chi tiết các đối tượng nghiên cứu (người sản xuất, người trung gian, người tiêu dùng), phạm vi giới hạn về không gian, thời gian và hệ phương pháp luận được áp dụng.

Phần 1: Phân tích yêu cầu hệ thống

Nội dung chương này tập trung làm rõ hai nhóm yêu cầu kỹ thuật nền tảng:

  • Phân tích yêu cầu chức năng: Liệt kê chi tiết các khối chức năng phục vụ từng nhóm tác nhân, bao gồm: Đăng ký, Quản lý tài khoản cá nhân, Quản lý danh mục, Quản lý chuyên mục, Quản lý hóa đơn bán hàng, Quản lý sản phẩm, Quản lý giỏ hàng, Quản lý hóa đơn nhập hàng, Quản lý nhà cung cấp, Quản lý đặt hàng, Xem bài viết, Xem sản phẩm, Quản lý đánh giá.
  • Phân tích yêu cầu phi chức năng: Xác định các tiêu chuẩn về giao diện người dùng thân thiện, tính bảo mật dữ liệu khách hàng và đơn hàng, khả năng hỗ trợ đa ngôn ngữ, đa kênh bán hàng, năng lực đáp ứng tải lượng người dùng đồng thời lớn, xử lý giao dịch mua bán nhanh chóng, hỗ trợ tương thích thiết bị di động và khả năng tích hợp thanh toán trực tuyến.
  • Xác định các đối tượng hệ thống: Định nghĩa các lớp đối tượng cốt lõi của bài toán hướng đối tượng bao gồm Sản phẩm (Product), Khách hàng (Customer), Đơn hàng (Order), Kho hàng (Warehouse), Báo cáo (Report), Giao diện người dùng (User Interface) đi kèm các thuộc tính và phương thức xử lý tương ứng.

Phần II: Design (Phân tích và thiết kế hệ thống)

Chương này đi sâu vào việc đặc tả kỹ thuật và mô hình hóa hệ thống:

  • Đặc tả yêu cầu chức năng và mô tả phân quyền hệ thống cho từng nhóm người dùng: Khách vãng lai, Thành viên và Nhà quản trị.
  • Xác định môi trường phát triển và bộ công cụ kỹ thuật áp dụng cho dự án.
  • Thiết kế các biểu đồ UML: Xây dựng biểu đồ ca sử dụng tổng quát và 14 biểu đồ ca sử dụng chi tiết; thiết kế sơ đồ tuần tự (Sequence Diagram) cho các chức năng thêm sản phẩm, sửa sản phẩm, xóa sản phẩm; thiết kế sơ đồ hoạt động (Activity Diagram) cho thao tác xem sản phẩm và thêm sản phẩm; xây dựng sơ đồ thực thể liên kết (ERD) thể hiện cấu trúc dữ liệu quan hệ.

Phần tổng kết: Những vấn đề đạt được, chưa đạt được và hướng phát triển

Đánh giá toàn diện kết quả sau quá trình nghiên cứu, chỉ ra các module đã hoàn thiện, các điểm còn tồn đọng trong phạm vi môn học và định hướng các nội dung cần tiếp tục nghiên cứu nâng cấp hệ thống trong tương lai, kết thúc bằng danh mục tài liệu tham khảo.


Thiết kế và triển khai

Hệ thống quản lý bán hàng nông sản được phân tích và thiết kế chi tiết theo các thành phần kiến trúc, mô hình đối tượng và môi trường công nghệ cụ thể.

1. Môi trường phát triển và công cụ công nghệ

Dự án xác định rõ ràng các công nghệ và công cụ kỹ thuật sử dụng trong quá trình phân tích, thiết kế và xây dựng:

  • Công cụ phân tích và thiết kế: Ngôn ngữ mô hình hóa UML, công cụ vẽ mockup giao diện Mockup, công cụ thiết kế sơ đồ Drawable (Draw.io).
  • Ngôn ngữ và nền tảng lập trình: Java Spring Boot, Thymeleaf, HTML5, CSS3, Bootstrap 4, Fontawesome; kết hợp quá trình tìm hiểu về cơ sở dữ liệu MySQL, CSS, HTML, PHP.

2. Phân quyền tác nhân hệ thống (Actors)

Hệ thống phân chia ranh giới chức năng rõ ràng giữa 3 nhóm tác nhân chính:

Nhóm tác nhân Mô tả vai trò Quyền hạn và chức năng được phép thực hiện
Khách vãng lai Người dùng chưa đăng ký tài khoản trên hệ thống - Xem sản phẩm
- Tìm kiếm sản phẩm
- Xem bài viết
- Đăng ký tài khoản người dùng mới
Thành viên Người dùng đã có tài khoản và đăng nhập thành công - Xem sản phẩm, tìm kiếm sản phẩm, xem bài viết
- Quản lý giỏ hàng (thêm, cập nhật, mua hàng)
- Quản lý thông tin tài khoản cá nhân (đổi mật khẩu, sửa thông tin)
- Quản lý đặt hàng, thanh toán, hủy đơn
- Thực hiện đánh giá, bình luận sản phẩm
Nhà quản trị Quản trị viên quản lý toàn bộ hoạt động vận hành - Đăng nhập, đăng ký quản trị
- Quản lý danh mục, chuyên mục sản phẩm (thêm, sửa, xóa, xem)
- Quản lý sản phẩm (thêm, sửa, xóa, xem)
- Quản lý hóa đơn bán hàng (duyệt đơn, xuất hóa đơn)
- Quản lý hóa đơn nhập hàng (thêm, sửa, xóa, tìm kiếm)
- Quản lý thông tin nhà cung cấp (thêm, sửa, xóa, tìm kiếm)
- Quản lý và phản hồi đánh giá của khách hàng

3. Thiết kế mô hình đối tượng (Class / Object Modeling)

Quá trình phân tích hướng đối tượng đã định hình 6 lớp đối tượng cơ bản với đầy đủ thuộc tính và phương thức:

  1. Lớp Sản phẩm (Product)
    • Thuộc tính: Tên sản phẩm, mô tả, giá bán, số lượng tồn kho, hình ảnh minh họa, loại sản phẩm.
    • Phương thức: Thêm sản phẩm, cập nhật thông tin sản phẩm, xóa sản phẩm, tìm kiếm sản phẩm.
  2. Lớp Khách hàng (Customer)
    • Thuộc tính: Tên khách hàng, địa chỉ, số điện thoại liên hệ, địa chỉ email, phân loại khách hàng.
    • Phương thức: Thêm khách hàng, cập nhật thông tin khách hàng, xóa khách hàng, tìm kiếm khách hàng.
  3. Lớp Đơn hàng (Order)
    • Thuộc tính: Mã đơn hàng, ngày đặt hàng, thông tin khách hàng, danh sách sản phẩm được đặt, số lượng, trạng thái đơn hàng.
    • Phương thức: Tạo đơn hàng mới, cập nhật trạng thái đơn hàng, hủy đơn hàng, tìm kiếm đơn hàng.
  4. Lớp Kho hàng (Warehouse)
    • Thuộc tính: Tên kho hàng, địa chỉ kho, danh mục sản phẩm trong kho, số lượng hàng tồn kho.
    • Phương thức: Nhập hàng vào kho, xuất hàng khỏi kho, cập nhật số lượng tồn kho, tìm kiếm sản phẩm trong kho.
  5. Lớp Báo cáo (Report)
    • Thuộc tính: Loại báo cáo, dữ liệu báo cáo chi tiết, thời gian khởi tạo báo cáo.
    • Phương thức: Tạo báo cáo, xuất dữ liệu báo cáo, tìm kiếm báo cáo.
  6. Lớp Giao diện người dùng (User Interface)
    • Thuộc tính: Các thành phần hiển thị giao diện như nút bấm (button), trường nhập liệu (input field), danh sách dữ liệu (list).
    • Phương thức: Hiển thị thông tin dữ liệu, xử lý sự kiện tương tác của người dùng, giao tiếp và tương tác với các đối tượng nghiệp vụ khác.

4. Danh mục Use Case và mô hình hành vi hệ thống

Hệ thống được thiết kế với 14 ca sử dụng chi tiết:

  • Use case Đăng ký và Đăng nhập.
  • Use case Quản lý tài khoản cá nhân (xem, sửa thông tin, đổi mật khẩu).
  • Use case Quản lý danh mục và Quản lý chuyên mục.
  • Use case Quản lý sản phẩm và Xem sản phẩm (xem chi tiết, xem khuyến mãi).
  • Use case Quản lý giỏ hàng và Quản lý đặt hàng (thêm giỏ hàng, thanh toán, hủy đơn).
  • Use case Quản lý hóa đơn bán hàng (duyệt đơn hàng, xuất hóa đơn bán).
  • Use case Quản lý hóa đơn nhập hàng (thêm, sửa, xóa, tìm kiếm đơn nhập).
  • Use case Quản lý nhà cung cấp (thêm, sửa, xóa, tìm kiếm nhà cung ứng).
  • Use case Xem bài viết và Quản lý đánh giá (xem số sao, đánh giá, phản hồi đánh giá, xóa đánh giá).

Mô hình hành vi và tương tác dữ liệu được thể hiện qua các sơ đồ tuần tự (Sequence Diagram) mô tả chi tiết quy trình thêm sản phẩm, sửa sản phẩm, xóa sản phẩm; cùng các sơ đồ hoạt động (Activity Diagram) thể hiện luồng nghiệp vụ xem sản phẩm và thêm sản phẩm mới vào cơ sở dữ liệu.


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

Đồ án đã đạt được các kết quả cụ thể trong khuôn khổ nghiên cứu và thiết kế phần mềm:

  • Xây dựng hoàn chỉnh hồ sơ phân tích yêu cầu nghiệp vụ cho hệ thống quản lý bán hàng nông sản trực tuyến, phân định rõ ràng giữa các yêu cầu chức năng và yêu cầu phi chức năng.
  • Mô hình hóa thành công hệ thống hướng đối tượng với 6 lớp đối tượng trọng tâm, bao quát toàn diện chu trình quản lý bán hàng từ quản trị danh mục sản phẩm, kho bãi, nhập hàng từ nhà cung cấp, đến quản lý đơn đặt hàng, xuất hóa đơn và chăm sóc khách hàng qua đánh giá.
  • Thiết lập hệ thống 14 biểu đồ ca sử dụng (Use Case Diagram), sơ đồ tuần tự (Sequence Diagram), sơ đồ hoạt động (Activity Diagram) và sơ đồ thực thể liên kết (ERD), tạo tiền đề vững chắc cho việc lập trình cài đặt hệ thống.
  • Về mặt giải pháp, đồ án đề xuất mô hình ứng dụng công nghệ Java Spring Boot kết hợp giao diện Thymeleaf và Bootstrap 4 nhằm giải quyết tính cấp thiết trong việc minh bạch hóa nguồn gốc, giá cả và chất lượng nông sản, thúc đẩy tiêu thụ nông sản trên môi trường số.

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

Bên cạnh những kết quả đã đạt được trong phạm vi đồ án môn học, công trình còn một số điểm hạn chế cần tiếp tục hoàn thiện:

  • Giới hạn về thời gian thực hiện (trong khoảng tháng 08/2023 đến tháng 10/2023) khiến việc tích hợp thử nghiệm các cổng thanh toán trực tuyến thực tế và kiểm thử hiệu năng chịu tải đồng thời lớn chưa được triển khai sâu rộng trên môi trường sản xuất thực tế.
  • Hướng phát triển tiếp theo được nhóm tác giả xác định bao gồm: tiếp tục hoàn thiện mã nguồn chương trình dựa trên thiết kế Java Spring Boot đã xây dựng; triển khai tích hợp các giải pháp thanh toán điện tử; tối ưu hóa khả năng tương thích trên các thiết bị di động; mở rộng phân hệ báo cáo thông minh và nâng cao tính liên kết đa chiều giữa nông dân, nhà cung cấp và người tiêu dùng trên hệ thống.

Giá trị tham khảo

Báo cáo đồ án là tài liệu tham khảo thiết thực dành cho sinh viên chuyên ngành Công nghệ phần mềm, Khoa học máy tính, Hệ thống thông tin quản lý khi thực hiện đồ án môn học Phân tích & Thiết kế hướng đối tượng (OOAD) hoặc đồ án tốt nghiệp về đề tài thương mại điện tử.

Nội dung đồ án mang lại giá trị tham khảo cao ở phương pháp xác định và phân rã use case chi tiết, cách thức định nghĩa lớp đối tượng nghiệp vụ (thuộc tính, phương thức) cho một bài toán quản lý bán hàng thực tế, cũng như cách chuẩn hóa các sơ đồ tương tác UML (sơ đồ tuần tự, sơ đồ hoạt động) phục vụ việc triển khai ứng dụng trên nền tảng Spring Boot.


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

1. Đồ án do ai thực hiện và thuộc đơn vị đào tạo nào?
Đồ án do nhóm sinh viên Nhóm 10 gồm Đỗ Văn Thành, Nguyễn Thu Thủy (Trưởng nhóm) và Thái Anh Tài (Lớp CS 353 K, Khoa Công nghệ phần mềm, Trường Khoa học Máy tính thuộc Trường Đại học Duy Tân) thực hiện dưới sự hướng dẫn của ThS. Lê Minh Thái vào tháng 10 năm 2023.

2. Hệ thống quản lý bán hàng nông sản phân loại người dùng thành các tác nhân nào?
Hệ thống phân chia người dùng thành 3 nhóm tác nhân chính: Khách vãng lai (chưa có tài khoản), Thành viên (người dùng đã đăng ký và đăng nhập) và Nhà quản trị (quản lý toàn bộ hệ thống sản phẩm, hóa đơn nhập/bán, nhà cung cấp và danh mục).

3. Các lớp đối tượng cốt lõi được định nghĩa trong mô hình hướng đối tượng của hệ thống gồm những gì?
Hệ thống xác định 6 lớp đối tượng cơ bản: Sản phẩm (Product), Khách hàng (Customer), Đơn hàng (Order), Kho hàng (Warehouse), Báo cáo (Report) và Giao diện người dùng (User Interface).

4. Môi trường phát triển và công nghệ nào được lựa chọn để thiết kế và xây dựng website?
Dự án sử dụng các công cụ phân tích thiết kế gồm UML, Mockup, Drawable; nền tảng công nghệ xây dựng hệ thống gồm Java Spring Boot, Thymeleaf, HTML5, CSS3, Bootstrap 4, Fontawesome, kết hợp nghiên cứu cơ sở dữ liệu MySQL và ngôn ngữ PHP.

5. Nhóm chức năng quản lý hóa đơn của hệ thống bao gồm các tác vụ nghiệp vụ cụ thể nào?
Hệ thống quản lý hai loại hóa đơn: Quản lý hóa đơn bán hàng (cho phép đăng nhập, duyệt đơn hàng và xuất hóa đơn) và Quản lý hóa đơn nhập hàng (cho phép đăng nhập, thêm, sửa, xóa và tìm kiếm hóa đơn nhập hàng từ nhà cung cấp).


Kết luận

Đồ án nhóm môn học "Quản lý bán hàng nông sản" của sinh viên Khoa Công nghệ phần mềm – Trường Đại học Duy Tân đã hoàn thành việc phân tích và thiết kế một giải pháp website thương mại điện tử chuyên ngành nông sản theo phương pháp hướng đối tượng. Công trình cung cấp hệ thống tài liệu đặc tả yêu cầu, mô hình hóa dữ liệu và biểu đồ tương tác UML chi tiết, đáp ứng đầy đủ các quy trình nghiệp vụ từ quản lý nhập hàng, quản lý kho, bán hàng đến đánh giá chất lượng. Đây là tài liệu học thuật có cấu trúc rõ ràng, đóng vai trò là cơ sở kỹ thuật vững chắc cho việc lập trình triển khai hệ thống phần mềm trong thực tiễn.