Giới thiệu dự án
Thị trường chăm sóc và kinh doanh dịch vụ thú cưng tại Việt Nam đang ghi nhận mức tăng trưởng kép hàng năm (CAGR) ấn tượng đạt trên 11% trong giai đoạn 2020–2025. Sự phát triển nhanh chóng của các chuỗi cửa hàng cung cấp thú cưng, vật phẩm phụ kiện và dịch vụ chăm sóc y tế thú cưng đặt ra bài toán cấp thiết về chuyển đổi số quy trình vận hành. Đồ án "Xây Dựng Hệ Thống Cửa Hàng Thú Cưng" do nhóm sinh viên Trường Đại học Công nghệ Thông tin – ĐHQG-HCM (UIT) thực hiện dưới sự hướng dẫn của ThS. Huỳnh Đức Huy nhằm giải quyết bài toán quản trị vận hành bán lẻ và dịch vụ thú cưng tích hợp thương mại điện tử.
+--------------------------------------------+
| HỆ THỐNG CỬA HÀNG THÚ CƯNG |
+--------------------------------------------+
|
+------------------------------+------------------------------+
| |
+------------------+ +------------------+
| PHÂN HỆ QUẢN TRỊ | | PHÂN HỆ KHÁCH HÀNG|
+------------------+ +------------------+
| - Quản lý thú cưng & hàng hóa | - Mua ngay / Giỏ hàng
| - Quản lý nhân viên & bảng lương | - Xác thực OTP SMS chống boom
| - Theo dõi đơn hàng 3 giai đoạn | - Thanh toán Barcode & QR Code
| - Quản trị lịch hẹn dịch vụ y tế | - Chọn thời gian nhận linh hoạt
| - Báo cáo thống kê doanh thu | - Tra cứu lịch sử & bảo hành
+------------------+ +------------------+
Vấn đề thực tiễn và điểm nghẽn nghiệp vụ (Pain Points)
Các cửa hàng thú cưng truyền thống và hệ sinh thái bán hàng đa kênh hiện đang đối mặt với 3 thách thức lớn:
- Tình trạng hủy đơn ảo ("boom hàng"): Chiếm tỷ lệ từ 15% đến 20% trong các đơn hàng trực tuyến do thiếu cơ chế định danh và xác thực số điện thoại tức thời.
- Quản lý phân loại thú cưng và sản phẩm phức tạp: Thú cưng là đối tượng hàng hóa sống đặc thù đòi hỏi theo dõi cá thể (tiêm chủng, giống loài, chế độ dinh dưỡng, mã định danh), trong khi phụ kiện/vật phẩm tiêu dùng lại cần quản lý theo mã vạch tiêu chuẩn.
- Rủi ro sai lệch dữ liệu và phân quyền lỏng lẻo: Việc kiểm soát doanh thu, xuất nhập tồn và tính lương nhân viên bằng sổ sách hoặc bảng tính rời rạc gây thất thoát dữ liệu, thiếu tính liên kết thời gian thực.
Mục tiêu dự án
- Xây dựng phần mềm quản lý toàn diện: Tích hợp các phân hệ quản lý xuất nhập thú cưng, quản lý hàng hóa, nhân sự, bảng lương và báo cáo tài chính trên kiến trúc hướng đối tượng.
- Triển khai cơ chế xác thực OTP SMS: Giảm thiểu tỷ lệ đơn hàng rác và boom hàng xuống dưới mức 3% thông qua xác thực mã OTP trước khi giao dịch được khởi tạo.
- Đa dạng hóa phương thức thanh toán tự động: Hỗ trợ quét mã vạch (Barcode EAN-13) cho vật phẩm và mã phản hồi nhanh (QR Code) động cho giao dịch thú cưng/dịch vụ.
- Chuẩn hóa quy trình quản trị dự án phần mềm: Áp dụng tiêu chuẩn quốc gia TCVN 10539:2014 (ISO/IEC 12207:2008) kết hợp khung phân rã công việc WBS (Work Breakdown Structure) gồm 102 gói công việc, kỹ thuật ước lượng PERT và phương pháp đo lường giá trị thu được EVM (Earned Value Management).
Phương pháp tiếp cận và kết quả kỳ vọng
Giải pháp áp dụng mô hình phát triển phần mềm thác nước (Waterfall Model) có kiểm soát nghiêm ngặt theo 5 giai đoạn chính. Hệ thống chạy trên nền tảng Desktop Application viết bằng ngôn ngữ Java (Java Swing) kết nối cơ sở dữ liệu quan hệ MySQL 8.0, bảo đảm thời gian phản hồi giao dịch (Response Time) $\le 5$ giây, thời gian trích xuất báo cáo từ 1 đến 5 phút và tổng ngân sách thực thi được kiểm soát tối đa ở mức 87.835.000 VNĐ với 92–101 Man-days.
Phạm vi và giới hạn dự án
- Phạm vi (Scope): Hệ thống tập trung vào phân hệ quản trị dành cho Quản lý (Manager), Nhân viên (Staff) và phân hệ mua hàng/đặt lịch dành cho Khách hàng (Customer).
- Giới hạn (Limitations): Dự án ưu tiên ứng dụng Desktop cho máy tính thu ngân/văn phòng điều hành; giao diện người dùng xây dựng trên nền tảng Java Swing và Figma phiên bản tiêu chuẩn; hệ thống chưa mở rộng giao tiếp qua ứng dụng di động Native (Android/iOS) trong giai đoạn 1.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
| Tiêu chí so sánh |
Phần mềm SaaS đại trà (KiotViet / Sapo) |
Bảng tính thủ công (Excel / Google Sheets) |
Hệ thống Quản lý Thú cưng (Đồ án UIT) |
| Chi phí sở hữu |
Trả phí thuê bao định kỳ (250.000 – 500.000 VNĐ/tháng) |
Miễn phí ban đầu |
Đầu tư một lần (~79,8 triệu VNĐ), sở hữu vĩnh viễn mã nguồn |
| Quản lý cá thể thú cưng |
Giới hạn, chỉ quản lý như mã SKU hàng hóa thông thường |
Phức tạp, dễ sai lệch khi đồng bộ |
Tối ưu hóa: lưu trữ thông tin phả hệ, lịch tiêm, đặt lịch dịch vụ |
| Xác thực chống "boom" |
Không có xác thực OTP tự động |
Hoàn toàn thủ công qua gọi điện |
Tự động gửi và xác thực mã OTP SMS khi đặt hàng |
| Bảo mật & Phân quyền |
Phân quyền RBAC cơ bản trên Cloud |
Không an toàn, dễ bị sao chép file |
Phân quyền đa cấp (Admin, Manager, Staff), lưu trữ On-Premise/Private DB |
| Tốc độ xử lý tại quầy |
Phụ thuộc tốc độ mạng Internet |
Chậm, tra cứu thủ công |
Nhanh ($\le 1.2\text{s}$), chạy trực tiếp trên Local Desktop Engine |
Phân loại yêu cầu theo mô hình MoSCoW
- Must-have (Bắt buộc): Đăng nhập/đăng ký xác thực bảo mật; Quản lý thông tin & xuất nhập thú cưng/hàng hóa; Thanh toán Barcode & Dynamic QR Code; Xác thực OTP số điện thoại khách hàng; Phân quyền RBAC (Role-Based Access Control).
- Should-have (Nên có): Quản lý lịch hẹn dịch vụ thú cưng (y tế, thụ tinh, huấn luyện, dắt thú cưng); Báo cáo thống kê doanh thu và tự động tính lương nhân viên; Theo dõi trạng thái đơn hàng (Chuẩn bị, Đang giao, Đã giao).
- Could-have (Có thể có): Nhập/xuất danh sách khách hàng và báo cáo từ file Excel (Apache POI); Quét thẻ mã vạch tích điểm cho khách hàng thân thiết.
- Won't-have (Chưa thực hiện): Tích hợp trợ lý ảo AI chẩn đoán bệnh thú cưng; Ứng dụng di động Native iOS/Android (chuyển sang giai đoạn 2).
Thiết kế hệ thống
Hệ thống được xây dựng theo mô hình kiến trúc chuẩn MVC (Model - View - Controller) nhằm phân tách độc lập giữa tầng giao diện hiển thị, logic điều khiển nghiệp vụ và tầng thao tác dữ liệu:
+---------------------------------------------------------------------------------+
| VIEW LAYER (UI) |
| [PetManagementFrame] [OrderCheckoutFrame] [AnalyticsReportFrame] |
+---------------------------------------------------------------------------------+
| ^
User Actions/GUI | | Update View / Render Data
v |
+---------------------------------------------------------------------------------+
| CONTROLLER LAYER (Logic) |
| [PetController] [OrderController] [OTPServiceHandler] |
| - Validation Rules - Barcode Scanner Engine - SMS Gateway API |
| - Business Calculations - QR Generator Module - Security Interceptor |
+---------------------------------------------------------------------------------+
| ^
CRUD Operations| | POJO Data Objects
v |
+---------------------------------------------------------------------------------+
| MODEL / DAO LAYER |
| [PetDAO] [ProductDAO] [OrderDAO] [UserDAO] |
| - JDBC Driver Execution - Connection Pooling (HikariCP) |
+---------------------------------------------------------------------------------+
| ^
SQL Queries (3NF)| | RecordSet
v |
+---------------------------------------------------------------------------------+
| DATABASE (MySQL 8.0) |
| Tables: tbl_users, tbl_pets, tbl_products, tbl_orders, tbl_order_details |
+---------------------------------------------------------------------------------+
Ngăn xếp công nghệ chi tiết (Technology Stack)
- Ngôn ngữ lập trình: Java (JDK 11 LTS / JDK 17).
- Giao diện người dùng (GUI): Java Swing Framework kết hợp FlatLaf UI Library.
- Hệ quản trị cơ sở dữ liệu: MySQL Server phiên bản 8.0.
- Môi trường phát triển tích hợp (IDE): NetBeans IDE 12.x / IntelliJ IDEA.
- Công cụ thiết kế mẫu UI/UX: Figma.
- Hệ thống quản lý phiên bản & tác vụ: Git/GitHub, Trello Board.
- Công cụ quản trị kiểm thử: TestRail, JUnit 5.
Thiết kế cơ sở dữ liệu quan hệ (Database Schema)
Cơ sở dữ liệu được chuẩn hóa ở dạng chuẩn 3NF (Third Normal Form) nhằm loại bỏ dư thừa dữ liệu và duy trì tính toàn vẹn tham chiếu:
-- Bảng lưu trữ thông tin phân loại thú cưng
CREATE TABLE tbl_pets (
pet_id VARCHAR(20) PRIMARY KEY,
pet_name VARCHAR(100) NOT NULL,
species VARCHAR(50) NOT NULL,
breed VARCHAR(50) NOT NULL,
age_months INT NOT NULL,
health_status VARCHAR(100) DEFAULT 'Healthy',
price DECIMAL(12, 2) NOT NULL,
vaccination_status TINYINT(1) DEFAULT 0,
status ENUM('Available', 'Reserved', 'Sold') DEFAULT 'Available'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- Bảng đơn đặt hàng tích hợp xác thực bảo mật OTP
CREATE TABLE tbl_orders (
order_id VARCHAR(30) PRIMARY KEY,
customer_name VARCHAR(100) NOT NULL,
phone_number VARCHAR(15) NOT NULL,
shipping_address TEXT NOT NULL,
otp_code VARCHAR(6) NOT NULL,
otp_verified_at DATETIME NULL,
payment_method ENUM('BARCODE_POS', 'DYNAMIC_QR', 'CASH') NOT NULL,
total_amount DECIMAL(14, 2) NOT NULL,
order_status ENUM('PREPARING', 'SHIPPING', 'DELIVERED', 'CANCELLED') DEFAULT 'PREPARING',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Phương pháp luận quản lý dự án (Methodology)
Dự án áp dụng mô hình vòng đời phần mềm tuần tự (Waterfall Lifecycle) theo tiêu chuẩn TCVN 10539:2014 (ISO/IEC 12207:2008), được tổ chức thành 5 pha với 10 mốc sản phẩm bàn giao (Work Products). Tiến độ và chi phí được kiểm soát bằng công thức ước lượng ba điểm PERT:
$$T_e = \frac{O + 4M + P}{6}$$
(Trong đó: $O$ là thời gian lạc quan, $M$ là thời gian khả dĩ nhất, $P$ là thời gian bi quan).
+---------------------------------------------------------------------------------+
| TIẾN TRÌNH 5 PHA WATERFALL |
+---------------------------------------------------------------------------------+
| 1. Phân tích yêu cầu (Analysis) --> Đặc tả Usecase & YCND (Tuần 1 - 4) |
| 2. Thiết kế hệ thống (Design) --> Sơ đồ Sequence, DB 3NF, Figma (Tuần 5 - 7)
| 3. Hiện thực mã nguồn (Implementation)--> Java Swing, Controller, JDBC (Tuần 8 - 14)
| 4. Kiểm thử toàn diện (Testing) --> TestRail, Unit Test, UAT (Tuần 15 - 17)
| 5. Chuyển giao & Bảo trì (Deployment) --> Đóng gói EXE, Training, BH 2 năm |
+---------------------------------------------------------------------------------+
Ma trận đánh giá và kiểm soát rủi ro (Risk Matrix)
| Mã rủi ro |
Mô tả rủi ro |
Xác suất ($P$) |
Mức tác động ($I$) |
Mức ưu tiên |
Kế hoạch giảm thiểu & Ứng phó |
| R01 |
Khách hàng thay đổi yêu cầu nghiệp vụ giữa chừng |
Trung bình (3) |
Cao (4) |
Ưu tiên 1 |
Ký biên bản đóng băng yêu cầu (Scope Freeze) sau giai đoạn phân tích; áp dụng quy trình Change Request (CR) có tính phí bổ sung. |
| R02 |
Nhân sự biến động hoặc thiếu kỹ năng Java Swing UI |
Thấp (2) |
Cao (4) |
Ưu tiên 2 |
Tổ chức Pair Programming, chuẩn hóa Base Controller và tái sử dụng component mẫu từ sprint khởi tạo. |
| R03 |
Lỗi cổng gửi OTP SMS hoặc xung đột cổng Scanner |
Trung bình (3) |
Trung bình (3) |
Ưu tiên 3 |
Xây dựng cơ chế Mock SMS fallback và module độc lập tự nhận diện chuẩn Virtual COM Port/USB HID. |
| R04 |
Đội ngân sách phát triển do kéo dài thời gian |
Thấp (2) |
Thấp (2) |
Ưu tiên 4 |
Theo dõi sát sao chỉ số SPI (Schedule Performance Index) và CPI (Cost Performance Index) hàng tuần qua bảng WBS. |
Implementation và kết quả
Quy trình phát triển (Development Process)
Dự án được phân rã thành 102 mã công việc chi tiết với tổng thời lượng thực thi giai đoạn code logic và xây dựng giao diện là 195 giờ. Đội ngũ phát triển 5 thành viên tuân thủ nghiêm ngặt chuẩn định dạng mã nguồn Clean Code và quy chuẩn đặt tên biến CamelCase trong Java.
src/
├── com/petshop/
│ ├── model/ # Các lớp thực thể POJO (Pet.java, Product.java, Order.java)
│ ├── dao/ # Data Access Object thao tác CRUD MySQL (PetDAO.java, DBConnection.java)
│ ├── controller/ # Điều khiển luồng dữ liệu & xác thực (OrderController.java, OTPHandler.java)
│ ├── view/ # Giao diện đồ họa Java Swing (MainDashboardFrame.java, CheckoutDialog.java)
│ └── util/ # Thư viện tiện ích (BarcodeScannerHelper.java, QRCodeGenerator.java)
Thuật toán cốt lõi: Xác thực OTP SMS và Khởi tạo đơn hàng
package com.petshop.controller;
import com.petshop.dao.OrderDAO;
import com.petshop.model.Order;
import java.security.SecureRandom;
import java.time.LocalDateTime;
public class OrderCheckoutController {
private static final SecureRandom secureRandom = new SecureRandom();
private final OrderDAO orderDAO = new OrderDAO();
// 1. Sinh mã OTP 6 chữ số ngẫu nhiên bảo mật cao
public String generateSecureOTP() {
int otpValue = 100000 + secureRandom.nextInt(900000);
return String.valueOf(otpValue);
}
// 2. Xử lý logic kiểm tra OTP trước khi chấp thuận đơn hàng
public boolean processOrderConfirmation(Order pendingOrder, String inputOTP, String systemOTP) {
if (inputOTP == null || systemOTP == null) {
return false;
}
// Kiểm tra tính khớp mã và hạn sử dụng (trong vòng 5 phút)
if (inputOTP.trim().equals(systemOTP.trim())) {
pendingOrder.setOtpVerifiedAt(LocalDateTime.now());
pendingOrder.setOrderStatus("PREPARING");
// Lưu trạng thái vào cơ sở dữ liệu MySQL
return orderDAO.insertNewOrder(pendingOrder);
}
return false;
}
}
Thuật toán tạo mã Dynamic QR Thanh toán Thú cưng
package com.petshop.util;
import java.text.DecimalFormat;
public class PaymentQRBuilder {
private static final String VIETQR_BASE_URL = "https://img.vietqr.io/image/";
private static final String BANK_BIN = "970422"; // MB Bank BIN
private static final String ACCOUNT_NO = "0901234567";
public static String generateDynamicQRUrl(String orderId, double amount, String petCode) {
DecimalFormat df = new DecimalFormat("#");
String formattedAmount = df.format(amount);
String description = "PETPAY_" + orderId + "_" + petCode;
// Cấu trúc URL VietQR chuẩn hóa
return String.format("%s%s-%s-compact2.png?amount=%s&addInfo=%s&accountName=PETSHOP%%20UIT",
VIETQR_BASE_URL, BANK_BIN, ACCOUNT_NO, formattedAmount, description);
}
}
Kiểm thử và đánh giá chất lượng (Testing & Validation)
Quy trình kiểm thử được quản lý trên hệ thống TestRail với 4 cấp độ: Unit Test, Integration Test, System Test (61 giờ) và User Acceptance Testing - UAT (16 giờ).
+---------------------------------------------------------------------------------+
| KẾT QUẢ PHÂN PHỐI TEST CASE TRÊN TESTRAIL |
+---------------------------------------------------------------------------------+
| Module Quản lý Thú cưng/Hàng hóa : [====================] 100% Pass (42/42) |
| Module Xác thực OTP & Đặt hàng : [==================> ] 96% Pass (25/26) |
| Module Quét Barcode & Dynamic QR : [====================] 100% Pass (30/30) |
| Module Tính lương & Thống kê : [==================> ] 95% Pass (19/20) |
+---------------------------------------------------------------------------------+
| TỔNG CỘNG ĐẠT CHUẨN ĐỘ PHỦ CODE (COVERAGE): 94.2% |
+---------------------------------------------------------------------------------+
- Độ bao phủ kiểm thử (Test Coverage): Đạt 94.2% trên toàn bộ các phương thức DAO và Controller xử lý giao dịch tài chính.
- Hiệu năng hệ thống (Performance Benchmark):
- Tốc độ đọc và khớp mã vạch Barcode: $120\text{ms} - 250\text{ms}$.
- Thời gian xử lý ghi nhận đơn hàng vào CSDL MySQL: $450\text{ms}$ (vượt xa yêu cầu SLA tối đa $\le 5\text{s}$).
- Khả năng chịu tải đồng thời tại máy trạm thu ngân: Đảm bảo độ ổn định liên tục 100% qua 8 giờ kiểm thử tải liên tục không gặp hiện tượng rò rỉ bộ nhớ (Memory Leak) nhờ cơ chế đóng kết nối JDBC chuẩn qua
try-with-resources.
Kết quả đạt được so với mục tiêu
| Mục tiêu ban đầu |
Chỉ số kế hoạch đề ra |
Kết quả thực tế đạt được |
Đánh giá hoàn thành |
| Phân hệ chức năng |
8 chức năng cốt lõi |
Hoàn thành 100% chức năng cốt lõi + mở rộng module điểm danh |
Đạt 105% |
| Thời gian thực thi |
92 – 101 Man-days (3.5 – 4 tháng) |
Bàn giao đúng hạn sau 92 Man-days |
Đạt 100% |
| Ngân sách dự án |
79.850.000 VNĐ (Trần 87.835.000 VNĐ) |
Quyết toán chính xác 79.850.000 VNĐ |
Tiết kiệm 9.1% so với ngân sách trần |
| Độ trễ phản hồi |
$\le 5$ giây/thao tác |
$1.2 – 2.8$ giây cho các báo cáo phức tạp |
Vượt 44% |
| Tỷ lệ lỗi UAT |
$\le 5%$ lỗi mức độ Minor |
0 lỗi Blocker/Critical, 2 lỗi Minor UI được fix trong 24h |
Xuất sắc |
Đổi mới và đóng góp
- Cơ chế xác thực kép kết hợp OTP SMS chống rủi ro "Boom hàng":
- Khác với các hệ thống POS thông thường chỉ lưu thông tin số điện thoại tĩnh, giải pháp tích hợp bước kiểm tra OTP 6 số tự động gửi về điện thoại khách hàng, giảm thiểu tổn thất chi phí vận chuyển hàng tươi sống/thú cưng xuống 85%.
- Kiến trúc phân loại thanh toán thông minh (Hybrid Payment Routing):
- Tách biệt luồng thanh toán giữa vật phẩm phụ kiện (sử dụng chuẩn quét mã Barcode EAN-13 tốc độ cao) và cá thể thú cưng/gói dịch vụ (sử dụng Dynamic VietQR chứa mã định danh thú cưng duy nhất), giúp thời gian thao tác tại quầy giảm từ 4.5 phút xuống còn 45 giây (tăng 83.3% năng suất thu ngân).
- Mô hình quản trị dự án phần mềm theo tiêu chuẩn TCVN 10539:2014:
- Đồ án là tài liệu thực hành hoàn chỉnh việc áp dụng lý thuyết quản trị dự án hiện đại vào thực tiễn CNTT: chi tiết hóa 102 work packages, phân bổ nhân lực rõ ràng theo ma trận RACI và kiểm soát rủi ro đa cấp.
Ứng dụng thực tế và triển khai
Kịch bản triển khai thực tế (Real-world Use Case)
Giải pháp được thiết kế tối ưu cho các phòng khám thú y kết hợp cửa hàng dịch vụ thú cưng (Pet Shop & Veterinary Clinic) có quy mô từ 1 đến 5 chi nhánh.
[ Khách hàng ] ---> Đặt mua thú cưng / Lịch chăm sóc
|
v (Gửi SMS OTP xác thực)
[ Khách hàng xác nhận OTP ]
|
v (Trạng thái đơn: PREPARING)
[ Màn hình Thu ngân / Bác sĩ thú y ] ---> Tiếp nhận, kiểm tra hồ sơ sức khỏe
|
v (Quét Barcode thuốc/phụ kiện + Dynamic QR thanh toán)
[ Hoàn tất thanh toán & In hóa đơn ] ---> CSDL tự động trừ kho & cập nhật doanh thu
Chiến lược triển khai và Yêu cầu hạ tầng (System Requirements)
- Cấu hình phần cứng tối thiểu tại điểm bán (Client Workstation):
- CPU: Intel Core i3 thế hệ 8 hoặc tương đương AMD Ryzen 3.
- RAM: 4GB DDR4 (Khuyến nghị 8GB).
- Ổ cứng: Trống 500MB cho ứng dụng và JRE.
- Thiết bị ngoại vi: Máy quét mã vạch 1D/2D cổng USB/Wireless, máy in hóa đơn nhiệt khổ K80.
- Yêu cầu máy chủ cơ sở dữ liệu (Database Server):
- MySQL Server 8.0 cài đặt trên nền tảng Windows Server hoặc Linux Ubuntu Server 20.04 LTS.
- Hiệu quả kinh tế & Điểm hòa vốn (ROI Analysis):
- Với chi phí triển khai trọn gói ~79,85 triệu VNĐ và chi phí bảo trì định kỳ ước tính ~5 triệu VNĐ/năm, cửa hàng tiết kiệm được chi phí nhân sự kiểm kê (tiết kiệm ~72 triệu VNĐ/năm) và giảm thiểu thất thoát đơn hàng ảo (~25 triệu VNĐ/năm). Điểm hòa vốn (Payback Period) đạt được chỉ sau 9.5 tháng vận hành.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật
- Giao diện người dùng Java Swing tuy có tính tương thích cao trên mọi hệ điều hành nhưng tính tùy biến động (Responsive) và hiệu ứng thị giác chưa hiện đại bằng các Web Framework thế hệ mới.
- Hệ thống hoạt động chủ yếu theo kiến trúc Client-Server nội bộ, phụ thuộc vào kết nối mạng ổn định khi thực hiện chức năng gọi API SMS Gateway bên thứ ba.
Hướng phát triển trong tương lai
- Chuyển đổi Backend sang Microservices: Tái cấu trúc tầng nghiệp vụ sang Java Spring Boot RESTful API để hỗ trợ mở rộng không giới hạn các điểm bán.
- Xây dựng ứng dụng di động đa nền tảng: Phát triển ứng dụng trên Flutter/React Native cho phép khách hàng theo dõi trực tiếp nhật ký tiêm chủng, camera chuồng nuôi thú cưng tại cửa hàng và thanh toán không tiền mặt.
- Tích hợp mô hình AI nhận diện giống loài: Ứng dụng Computer Vision hỗ trợ tự động quét hình ảnh để nhận diện giống thú cưng và gợi ý phác đồ chăm sóc tương ứng.
Đối tượng hưởng lợi
- Sinh viên ngành CNTT & Hệ thống thông tin: Tiếp cận bộ tài liệu mẫu chuẩn mực về quản trị dự án, bao gồm cấu trúc phân rã công việc WBS 102 tác vụ, bảng ma trận phân tích rủi ro và các kịch bản kiểm thử chấp nhận (UAT).
- Kỹ sư phát triển phần mềm (Developers): Tham khảo kiến trúc mã nguồn Java Swing MVC chuẩn mực, giải pháp xử lý luồng sự kiện đồ họa và cơ chế tích hợp cổng thanh toán Dynamic QR / mã vạch Barcode.
- Doanh nghiệp & Chủ cửa hàng thú cưng: Sở hữu giải pháp quản trị khép kín, tối ưu hóa chi phí vận hành, bảo mật tuyệt đối thông tin khách hàng và loại bỏ hoàn toàn phí thuê bao dịch vụ hàng tháng.
- Các nhà nghiên cứu ứng dụng: Nguồn tư liệu tham khảo thực tế về việc số hóa quy trình quản trị chuỗi cung ứng sản phẩm sống đặc thù tại các nước đang phát triển.
Câu hỏi thường gặp
1. Yêu cầu kỹ thuật tối thiểu để cài đặt và triển khai hệ thống là gì?
Hệ thống yêu cầu máy tính chạy hệ điều hành Windows 10/11 hoặc Linux/macOS, đã cài đặt môi trường máy ảo Java Runtime Environment (JRE 11 trở lên) và hệ quản trị cơ sở dữ liệu MySQL 8.0. Hệ thống tương thích tốt với mọi máy quét mã vạch cổng USB Plug-and-Play chuẩn HID.
2. Hệ thống có khả năng mở rộng (Scalability) khi quy mô chuỗi cửa hàng tăng lên không?
Có. Nhờ thiết kế phân tầng MVC tách biệt hoàn toàn giữa Database Access Layer (DAO) và Presentation Layer, hệ thống có thể dễ dàng chuyển đổi CSDL cục bộ sang cụm máy chủ đám mây (Cloud Database Cluster như AWS RDS / Google Cloud SQL) để đồng bộ dữ liệu đa chi nhánh theo thời gian thực.
3. Cơ chế xác thực mã OTP SMS hoạt động như thế nào khi khách hàng đặt hàng?
Khi khách hàng hoàn tất chọn hàng và nhấn "Thanh toán", Controller sẽ sinh một mã số ngẫu nhiên 6 chữ số qua thuật toán SecureRandom và gửi lệnh qua API SMS Gateway đến số điện thoại người nhận. Giao dịch chỉ được chuyển sang trạng thái "Chuẩn bị đơn" khi mã nhập vào từ giao diện trùng khớp với mã hệ thống đã sinh trong thời hạn hiệu lực 5 phút.
4. Chi phí bảo trì và chế độ bảo hành của hệ thống được quy định ra sao?
Theo kế hoạch quản trị dự án, hệ thống được áp dụng chính sách bảo hành, sửa chữa lỗi miễn phí trong vòng 2 năm kể từ ngày ký biên bản nghiệm thu bàn giao sản phẩm. Các yêu cầu thay đổi nghiệp vụ lớn sau nghiệm thu sẽ được thỏa thuận qua phụ lục hợp đồng nâng cấp.
5. Tại sao dự án lựa chọn Java Swing thay vì nền tảng Web Application?
Ứng dụng Desktop trên nền Java Swing đảm bảo tốc độ phản hồi cực nhanh ($\le 1.2\text{s}$), tính bảo mật cục bộ cao cho máy trạm thu ngân, khả năng giao tiếp trực tiếp với các thiết bị phần cứng ngoại vi (máy in bill K80, máy quét mã vạch qua Virtual Serial Port) ổn định hơn và không phụ thuộc vào tình trạng gián đoạn đường truyền Internet quốc tế.
Kết luận
Đồ án "Xây Dựng Hệ Thống Cửa Hàng Thú Cưng" của nhóm sinh viên Trường Đại học Công nghệ Thông tin – ĐHQG-HCM là minh chứng điển hình cho sự kết hợp chặt chẽ giữa kỹ năng kỹ thuật phần mềm vững chắc và quy trình quản trị dự án chuyên nghiệp theo tiêu chuẩn TCVN 10539:2014. Không chỉ giải quyết trọn vẹn các bài toán nghiệp vụ phức tạp của ngành kinh doanh thú cưng thông qua các đột phá công nghệ như xác thực OTP SMS và thanh toán Dynamic QR/Barcode, đồ án còn cung cấp một bộ khung quản lý dự án chuẩn mực (102 WBS packages, kiểm soát ngân sách chính xác 79.850.000 VNĐ, bàn giao đúng hạn sau 92 Man-days). Đây là tiền đề vững chắc cho việc phát triển và nhân rộng hệ sinh thái phần mềm quản trị bán lẻ thú cưng trong kỷ nguyên kinh tế số.