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

Trong bối cảnh của cuộc Cách mạng Công nghiệp 4.0, xu hướng tin học hóa và ứng dụng công nghệ thông tin đã trở thành nhu cầu tất yếu trong hầu hết các lĩnh vực sản xuất, bao gồm cả ngành chăn nuôi nông nghiệp. Thực tế quản lý tại nhiều trang trại truyền thống cho thấy các bộ phận quản trị phải xử lý khối lượng lớn nghiệp vụ phức tạp, phụ thuộc nhiều vào sổ sách, chứng từ giấy tờ, dẫn đến việc khó kiểm soát bao quát mọi hoạt động vận hành, tốn kém thời gian và dễ xảy ra sai sót dữ liệu.

Đề tài "Phần mềm quản lý trang trại gia súc – gia cầm" được nhóm tác giả thực hiện nhằm giải quyết các bất cập trên thông qua việc số hóa toàn bộ quy trình chăm sóc, theo dõi sức khỏe, kiểm soát tiêu hao thức ăn, sử dụng thuốc thú y và kinh doanh xuất bán.

Mục tiêu cụ thể của đề tài bao gồm hai nhóm chức năng chính:

  1. Chức năng hệ thống: Xây dựng các cơ chế xác thực người dùng bao gồm đăng nhập, đăng xuất, đổi mật khẩu, quên mật khẩu; cung cấp các thao tác dữ liệu cơ bản như thêm mới, sửa, xóa, làm mới thông tin, in dữ liệu và tìm kiếm.
  2. Chức năng nghiệp vụ:
    • Quản lý quá trình chăn nuôi (liên kết vật nuôi, khẩu phần thức ăn, thuốc tiêm điều trị và nhân viên phụ trách).
    • Quản lý thông tin nhân viên làm việc trong trang trại.
    • Quản lý quy trình nhập đàn con giống và quy trình xuất bán vật nuôi thương phẩm.
    • Tìm kiếm, thống kê và xuất dữ liệu thông tin vật nuôi.

Phạm vi nghiên cứu của đề tài tập trung vào mô hình vận hành của các trang trại chăn nuôi gia súc, gia cầm. Đối tượng thụ hưởng chính của hệ thống là các chủ trang trại hoặc nhà quản lý có nhu cầu ứng dụng công nghệ thông tin để chuẩn hóa quy trình ghi nhận dữ liệu, theo dõi tăng trưởng, tối ưu chi phí thức ăn và nâng cao hiệu quả kinh tế trong chăn nuôi.

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

Đề tài sử dụng phương pháp phân tích và thiết kế hệ thống thông tin kết hợp với kỹ thuật lập trình hướng đối tượng trên nền tảng Java. Quy trình thực hiện nghiên cứu và phát triển phần mềm dựa trên các cơ sở lý thuyết chuẩn:

  • Mô hình hóa dữ liệu ý niệm: Sử dụng mô hình thực thể kết hợp (Entity Relationship Diagram - ERD) nhằm xác định các thực thể thế giới thực, các thuộc tính tương ứng và mối liên kết giữa các thực thể, tạo tiếng nói chung giữa người phân tích và người dùng cuối.
  • Mô hình dữ liệu quan hệ (Relational Data Model): Ứng dụng lý thuyết đại số quan hệ và các ràng buộc toàn vẹn dữ liệu (khóa chính, khóa ngoại, toàn vẹn tham chiếu) để chuyển đổi từ sơ đồ ý niệm ERD sang lược đồ quan hệ logic chuẩn hóa, làm nền tảng cài đặt trên hệ quản trị cơ sở dữ liệu quan hệ (RDBMS).
  • Mô hình hóa hành vi và tương tác (UML):
    • Biểu đồ Use Case (Use Case tổng quát và Use Case phân rã) để mô tả yêu cầu chức năng và mối tương tác giữa người dùng (User/Admin) với hệ thống.
    • Biểu đồ trình tự (Sequence Diagram) để mô tả tuần tự luồng thông điệp giữa các đối tượng giao diện, xử lý logic và cơ sở dữ liệu trong từng ca sử dụng cụ thể.
    • Sơ đồ lớp (Class Diagram) để biểu diễn cấu trúc tĩnh của các thực thể phần mềm.
  • Nguồn dữ liệu nghiên cứu: Dữ liệu khảo sát từ quy trình vận hành chăn nuôi thực tế, các yêu cầu ghi nhận tăng trưởng và quản lý chi phí thức ăn, vật tư thú y, cùng hệ thống tài liệu kỹ thuật về phát triển ứng dụng Java/JavaFX và Microsoft SQL Server.

