Đồ án: Xây Dựng Website Quản Lý Ký Túc Xá ĐH Sư Phạm Kỹ Thuật

Website quản lý ký túc xá là giải pháp tối ưu giúp tự động hóa quy trình, nâng cao hiệu quả và đơn giản hóa công tác quản lý cho ban điều hành.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2022

73
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

TÓM TẮT

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

LỜI NÓI ĐẦU

CAM ĐOAN

MỤC LỤC

DANH MỤC BẢNG BIỂU

DANH MỤC HÌNH VẼ

DANH MỤC CHỮ VIẾT TẮT TIẾNG VIỆT

DANH MỤC CHỮ VIẾT TẮT TIẾNG ANH

MỞ ĐẦU

1. CHƯƠNG 1: CƠ SỞ LÝ THUYẾT

1.1. Giới thiệu hệ quản trị cơ sở dữ liệu MongoDB

1.1.1. Tổng quan về MongoDB

1.1.2. Ưu điểm của MongoDB so với cơ sở dữ liệu quan hệ (RDBMS)

1.1.3. Nhược điểm của MongoDB

1.2. Giới thiệu về Angular

1.2.1. Tổng quan về Angular

1.2.2. Lịch sử phát triển

1.2.3. Lợi ích của Angular

1.3. Bootstrap và Responsive

1.3.1. Tổng quan về Bootstrap

1.4. Giới thiệu về NodeJS

1.4.1. Tổng quan về NodeJS

1.4.2. NodeJS framework sử dụng phổ biến

2. CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG

2.1. Mô tả yêu cầu phần mềm

2.2. Mô tả Usecase

2.2.1. Usecase “Đăng nhập”

2.2.2. Usecase “Quản lý nhân viên”

2.2.3. Usecase “Quản lý sinh viên”

2.2.4. Usecase “Quản lý phòng”

2.2.5. Usecase “Quản lý thiết bị”

2.2.6. Usecase “Quản lý thông báo”

2.2.7. Usecase “Quản lý tài khoản”

2.2.8. Usecase “Quản lý khu”

2.2.9. Usecase “Quản lý hóa đơn điện nước”

2.2.10. Usecase “Quản lý biên lai thu tiền”

2.2.11. Usecase “Đổi mật khẩu”

2.2.12. Usecase “Xem phòng”

2.2.13. Usecase “Xem thông báo”

2.2.14. Usecase “Xem tiền điện nước”

2.2.15. Usecase “Đăng ký tạm trú”

2.2.16. Usecase “Duyệt sinh viên đăng ký tạm trú”

2.2.17. Usecase “Thống kê số sinh viên đang ở”

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

3. CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH

3.1. Công cụ xây dựng chương trình

3.2. Giao diện chương trình

3.2.1. Giao diện trang chủ

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

3.3. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Website Quản Lý Ký Túc Xá Chuyển Đổi Số Giáo Dục

Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, việc ứng dụng các giải pháp số vào quản lý giáo dục đã trở thành một xu hướng tất yếu. Một trong những lĩnh vực cần thiết nhất là tối ưu hóa công tác quản lý ký túc xá (KTX). Một website quản lý ký túc xá hiện đại không chỉ là một công cụ, mà còn là một giải pháp toàn diện giúp nâng cao hiệu quả vận hành, cải thiện trải nghiệm cho sinh viên và tăng cường tính minh bạch. Hệ thống này cho phép tự động hóa các quy trình từ đăng ký, xếp phòng, thu phí cho đến quản lý cơ sở vật chất và tương tác với sinh viên. Việc chuyển từ phương pháp thủ công sang nền tảng số hóa giúp giảm thiểu sai sót do con người, tiết kiệm thời gian, chi phí và nguồn nhân lực đáng kể cho nhà trường. Nghiên cứu về “Xây dựng hệ thống website quản lý ký túc xá trường đại học sư phạm kỹ thuật” của sinh viên Đỗ Ngọc Quang Huy (2022) chính là một minh chứng điển hình cho tính cấp thiết này. Đề tài đã chỉ ra những hạn chế của phương thức quản lý truyền thống và đề xuất một giải pháp công nghệ sử dụng Angular cho front-end và NodeJS cho back-end, cùng hệ quản trị cơ sở dữ liệu MongoDB. Giải pháp này không chỉ giải quyết các vấn đề cụ thể tại Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng mà còn mở ra một mô hình có thể áp dụng rộng rãi, góp phần vào công cuộc chuyển đổi số toàn diện trong môi trường đại học hiện nay. Một hệ thống quản lý ký túc xá hiệu quả sẽ là cầu nối vững chắc giữa ban quản lý ký túc xá và sinh viên, tạo ra một môi trường sống và học tập tiện nghi, an toàn và văn minh.

1.1. Tầm quan trọng của hệ thống quản lý KTX online

