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

Công tác quản trị ký túc xá tại các cơ sở giáo dục đại học bao gồm nhiều quy trình nghiệp vụ phức tạp, liên quan đến nhiều phòng ban chức năng như phòng nhân sự, ban quản lý ký túc xá, bộ phận kế toán và đối tượng sinh viên nội trú. Việc xây dựng một hệ thống thông tin tự động hóa giúp giải quyết các bất cập trong khâu quản lý hồ sơ sinh viên, điều phối phòng ở, theo dõi trạng thái cơ sở vật chất, xử lý đăng ký và thu phí dịch vụ.

Đề tài "Hệ thống Quản lý và Đăng ký Ký túc xá Sinh viên" được thực hiện nhằm giải quyết các mục tiêu và nhiệm vụ nghiên cứu cụ thể sau:

  1. Xác định và khảo sát chi tiết các yêu cầu chức năng, yêu cầu phi chức năng cùng luồng công việc (workflow) trong quy trình quản lý ký túc xá.
  2. Phân loại và lập kịch bản cho các ca sử dụng (Use Case), đồng thời xếp hạng mức độ ưu tiên phát triển theo từng giai đoạn.
  3. Mô hình hóa hành vi và cấu trúc tĩnh của hệ thống bằng ngôn ngữ mô hình hóa thống nhất (UML), bao gồm các biểu đồ ca sử dụng, biểu đồ tuần tự, biểu đồ giao tiếp, biểu đồ hoạt động, biểu đồ lớp và biểu đồ trạng thái.
  4. Thiết kế kiến trúc tổng thể, mô hình dữ liệu quan hệ đạt chuẩn 3 (3NF), lựa chọn công nghệ lưu trữ và phác thảo hệ thống giao diện người dùng.

Đối tượng nghiên cứu của đề tài là quy trình nghiệp vụ quản trị và đăng ký ký túc xá sinh viên, bao gồm các thực thể người dùng, sinh viên, nhân viên, phòng ở, đơn hàng, hóa đơn và học kỳ. Về phạm vi không gian và thời gian, đồ án được nghiên cứu và hoàn thành vào ngày 20/01/2024 bởi nhóm sinh viên thuộc Khoa Công nghệ Thông tin 2, Học viện Công nghệ Bưu chính Viễn thông (Cơ sở TP. Hồ Chí Minh) trong khuôn khổ học phần Phân tích & Thiết kế Hệ thống Thông tin.

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

Đề tài áp dụng phương pháp phân tích và thiết kế hướng đối tượng (Object-Oriented Analysis and Design - OOAD) kết hợp cùng Ngôn ngữ mô hình hóa thống nhất (Unified Modeling Language - UML) để chuẩn hóa toàn bộ tài liệu đặc tả hệ thống.

Các phương pháp và công cụ kỹ thuật được tác giả sử dụng bao gồm:

  • Phương pháp phân tích ca sử dụng và khảo sát nghiệp vụ: Nhận diện các tác nhân (Actors) và phân rã các ca sử dụng trừu tượng thành các ca sử dụng cụ thể thông qua các quan hệ bao hàm (<<Include>>) và đặc biệt hóa (Generalization/Specialization).
  • Kỹ thuật phân cấp ưu tiên theo mô hình đèn giao thông: Phân loại các chức năng thành 3 nhóm: Mức Xanh (bắt buộc cài đặt trong giai đoạn hiện tại), Mức Vàng (cài đặt sau khi hoàn thành mức xanh) và Mức Đỏ (chưa cài đặt trong giai đoạn hiện tại).
  • Mô hình hóa động và tĩnh:
    • Biểu đồ cấu trúc: Biểu đồ lớp (Class Diagram), biểu đồ thực thể liên kết (ERD đạt dạng chuẩn 3NF).
    • Biểu đồ tương tác và hành vi: Biểu đồ tuần tự (Sequence Diagram), biểu đồ giao tiếp (Communication Diagram), biểu đồ hoạt động (Activity Diagram), biểu đồ trạng thái (State Diagram).
  • Nguồn dữ liệu và công cụ triển khai: Nghiên cứu dựa trên dữ liệu nghiệp vụ chuẩn hóa tại ký túc xá đại học; sử dụng hệ quản trị cơ sở dữ liệu Microsoft SQL Server thông qua công cụ quản lý SQL Server Management Studio 19 (SSMS 19).