Thiết kế và triển khai

Môi trường và công nghệ triển khai

Hệ thống được phát triển và vận hành dựa trên bộ công nghệ desktop chuẩn:

  • Môi trường phát triển tích hợp (IDE): Apache NetBeans IDE (phiên bản được bảo trợ bởi Apache Foundation, cấp phép theo Apache License 2.0). NetBeans cung cấp kiến trúc mô-đun, tích hợp công cụ quản lý dự án Ant/Maven, trình soạn thảo mã nguồn và nền tảng NetBeans Platform phục vụ xây dựng ứng dụng máy tính để bàn.
  • Hệ quản trị cơ sở dữ liệu: Microsoft SQL Server (MS SQL Server). Hệ thống khai thác các thành phần cơ bản của SQL Server như Database Engine (quản lý lưu trữ và bảng dữ liệu), Reporting Services (hỗ trợ tạo báo cáo), Service Broker và các dịch vụ truy vấn quan hệ nhằm đảm bảo khả năng xử lý dữ liệu tin cậy.
  • Nền tảng giao diện người dùng: Ngôn ngữ lập trình Java kết hợp thư viện JavaFX. JavaFX (tiền thân là dự án F3 – Form Follows Functions do kỹ sư Chris Oliver phát triển trước khi thuộc sở hữu của Sun Microsystems/Oracle) được sử dụng để xây dựng giao diện người dùng đồ họa (GUI) đa nền tảng, hỗ trợ các thành phần TableView, TextField, Button cho các ứng dụng phong phú (RIAs).

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

Cơ sở dữ liệu của hệ thống được tổ chức thành 7 bảng dữ liệu quan hệ với các trường thông tin, kiểu dữ liệu và ràng buộc khóa cụ thể:

STT Tên bảng Tên trường (Thuộc tính) Kiểu dữ liệu Loại khóa Diễn giải chức năng
1 TaiKhoan TaiKhoan
MatKhau
SDT
CauHoi
CauTL
varchar(50)
nvarchar(100)
nvarchar(50)
nvarchar(100)
nvarchar(100)
PK
-
-
-
-
Tên tài khoản quản trị
Mật khẩu đăng nhập
Số điện thoại xác thực
Câu hỏi bảo mật của hệ thống
Câu trả lời bảo mật để khôi phục
2 NhanVien MaNV
TenNV
GT
NS
SDT
DC
char(20)
nvarchar(50)
nvarchar(50)
int
char(20)
nvarchar(50)
PK
-
-
-
-
-
Mã định danh nhân viên
Họ và tên nhân viên
Giới tính
Năm sinh
Số điện thoại liên hệ
Địa chỉ cư trú
3 ThucAn MaTA
TenTA
SoLuongTA
GiaTA
NhaCC
char(20)
nvarchar(50)
int
float
nvarchar(50)
PK
-
-
-
-
Mã định danh thức ăn
Tên loại thức ăn chăn nuôi
Số lượng tồn/nhập kho
Đơn giá thức ăn
Nhà cung cấp thức ăn
4 NhapVN MaVatNuoi
LoaiVN
TenVN
SLNhap
TLNhap
GiaNhap
NgayNhap
GhiChu
char(20)
nvarchar(50)
nvarchar(50)
int
int
float
date
nvarchar(50)
PK
-
-
-
-
-
-
-
Mã định danh lô/con giống
Phân loại (gia súc/gia cầm)
Tên giống vật nuôi
Số lượng nhập đàn
Trọng lượng nhập đàn
Đơn giá nhập con giống
Ngày nhập đàn
Ghi chú thông tin đi kèm
5 QLNuoi MaQT
MaVatNuoi
MaTA
MaThuoc
MaNV
ThoiGian
TinhTrangSK
MoTa
char(20)
char(20)
char(20)
char(20)
char(20)
date
nvarchar(50)
nvarchar(50)
PK
FK
FK
FK
FK
-
-
-
Mã quá trình chăn nuôi
Liên kết lô vật nuôi (NhapVN)
Liên kết loại thức ăn (ThucAn)
Liên kết thuốc tiêm phòng (Thuoc)
Liên kết nhân viên phụ trách (NhanVien)
Thời gian bắt đầu/ghi nhận
Tình trạng sức khỏe vật nuôi
Mô tả chi tiết quá trình nuôi
6 Thuoc MaThuoc
TenThuoc
TacDung
SoLuongT
GiaThuoc
NhaCCT
char(20)
nvarchar(50)
nvarchar(50)
int
float
nvarchar(50)
PK
-
-
-
-
-
Mã thuốc thú y
Tên loại thuốc tiêm/điều trị
Tác dụng, công dụng chữa bệnh
Số lượng thuốc trong kho
Giá thuốc
Nhà cung cấp vật tư y tế
7 XuatBan MaBan
MaVatNuoi
SLBan
TLBan
GiaBan
NgayBan
char(20)
char(20)
int
int
float
date
PK
FK
-
-
-
-
Mã giao dịch xuất bán
Liên kết lô vật nuôi (NhapVN)
Số lượng vật nuôi xuất chuồng
Tổng trọng lượng xuất bán
Giá bán thương phẩm
Ngày thực hiện giao dịch