Một hệ thống quản lý KTX online đóng vai trò trung tâm trong việc hiện đại hóa công tác vận hành ký túc xá. Nó thay thế hoàn toàn các quy trình giấy tờ phức tạp, dễ xảy ra sai sót và thất lạc. Thay vào đó, mọi thông tin về sinh viên, phòng ở, trang thiết bị, và các khoản phí đều được số hóa và lưu trữ một cách an toàn trên một cơ sở dữ liệu tập trung. Điều này giúp ban quản lý ký túc xá có thể truy cập, tìm kiếm và xử lý thông tin một cách nhanh chóng và chính xác. Hơn nữa, hệ thống cho phép sinh viên thực hiện các thủ tục như đăng ký online, xem thông báo, tra cứu hóa đơn điện nước mọi lúc mọi nơi, mang lại sự tiện lợi tối đa và nâng cao sự hài lòng. Tính minh bạch cũng được cải thiện rõ rệt khi mọi giao dịch và thông tin đều được ghi nhận tự động, giảm thiểu các tiêu cực có thể phát sinh.

1.2. Tổng quan giải pháp từ nghiên cứu của Đỗ Ngọc Quang Huy

Đồ án tốt nghiệp của Đỗ Ngọc Quang Huy đã đề xuất một giải pháp công nghệ cụ thể và khả thi để giải quyết các vấn đề tồn đọng. Hệ thống được xây dựng trên nền tảng các công nghệ hiện đại, bao gồm ngôn ngữ lập trình Angular cho giao diện người dùng và NodeJS cho phía máy chủ. Việc lựa chọn hệ quản trị cơ sở dữ liệu MongoDB mang lại sự linh hoạt cao trong việc lưu trữ dữ liệu phi cấu trúc, phù hợp với đặc thù thông tin đa dạng của sinh viên và ký túc xá. Mục tiêu của đề tài là xây dựng một website quản lý ký túc xá hoàn chỉnh, cho phép sinh viên xem phòng trống, đăng ký tạm trú trực tuyến và theo dõi chi phí sinh hoạt. Đồng thời, hệ thống cung cấp cho ban quản lý các công cụ mạnh mẽ để quản lý toàn diện từ sinh viên, phòng ốc, thiết bị cho đến hóa đơn, biên lai, tạo ra một quy trình vận hành khép kín và hiệu quả.

II. Thách Thức Quản Lý Ký Túc Xá Thủ Công Hiện Nay

Phương pháp quản lý ký túc xá thủ công, dựa trên giấy tờ hoặc các biểu mẫu trực tuyến đơn giản, đang bộc lộ nhiều yếu điểm không thể khắc phục trong môi trường đại học năng động. Theo khảo sát tại Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng được đề cập trong nghiên cứu của Đỗ Ngọc Quang Huy, quy trình đăng ký tạm trú trực tiếp trên giấy tờ gây tốn kém công sức và chi phí cho cả sinh viên, ban quản lý ký túc xá và nhà trường. Việc xử lý hàng ngàn bộ hồ sơ mỗi năm học là một gánh nặng lớn, dễ dẫn đến tình trạng quá tải và sai sót. Các thông tin quan trọng như thông tin cá nhân sinh viên, tình trạng phòng ở, lịch sử thanh toán không được quản lý một cách hệ thống. Điều này tạo ra nhiều rủi ro, bao gồm việc thất lạc giấy đăng ký, nhập sai thông tin, và khó khăn trong việc tra cứu, tổng hợp dữ liệu khi cần thiết. Hơn nữa, tính minh bạch và an toàn lưu trữ không được đảm bảo, gây khó khăn cho việc quản lý tài chính và tài sản. Một website quản lý ký túc xá chuyên nghiệp ra đời chính là để giải quyết triệt để những thách thức này, mang lại một phương thức vận hành khoa học và hiệu quả hơn. Việc thiếu một hệ thống quản lý ký túc xá tập trung cũng làm giảm khả năng tương tác và truyền tải thông tin kịp thời từ ban quản lý đến sinh viên, ảnh hưởng đến chất lượng đời sống nội trú.

2.1. Hạn chế của quy trình đăng ký tạm trú trên giấy

Quy trình đăng ký tạm trú trên giấy là một trong những điểm nghẽn lớn nhất của phương pháp quản lý truyền thống. Sinh viên phải mất thời gian di chuyển, xếp hàng và điền vào nhiều loại biểu mẫu. Đối với nhân viên quản lý, công việc nhập liệu thủ công từ giấy tờ vào máy tính vừa tốn thời gian, vừa tiềm ẩn nguy cơ sai sót cao. Các vấn đề như chữ viết khó đọc, thông tin thiếu nhất quán, hoặc thất lạc hồ sơ thường xuyên xảy ra. Khi có sự thay đổi thông tin, việc cập nhật lại trên toàn bộ hệ thống giấy tờ là một nhiệm vụ gần như bất khả thi. Điều này không chỉ gây phiền toái mà còn ảnh hưởng trực tiếp đến công tác quản lý an ninh và sĩ số sinh viên trong ký túc xá.

2.2. Khó khăn trong quản lý thông tin sinh viên và tài sản