Thiết kế và triển khai

Hệ thống được định hình cấu trúc kỹ thuật thông qua các phân tầng kiến trúc, mô hình dữ liệu quan hệ và hệ thống giao diện tương tác:

1. Kiến trúc hệ thống

Hệ thống áp dụng mô hình kiến trúc ba tầng (3-tier architecture) nhằm phân tách rõ ràng giữa tầng hiển thị (Presentation Layer), tầng xử lý nghiệp vụ (Business Logic Layer) và tầng truy xuất dữ liệu (Data Access Layer). Bên cạnh đó, hình trạng mạng và sự phân bổ các nút phần cứng, thiết bị máy trạm, máy chủ cơ sở dữ liệu được mô hình hóa chi tiết bằng biểu đồ triển khai UML.

2. Mô hình hóa lớp và cấu trúc hướng đối tượng

Hệ thống thiết lập các mối quan hệ cấu trúc giữa các lớp thực thể nhằm phản ánh chính xác mô hình thế giới thực:

  • Quan hệ kế thừa (Inheritance): Lớp SinhVien và NhanVien kế thừa toàn bộ các thuộc tính, phương thức cơ bản từ lớp cha User.
  • Quan hệ hợp thành (Composition): Lớp User có quan hệ hợp thành với hai lớp thành phần là HoTen (chứa các trường ho, tenDem, ten) và DiaChi (chứa các trường soNha, duong, phuong, quan, thanhPho), giúp tối ưu hóa khả năng quản lý và tìm kiếm dữ liệu.
  • Quan hệ cộng hợp (Aggregation): Thiết lập giữa PhongNhanSu - NhanVien, KeToan - HoaDon, QuanLy - Phong, QuanLy - SinhVien, và Phong - DonHang.
  • Quan hệ nhiều - nhiều (Multiplicity n-n): Quan hệ giữa SinhVien và HocKy được giải quyết thông qua lớp liên kết DonHang (mỗi đơn hàng phát sinh khi một sinh viên đăng ký hoặc gia hạn ký túc xá trong một học kỳ cụ thể).
[HoTen] <*-- [User] --*> [DiaChi]
                ^
        ________|________
       |                 |
  [SinhVien]        [NhanVien] <---<> [PhongNhanSu]
       |                 |
       v (n)             |
   [DonHang]             |
   (1) |                 |
       v                 |
    [Phong] <---<> [QuanLy]
       ^
       | (1)
   [HoaDon] <---<> [KeToan]

3. Thiết kế cơ sở dữ liệu và giao diện người dùng

  • Cơ sở dữ liệu: Thiết kế lược đồ thực thể ERD đạt dạng chuẩn 3 (3NF) để loại bỏ dư thừa dữ liệu và đảm bảo tính toàn vẹn tham chiếu trên hệ quản trị SQL Server Management Studio 19.
  • Giao diện người dùng: Xây dựng hệ thống form mẫu cho các tác vụ trọng tâm bao gồm: Giao diện đăng nhập, Giao diện lấy lại mật khẩu, Giao diện thông tin hóa đơn, Giao diện đăng ký phòng, Giao diện danh sách sinh viên, và Giao diện cập nhật thông tin sinh viên.

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

Phần I: Xác định yêu cầu hệ thống

