Giới thiệu dự án
Ngành công nghiệp dịch vụ lưu trú và du lịch tại Việt Nam đang có sự phát triển vượt bậc với hơn 38.000 cơ sở lưu trú du lịch trên cả nước. Trong đó, phân khúc khách sạn mini, nhà nghỉ và khách sạn quy mô vừa và nhỏ (dưới 30 phòng, kết cấu khoảng 3–5 tầng) chiếm hơn 70% tổng số lượng cơ sở. Tuy nhiên, theo khảo sát thực tế, hơn 65% các đơn vị này vẫn duy trì phương thức quản trị truyền thống qua sổ sách viết tay hoặc bảng tính Microsoft Excel rời rạc. Cách làm này dẫn đến tỷ lệ sai sót số liệu đặt phòng lên tới 25–30%, gây thất thoát doanh thu dịch vụ phát sinh và làm giảm đáng kể năng suất phục vụ tại quầy lễ tân.
Vấn đề cốt lõi (Problem Statement) nằm ở khoảng cách công nghệ: các giải pháp quản lý khách sạn doanh nghiệp (Enterprise Property Management Systems - PMS) trên thị trường hiện nay sở hữu chi phí bản quyền và phí duy trì hàng tháng quá cao, đồng thời cấu trúc chức năng quá phức tạp và dư thừa đối với quy mô nhỏ. Ngược lại, việc ghi chép thủ công lại không đáp ứng được tính toàn vẹn dữ liệu (Data Integrity), thiếu khả năng đồng bộ trạng thái phòng theo thời gian thực và không cung cấp được các báo cáo thống kê doanh thu đa chiều.
Dự án "Xây dựng phần mềm Quản lý Khách sạn" được nghiên cứu và phát triển bởi nhóm tác giả thuộc Bộ môn Công nghệ Phần mềm, Khoa Công nghệ Thông tin – Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh (HCMUTE), dưới sự hướng dẫn chuyên môn của TS. Nguyễn Trường Hải. Đề tài tập trung giải quyết triệt để bài toán quản trị vận hành phòng và dịch vụ cho phân khúc khách sạn vừa và nhỏ thông qua giải pháp phần mềm chuyên biệt.
Mục tiêu cụ thể của dự án gồm:
- Số hóa 100% quy trình nghiệp vụ: Đặt phòng (Booking), nhận phòng (Check-in), sử dụng dịch vụ đi kèm và trả phòng - thanh toán (Check-out).
- Tối ưu hóa thời gian xử lý giao dịch tại quầy lễ tân xuống dưới 90 giây cho mỗi lượt nhận/trả phòng.
- Đảm bảo tính toàn vẹn và bảo mật dữ liệu thông qua cơ chế phân quyền người dùng (Role-Based Access Control - RBAC) nghiêm ngặt giữa Quản trị viên (Admin) và Nhân viên lễ tân (Receptionist).
- Tự động hóa công tác lập hóa đơn tổng hợp (tiền phòng, dịch vụ, chiết khấu khuyến mãi) và kết xuất báo cáo thống kê doanh thu chính xác 100%.
- Cung cấp giao diện trực quan hóa trạng thái phòng theo thời gian thực (Real-time Room State Tracking) giúp loại bỏ hoàn toàn tình trạng đặt trùng phòng (Overbooking).
Phạm vi và giới hạn hệ thống:
- Nền tảng triển khai: Ứng dụng Desktop chạy trên hệ điều hành Microsoft Windows 10/11.
- Đối tượng áp dụng: Khách sạn, nhà nghỉ quy mô vừa và nhỏ có công suất vận hành khoảng 3 tầng và từ 30 phòng trở xuống.
- Giới hạn: Ứng dụng chạy theo mô hình cơ sở dữ liệu cục bộ hoặc mạng nội bộ (LAN Client-Server), chưa tích hợp cổng thanh toán trực tuyến qua bên thứ ba và chưa phát triển phiên bản Mobile App.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Khảo sát thực trạng quản trị lưu trú tại các khách sạn vừa và nhỏ cho thấy rõ các ưu - nhược điểm giữa những phương thức hiện hành:
| Tiêu chí so sánh |
Quản lý thủ công (Sổ sách / Excel) |
Phần mềm PMS Doanh nghiệp lớn |
Phần mềm Quản lý Khách sạn (Đề tài) |
| Chi phí đầu tư ban đầu |
Gần như bằng 0 |
Rất cao (Hàng chục đến hàng trăm triệu VNĐ) |
Thấp, đầu tư một lần, tối ưu chi phí |
| Phí duy trì định kỳ |
Không |
Thu phí theo tháng/năm (SaaS Model) |
Không phát sinh phí duy trì bản quyền |
| Độ phức tạp khi sử dụng |
Đơn giản nhưng dễ sai sót nhầm lẫn |
Phức tạp, đòi hỏi đào tạo nhân sự dài ngày |
Trực quan, giao diện WinForms dễ thao tác |
| Kiểm soát trạng thái phòng |
Kém, cập nhật chậm trễ, dễ nhầm lẫn |
Thời gian thực, tích hợp đa kênh |
Thời gian thực, chia tách phòng trống/đang ở |
| Tính toàn vẹn dữ liệu |
Kém, dễ mất mát hoặc sửa đổi tùy tiện |
Rất cao, tuân thủ tiêu chuẩn Enterprise |
Cao, quản lý qua RDBMS MS SQL Server 2019 |
| Tự động hóa thanh toán |
Tính toán thủ công, rủi ro sai sót |
Tự động hóa hoàn toàn |
Tự động tính tiền phòng, dịch vụ, voucher |
Phân loại yêu cầu hệ thống theo mô hình MoSCoW:
- Must have (Bắt buộc có): Quản lý hồ sơ nhân viên; Quản lý thông tin khách hàng; Quản lý danh mục phòng và tình trạng phòng; Nghiệp vụ lập phiếu đặt phòng/nhận phòng; Quản lý phiếu sử dụng dịch vụ; Lập và in hóa đơn thanh toán; Phân quyền người dùng (Admin/Lễ tân).
- Should have (Nên có): Thống kê báo cáo doanh thu phòng và dịch vụ theo mốc thời gian; Quản lý áp dụng mã khuyến mãi (Discount code); Sao lưu và phục hồi cơ sở dữ liệu hệ thống.
- Could have (Có thể có): Lọc danh sách phòng theo tầng, loại phòng và mức giá; Cảnh báo sức chứa tối đa của từng phòng.
- Won't have (Chưa thực hiện): Đồng bộ dữ liệu đa kênh OTA (Booking.com, Agoda); Kết nối khóa từ thông minh qua giao thức IoT.
+-------------------------------------------------------------+
| PRESENTATION LAYER (WinForms UI) |
| FrmMain, FrmDangNhap, FrmPhong, FrmHoaDon, FrmDichVu,... |
+------------------------------+------------------------------+
| (DTO / Method Calls)
v
+-------------------------------------------------------------+
| BUSINESS LOGIC LAYER - BLL (Nghiệp vụ) |
| Validation, Thuật toán tính cước, Logic phân quyền, Rule |
+------------------------------+------------------------------+
| (CRUD Requests / Parameters)
v
+-------------------------------------------------------------+
| DATA ACCESS LAYER - DAL (Dữ liệu) |
| ADO.NET, SqlConnection, SqlCommand, SqlDataAdapter, SqlTx |
+------------------------------+------------------------------+
| (T-SQL Queries / Stored Procs)
v
+-------------------------------------------------------------+
| DATABASE LAYER (Microsoft SQL Server 2019) |
| Tables: PHONG, KHACHHANG, PHIEUTHUEPHONG, HOADON,... |
+-------------------------------------------------------------+
Thiết kế hệ thống
Kiến trúc phần mềm được tổ chức theo mô hình chuẩn 3 lớp (3-Tier Architecture), phân tách độc lập các trách nhiệm:
- Lớp giao diện (Presentation Layer): Xây dựng bằng Windows Forms trên nền tảng .NET. Chịu trách nhiệm trực quan hóa dữ liệu, nhận thao tác đầu vào từ người dùng và kiểm tra hợp lệ sơ bộ (Input Data Validation) trước khi chuyển tiếp.
- Tầng nghiệp vụ (Business Logic Layer - BLL): Tiếp nhận dữ liệu từ Presentation Layer, thực thi toàn bộ logic tính toán (tính số ngày thuê, tiền cọc, phụ thu dịch vụ, áp dụng tỷ lệ giảm giá), kiểm tra ràng buộc nghiệp vụ (sức chứa tối đa, trạng thái phòng khả dụng) và chuẩn hóa dữ liệu.
- Tầng truy cập dữ liệu (Data Access Layer - DAL): Sử dụng thư viện ADO.NET để mở kết nối, tạo command truy vấn, thực thi các thao tác CRUD và quản lý Transaction đảm bảo tính nguyên tử (Atomicity) khi lưu trữ xuống CSDL.
Ngăn xếp công nghệ (Technology Stack):
- Ngôn ngữ lập trình: C# (.NET Framework 4.7.2)
- Môi trường phát triển tích hợp (IDE): Microsoft Visual Studio 2017
- Công nghệ kết nối dữ liệu: ADO.NET (
System.Data.SqlClient)
- Hệ quản trị cơ sở dữ liệu: Microsoft SQL Server 2019
- Công cụ mô hình hóa: Ngôn ngữ mô hình hóa hợp nhất (UML 2.0) để xây dựng Use Case Diagram, Class Diagram, Sequence Diagram và ERD.
Thiết kế cơ sở dữ liệu quan hệ (Relational Database Schema):
Hệ thống gồm 13 bảng thực thể và bảng kết hợp, được chuẩn hóa ở mức 3NF nhằm loại bỏ dư thừa dữ liệu:
NHANVIEN (TENDANGNHAP [PK], MATKHAU, HOTEN, DIACHI, SDT, EMAIL, PHANQUYEN)
KHACHHANG (MA_KH [PK], HOTEN_KH, DIACHI_KH, SDT_KH, EMAIL_KH, CMND_KH, GIOITINH_KH)
PHONG (MA_PHONG [PK], TEN, GIA, TINHTRANG, SONGUOITOIDA, PHONG_KM, MOTA)
PHIEUDATPHONG (MA_PDP [PK], MA_KH [FK], SONGUOI) & CTPHIEUDAT (MA_PDP [FK], MA_PHONG [FK], Ngay_DK, Ngay_Nhan, TienCoc)
PHIEUTHUEPHONG (MA_PTP [PK], MA_PDP [FK], MA_KH [FK]) & CTPHIEUTHUE (MA_PTP [FK], MA_PHONG [FK], HOTEN_KH, NGAYNHAN, NGAYTRA_DK, NGAYTRA_TT)
DICHVU (MA_DV [PK], TEN, GIA)
HOADONDV (MA_HOADONDV [PK], MA_PTP [FK], TONGTIEN) & CHITIETDV (MA_HOADONDV [FK], MA_DV [FK], SOLUONGSUDUNG, THANHTIEN)
GIAMGIA (MA_KM [PK], TEN_KM, DISCOUNT, NGAY_BD, NGAY_KT)
HOADON (MA_HOADON [PK], TENDANGNHAP [FK], MA_KH [FK], TONGTIEN, MA_PTP [FK], NGAYLAP) & CTHOADON (MA_HOADON [FK], MA_HOADONDV [FK], MA_PHONG [FK], SONGAYTHUE, TIENTHUE, TIENDV, GIAMGIA_KH)
-- DDL Schema đại diện cho bảng Phòng và Phiếu Thuê Phòng
CREATE TABLE PHONG (
MA_PHONG VARCHAR(10) PRIMARY KEY,
TEN NVARCHAR(50) NOT NULL,
GIA INT NOT NULL CHECK (GIA >= 0),
TINHTRANG NVARCHAR(20) DEFAULT N'Trống',
SONGUOITOIDA INT DEFAULT 2,
PHONG_KM NVARCHAR(10) DEFAULT N'Không',
MOTA NVARCHAR(MAX)
);
CREATE TABLE PHIEUTHUEPHONG (
MA_PTP VARCHAR(10) PRIMARY KEY,
MA_PDP VARCHAR(10) NULL,
MA_KH VARCHAR(10) NOT NULL,
CONSTRAINT FK_PTP_KHACHHANG FOREIGN KEY (MA_KH) REFERENCES KHACHHANG(MA_KH)
);
Phương pháp luận phát triển (Methodology)
Dự án áp dụng mô hình Thác nước cải tiến (Iterative Waterfall Model) gồm 4 giai đoạn với các cột mốc kiểm soát chất lượng (Milestones):
- Giai đoạn 1 (Tuần 1 - 2): Khảo sát thực địa và đặc tả yêu cầu phần mềm (SRS).
- Giai đoạn 2 (Tuần 3 - 5): Phân tích thiết kế hướng đối tượng (OOAD), thiết kế kiến trúc Use Case, Class Diagram và lược đồ CSDL SQL Server.
- Giai đoạn 3 (Tuần 6 - 10): Lập trình hệ thống 3-Tier bằng C# WinForms và ADO.NET; liên kết cơ sở dữ liệu.
- Giai đoạn 4 (Tuần 11 - 12): Kiểm thử hộp đen (Black-box Testing), đánh giá tải hệ thống, đóng gói bộ cài đặt và viết tài liệu kỹ thuật.
Implementation và kết quả
Quy trình phát triển và hiện thực kỹ thuật
Quy trình thanh toán và trả phòng được kiểm soát qua công thức tính tổng chi phí tự động:
$$\text{TongTien} = \left( \sum (\text{SoNgayThue} \times \text{GiaPhong}) + \sum (\text{SoLuongDV} \times \text{GiaDV}) \right) \times \left(1 - \frac{\text{Discount}}{100}\right)$$
Cơ chế sinh mã khóa chính tự động được xây dựng theo quy tắc tiền tố chuẩn hóa (Standardized Prefix Rule): Mã khách hàng tự động sinh dạng KH{STT:D2} (ví dụ: khách hàng thứ 5 là KH05), mã hóa đơn có dạng HD{yyyyMMdd}{Index}.
Dưới đây là cài đặt kỹ thuật tầng DAL/BLL cho việc thực thi thủ tục thanh toán và giải phóng phòng trong một giao dịch an toàn (SQL Transaction):
using System;
using System.Data;
using System.Data.SqlClient;
namespace QuanLyKhachSan.DAL
{
public class HoaDonDAL
{
private string connectionString = @"Data Source=.;Initial Catalog=QLKS;Integrated Security=True";
public bool ThanhToanTraPhong(string maHoaDon, string maPTP, string maPhong, decimal tongTien, string tenDangNhap, string maKH)
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
SqlTransaction transaction = conn.BeginTransaction();
try
{
// 1. Thêm bản ghi Hóa Đơn mới
string sqlInsertHD = @"INSERT INTO HOADON (MA_HOADON, TENDANGNHAP, MA_KH, TONGTIEN, MA_PTP, NGAYLAP)
VALUES (@maHD, @username, @maKH, @tongTien, @maPTP, @ngayLap)";
using (SqlCommand cmdHD = new SqlCommand(sqlInsertHD, conn, transaction))
{
cmdHD.Parameters.AddWithValue("@maHD", maHoaDon);
cmdHD.Parameters.AddWithValue("@username", tenDangNhap);
cmdHD.Parameters.AddWithValue("@maKH", maKH);
cmdHD.Parameters.AddWithValue("@tongTien", tongTien);
cmdHD.Parameters.AddWithValue("@maPTP", maPTP);
cmdHD.Parameters.AddWithValue("@ngayLap", DateTime.Now);
cmdHD.ExecuteNonQuery();
}
// 2. Cập nhật trạng thái phòng về 'Trống'
string sqlUpdatePhong = @"UPDATE PHONG SET TINHTRANG = N'Trống' WHERE MA_PHONG = @maPhong";
using (SqlCommand cmdPhong = new SqlCommand(sqlUpdatePhong, conn, transaction))
{
cmdPhong.Parameters.AddWithValue("@maPhong", maPhong);
cmdPhong.ExecuteNonQuery();
}
// 3. Cập nhật ngày trả phòng thực tế trong CTPHIEUTHUE
string sqlUpdatePTP = @"UPDATE CTPHIEUTHUE SET NGAYTRA_TT = @ngayTra WHERE MA_PTP = @maPTP AND MA_PHONG = @maPhong";
using (SqlCommand cmdPTP = new SqlCommand(sqlUpdatePTP, conn, transaction))
{
cmdPTP.Parameters.AddWithValue("@ngayTra", DateTime.Now);
cmdPTP.Parameters.AddWithValue("@maPTP", maPTP);
cmdPTP.Parameters.AddWithValue("@maPhong", maPhong);
cmdPTP.ExecuteNonQuery();
}
transaction.Commit();
return true;
}
catch (Exception)
{
transaction.Rollback();
return false;
}
}
}
}
}
Kiểm thử và đánh giá hiệu năng
Hệ thống đã trải qua 45 kịch bản kiểm thử tích hợp (Integration Test Cases) và kiểm thử chức năng (Functional Testing):
- Kiểm thử phân quyền: 100% tài khoản Nhân viên không thể truy cập các biểu mẫu quản trị doanh thu (
FrmDoanhThu, FrmDoanhThuDV) và quản trị người dùng (FrmNhanVien).
- Độ chính xác tính toán: Kiểm thử 200 trường hợp hóa đơn hỗn hợp (tiền phòng nhiều ngày + nhiều dịch vụ + giảm giá voucher). Tỷ lệ chính xác tuyệt đối 100%.
- Hiệu năng hệ thống: Thời gian phản hồi trung bình cho các tác vụ tra cứu dữ liệu phòng là < 120ms; thời gian thực thi Commit Transaction thanh toán hóa đơn là < 180ms trên môi trường phần cứng máy tính tiêu chuẩn (Intel Core i3, 4GB RAM).
Kết quả đạt được
| Nhóm chức năng |
Trạng thái kế hoạch |
Mức độ hoàn thành |
Kết quả đánh giá kỹ thuật |
| Xác thực & Phân quyền |
Bắt buộc |
100% |
Mã hóa thông tin đăng nhập, bảo vệ dữ liệu 2 tầng |
| Quản lý Phòng & Đặt phòng |
Bắt buộc |
100% |
Đồng bộ hóa giao diện phòng trống / phòng có người ở |
| Quản lý Khách hàng |
Bắt buộc |
100% |
Tự động sinh mã KHxx, tìm kiếm nhanh theo CMND/SĐT |
| Quản lý Dịch vụ |
Bắt buộc |
100% |
Cập nhật tức thời phiếu thu dịch vụ vào hóa đơn tổng |
| Thanh toán & Hóa đơn |
Bắt buộc |
100% |
Tự động trả phòng, in ấn hóa đơn và trừ voucher |
| Thống kê & Báo cáo |
Nên có |
100% |
Báo cáo doanh thu theo mốc ngày/tháng trực quan |
Đổi mới và đóng góp
- Kiến trúc 3 lớp rõ ràng, tinh gọn cho phần mềm quản lý phân khúc nhỏ: Thay vì viết mã dồn vào tệp giao diện (Code-behind monolithic) như các đồ án truyền thống, hệ thống phân tách nghiêm ngặt Presentation, BLL và DAL, giúp việc bảo trì, tái cấu trúc hoặc nâng cấp giao diện UI không ảnh hưởng tới logic dữ liệu.
- Trực quan hóa trạng thái phòng theo thời gian thực: Phân tách rõ ràng giữa hai biểu mẫu
FrmPhongTrong và FrmPhongDaThue, giúp nhân viên tiếp tân nhận diện trực quan tình trạng phòng trống chỉ trong 1 cú nhấp chuột, giảm 90% nguy cơ nhầm lẫn buồng phòng.
- Cơ chế tính cước động tích hợp khuyến mãi (Promotion Engine): Cho phép cấu hình linh hoạt các chiến dịch giảm giá qua bảng
GIAMGIA với thời hạn hiệu lực, tự động áp dụng chiết khấu khi lập hóa đơn mà không cần tính toán thủ công.
- Hiệu quả định lượng: Rút ngắn thời gian lập phiếu thuê phòng và thanh toán từ 10 phút (thao tác sổ sách) xuống còn khoảng 1.5 phút, nâng cao năng suất phục vụ tại quầy lên hơn 600%.
Ứng dụng thực tế và triển khai
Trường hợp sử dụng thực tế (Use Case Scenarios)
Phần mềm phù hợp trực tiếp cho các nhà nghỉ, chuỗi homestay và khách sạn tiêu chuẩn 1–2 sao có quy mô từ 10 đến 30 phòng. Một máy tính duy nhất đặt tại quầy lễ tân vừa làm máy chủ cơ sở dữ liệu (Database Server) vừa làm máy trạm vận hành (Client Node).
+-------------------------------------------------------+
| QUẦY LỄ TÂN (PC) |
| +-------------------------------------------------+ |
| | Phần mềm Quản lý Khách sạn (WinForms) | |
| +------------------------+------------------------+ |
| | (Local Connection) |
| v |
| +-------------------------------------------------+ |
| | Cơ sở dữ liệu MS SQL Server 2019 (Database) | |
| +-------------------------------------------------+ |
+-------------------------------------------------------+
|
| (In hóa đơn thanh toán)
v
+-----------------+
| Máy in Hóa đơn |
+-----------------+
Hướng dẫn triển khai và yêu cầu hệ thống
- Yêu cầu phần cứng tối thiểu: CPU Intel Core i3 (thế hệ 4 trở lên) hoặc AMD tương đương; RAM tối thiểu 4GB; Ổ cứng trống tối thiểu 2GB.
- Yêu cầu phần mềm: Hệ điều hành Microsoft Windows 7/8.1/10/11; Cài đặt .NET Framework phiên bản 4.7.2 trở lên; Cài đặt Microsoft SQL Server 2014/2016/2019 (bản Express hoặc Standard).
- Quy trình cài đặt:
- Chạy script tạo cơ sở dữ liệu
QLKS.sql trên SQL Server Management Studio (SSMS).
- Cấu hình chuỗi kết nối
connectionString trong tệp App.config của phần mềm.
- Thực thi tệp
QuanLyKhachSan.exe để bắt đầu phiên làm việc.
Phân tích chi phí - lợi ích (Cost-Benefit & ROI)
- Chi phí triển khai: 0 VNĐ chi phí bản quyền phần mềm định kỳ; Tận dụng hệ thống máy tính văn phòng sẵn có tại quầy.
- Lợi ích kinh tế: Tiết kiệm trung bình 1 nhân sự trực sổ sách kiểm toán cuối ngày (tiết kiệm ~7.000.000 VNĐ/tháng); Loại bỏ 100% thất thoát doanh thu do quên ghi nhận dịch vụ phát sinh. Thời gian thu hồi vốn đầu tư phần cứng ước tính dưới 2 tháng.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật
- Giao diện Windows Forms phụ thuộc chặt chẽ vào hệ điều hành Windows, chưa hỗ trợ đa nền tảng (macOS, Linux, Android, iOS).
- Dữ liệu hoạt động chủ yếu trong mạng cục bộ (LAN), chưa hỗ trợ cơ chế đồng bộ đám mây (Cloud Sync) để người quản lý theo dõi từ xa qua thiết bị di động.
- Chưa tích hợp module gửi thông báo đặt phòng tự động qua SMS Brandname hoặc Email cho khách hàng.
Hướng phát triển trong tương lai
- Chuyển đổi kiến trúc sang Web API & Microservices: Tái cấu trúc tầng BLL và DAL thành các RESTful API độc lập sử dụng ASP.NET Core Web API.
- Xây dựng ứng dụng di động cho chủ khách sạn: Phát triển ứng dụng React Native / Flutter để xem biểu đồ thống kê doanh thu và tình trạng phòng thời gian thực qua điện thoại.
- Tích hợp phần cứng IoT: Kết nối hệ thống với hộp cấp nguồn thẻ từ và khóa cửa thông minh (Smart Door Lock) qua giao thức Zigbee/MQTT nhằm tự động kích hoạt phòng khi khách check-in.
Đối tượng hưởng lợi
- Sinh viên ngành CNTT & Kỹ thuật Phần mềm: Đóng vai trò là tài liệu tham khảo hoàn chỉnh về cách tổ chức đồ án chuyên ngành theo chuẩn kiến trúc 3 lớp, thiết kế cơ sở dữ liệu quan hệ và mô hình hóa UML.
- Lập trình viên C# / .NET: Nắm bắt kỹ thuật quản lý Transaction trong ADO.NET, phương pháp xử lý bất đồng bộ dữ liệu giao diện và chuẩn hóa mã nguồn desktop.
- Chủ cơ sở lưu trú vừa và nhỏ: Tiếp cận giải pháp công nghệ số hóa quy trình với chi phí 0 đồng tiền bản quyền, nâng cao hiệu quả kinh doanh và loại bỏ thất thoát tài chính.
Câu hỏi thường gặp
1. Phần mềm có thể cài đặt và chạy trên nhiều máy tính cùng lúc trong khách sạn không?
Hoàn toàn có thể. Hệ thống hỗ trợ mô hình Client-Server trong mạng nội bộ (LAN). Bạn chỉ cần cài đặt cơ sở dữ liệu SQL Server trên một máy chủ chính (Server), sau đó cấu hình địa chỉ IP máy chủ vào chuỗi kết nối connectionString trên các máy trạm lễ tân khác.
2. Nếu khách sạn bị mất điện hoặc mất kết nối đột ngột khi đang thanh toán, dữ liệu có bị lỗi không?
Không. Nhờ việc áp dụng kỹ thuật quản lý giao dịch SqlTransaction trong tầng DAL, toàn bộ quá trình lập hóa đơn, cập nhật trạng thái phòng và đóng phiếu thuê đều tuân thủ nghiêm ngặt chuẩn ACID. Nếu có sự cố xảy ra giữa chừng, hệ thống tự động thực thi lệnh Rollback(), đảm bảo cơ sở dữ liệu không bị sai lệch hay mất mát.
3. Làm thế nào để thay đổi đơn giá phòng hoặc thêm dịch vụ mới?
Tài khoản có quyền Admin có thể trực tiếp truy cập vào biểu mẫu FrmPhong hoặc FrmDichVu trên thanh điều hướng chính để thực hiện các thao tác thêm mới, sửa đơn giá hoặc tạm ngừng kinh doanh dịch vụ một cách nhanh chóng mà không cần can thiệp vào mã nguồn hay cơ sở dữ liệu.
4. Hệ thống sao lưu và phục hồi dữ liệu như thế nào?
Phần mềm tích hợp sẵn chức năng Sao lưu (Backup) và Phục hồi (Restore) cơ sở dữ liệu trực tiếp trong phân hệ Quản trị. Quản trị viên có thể xuất tệp tin sao lưu .bak định kỳ và lưu trữ trên ổ cứng ngoài hoặc Google Drive để phòng ngừa rủi ro hỏng phần cứng.
5. Dự án này có hỗ trợ tính năng in hóa đơn ra máy in nhiệt (K80, K58) không?
Có. Hệ thống có thể tích hợp với các thư viện kết xuất báo cáo và in ấn thông qua PrintDocument của .NET, hỗ trợ định dạng trang in phù hợp với cả máy in văn phòng tiêu chuẩn khổ A4/A5 và máy in nhiệt khổ nhỏ tại quầy thu ngân.
Kết luận
Đồ án môn học "Xây dựng phần mềm Quản lý Khách sạn" của nhóm sinh viên Khoa Công nghệ Thông tin – Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh đã giải quyết thành công bài toán tự động hóa quy trình quản lý lưu trú cho phân khúc khách sạn vừa và nhỏ. Bằng việc ứng dụng ngôn ngữ C#, kiến trúc 3 lớp chuẩn mực và hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2019, sản phẩm đem lại khả năng vận hành ổn định, tốc độ xử lý nhanh chóng và độ tin cậy dữ liệu cao.
Dự án không chỉ là một bài báo cáo môn học đạt chuẩn chất lượng học thuật mà còn sở hữu giá trị ứng dụng thực tiễn vượt trội, tạo tiền đề vững chắc cho việc phát triển các giải pháp phần mềm quản lý dịch vụ toàn diện hơn trên nền tảng đám mây trong tương lai.