Kiến trúc ca sử dụng và luồng điều khiển

Hệ thống thiết kế 1 Use Case tổng quát liên kết người dùng với cơ sở dữ liệu thông qua 4 phân nhóm: Tạo tài khoản, Quản lý quá trình nuôi, Quản lý nhân viên và Quản lý nhập vật nuôi. Ở mức phân rã, mỗi mô-đun chức năng đều hỗ trợ đầy đủ các ca sử dụng thành phần:

  • Nhập/Đổi thông tin tài khoản.
  • Thêm mới bản ghi.
  • Sửa đổi thông tin bản ghi.
  • Xóa bản ghi khỏi cơ sở dữ liệu.
  • Làm mới trạng thái nhập liệu (Clear form).
  • In danh sách dữ liệu ra bảng thống kê.

Các luồng tương tác được cụ thể hóa bằng hệ thống Biểu đồ trình tự:

  • Xác thực và tài khoản: Biểu đồ trình tự đăng nhập, Biểu đồ trình tự đổi mật khẩu.
  • Nghiệp vụ nhập vật nuôi: Biểu đồ trình tự thêm, sửa, xóa, in và tìm kiếm con giống vật nuôi.
  • Nghiệp vụ xuất bán: Biểu đồ trình tự thêm, sửa, xóa, in và tìm kiếm giao dịch xuất bán vật nuôi.

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

Chương 1: Tổng quan

Chương 1 trình bày bối cảnh chung về sự phát triển của công nghệ thông tin thời kỳ 4.0 và yêu cầu ứng dụng số hóa trong ngành nông nghiệp chăn nuôi. Tác giả phân tích những hạn chế của phương pháp quản lý thủ công truyền thống như ghi chép rời rạc, thất thoát dữ liệu, thiếu công cụ dự báo và giám sát chi phí. Từ đó, chương xác định mục tiêu tổng quát, mục tiêu chức năng (quản lý quá trình nuôi, nhân viên, xuất bán, tìm kiếm và thống kê), phạm vi áp dụng thực tế tại các trang trại và bố cục gồm 4 chương của toàn bộ đồ án.

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

Nội dung chương 2 tập trung vào hai phần chính: tổng quan công nghệ và phân tích thiết kế hệ thống.

  • Mô tả công nghệ: Giới thiệu lịch sử, cơ chế hoạt động, tính mô-đun và giấy phép của Apache NetBeans IDE, NetBeans Platform; kiến trúc và các dịch vụ cốt lõi của Microsoft SQL Server; cấu trúc và ưu điểm của ngôn ngữ lập trình JavaFX trong việc xây dựng ứng dụng desktop RIAs.
  • Mô hình hóa hệ thống: Phân tích bài toán quản lý trang trại; xây dựng mô hình thực thể kết hợp (ERD); đặc tả chi tiết 7 biểu đồ Use Case (tổng quát và phân rã); xây dựng 12 biểu đồ trình tự (Sequence Diagrams) cho các thao tác đăng nhập, đổi mật khẩu, quản lý nhập và xuất vật nuôi; thiết lập Sơ đồ lớp (Class Diagram) và thiết kế lược đồ quan hệ logic gồm 7 bảng dữ liệu vật lý.

Chương 3: Kết quả thực nghiệm