Việc lưu trữ thông tin sinh viên và tài sản trên các file riêng lẻ hoặc sổ sách gây ra nhiều khó khăn trong việc quản lý và đồng bộ. Khi cần thống kê số lượng sinh viên đang ở, tình trạng phòng, hay kiểm kê quản lý thiết bị, nhân viên phải tổng hợp thủ công từ nhiều nguồn khác nhau, một công việc rất dễ nhầm lẫn. Việc theo dõi các khoản phí như hóa đơn điện nước hay tiền phòng cũng trở nên phức tạp. Không có một hệ thống tự động, việc tính toán và thông báo các khoản phí đến từng sinh viên dễ bị chậm trễ hoặc sai sót, gây ra những tranh chấp không đáng có. Một phần mềm quản lý ký túc xá sẽ giải quyết vấn đề này bằng cách tự động hóa các quy trình trên.

2.3. Rủi ro thất lạc dữ liệu và thiếu minh bạch

Lưu trữ dữ liệu bằng giấy tờ vật lý đối mặt với nhiều rủi ro như hỏa hoạn, ẩm mốc, hoặc thất lạc. Việc không có bản sao lưu dự phòng có thể dẫn đến mất mát thông tin vĩnh viễn. Ngay cả khi sử dụng các form online đơn giản, dữ liệu vẫn có thể bị phân mảnh và không được bảo mật đúng cách. Sự thiếu minh bạch trong các quy trình như duyệt đơn đăng ký hay thu phí cũng là một vấn đề lớn. Sinh viên không thể tự theo dõi tình trạng hồ sơ của mình hay lịch sử thanh toán một cách rõ ràng. Một website quản lý ký túc xá với cơ sở dữ liệu tập trung và phân quyền truy cập rõ ràng sẽ đảm bảo tính toàn vẹn, an toàn cho dữ liệu và tăng cường sự minh bạch trong mọi hoạt động.

III. Cách Xây Dựng Hệ Thống Quản Lý KTX Với Công Nghệ Mới

Để xây dựng một website quản lý ký túc xá hiện đại và hiệu quả, việc lựa chọn công nghệ phù hợp là yếu tố then chốt. Đồ án của Đỗ Ngọc Quang Huy đã áp dụng một bộ công nghệ mạnh mẽ và phổ biến hiện nay, bao gồm Angular cho front-end, NodeJSExpressJS cho back-end, và MongoDB làm cơ sở dữ liệu. Sự kết hợp này tạo nên một hệ thống linh hoạt, có khả năng mở rộng và hiệu năng cao. Angular, một framework phát triển bởi Google, cho phép xây dựng các ứng dụng trang đơn (Single-Page Application) với giao diện người dùng phong phú và tương tác mượt mà. Trong khi đó, NodeJS là một môi trường thực thi JavaScript phía máy chủ, nổi bật với khả năng xử lý hàng ngàn kết nối đồng thời một cách hiệu quả nhờ vào mô hình non-blocking I/O. Điều này rất lý tưởng cho một hệ thống cần xử lý nhiều yêu cầu từ sinh viên và ban quản lý cùng một lúc. MongoDB, một hệ quản trị cơ sở dữ liệu NoSQL, cung cấp cấu trúc lưu trữ dạng tài liệu JSON linh hoạt, giúp việc lưu trữ và truy vấn thông tin đa dạng của sinh viên trở nên dễ dàng và nhanh chóng hơn so với cơ sở dữ liệu quan hệ truyền thống. Quá trình xây dựng hệ thống quản lý ký túc xá này bắt đầu từ việc thu thập yêu cầu, phân tích và thiết kế hệ thống, sau đó mới đến giai đoạn lập trình và kiểm thử, đảm bảo sản phẩm cuối cùng đáp ứng đúng nhu cầu thực tế.

3.1. Phân tích nền tảng công nghệ Angular và NodeJS

Angular cung cấp một cấu trúc vững chắc để xây dựng giao diện người dùng phức tạp. Với các tính năng như two-way data binding, dependency injection và kiến trúc dựa trên component, nó giúp đơn giản hóa quá trình phát triển và bảo trì code. NodeJS, với hệ sinh thái thư viện khổng lồ (npm), cho phép các nhà phát triển xây dựng back-end một cách nhanh chóng. Khung làm việc ExpressJS được sử dụng trên nền NodeJS để tạo ra các API mạnh mẽ, xử lý logic nghiệp vụ và tương tác với cơ sở dữ liệu. Sự kết hợp giữa AngularNodeJS tạo ra một luồng phát triển liền mạch sử dụng cùng một ngôn ngữ (JavaScript/TypeScript), giúp tăng năng suất và giảm độ phức tạp của dự án.

3.2. Lợi ích của cơ sở dữ liệu MongoDB trong lưu trữ

Không giống như cơ sở dữ liệu quan hệ yêu cầu một lược đồ (schema) cứng nhắc, MongoDB lưu trữ dữ liệu dưới dạng các tài liệu BSON (tương tự JSON). Điều này mang lại sự linh hoạt vượt trội, cho phép lưu trữ các hồ sơ sinh viên với các trường thông tin khác nhau mà không cần thay đổi cấu trúc bảng. Khả năng mở rộng theo chiều ngang (horizontal scalability) của MongoDB cũng là một ưu điểm lớn, giúp hệ thống có thể dễ dàng xử lý lượng dữ liệu ngày càng tăng khi số lượng sinh viên và giao dịch nhiều lên. Tốc độ truy vấn nhanh, đặc biệt với các truy vấn trên dữ liệu phi cấu trúc, giúp website quản lý ký túc xá phản hồi nhanh chóng, cải thiện trải nghiệm người dùng.

