Xây dựng hệ thống quản lý ký túc xá hiệu quả cho trường đại học sư phạm kỹ thuật

Chuyên khảo giáo dục phân tích 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, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên cứu tiếp theo.

Trường đại học

Đại học Đà Nẵng

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

LỜI NÓI ĐẦ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

TÀI LIỆU THAM KHẢO

Tóm tắt

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á cho trường đại học sư phạm kỹ thuật là một giải pháp công nghệ thông tin nhằm tối ưu hóa quy trình quản lý và đăng ký tạm trú của sinh viên. Với sự phát triển của công nghệ, việc áp dụng phần mềm quản lý không chỉ giúp tiết kiệm thời gian mà còn nâng cao hiệu quả trong công tác quản lý. Hệ thống này cho phép sinh viên thực hiện các thao tác như đăng ký tạm trú, xem thông tin phòng ở, và theo dõi hóa đơn điện nước một cách dễ dàng và nhanh chóng. Việc này không chỉ giảm thiểu tình trạng thất lạc giấy tờ mà còn đảm bảo tính minh bạch trong quản lý thông tin sinh viên.

1.1. Tính cấp thiết của hệ thống

Việc quản lý ký túc xá hiện nay chủ yếu dựa vào hình thức thủ công, dẫn đến nhiều bất cập như tốn thời gian, chi phí và dễ xảy ra sai sót. Hệ thống quản lý ký túc xá sẽ giúp giải quyết những vấn đề này bằng cách tự động hóa quy trình đăng ký và quản lý thông tin. Theo thống kê, việc áp dụng công nghệ thông tin trong quản lý ký túc xá có thể giảm tới 50% thời gian xử lý hồ sơ, đồng thời nâng cao độ chính xác trong việc lưu trữ thông tin.

II. Phân tích thiết kế hệ thống

Chương này trình bày chi tiết về các yêu cầu và chức năng của hệ thống quản lý ký túc xá. Hệ thống được thiết kế với nhiều chức năng như quản lý sinh viên, phòng ở, thiết bị, và hóa đơn điện nước. Mỗi chức năng sẽ được mô tả cụ thể qua các use case, giúp người dùng dễ dàng hiểu và sử dụng. Sơ đồ cơ sở dữ liệu cũng được thiết kế để đảm bảo tính liên kết và dễ dàng truy xuất thông tin. Việc phân tích thiết kế hệ thống không chỉ giúp xác định rõ ràng các yêu cầu mà còn tạo nền tảng vững chắc cho quá trình phát triển phần mềm.

2.1. Các chức năng chính của hệ thống

Hệ thống quản lý ký túc xá bao gồm các chức năng chính như: Đăng ký tạm trú, Quản lý thông tin sinh viên, Quản lý phòng ở, Quản lý hóa đơn điện nước, và Thống kê số sinh viên đang ở. Mỗi chức năng được thiết kế để đáp ứng nhu cầu thực tế của người dùng, từ sinh viên đến ban quản lý ký túc xá. Việc này không chỉ giúp nâng cao hiệu quả quản lý mà còn tạo điều kiện thuận lợi cho sinh viên trong việc tiếp cận thông tin.

III. Xây dựng chương trình

Chương này trình bày quá trình xây dựng và triển khai hệ thống quản lý ký túc xá. Sử dụng các công nghệ hiện đại như Angular cho front-end và NodeJS cho back-end, hệ thống được phát triển với giao diện thân thiện và dễ sử dụng. Quá trình kiểm thử cũng được thực hiện kỹ lưỡng để đảm bảo hệ thống hoạt động ổn định và hiệu quả. Hệ thống không chỉ đáp ứng được các yêu cầu chức năng mà còn đảm bảo tính bảo mật và an toàn cho thông tin của sinh viên.

3.1. Giao diện người dùng

Giao diện người dùng của hệ thống được thiết kế đơn giản và trực quan, giúp sinh viên dễ dàng thực hiện các thao tác như đăng ký tạm trú, xem thông tin phòng, và theo dõi hóa đơn. Các tính năng như auto-complete và navigation được tích hợp để nâng cao trải nghiệm người dùng. Hệ thống cũng đảm bảo tính responsive, cho phép người dùng truy cập từ nhiều thiết bị khác nhau, từ máy tính đến điện thoại di động.

01/02/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 đủ

Bài viết với tiêu đề "Hệ thống quản lý ký túc xá cho trường đại học sư phạm kỹ thuật" trình bày một giải pháp hiệu quả cho việc quản lý ký túc xá tại các trường đại học, đặc biệt là trong lĩnh vực sư phạm kỹ thuật. Hệ thống này không chỉ giúp tối ưu hóa quy trình quản lý sinh viên mà còn nâng cao trải nghiệm sống cho các sinh viên trong ký túc xá. Những lợi ích chính bao gồm việc theo dõi thông tin sinh viên, quản lý phòng ở, và hỗ trợ trong việc giải quyết các vấn đề phát sinh một cách nhanh chóng và hiệu quả.

Nếu bạn muốn tìm hiểu thêm về các hệ thống hỗ trợ học vụ, hãy tham khảo bài viết "Luận văn thạc sĩ khoa học máy tính xây dựng hệ thống hỗ trợ học vụ đa ngôn ngữ trong tiếng việt và tiếng anh", nơi bạn sẽ thấy cách công nghệ có thể cải thiện quy trình học tập. Ngoài ra, bài viết "Luận văn thạc sĩ hệ thống thông tin quản lý công nghệ điện toán đám mây trong môi trường đại học" cũng sẽ cung cấp cái nhìn sâu sắc về việc ứng dụng công nghệ hiện đại trong quản lý giáo dục. Cuối cùng, bạn có thể khám phá thêm về "Báo cáo sáng kiến khoa học cấp cơ sở ứng dụng CNTT trong tổ chức thi kết thúc học phần hình thức trắc nghiệm tại trường đại học ngân hàng TP HCM", để thấy rõ hơn về việc ứng dụng công nghệ thông tin trong các hoạt động học thuật. Những tài liệu này sẽ giúp bạn mở rộng kiến thức và hiểu rõ hơn về các giải pháp công nghệ trong giáo dục.