Chương 3 minh họa và mô tả chi tiết kết quả xây dựng 16 màn hình giao diện người dùng tương ứng với các chức năng của phần mềm:

  1. Giao diện đăng nhập tài khoản.
  2. Giao diện quên mật khẩu (nhập tên tài khoản, đối chiếu số điện thoại và câu hỏi bảo mật để hiển thị lại mật khẩu).
  3. Giao diện cập nhật lại mật khẩu.
  4. Giao diện màn hình chính (điều hướng phân hệ Tài khoản và Quản lý trang trại).
  5. Giao diện nhập con giống (quản lý thông tin lô giống, CRUD, in và tìm kiếm).
  6. Giao diện quản lý quá trình nuôi (tích hợp vật nuôi, thức ăn, thuốc, nhân viên, tình trạng sức khỏe).
  7. Giao diện quản lý thức ăn.
  8. Giao diện quản lý thuốc thú y.
  9. Giao diện quản lý nhân viên.
  10. Giao diện quản lý xuất bán vật nuôi.
  11. Giao diện in danh sách vật nuôi nhập đàn.
  12. Giao diện in thông tin quá trình nuôi.
  13. Giao diện in danh sách thức ăn.
  14. Giao diện in danh sách thuốc thú y.
  15. Giao diện in danh sách nhân viên.
  16. Giao diện in danh sách xuất bán vật nuôi.

Chương 4: Kết luận – Kiến nghị

Chương cuối cùng tổng kết các kết quả đạt được của phần mềm trong việc tạo ra một hệ thống quản lý tập trung, trực quan, hỗ trợ lập kế hoạch chăn nuôi và tiết kiệm chi phí nhân công. Đồng thời, nhóm tác giả thẳng thắn chỉ ra các hạn chế trong quá trình thực hiện và đưa ra 4 kiến nghị kỹ thuật cụ thể nhằm nâng cấp và hoàn thiện phần mềm trong các giai đoạn tiếp theo.

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

Phần mềm đã hiện thực hóa đầy đủ các yêu cầu thiết kế ban đầu với các kết quả cụ thể:

  • Hoàn thiện hệ thống quản lý tập trung: Xây dựng ứng dụng desktop có khả năng kết nối cơ sở dữ liệu quan hệ, tích hợp toàn bộ các phân hệ quản lý độc lập (con giống, quá trình nuôi, thức ăn, vật tư y tế, nhân lực và thương mại xuất bán) trên cùng một giao diện điều hành.
  • Hiện thực hóa 16 màn hình chức năng: Cung cấp đầy đủ các giao diện tương tác phục vụ việc nhập liệu, hiệu chỉnh, tra cứu nhanh thông qua bảng dữ liệu (TableView) và kết xuất các biểu mẫu in ấn thống kê trực tiếp từ cơ sở dữ liệu.
  • Chuẩn hóa quy trình dữ liệu chăn nuôi: Thiết lập được mối liên kết logic chặt chẽ giữa quá trình nuôi với các yếu tố đầu vào (thức ăn, thuốc tiêm) và nhân sự phụ trách, giúp chủ trang trại có dữ liệu chi tiết để theo dõi tình trạng sức khỏe vật nuôi và kiểm soát chi phí trong toàn bộ vụ nuôi.

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

Căn cứ vào phần đánh giá và kiến nghị trong báo cáo, đồ án tồn tại một số hạn chế kỹ thuật và định hướng nâng cấp sau:

  • Về bảo mật: Hệ thống hiện tại lưu trữ và xử lý mật khẩu ở dạng thông thường; cơ chế khôi phục mật khẩu phụ thuộc vào câu hỏi bảo mật tĩnh hiển thị trực tiếp. Hướng phát triển tiếp theo là áp dụng thuật toán mã hóa mật khẩu và tích hợp xác thực OTP qua Email hoặc Số điện thoại.
  • Về phân quyền người dùng: Hệ thống chưa phân tách vai trò chi tiết giữa Quản trị viên (Admin) và Nhân viên. Cần nâng cấp cơ chế kiểm soát truy cập dựa trên vai trò (RBAC), trong đó tài khoản Admin có toàn quyền quản trị, còn tài khoản Nhân viên chỉ được phép thêm, sửa, làm mới dữ liệu và bị khóa quyền xóa để ngăn ngừa rủi ro mất mát dữ liệu.
  • Về phân tích tài chính: Phần mềm mới dừng lại ở việc lưu trữ đơn giá và số lượng nhập/xuất riêng lẻ. Hướng mở rộng cần xây dựng thêm mô-đun tự động tính toán tổng thu chi, kết xuất báo cáo thống kê lãi/lỗ định kỳ để hỗ trợ người quản lý tối ưu hóa tài chính.
  • Về nền tảng triển khai: Ứng dụng hiện chỉ vận hành trên môi trường máy tính để bàn (Desktop). Tác giả kiến nghị phát triển thêm phiên bản trên thiết bị di động (Mobile App) nhằm tạo điều kiện cho chủ trang trại quản lý và giám sát từ xa một cách linh hoạt.

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, Công nghệ phần mềm và Kỹ thuật phần mềm đang thực hiện đồ án môn học Lập trình Java, Phân tích thiết kế hệ thống hoặc Đồ án tốt nghiệp.