Nội dung chương này tập trung vào việc thu thập, phân loại các yêu cầu người dùng và mô hình hóa chức năng hệ thống:

  • Xác định tác nhân: Phân định quyền hạn và trách nhiệm của 4 tác nhân người dùng và 1 tác nhân hệ thống:
    • Sinh viên: Thực hiện đăng ký phòng KTX trống, gia hạn phòng (1 hoặc 2 kỳ), thanh toán tiền phòng qua các kênh (tài khoản ngân hàng, VNPay, MoMo), thanh toán dịch vụ hàng tháng, gửi yêu cầu bảo trì và gửi khiếu nại.
    • Nhân viên kế toán: Lập hóa đơn đóng phí, thống kê doanh thu, thống kê phiếu bảo trì và thống kê tiền phạt.
    • Nhân viên quản lý: Cập nhật thông tin sinh viên và phòng KTX (thêm, xóa, sửa).
    • Phòng nhân sự: Cập nhật thông tin nhân sự (thêm, xóa, sửa và tra cứu lịch sử làm việc).
    • Hệ thống đăng ký KTX: Cung cấp giao diện thao tác và hiển thị thông báo hộp thư.
  • Đặc tả ca sử dụng và kịch bản nghiệp vụ: Hệ thống bao gồm 9 ca sử dụng cốt lõi (U1 - U9). Nhóm tác giả đã xây dựng 12 kịch bản ca sử dụng chi tiết (Bảng 1 đến Bảng 12), xác định rõ tác nhân chính, điều kiện trước, điều kiện sau, đảm bảo tối thiểu và chuỗi sự kiện chính/ngoại lệ.
  • Phân loại mức độ ưu tiên cài đặt:
Mã Ca sử dụng Tên Ca sử dụng Tác nhân chính Mức ưu tiên (Đèn giao thông) Ghi chú giai đoạn
U1 Đăng nhập Mọi tác nhân Xanh Bắt buộc cài đặt ngay
U2 Quản lý nhân viên Phòng nhân sự Xanh Bắt buộc cài đặt ngay
U3 Quản lý sinh viên Nhân viên quản lý Xanh Bắt buộc cài đặt ngay
U4 Quản lý phòng Nhân viên quản lý Xanh Bắt buộc cài đặt ngay
U5 Lập hóa đơn đóng phí Nhân viên kế toán Xanh Bắt buộc cài đặt ngay
U6 Thống kê doanh thu Nhân viên kế toán Đỏ Chưa cài đặt giai đoạn hiện tại
U7 Đăng ký KTX Sinh viên Xanh Bắt buộc cài đặt ngay
U8 Gia hạn KTX Sinh viên Vàng Cài đặt sau khi mức xanh hoàn thành
U9 Thanh toán tiền phòng Sinh viên Xanh Bắt buộc cài đặt ngay
  • Mô hình hóa tương tác và luồng hoạt động: Xây dựng 12 biểu đồ tuần tự và 5 biểu đồ hoạt động kiểm tra điều kiện xóa nhân viên, xóa sinh viên, xóa phòng, đăng nhập và đăng ký ký túc xá.

Phần II: Phân tích hệ thống

Chương này đi sâu vào việc phân tích hướng đối tượng, chuyển đổi các yêu cầu chức năng thành các thành phần phần mềm logic:

  • Đặc tả thuộc tính và phương thức các lớp: Xác định cấu trúc dữ liệu và hành vi của từng lớp đối tượng:
Lớp đối tượng Thuộc tính chính Phương thức chính Mối quan hệ
User taiKhoan, matKhau, ngaySinh, gioiTinh (1=Nam, 0=Nữ), sdt, laSinhVien (1=SV, 0=NV) dangNhap(taiKhoan, matKhau), thayDoiThongTin() Lớp cha của SinhVien, NhanVien; Hợp thành với HoTen, DiaChi
HoTen ho, tenDem, ten getHoTen(), setHoTen(ho, tenDem, ten) Hợp thành (Composition) với User
DiaChi soNha, duong, phuong, quan, thanhPho getDiaChi(), setDiaChi(soNha, duong, phuong, quan, thanhPho) Hợp thành (Composition) với User
SinhVien maSV, khoa, chuyenNganh, lop (kế thừa từ User) them(SinhVien), sua(SinhVien), xoa(SinhVien), timKiem(maSV), layThongTin(maSV) Kế thừa từ User; Quan hệ n-n với HocKy
NhanVien maNV, email (kế thừa từ User) them(NhanVien), sua(NhanVien), xoa(NhanVien), timKiem(maNV), layThongTin(maNV) Kế thừa từ User; Cộng hợp với PhongNhanSu
PhongNhanSu maChucVu, tenChucVu getTenChucVu() Cộng hợp (Aggregation) với NhanVien
HocKy maHocKy, namHoc, hocKy themHocKy(HocKy) Quan hệ n-n với SinhVien qua DonHang
DonHang maDonHang, maSV, maHocKy getMaHocKy(), getMaSV() Lớp liên kết giữa SinhVien và HocKy
Phong maPhong, soGiuong, trangThai (1=sẵn sàng, 0=bảo trì) them(Phong), sua(Phong), xoa(Phong), timKiem(maPhong), layThongTin(maPhong) Cộng hợp với DonHang và QuanLy
HoaDon soHoaDon, tongTienPhong, maDonHang tinhTongTienPhong(maDonHang) (Định mức: 200.000 VNĐ/tháng, 1 kỳ 5 tháng = 1.000.000 VNĐ) Kết hợp với DonHang; Cộng hợp với KeToan
  • Xây dựng biểu đồ giao tiếp và biểu đồ trạng thái: Thiết lập 12 biểu đồ giao tiếp mô tả việc truyền thông điệp giữa các đối tượng trong từng kịch bản nghiệp vụ. Đồng thời, xây dựng các biểu đồ trạng thái kiểm soát vòng đời của các thực thể User, DonHang và HoaDon.