3.3. Thiết kế cơ sở dữ liệu cho hệ thống KTX hiệu quả

Trong nghiên cứu, cơ sở dữ liệu được thiết kế một cách logic để quản lý các thực thể chính. Các bảng (collections trong MongoDB) được tạo ra để lưu trữ thông tin về SinhVien, NhanVien, Phong, HoaDonDienNuoc, BienLaiThuTien, ThietBi, và TaiKhoan. Mối quan hệ giữa các thực thể này được thiết lập thông qua các khóa ngoại (tham chiếu ID). Ví dụ, một bản ghi trong bảng SinhVien sẽ có một trường PhongID để liên kết với phòng mà sinh viên đó đang ở. Một thiết kế cơ sở dữ liệu tốt giúp đảm bảo tính toàn vẹn dữ liệu, tránh dư thừa và tối ưu hóa hiệu suất truy vấn, là nền tảng cho một hệ thống quản lý ký túc xá ổn định và đáng tin cậy.

IV. Top Tính Năng Của Phần Mềm Quản Lý Ký Túc Xá Tối Ưu

Một website quản lý ký túc xá hiệu quả phải cung cấp đầy đủ các tính năng để phục vụ hai đối tượng người dùng chính: Ban quản lý ký túc xá và sinh viên. Hệ thống được phát triển trong đề tài của Đỗ Ngọc Quang Huy đã phân tích và xây dựng một loạt chức năng đáp ứng chính xác các nhu cầu này. Đối với ban quản lý, phần mềm cung cấp một trang quản trị (admin dashboard) toàn diện, nơi họ có thể thực hiện mọi tác vụ vận hành. Các chức năng quan trọng bao gồm quản lý thông tin nhân viên, quản lý sinh viên từ lúc đăng ký đến khi rời khỏi ký túc xá, quản lý tình trạng phòng ở (phòng trống, đang ở, số lượng chỗ), quản lý khu vực và quản lý thiết bị trong từng phòng. Đặc biệt, các nghiệp vụ tài chính như tạo và quản lý hóa đơn điện nước, quản lý biên lai thu tiền được tự động hóa, giúp giảm thiểu sai sót và tăng cường minh bạch. Hệ thống còn cho phép ban quản lý đăng tải thông báo chung, đảm bảo thông tin được truyền đạt nhanh chóng đến toàn bộ sinh viên. Các tính năng này giúp số hóa hoàn toàn quy trình làm việc của nhân viên ký túc xá. Về phía sinh viên, phần mềm quản lý ký túc xá mang đến một cổng thông tin tiện ích, giúp họ chủ động hơn trong đời sống nội trú. Các tính năng này không chỉ giải quyết các vấn đề trước mắt mà còn tạo ra một môi trường sống và làm việc chuyên nghiệp, hiện đại.

4.1. Chức năng chính cho Ban quản lý ký túc xá

Ban quản lý ký túc xá được cung cấp một hệ thống phân quyền mạnh mẽ. Các chức năng cốt lõi bao gồm: Quản lý sinh viên (thêm, sửa, xóa hồ sơ), duyệt sinh viên đăng ký tạm trú online, quản lý phòng (cập nhật tình trạng, số lượng sinh viên), quản lý khu, và quản lý thiết bị. Bên cạnh đó, các tác vụ tài chính được xử lý hiệu quả thông qua module quản lý hóa đơn điện nướcquản lý biên lai thu tiền. Hệ thống còn có chức năng thống kê, cho phép ban quản lý xem báo cáo về số lượng sinh viên đang ở, tình hình thu chi, từ đó đưa ra các quyết định điều hành chính xác.

4.2. Tiện ích vượt trội dành cho sinh viên nội trú

Sinh viên là người dùng hưởng lợi trực tiếp từ sự tiện lợi của hệ thống. Họ có thể truy cập website để xem phòng trống, xem thông tin chi tiết về từng phòng và thực hiện đăng ký tạm trú trực tuyến mà không cần đến văn phòng. Sau khi vào ở, sinh viên có thể dễ dàng xem tiền điện nước hàng tháng của phòng mình, theo dõi các thông báo quan trọng từ ban quản lý, và tra cứu lại lịch sử thanh toán. Các tiện ích này giúp tiết kiệm thời gian, công sức và tạo ra một kênh giao tiếp hai chiều hiệu quả giữa sinh viên và nhà trường. Giao diện thân thiện và dễ sử dụng cũng là một yếu tố quan trọng giúp nâng cao trải nghiệm cho sinh viên.

4.3. Hệ thống báo cáo và thống kê tự động

Một trong những giá trị lớn nhất mà website quản lý ký túc xá mang lại là khả năng tổng hợp và phân tích dữ liệu. Chức năng thống kê số sinh viên đang ở theo từng khu, từng phòng, hoặc theo học kỳ giúp ban quản lý nắm bắt nhanh chóng tình hình sĩ số. Hệ thống cũng có thể tạo ra các báo cáo tự động về doanh thu từ tiền phòng, tiền điện nước, và tình trạng công nợ. Những dữ liệu này cung cấp một cái nhìn tổng quan và chi tiết về hoạt động của ký túc xá, là cơ sở vững chắc để lập kế hoạch bảo trì, nâng cấp cơ sở vật chất và tối ưu hóa quy trình vận hành trong tương lai.