Tài liệu cung cấp mẫu tham khảo rõ ràng về:

  • Quy trình mô hình hóa hệ thống từ bài toán thực tế sang các biểu đồ UML (Use Case, Biểu đồ trình tự, Sơ đồ lớp).
  • Cách thức thiết kế cơ sở dữ liệu quan hệ chuẩn trên MS SQL Server phục vụ cho một bài toán quản lý nghiệp vụ sản xuất.
  • Kỹ thuật xây dựng giao diện người dùng máy tính để bàn bằng JavaFX và kết nối xử lý dữ liệu CRUD với cơ sở dữ liệu backend.

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

1. Phần mềm được xây dựng bằng những công nghệ và ngôn ngữ nào?

Hệ thống sử dụng ngôn ngữ lập trình Java kết hợp thư viện đồ họa JavaFX để phát triển giao diện người dùng desktop trên môi trường NetBeans IDE. Cơ sở dữ liệu được xây dựng và quản trị bằng hệ quản trị cơ sở dữ liệu quan hệ Microsoft SQL Server.

2. Cơ sở dữ liệu của phần mềm bao gồm những bảng nào?

Cơ sở dữ liệu gồm 7 bảng quan hệ: TaiKhoan (quản trị tài khoản và bảo mật), NhanVien (thông tin nhân sự), ThucAn (quản lý thức ăn chăn nuôi), Thuoc (quản lý thuốc thú y), NhapVN (thông tin nhập con giống), QLNuoi (ghi nhận quá trình nuôi, liên kết vật nuôi, thức ăn, thuốc và nhân viên) và XuatBan (quản lý giao dịch xuất bán thương phẩm).

3. Cơ chế xử lý khi người dùng quên mật khẩu được thiết kế ra sao?

Tại giao diện "Quên mật khẩu", người dùng nhập tên tài khoản. Nếu tài khoản tồn tại trong bảng TaiKhoan, hệ thống sẽ tự động hiển thị số điện thoại cùng câu hỏi bảo mật đã đăng ký trước đó. Người dùng nhập câu trả lời bảo mật; nếu câu trả lời trùng khớp với dữ liệu trong hệ thống, mật khẩu của tài khoản sẽ được hiển thị để đăng nhập lại.

4. Phần mềm hỗ trợ in những loại danh sách và dữ liệu nào?

Hệ thống tích hợp 6 giao diện in ấn báo cáo chuyên biệt:

  • In danh sách con giống nhập đàn.
  • In thông tin chi tiết quá trình nuôi.
  • In danh sách kho thức ăn.
  • In danh sách kho thuốc thú y.
  • In danh sách nhân viên trang trại.
  • In danh sách vật nuôi xuất bán.

5. Tác giả đề xuất những giải pháp nào để nâng cao tính an toàn dữ liệu cho hệ thống?

Tác giả đề xuất mã hóa mật khẩu người dùng trong cơ sở dữ liệu, bổ sung xác thực hai bước qua email/SMS, đồng thời phân quyền rõ rệt: chỉ cấp quyền xóa dữ liệu cho tài khoản Admin, trong khi tài khoản Nhân viên chỉ được cấp quyền thêm, sửa và làm mới nhằm tránh thao tác xóa nhầm làm mất dữ liệu.

Kết luận

Đồ án "Phần mềm quản lý trang trại gia súc – gia cầm" của nhóm sinh viên ngành Công nghệ thông tin – Trường Đại học Công nghệ TP. HCM đã phân tích và xây dựng thành công một giải pháp phần mềm desktop hoàn chỉnh bằng JavaFX và MS SQL Server. Hệ thống đáp ứng tốt các yêu cầu nghiệp vụ quản lý nhập giống, theo dõi chăm sóc, kiểm soát vật tư y tế, thức ăn, nhân sự và xuất chuồng. Mặc dù cần nâng cấp thêm về mã hóa bảo mật, phân quyền tài khoản và phiên bản di động, đồ án đã giải quyết hiệu quả bài toán số hóa quy trình quản lý cho các trang trại chăn nuôi quy mô vừa và nhỏ.