I. Giới thiệu về Hệ thống Quản lý Kí Túc Xá
Hệ thống quản lý kí túc xá là một giải pháp tin học hóa quan trọng cho các trường đại học hiện đại. Trong bối cảnh công nghiệp hóa và hiện đại hóa của Việt Nam, việc ứng dụng công nghệ thông tin vào quản lý giáo dục trở nên cấp thiết. Bài tập lớn UML này tập trung vào việc phân tích và thiết kế một hệ thống toàn diện cho Trường Đại học Công nghiệp Hà Nội với sức chứa khoảng 4000 sinh viên. Hệ thống được xây dựng dựa trên phương pháp hướng đối tượng, sử dụng UML để mô hình hóa các quy trình quản lý phức tạp. Mục tiêu chính là thay thế hoàn toàn các công việc quản lý thủ công bằng sổ sách, giấy tờ, nâng cao hiệu quả và độ chính xác trong xử lý dữ liệu.
1.1. Đặt vấn đề Hệ thống Quản lý
Kí túc xá trường ĐH Công nghiệp Hà Nội với quy mô lớn hiện đang gặp nhiều thách thức trong quản lý. Công tác quản lí sinh viên, cơ sở vật chất, thu chi tiền phòng, tiền điện nước vẫn phụ thuộc vào sổ sách và giấy tờ. Đặc biệt vào đầu năm học, khi số lượng sinh viên đăng ký cao, việc xử lý thông tin trở nên chậm chạp và dễ xảy ra sai sót. Hệ thống UML được đề xuất nhằm giải quyết những bất cập này thông qua tin học hóa toàn diện.
1.2. Cơ cấu Tổ chức Quản lý
Bộ máy quản lí kí túc xá bao gồm trưởng ban quản lí và các nhân viên. Nhân viên phải quản lý xét duyệt hồ sơ, nhập thông tin sinh viên, cấp thẻ nội trú, thu tiền điện nước theo phòng. Họ cũng có trách nhiệm cập nhật thông tin phòng, tiện nghi, dịch vụ và lập các báo cáo thống kê về sinh viên, phòng trống, phí nội trú. Hệ thống UML giúp tối ưu hóa quy trình công việc của các bộ phận này.
II. Phân tích Chi tiết Bài toán Quản lý Sinh viên
Phân tích bài toán quản lý kí túc xá yêu cầu xem xét kỹ lưỡng các quy trình liên quan đến sinh viên và dữ liệu của họ. Hệ thống cần quản lý toàn bộ vòng đời của sinh viên từ khi đăng ký, được phê duyệt, xếp phòng cho đến khi rời khỏi kí túc xá. Mỗi sinh viên phải cung cấp thông tin chi tiết bao gồm họ tên, ngày sinh, giới tính, quê quán, số CMND, mã sinh viên, lớp và khoa. Dữ liệu sinh viên trong hệ thống UML được lưu trữ và quản lý một cách có hệ thống, cho phép tra cứu, cập nhật và xóa thông tin khi cần thiết.
2.1. Quy trình Đăng ký và Phê duyệt
Khi sinh viên có nhu cầu ở kí túc xá, họ phải đăng ký với ban quản lý theo biểu mẫu quy định. Ban quản lý kiểm tra xem sinh viên có đủ điều kiện và còn chỗ trống hay không. Nếu đủ điều kiện, sinh viên sẽ ký hợp đồng và được xếp phòng. Ngược lại, thông báo từ chối sẽ được gửi đến sinh viên. Hệ thống UML ghi nhận toàn bộ quá trình này với các trạng thái rõ ràng.
2.2. Quản lý Thay đổi Thông tin Sinh viên
Trong suốt thời gian ở kí túc xá, sinh viên có thể chuyển phòng hoặc rời khỏi. Khi chuyển phòng, số phòng thay đổi nhưng thông tin sinh viên được giữ nguyên. Khi chuyển ra ngoài hoặc bị cắt hợp đồng, mọi thông tin phải được xóa khỏi hệ thống. Hệ thống quản lý kí túc xá cần hỗ trợ các thao tác này một cách an toàn và hiệu quả.
III. Biểu đồ Use Case và Đặc tả Chức năng
Biểu đồ Use Case UML là công cụ quan trọng để mô tả tương tác giữa người dùng và hệ thống quản lý kí túc xá. Các Use Case chính bao gồm: đăng ký nội trú, phê duyệt hồ sơ, xếp phòng, cấp thẻ nội trú, thu tiền điện nước, quản lý trật tự vệ sinh, thống kê báo cáo. Mỗi Use Case có các tác nhân khác nhau như sinh viên, nhân viên quản lý, trưởng ban quản lí. Đặc tả Use Case chi tiết các bước thực hiện, điều kiện tiên quyết, kết quả dự kiến của mỗi chức năng. Biểu đồ này giúp xác định rõ ràng phạm vi và ranh giới của hệ thống.
3.1. Các Use Case Chính
Hệ thống bao gồm các Use Case cơ bản như: Đăng ký nội trú (sinh viên gửi hồ sơ), Phê duyệt hồ sơ (nhân viên kiểm tra), Xếp phòng (gán phòng cho sinh viên), Cấp thẻ nội trú (phát thẻ cấp), Thu tiền điện nước (quản lý chi phí), Quản lý trật tự (giám sát sinh viên), Tìm kiếm thông tin (tra cứu dữ liệu). Mỗi Use Case đều liên kết với các Actor cụ thể trong hệ thống.
3.2. Đặc tả Chi tiết Use Case
Mỗi Use Case UML cần có đặc tả chi tiết gồm: tên Use Case, mô tả tóm tắt, các Actor tham gia, điều kiện tiên quyết, các bước thực hiện theo từng luồng sự kiện (luồng chính và luồng ngoại lệ), kết quả dự kiến. Ví dụ, Use Case Đăng ký nội trú có luồng chính là sinh viên điền thông tin và gửi hồ sơ, luồng ngoại lệ là thông tin không đầy đủ. Đặc tả này đảm bảo rõ ràng các yêu cầu của hệ thống.
IV. Thiết kế và Triển khai Hệ thống Quản lý
Thiết kế hệ thống quản lý kí túc xá bao gồm nhiều thành phần UML liên kết chặt chẽ. Biểu đồ lớp (Class Diagram) mô tả cấu trúc của các lớp như SinhVien, Phong, HopDong, TienDien, TienPhong với các thuộc tính và phương thức. Biểu đồ trình tự (Sequence Diagram) hiển thị thứ tự tương tác giữa các đối tượng khi thực hiện một Use Case. Biểu đồ trạng thái (State Diagram) mô tả các trạng thái có thể của sinh viên hoặc phòng. Biểu đồ thành phần và biểu đồ triển khai giúp xác định cấu trúc vật lý của hệ thống. Cuối cùng, mã trình và giao diện chương trình được sinh ra từ thiết kế UML này.
4.1. Mô hình Lớp và Quan hệ Dữ liệu
Biểu đồ lớp UML định nghĩa các lớp như: SinhVien (chứa id, họTên, ngàySinh, giớiTính, CMND), Phong (chứa sốPhòng, tầng, sứcChứa, trangThai), HopDong (chứa ngàyKy, ngàyHetHan, giáTiền), TienDien (chứa sốĐơn, giáTiền), TienPhong (chứa kỳ, sốTiền). Các lớp này có quan hệ: SinhVien - Phong (1-n), SinhVien - HopDong (1-1), Phong - TienDien (1-n), SinhVien - TienPhong (1-n). Mô hình này đảm bảo tính toàn vẹn dữ liệu.
4.2. Sinh mã và Giao diện Ứng dụng
Từ thiết kế UML, mã trình được sinh ra tự động hoặc bán tự động sử dụng các công cụ như Enterprise Architect, Visual Studio. Giao diện chương trình được thiết kế thân thiện với người dùng, bao gồm các form: Form đăng ký sinh viên, Form xếp phòng, Form thu tiền, Form tra cứu thông tin. Ứng dụng được xây dựng sử dụng công nghệ như .NET, Java để đảm bảo độ tin cậy và hiệu năng.