V. Hướng Dẫn Triển Khai Website KTX Tại ĐH Sư Phạm Kỹ Thuật

Việc triển khai thành công website quản lý ký túc xá tại Trường Đại học Sư phạm Kỹ thuật là kết quả của một quy trình nghiên cứu và phát triển bài bản. Dựa trên đồ án của Đỗ Ngọc Quang Huy, quá trình này bao gồm nhiều giai đoạn, từ khảo sát thực tế đến xây dựng và kiểm thử chương trình. Ban đầu, nhóm phát triển đã tiến hành thu thập thông tin về quy trình đăng ký tạm trú hiện tại, các biểu mẫu đang sử dụng và các yêu cầu nghiệp vụ từ phía ban quản lý ký túc xá. Giai đoạn này rất quan trọng để đảm bảo hệ thống xây dựng ra bám sát với thực tiễn. Tiếp theo là giai đoạn phân tích và thiết kế hệ thống. Ở đây, các sơ đồ Usecase, sơ đồ hoạt động, sơ đồ tuần tự và sơ đồ lớp được xây dựng để mô hình hóa các chức năng và luồng hoạt động của phần mềm. Thiết kế cơ sở dữ liệu cũng được thực hiện chi tiết với việc xác định các bảng, các trường và mối quan hệ giữa chúng. Sau khi hoàn tất thiết kế, giai đoạn xây dựng chương trình được tiến hành bằng các công nghệ đã chọn như Angular, NodeJSMongoDB. Giao diện người dùng được thiết kế trực quan, dễ sử dụng cho cả nhân viên quản lý và sinh viên. Cuối cùng, hệ thống được đưa vào kiểm thử để phát hiện và sửa lỗi, đảm bảo hoạt động ổn định trước khi chính thức đưa vào sử dụng. Kết quả là một hệ thống quản lý ký túc xá hoàn chỉnh, đáp ứng được các mục tiêu đề ra.

5.1. Quy trình phân tích và thiết kế hệ thống thực tế

Quá trình phân tích yêu cầu phần mềm đã xác định rõ các tác nhân (actor) là sinh viên và ban quản lý cùng các chức năng tương ứng của họ. Từ đó, các Usecase chi tiết như “Đăng ký tạm trú”, “Duyệt sinh viên đăng ký tạm trú”, “Quản lý hóa đơn điện nước” đã được mô tả cụ thể về đầu vào, xử lý và đầu ra. Giai đoạn thiết kế tập trung vào việc xây dựng kiến trúc hệ thống và cơ sở dữ liệu. Sơ đồ quan hệ thực thể (ERD) được sử dụng để trực quan hóa cấu trúc dữ liệu, đảm bảo tính logic và nhất quán. Các sơ đồ UML (Unified Modeling Language) khác giúp làm rõ luồng xử lý của từng chức năng, là tài liệu quan trọng cho đội ngũ lập trình viên.

5.2. Giao diện người dùng và trải nghiệm thực tiễn

Giao diện chương trình được thiết kế với tiêu chí đơn giản, thân thiện và đáp ứng (responsive), đảm bảo hoạt động tốt trên cả máy tính và thiết bị di động. Trang chủ cung cấp các thông tin chung, thông báo mới và các lối tắt đến chức năng quan trọng. Sinh viên có giao diện để đăng ký, xem thông tin cá nhân và hóa đơn. Trong khi đó, ban quản lý ký túc xá có một trang admin chuyên biệt với menu điều hướng rõ ràng đến các mục quản lý như nhân viên, sinh viên, phòng, hóa đơn. Các biểu mẫu nhập liệu được thiết kế logic, có xác thực dữ liệu để hạn chế lỗi người dùng. Việc sử dụng framework như Bootstrap giúp tăng tốc độ phát triển giao diện và đảm bảo tính nhất quán.

5.3. Kết quả kiểm thử và đánh giá ban đầu của hệ thống

Hệ thống sau khi xây dựng đã được kiểm thử để đảm bảo các chức năng hoạt động đúng như thiết kế. Các kịch bản kiểm thử được tạo ra cho cả vai trò sinh viên và quản lý. Kết quả cho thấy website đã đáp ứng thành công các yêu cầu chính: cho phép sinh viên đăng ký online, xem thông tin phòng, xem tiền điện nước; cho phép quản lý thực hiện các nghiệp vụ quản lý sinh viên, phòng, thiết bị, và hóa đơn. Hệ thống hoạt động ổn định và cho kết quả chính xác. Đây là nền tảng vững chắc để có thể triển khai thực tế và tiếp tục phát triển các tính năng nâng cao trong tương lai.

VI. Tương Lai Của Hệ Thống Quản Lý Ký Túc Xá Thông Minh