Phần III: Thiết kế hệ thống

Chương này hiện thực hóa các kết quả phân tích sang thiết kế kỹ thuật:

  • Lập sơ đồ biểu diễn hình trạng mạng và mô hình phân bổ 3 tầng (3-tier).
  • Xây dựng mô hình cơ sở dữ liệu quan hệ (ERD) đạt chuẩn hóa 3NF trên hệ quản trị SQL Server Management Studio 19.
  • Thiết kế các màn hình giao diện tương tác người dùng, bảo đảm tính thuận tiện cho việc tra cứu, đăng ký phòng và quản lý dữ liệu.

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

Đồ án đã đạt được các kết quả cụ thể trong việc phân tích và thiết kế hệ thống thông tin quản lý ký túc xá:

  • Hoàn thiện tài liệu đặc tả yêu cầu với 9 ca sử dụng chính, 12 kịch bản ca sử dụng chi tiết và phân loại ưu tiên rõ ràng.
  • Xây dựng bộ hồ sơ thiết kế UML hoàn chỉnh gồm 12 biểu đồ tuần tự, 5 biểu đồ hoạt động, 12 biểu đồ giao tiếp, biểu đồ lớp tổng thể và 3 biểu đồ trạng thái.
  • Đề xuất mô hình dữ liệu hướng đối tượng phân tách rõ ràng các thực thể họ tên, địa chỉ và xử lý triệt để quan hệ nhiều-nhiều thông qua lớp liên kết DonHang.
  • Thiết lập công thức tính toán tài chính rõ ràng cho ca sử dụng lập hóa đơn: định mức đơn giá 200.000 VNĐ/tháng, tương ứng 1.000.000 VNĐ cho một học kỳ tiêu chuẩn 5 tháng.
  • Thiết kế hệ thống cơ sở dữ liệu quan hệ đạt chuẩn 3NF và 6 giao diện người dùng chính phục vụ các nghiệp vụ trọng tâm.

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

Dựa trên phạm vi và nội dung trình bày trong văn bản, đề tài có các hạn chế và định hướng phát triển như sau:

  • Hạn chế:
    • Các ca sử dụng thuộc mức ưu tiên Vàng (U8: Gia hạn KTX) và mức ưu tiên Đỏ (U6: Thống kê doanh thu, thống kê phiếu bảo trì, thống kê tiền phạt) chưa được cài đặt và chi tiết hóa trong giai đoạn hiện tại.
    • Tài liệu mới dừng lại ở giai đoạn phân tích, thiết kế kiến trúc, CSDL và giao diện mẫu, chưa triển khai lập trình và kiểm thử toàn diện trên một nền tảng mã nguồn cụ thể.
  • Hướng nghiên cứu tiếp:
    • Hiện thực hóa hệ thống phần mềm bằng ngôn ngữ lập trình phù hợp dựa trên kiến trúc 3 tầng và CSDL SQL Server đã thiết kế.
    • Cài đặt đầy đủ các chức năng gia hạn phòng, thống kê doanh thu và báo cáo tài chính định kỳ.
    • Tích hợp trực tiếp các cổng thanh toán điện tử trực tuyến (tài khoản ngân hàng, VNPay, MoMo) theo đúng kịch bản yêu cầu người dùng.