Sự thành công của dự án website quản lý ký túc xá tại Trường Đại học Sư phạm Kỹ thuật không phải là điểm kết thúc, mà là khởi đầu cho một thế hệ hệ thống quản lý thông minh hơn. Dựa trên nền tảng vững chắc đã xây dựng, có rất nhiều hướng phát triển tiềm năng để nâng cao hơn nữa hiệu quả và trải nghiệm người dùng. Tương lai của các hệ thống này nằm ở việc tích hợp các công nghệ tiên tiến như Trí tuệ nhân tạo (AI), Internet vạn vật (IoT) và phân tích dữ liệu lớn (Big Data). Một trong những hướng đi rõ ràng nhất là tích hợp các cổng thanh toán trực tuyến. Thay vì phải nộp tiền mặt, sinh viên có thể thanh toán tiền phòng và các chi phí khác một cách tiện lợi qua ví điện tử, thẻ ngân hàng ngay trên website quản lý ký túc xá. Điều này không chỉ tiện lợi cho sinh viên mà còn giúp ban quản lý ký túc xá tự động hóa hoàn toàn khâu đối soát tài chính, giảm thiểu rủi ro và sai sót. Việc mở rộng hệ thống để có thể áp dụng cho nhiều trường đại học khác cũng là một mục tiêu khả thi, tạo ra một giải pháp quản lý đồng bộ và chuyên nghiệp trên quy mô lớn. Một hệ thống quản lý ký túc xá thông minh sẽ trở thành một phần không thể thiếu trong hệ sinh thái giáo dục số của tương lai.

6.1. Hướng phát triển tích hợp thanh toán online và IoT

Trong phần kết luận của đồ án, tác giả Đỗ Ngọc Quang Huy đã đề xuất các hướng phát triển quan trọng. Việc tích hợp các cổng thanh toán trực tuyến là ưu tiên hàng đầu, giúp quy trình thu phí trở nên tự động và minh bạch. Xa hơn nữa, hệ thống có thể tích hợp công nghệ IoT. Ví dụ, các cảm biến trong phòng có thể tự động ghi nhận chỉ số điện, nước và gửi dữ liệu về hệ thống, loại bỏ hoàn toàn việc ghi số thủ công. Các thiết bị như khóa cửa thông minh, camera an ninh cũng có thể được kết nối và quản lý tập trung thông qua website, nâng cao an toàn và an ninh cho toàn bộ ký túc xá. Những cải tiến này sẽ biến ký túc xá trở thành một không gian sống thực sự thông minh và hiện đại.

6.2. Tiềm năng mở rộng phần mềm cho các trường đại học khác

Mô hình và công nghệ được sử dụng trong dự án này có tính tổng quát cao. Với một chút tùy chỉnh, phần mềm quản lý ký túc xá này hoàn toàn có thể được triển khai tại các trường đại học và cao đẳng khác. Việc xây dựng một phiên bản phần mềm dạng dịch vụ (SaaS - Software as a Service) cho phép các trường đăng ký sử dụng mà không cần đầu tư vào hạ tầng và đội ngũ phát triển riêng. Điều này mở ra một cơ hội thương mại hóa sản phẩm, đồng thời góp phần nâng cao chất lượng quản lý ký túc xá trên diện rộng, tạo ra một tiêu chuẩn chung cho công tác quản lý đời sống sinh viên nội trú tại Việt Nam.

21/09/2025

Trích đoạn nội dung tài liệu

Chương 1 CƠ SỞ LÝ THUYẾT 1. Giới thiệu hệ quản trị cơ sở dữ liệu MongoDB 1. Tổng quan về MongoDB MongoDB là một database hướng tài liệu (document), một dạng NoSQL database. Vì thế, MongoDB sẽ tránh cấu trúc table-based của relational database để thích ứng với các tài liệu như JSON có một schema rất linh hoạt gọi là BSON.

MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi một collection sẽ các các kích cỡ và các document khác nhau. Các dữ liệu được lưu trữ trong document kiểu JSON nên truy vấn sẽ rất nhanh. MongoDB đã trở thành một trong những NoSQL database nổi trội nhất bấy giờ, được dùng làm backend cho rất nhiều website như eBay, SourceForge và The New York Times. Ưu điểm của MongoDB so với cơ sở dữ liệu quan hệ (RDBMS) Ít Schema hơn: MongoDB là một cơ sở dữ liệu dựa trên Document, trong đó một Collection giữ các Document khác nhau.

Số trường, nội dung và kích cỡ của Document này có thể khác với Document khác. Cấu trúc của một đối tượng là rõ ràng. Không có các Join phức tạp. Khả năng truy vấn sâu hơn.

MongoDB hỗ trợ các truy vấn động trên các Document bởi sử dụng một ngôn ngữ truy vấn dựa trên Document mà mạnh mẽ như SQL. MongoDB dễ dàng để mở rộng. SVTH: Đỗ Ngọc Quang Huy 3 Xây dựng hệ thông website quản lý ký túc xá trường đại học sư phạm kỹ thuật Việc chuyển đổi/ánh xạ của các đối tượng ứng dụng đến các đối tượng cơ sở dữ liệu là không cần thiết. Sử dụng bộ nhớ nội tại để lưu giữ phần công việc, giúp truy cập dữ liệu nhanh hơn.

Do MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi một collection sẽ có các kích cỡ và các document khác nhau, linh hoạt trong việc lưu trữ dữ liệu, nên bạn muốn gì thì cứ insert vào thoải mái. Dữ liệu trong MongoDB không có sự ràng buộc lẫn nhau, không có join như trong RDBMS nên khi insert, xóa hay update nó không cần phải mất thời gian kiểm tra xem có thỏa mãn các ràng buộc dữ liệu như trong RDBMS. MongoDB rất dễ mở rộng (Horizontal Scalability). Trong MongoDB có một khái niệm cluster là cụm các node chứa dữ liệu giao tiếp với nhau, khi muốn mở rộng hệ thống ta chỉ cần thêm một node với vào cluster: Trường dữ liệu “_id” luôn được tự động đánh index (chỉ mục) để tốc độ truy vấn thông tin đạt hiệu suất cao nhất.

Khi có một truy vấn dữ liệu, bản ghi được cached lên bộ nhớ Ram, để phục vụ lượt truy vấn sau diễn ra nhanh hơn mà không cần phải đọc từ ổ cứng. Hiệu năng cao: Tốc độ truy vấn (find, update, insert, delete) của MongoDB nhanh hơn hẳn so với các hệ quản trị cơ sở dữ liệu quan hệ (RDBMS). Với một lượng dữ liệu đủ lớn thì thử nghiệm cho thấy tốc độ insert của MongoDB có thể nhanh tới gấp 100 lần so với MySQL. Nhược điểm của MongoDB Một ưu điểm của MongoDB cũng chính là nhược điểm của nó.

MongoDB không có các tính chất ràng buộc như trong RDBMS nên khi thao tác với mongoDB thì phải hết sức cẩn thận. Tốn bộ nhớ do dữ liệu lưu dưới dạng key-value, các collection chỉ khác về value do đó key sẽ bị lặp lại. Không hỗ trợ join nên dễ bị dữ thừa dữ liệu. Khi insert/update/remove bản ghi, MongoDB sẽ chưa cập nhật ngay xuống ổ cứng, mà sau 60 giây MongoDB mới thực hiện ghi toàn bộ dữ liệu thay đổi từ RAM xuống ổ cứng điêù này sẽ là nhược điểm vì sẽ có nguy cơ bị mất dữ liệu khi xảy ra các tình huống như mất điện.

SVTH: Đỗ Ngọc Quang Huy 4 Xây dựng hệ thông website quản lý ký túc xá trường đại học sư phạm kỹ thuật 1. Giới thiệu về Angular 1. Tổng quan về Angular Angular là một javascript framework do google phát triển để xây dựng các Single Page Application (SPA) bằng JavaScript , HTML và TypeScript. Angular cung cấp các tính năng tích hợp cho animation , http service và có các tính năng như auto- complete , navigation , toolbar , menus ,… Code được viết bằng TypeScript , biên dịch thành JavaScript và hiển thị tương tự trong trình duyệt.

Để học được angular thì bạn cần biết các kiển thức cơ bản sau:  HTML  CSS  JavaScript  TypeScript  Document Object Model (DOM) 1. Lịch sử phát triển Angular js : Phiên bản đầu tiền của angular là AngularJS được bắt đầu từ năm 2009 và đc ra mắt vào 20/10/2010, do lập trình viên Misko Hevery tại Google viết ra như là một dự án kiểu “viết cho vui”. Lúc đó angular js được viết theo mô hình MVC (Model-View-Controller) trong đó : Model là thành phần trung tâm thể hiện hành vi của ứng dụng và quản lí dữ liệu. View được tạo ra dựa trên thông tin của Model.

Controller đóng vai trò trung gian giữa Model và View và để xử lý logic. SVTH: Đỗ Ngọc Quang Huy 5 Xây dựng hệ thông website quản lý ký túc xá trường đại học sư phạm kỹ thuật Angular 2: Sau phiên bản angular js thì vào tháng 3 năm 2015 phiên bản bản angular 2 ra đời nhằm thay thế Angular Js với các khái niệm mới nhằm đơn giản hóa và tối ưu cho quá trình phát triển sử dụng framework này. Angular 2 thay đổi hoàn toàn so với angular js bằng việc thay Controllers và $scope ( Angular js ) bằng components và directives. Components = directives + template , tạo nên view của ứng dụng và xử lí các logic trên view.

Angular 2 hoàn toàn được viết bằng Typescript. Angular 2 nhanh hơn angular js ,hỗ trợ đa nền tảng đa trình duyệt, cấu trúc cdoe được tổ chức đơn giản và dễ sử dụng hơn. Angular 4: Ra mắt vào tháng 3/2017 đây là một phiên bản nâng cấp từ Angular 2 nên kiến trúc không thay đổi nhiều ngoài việc giảm thiểu code được tạo ra từ đó giảm kích thước tệp được đóng gói xuống 60%, đẩy nhanh quá trình phát triển ứng dụng. Angular 5: Đã được phát hành vào ngày 1 tháng 11 năm 2017 với mục tiêu thay đổi về tốc độ và kích thước nên nó nhanh hơn và nhỏ hơn angular 4.