Giá trị tham khảo

Tài liệu là nguồn tham khảo hữu ích cho sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm và Hệ thống thông tin khi thực hiện đồ án môn học Phân tích & Thiết kế Hệ thống Thông tin hoặc khóa luận tốt nghiệp.

Các nội dung có giá trị tham khảo cao bao gồm:

  • Phương pháp lập bảng kịch bản ca sử dụng chuẩn mực với đầy đủ điều kiện biên và luồng xử lý ngoại lệ.
  • Kỹ thuật xây dựng các biểu đồ tương tác (Sequence và Communication Diagram) đồng bộ với biểu đồ lớp.
  • Cách tiếp cận phân rã lớp đối tượng hợp lý (tách lớp HoTen, DiaChi từ User) và chuẩn hóa CSDL đạt chuẩn 3NF.

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

1. Hệ thống phân chia quyền hạn giữa các nhóm tác nhân người dùng như thế nào?
Hệ thống xác định 4 tác nhân người dùng chính: Sinh viên (đăng ký, gia hạn phòng, thanh toán, gửi bảo trì/khiếu nại), Nhân viên quản lý (thêm, xóa, sửa thông tin sinh viên và phòng), Phòng nhân sự (thêm, xóa, sửa và tra cứu nhân viên) và Nhân viên kế toán (lập hóa đơn đóng phí, thống kê tài chính).

2. Kỹ thuật xếp hạng ưu tiên các ca sử dụng được thực hiện theo nguyên tắc nào?
Nhóm tác giả sử dụng mô hình đèn giao thông: Mức Xanh (U1, U2, U3, U4, U5, U7, U9) bắt buộc phải cài đặt ngay trong giai đoạn hiện tại; Mức Vàng (U8: Gia hạn KTX) cài đặt sau khi mức xanh hoàn thành; Mức Đỏ (U6: Thống kê doanh thu) không cài đặt trong giai đoạn hiện tại.

3. Đơn giá và cách tính tiền phòng ký túc xá được quy định như thế nào trong mô hình lớp?
Trong lớp HoaDon, phương thức tinhTongTienPhong(maDonHang) được cài đặt theo định mức: đơn giá tiền phòng là 200.000 VNĐ/tháng. Đối với một học kỳ chuẩn kéo dài 5 tháng, tổng tiền phòng được tính là 1.000.000 VNĐ.

4. Mối quan hệ giữa Sinh viên, Học kỳ và Đơn hàng được xử lý ra sao trong thiết kế?
Quan hệ giữa lớp SinhVien và HocKy là quan hệ nhiều-nhiều ($n-n$), được chuẩn hóa bằng việc sinh ra lớp liên kết trung gian DonHang (chứa các thuộc tính maDonHang, maSV, maHocKy). Lớp DonHang sau đó có quan hệ cộng hợp với lớp Phong để đảm bảo mỗi sinh viên trong một học kỳ chỉ đăng ký một phòng ở nhất định.

5. Cơ sở dữ liệu và kiến trúc phần mềm nào được lựa chọn để thiết kế hệ thống?
Hệ thống sử dụng kiến trúc ba tầng (3-tier architecture) và mô hình cơ sở dữ liệu quan hệ đạt chuẩn 3 (3NF), được quản trị trên phần mềm Microsoft SQL Server Management Studio 19 (SSMS 19).

Kết luận

Đồ án môn học "Hệ thống Quản lý và Đăng ký Ký túc xá Sinh viên" của nhóm sinh viên Học viện Công nghệ Bưu chính Viễn thông đã hoàn thành xuất sắc việc khảo sát, phân tích và thiết kế một hệ thống quản trị ký túc xá theo phương pháp hướng đối tượng. Toàn bộ các yêu cầu nghiệp vụ phức tạp từ quản lý nhân sự, sinh viên, phòng ở đến thu phí đều được mô hình hóa chặt chẽ qua hệ thống biểu đồ UML đồng bộ và chuẩn mực. Bản thiết kế kiến trúc 3 tầng, mô hình CSDL 3NF trên SQL Server và các giao diện người dùng mẫu tạo nền tảng vững chắc cho giai đoạn lập trình và triển khai thực tế của hệ thống.