Các tính năng mới so với angular 4: Sử dụng HTTPClient thay vì sử dụng HTTP : bởi vì nó nhanh, an toàn và hiệu quả hơn. Với phiên bản Angular 5 mặc định sử dụng RxJs 5.5 Multiple export aliases : Một component có thể được xuất bằng nhiều bí danh (aliases) để giảm bớt quá trình di chuyển. Internationalized Pipes for Number, Date, and Currency: Các pipe mới được giới thiệu để tiêu chuẩn hóa tốt hơn. Tối ưu hóa build production bằng việc sử dụng công cụ build optimizer được tích hợp sẵn vào trong CLI.

Công cụ này tối ưu tree shark và loại bỏ code dư thừa. Cải thiện tốc độ biên dịch bằng việc dùng TypeScript transforms, giờ đây khi build sẽ sử dụng lệnh “ng serve –aot”. AOT sẽ cải thiện performace khi load page và nó được dùng để deploy app lên production Angular 6: Cập nhật CLI, command line interface: thêm 1 số lệnh mới như ng- update để chuyển từ version trước sang version hiện tại; ng-add để thêm các tính năng của ứng dụng để trở thành một ứng dụng web tiến bộ. Angular Element: Cho phép các component của Angular được triển khai dưới dạng component web, sau đó có thể được sử dụng trong bất kỳ trang HTML nào một cách dễ dàng.

Multiple Validators: cho phép nhiều Validators được áp dụng trên form SVTH: Đỗ Ngọc Quang Huy 6 Xây dựng hệ thông website quản lý ký túc xá trường đại học sư phạm kỹ thuật builder. Tree-shakeable providers: giúp loại bỏ mã code chết. Sử dụng RxJS 6 với syntax thay đổi. Angular 7: Được phát hành vào 18 tháng 10 năm 2018 với những thay đổi như: ScrollingModule : Để scroll load dữ liệu.

Drag and Drop: Chúng ta có thể dễ dàng thêm tính năng kéo và thả vào một mục.0 đã cập nhật RxJS 6.3 Angular 8: Ra mắt 28 tháng 5 năm 2019 với CLI workflow improvements, Dynamic imports for lazy routes …. Angular 9: Ra mắt mới đây 6 tháng 2 năm 2020,Angular 9 di chuyển tất cả các ứng dụng để sử dụng trình biên dịch Ivy và thời gian chạy theo mặc định. Angular đã được cập nhật để hoạt động với TypeScript 3. Lợi ích của Angular Angular được “chống lưng” bởi Google, giúp cho Developer có cảm giác được đảm bảo.

Mặc nhiên, họ sẽ ám thị rằng framework này khó mà bị “khai tử”, vì vậy cứ yên tâm sử dụng. Cộng đồng người dùng lớn nên nếu có thắc mắc gì cũng sẽ nhanh chóng được giải đáp. Giúp phát triển Ứng dụng trang đơn (Single-page Application). Đây là ứng dụng chạy trên browser mà không bắt buộc phải tải lại trang khi sử dụng.

Bootstrap và Responsive 1. Tổng quan về Bootstrap Bootstrap là front-end framework, là một bộ sưu tập miễn phí các công cụ để tạo ra các trang web và các ứng dụng web. Bootstrap bao gồm HTML và CSS dựa trên các mẫu thiết kế cho kiểu chữ, hình thức, các button và các thành phần giao diện khác, cũng như mở rộng tùy chọn JavaScript. Boostrap định nghĩa sẵn các class CSS giúp người thiết kế giao diện website tiết kiệm rất nhiều thời gian.

Các thư viện Bootstrap có những đoạn mã sẵn sàng cho chúng ta áp dùng vào website của mình mà không phải tốn quá nhiều thời gian để tự viết. Với Bootstrap, việc phát triển giao diện website để phù hợp với đa thiết bị trở nên dễ dàng hơn bao giờ hết. Bootstrap cung cấp tính năng responsive và mobile first, nghĩa là làm cho trang web có thể tự co giãn để tương thích với mọi thiết bị khác nhau, từ điện thoại di động đến máy tính bảng, máy tính xách tay, máy tính để bàn,. Một khía cạnh khác là responsive web design làm cho trang web cung cấp được trải nghiệm tuyệt vời cho người dùng trên nhiều thiết bị, kích SVTH: Đỗ Ngọc Quang Huy 7 Xây dựng hệ thông website quản lý ký túc xá trường đại học sư phạm kỹ thuật thước màn hình khác nhau.

Một trang có thể hoạt động tốt bất kể sự biến đổi sẽ cung cấp một trải nghiệm người dùng tốt và nhất quán hơn một trang được thiết kế cho một loại thiết bị và kích thước màn hình cụ thể. Giới thiệu về NodeJS 1. Tổng quan về NodeJS Node.js là một nền tảng JavaScript cực kì mạnh mẽ được sử dụng để phát triển ác ứng dụng chat online, các trang phát video trực tiếp, các ứng dụng một trang, và rất nhiều ứng dụng web khác. Được xây dựng trên JavaScript V8 Engine của Google Chrome, nó được sử dụng rộng rãi bởi cả các công ty lớn và các startup mơi nổi (Netflix, Paypal, NASA, và Walmart).js có mã nguồn mở, hoàn toàn miễn phí và được hàng ngàn lập trình viên trên thế giới sử dụng.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