Hiện nay, đại học Sư phạm Kỹ thuật – đại học Đà Nẵng chưa có hệ thống đăngký phòng, quản lý sinh viên cho ký túc xá.. Thông qua nhu cầu đó, em thựchiện đồ án “Xây dựng website quản lý ký
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
Trang 2ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
Trang 3NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN
Trang 4NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN
Trang 5Hiện nay, đại học Sư phạm Kỹ thuật – đại học Đà Nẵng chưa có hệ thống đăng
ký phòng, quản lý sinh viên cho ký túc xá Các thủ tục còn được quản lý một cách thô
sơ thông qua văn bản giấy tờ, sổ sách Việc này rất dễ dẫn đến tình trạng sai sót, thấtlạc trong quá trình quản lý cũng như kiểm kê, báo cáo sau này Ngoài ra, hiện nay khinhu cầu chỗ ở của sinh viên càng tăng thì đồng nghĩa với việc ký túc xá phải xây thêmphòng Một vấn đề nảy sinh là làm thế nào để quản lý một lượng sinh viên lưu trú lớnnhư vậy với độ chính xác cao, tiết kiệm được thời gian và công sức không chỉ đối vớingười quản lý mà còn đối với cả bản thân sinh viên Thông qua nhu cầu đó, em thựchiện đồ án “Xây dựng website quản lý ký túc xá cho đại học Sư phạm Kỹ thuật ĐàNẵng” nhằm phần nào giúp cho ban quản lý ký túc xá dễ dàng hơn trong quá trìnhquản lý cũng như hỗ trợ sinh viên công nghệ hoá quá trình đăng ký phòng nội trú
Về cấu trúc bài báo cáo ngoài các nội dung gồm phần mở đầu và kết thì có bốcục gồm 3 chương:
CHƯƠNG I: TỔNG QUAN
Chương này tổng quan về đề tài đồ án, cơ cấu tổ chức và sơ lược về nghiệp vụ hệthống
CHƯƠNG II: CƠ SỞ LÝ THUYẾT
Chương này trình bày tổng quan về việc sử dụng các công nghệ hỗ trợ xây dựngwebsite, các công cụ thường xuyên sử dụng để xây dựng nền tảng cho bài toán Mô tảmột số công nghệ mới hỗ trợ phát triển website
CHƯƠNG III: PHÂN TÍCH THIẾT KẾ
Chương này trình bày một hướng tiếp cận trong việc phân tích hệ thống Trìnhbày những hướng chức năng cơ bản cho người dùng, sơ đồ cơ sở dữ liệu…
CHƯƠNG IV: DEMO CHƯƠNG TRÌNH
Chương này trình bày kết quả thực hiện chương trình, giao diện người dùng
Trang 6TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Giảng viên hướng dẫn: PGS TS Võ Trung Hùng
Sinh viên thực hiện: Ngô Lâm Đoon Mã SV: 1811505310408
1 Tên đề tài: Xây dựng website Quản lý ký túc xá cho Đại học Sư phạm Kỹ thuật
Đà Nẵng.
2 Các số liệu, tài liệu ban đầu:
- Quy trình đặt phòng
- Ngôn ngữ PHP, Laravel framework
3 Nội dung chính của đồ án:
Xây dựng một ứng dụng Quản lý ký túc xá áp dụng cho Đại học Sư phạm Kỹthuật – Đại học Đà Nẵng, cho phép sinh viên đăng ký phòng nội trú tại ký túc xá mộtcách nhanh chóng và thuận tiện Hỗ trợ ban quản lý trong việc quản lý sinh viên, đăng
ký phòng cũng như đăng ký vé gửi xe trong ký túc xá một cách chuyên nghiệp, có hiệuquả, tránh mất mác thông tin sau này
4 Các sản phẩm dự kiến
- Website Quản lý ký túc xá cho trường Đại học Sư phạm Kỹ thuật – Đà Nẵng
- File báo cáo hoàn chỉnh
Trang 7LỜI CẢM ƠN
Ngày nay, công nghệ thông tin đã có những bước phát triển mạnh mẽ theo cảchiều rộng và sâu Máy tính điện tử không còn là phương tiện mà đang ngày càng trởthành một công cụ làm việc và giải trí thông dụng của con người, không chỉ ở công sở
mà còn ngay cả trong gia đình, trường học
Đứng trước vai trò của thông tin ngày càng tăng, các tổ chức và các doanhnghiệp đều tìm mọi biện pháp để xây dựng hoàn thiện hệ thống thông tin của mìnhnhằm tin học hóa các hoạt động tác nghiệp của đơn vị
Tại các trường đại học, việc quản lý chỗ ở của sinh viên là một trong những vấn
đề thiết thực và cấp bách Một sinh viên muốn đạt được thành quả cao trong học tậpthì cần có một môi trường sống và học tập tốt, ổn định Thực tế ở các trường đại học,việc quản lý chỗ ở hầu hết cũng chỉ quản lý trên giấy tờ, sổ sách Vì vậy việc áp dụngCNTT, đưa máy tính vào trợ giúp quản lý ký túc xá sinh viên là một nhu cầu thiết yếu,
nó giúp cho người quản lý thu hẹp không gian lưu trữ, tránh được thất lạc dữ liệu, xử
lý nhanh một khối lượng lớn về thông tin, tra cứu tìm kiếm một cách nhanh chóng với
độ chính xác cao, tiết kiệm được nhiều thời gian và công sức không chỉ đối với ngườiquản lý mà còn đối với cả gia đình và bản thân sinh viên
Xuất phát từ nhận thức trên, với mong muốn áp dụng công nghệ thông tin vàoquản lý, dựa trên những hoạt động thực tiễn em xin tìm hiểu và thực hiện đề tài “Xâydựng Website quản lý ký túc xá trường Đại học Sư phạm Kỹ thuật – Đại học ĐàNẵng”, với các chức năng lưu trữ, xử lý thông tin về sinh viên và tình hình trong kýtúc xá
Em chân thành cảm ơn sự chỉ bảo tận tình của thầy Võ Trung Hùng Thầy đãgiúp đỡ tận tình và cho em những kiến thức quý giá về lĩnh vực phân tích thiết kế hệthống thông tin
Đồng thời, em cũng cảm ơn sự giúp đỡ của các Cô Chú trong Ban quản lý ký túc
xá đã cung cấp cho em những thông tin hữu ích để giúp em hoàn thành đồ án tốtnghiệp này
Trong quá trình làm đồ án, do kiến thức về phân tích thiết kế chưa sâu sắc nên đồ
án của em sẽ không tránh khỏi những sai sót Mong Thầy, Cô thông cảm và góp ýthêm cho em để đồ án được hoàn chỉnh hơn
Em xin chân thành cảm ơn!
i
Trang 8ii
Trang 9CAM ĐOAN
Tôi xin cam đoan:
1 Những nội dung trong luận văn này do chúng em thực hiện dưới sự hướng dẫncủa thầy Võ Trung Hùng
2 Mọi tham khảo trong luận văn đều được trích dẫn rõ ràng tên tác giả,tên côngtrình ,thời gian,địa điểm công bố
3 Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, em xin chịuhoàn toàn trách nhiệm
Sinh viên thực hiện
Ngô Lâm Đoon
iii
Trang 10MỤC LỤC
NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN 3
NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN 4
TÓM TẮT 5
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 6
LỜI CẢM ƠN i
CAM ĐOAN ii
MỤC LỤC iii
DANH SÁCH CÁC BẢNG, HÌNH VẼ iv
MỞ ĐẦU 1
Chương 1: TỔNG QUAN 3
1.1 Lý do chọn đề tài 3
1.2 Mục đích đề tài 3
1.3 Phạm vi đề tài 3
1.4 Cơ cấu tổ chức 4
1.5 Hoạt động nghiệp vụ thực tế 4
1.6 Đặc tả yêu cầu nghiệp vụ (Business Requirments) 4
1.6.1 Khách vãng lai 4
1.6.2 Sinh viên đã được cấp tài khoản 4
1.6.3 Nhân viên kế toán – tài vụ 4
1.6.4 Ban quản lý ký túc xá 5
Chương 2: CƠ SỞ LÝ THUYẾT 6
2.1 Hệ quản trị cơ sở dữ liệu MySQL Server 6
2.2 Ngôn ngữ lập trình 6
2.2.1 PHP 6
2.2.2 Framework Laravel 6
Chương 3: PHÂN TÍCH THIẾT KẾ 8
3.1 Đặc tả yêu cầu phần mềm (Software Requirements) 8
3.1.1 Khách vãng lai 8
3.1.2 Sinh viên được cấp tài khoản 8
iii
Trang 113.1.3 Kế toán – tài vụ 8
3.1.4 Ban quản lý 8
3.1.5 Sơ đồ Use-case 9
3.2 Kịch bản cho Use-case 9
3.2.1 Actor Sinh viên 9
3.2.2 Actor Kế toán – tài vụ 11
3.2.3 Actor Ban quản lý 13
3.3 Phác thảo giao diện người dùng & Sơ đồ hoạt động 17
3.3.1 Actor Sinh viên 17
3.3.2 Actor Kế toán – tài vụ 18
3.3.3 Actor Ban quản lý 21
3.4 Thiết kế cơ sở dữ liệu 25
3.4.1 Sơ đồ ERD 25
Chương 4: DEMO CHƯƠNG TRÌNH 27
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 31
TÀI LIỆU THAM KHẢO 32
PHỤ LỤC 33
iii
Trang 12DANH SÁCH CÁC BẢNG, HÌNH VẼ
Bảng 3.1 Kịch bản cho use-case tìm kiếm phòng 10
Bảng 3.2 Kịch bản cho use-case đăng ký phòng 10
Bảng 3.3 Kịch bản cho use-case đăng ký vé xe 11
Bảng 3.4 Kịch bản cho use-case quản lý phí nội trú 12
Bảng 3.5 Kịch bản cho use-case quản lý phí điện nước 13
Bảng 3.6 Kịch bản cho use-case tạo tài khoản sinh viên 13
Bảng 3.7 Kịch bản cho use-case quản lý thông tin sinh viên 14
Bảng 3.8 Kịch bản cho use-case phê duyệt yêu cầu đăng ký nội trú 15
Bảng 3.9 Kịch bản cho use-case quản lý đăng ký vé gửi xe 15
Bảng 3.10 Kịch bản cho use-case vô hiệu hoá tài khoản 16
Bảng 3.11 Bảng employees 26
Bảng 3.12 Bảng students 24
Bảng 3.13 Bảng rooms 26
Bảng 3.14 Bảng contract 18
Bảng 3.15 Bảng Electricity-bill 20
Bảng 3.16 Bảng vehicle-registration-form 26
Hình 3.1: Sơ đồ Use-case 9
Hình 3.2: UI quản lý phí nội trú 18
Hình 3.3: Sơ đồ hoạt động cho use-case quản lý phí nội trú 19
Hình 3.4: UI quản lý phí điện nước 19
Hình 3.5: Sơ đồ hoạt động cho use-case quản lý phí điện nước 20
Hình 3.6: UI phê duyệt yêu cầu đăng ký nội trú 21
Hình 3.7: Sơ đồ hoạt động cho use-case phê duyệt yêu cầu đăng ký nội trú 21
Hình 3.8: UI tạo tài khoản sinh viên 22
iv
Trang 13Hình 3.9: Sơ đồ hoạt động cho use-case tạo tài khoản sinh viên 23
Hình 3.10: UI vô hiệu hoá tài khoản 24
Hình 3.11: Sơ đồ hoạt động cho use-case vô hiệu hoá tài khoản 25
Hình 3.12: Sơ đồ ERD 25
Hình 4.1 Giao diện trang quản lý danh sách sinh viên 27
Hình 4.2 Giao diện trang tạo tài khoản sinh viên 27
Hình 4.3 Giao diện trang vô hiệu hoá tài khoản 28
Hình 4.4 Giao diện trang chủ 29
Hình 4.5 Giao diện trang đăng ký phòng 30
iv
Trang 14Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
MỞ ĐẦU
1 Mục tiêu đề tài:
- Về kiến thức: Nắm vững và trình bày một cách hệ thống các cơ sở về kỹthuật phần mềm, về hệ quản trị cơ sở dữ liệu, cách tổ chức và hoạt động củamột ứng dụng quản lý
- Về kỹ năng: Nắm vững và sử dụng thành thạo các công nghệ về lập trìnhứng dụng, tổ chức hệ quản trị cơ sở dữ liệu, hoàn thiện kỹ năng xây dựng giaodiện phù hợp với các đối tượng người dùng
- Về kết quả: Xây dựng và thử nghiệm thành công ứng dụng quản lý ký túc
xá (KTX) sinh viên trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng Cácchức năng cơ bản của phần mềm gồm: đăng ký lưu trú tại KTX trường dànhcho sinh viên, cập nhật danh sách sinh viên đăng ký lưu trú tại KTX, quản lýtiền điện, nước hàng tháng của sinh viên, quản lý danh sách sinh viên đăng kýgiữ xe theo tháng tại KTX
2 Đối tượng nghiên cứu:
- Yêu cầu về công tác quản lý của Ban quản lý ký túc xá trường Đại học Sưphạm Kỹ thuật – Đại học Đà Nẵng và nhu cầu thực tế của sinh viên
- Website quản lý ký túc xá (KTX) sinh viên trường Đại học Sư phạm Kỹthuật – Đại học Đà Nẵng là hệ thống dành cho ban quản lý KTX, sinh viên tạitrường và sinh viên muốn tìm hiểu KTX trường Hệ thống hỗ trợ sinh viên hiểu
rõ hơn về tổ chức KTX của trường, giúp sinh viên có lựa chọn tốt nhất về nơi ởtrong quá trình học tập tại trường Ngoài ra, hệ thống giúp cho ban quản lý dễdàng hơn trong việc quản lý sinh viên đang lưu trú tại KTX
3 Phương pháp nghiên cứu:
- Nghiên cứu lý thuyết: Tiến hành đi khảo sát thực tế tại KTX trường đại học
Sư phạm Kỹ thuật, phỏng vấn sinh viên và nhân viên quản lý KTX, tìm hiểuthêm các tài liệu từ sách báo, internet Tham khảo một số nguồn hệ thống quản
lý KTX hiện hành như Trang sinh viên ở ký túc xá đại học quốc gia Tp.HCM…
- Nghiên cứu về công nghệ: Sử dụng ngôn ngữ lập trình PHP, hệ quản trị cơ
sở dữ liệu MySQL Ngôn ngữ PHP là một mã nguồn mở có tính năng động, có
sự phát triển của rất nhiều người, các thiết kế web sử dụng PHP cũng dễ dàng
và tốn ít thời gian hơn PHP sử dụng mã ít, có khả năng tùy chọn bộ nhớ khixây dựng, vì vậy kết quả việc thiết kế sẽ nhanh hơn Ngoài ra, xây dựng web có
sử dụng cơ sở dữ liệu là một nhu cầu tất yếu và PHP cũng đáp ứng rất tốt nhucầu này Với việc tích hợp sẵn nhiều Database Client trong PHP đã làm cho ứngdụng PHP dễ dàng kết nối tới các hệ cơ sở dữ liệu thông dụng như MySQL, MSSQL, Oracle, Cassandra…
- Nghiên cứu về các công cụ: Thực hiện lập trình trên phần mềm ApacheNetbean IDE, xampp NetBeans IDE là công cụ cho phép người dùng có thểviết mã code miễn phí và được đánh giá tốt nhất tính đến hiện nay Bởi nó cungcấp nhiều tính năng cần thiết cho việc tạo ra các ứng dụng NetBeans IDE hoạt
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 1
Trang 15Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
động tốt trên các hệ điều hành Windows, Linux, MacOS… và hỗ trợ đa dạngngôn ngữ lập trình Ngoài ra, NetBeans IDE còn hỗ trợ chức năng chỉnh sửa mãnguồn tự động, giao diện trực quan, dễ sử dụng và có thể xử lý các vấn đề lỗimạng từ xa
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 2
Trang 16Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
CHƯƠNG 1: TỔNG QUAN
1.1 Lý do chọn đề tài
Hàng năm mỗi trường đại học, cao đẳng tiếp nhận hàng nghìn học sinh, sinhviên Thành phố Đà Nẵng là một trong những nơi tập trung rất nhiều sinh viên ởcác tỉnh về học tập Vì là sinh viên ở các tỉnh lẻ tập trung về nên nhu cầu chỗ ởngày càng trở lên cấp thiết Sinh viên tỉnh ở các trường thường xin đăng ký nộitrú vào ký túc xá do ký túc xá thì an ninh, tiền phòng không quá đắt và có môhình học tập sinh hoạt tốt Cùng với đó, nhu cầu về việc đăng ký nội trú trong kýtúc xá ngày càng cao Trước bài toán đặt ra với các trường đại học, cao đẳng hiệnnay: vấn đề quản lý ký túc xá - một vấn đề đã có từ lâu nhưng vẫn còn khá nhiềubất cập do việc quản lý ở nhiều trường vẫn còn theo phương pháp thủ công trêngiấy tờ, các dữ liệu không có tính thống nhất, chặt chẽ Cộng với việc lượng sinhviên đăng ký ở rất đông trong khi chỉ có 1 đến 2 nhân viên quản lý khiến chokhối lượng công việc của họ thực sự nhiều khi quá lớn và hiệu quả không đượccao
Hiện nay không còn mấy ai xa lạ với những sản phẩm và ứng dụng của côngnghệ thông tin - ngành khoa học đang trở thành một phần tất yếu trong cuộc sốnghiện nay Cùng với sự phát triển không ngừng đó, những ứng dụng của công nghệthông tin trong việc quản lý nhân sự, quản lý nhà hàng, quản lý trường học … đã
và đang góp phần giảm thiểu được lượng chi phí đầu tư cho nguồn nhân công,đồng thời tăng tính hiệu quả chính xác trong việc khai thác và quản lý dữ liệu
Từ thực tế đó đã đặt ra câu hỏi: Tại sao không áp dụng công nghệ thông tinvào quản lý ký túc xá? Từ câu hỏi đó em đã bắt tay vào tìm hiểu và nghiên cứu đềtài: “Xây dựng website quản lý ký túc xá cho trường Đại học Sư phạm Kỹ thuật
Đà Nẵng” với hi vọng sẽ là cơ sở phát triển sau này cho việc quản lý ký túc xánói chung và cho trường nói riêng
1.2 Mục đích đề tài
Xây dựng một website quản lý ký túc xá bước đầu cho ban quản lý có thể tiếpcận dễ dàng ứng dụng công nghệ thông tin để áp dụng vào quá trình quản lý,mang lại hiệu quả cao hơn, giảm tải được khối lượng công việc cho ban quản lý.Đồng thời tạo mối quan hệ mật thiết giữa sinh viên và nhà trường
Trang 17Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
1.4 Cơ cấu tổ chức
1.5 Hoạt động nghiệp vụ thực tế
Sinh viên liên hệ ban quản lý ký túc xá cung cấp thông tin cá nhân để đăng ký nộitrú Sau khi được cấp tài khoản, sinh viên có thể đăng nhập vào hệ thống để đăng
ký phòng nội trú trong thời gian quy định Sau khi sinh viên hoàn tất việc đăng
ký, ban quản lý sẽ kiểm tra thông tin, xem xét và phê duyệt cho sinh viên đượcnội trú
1.6 Đặc tả yêu cầu nghiệp vụ (Business Requirements)
1.6.1 Khách vãng lai
- Được xem các thông tin chung, gồm thông tin về ký túc xá, tin tức
- Được tìm kiếm và xem phòng, tình trạng các phòng
1.6.2 Sinh viên đã được cấp tài khoản
Sinh viên đã được cấp tài khoản vẫn được xem các thông tin chung, được tìmkiếm phòng… Ngoài ra, sinh viên còn được thực hiện một số tính năng khácgồm:
- Đăng ký nội trú tại ký túc xá Bắt buộc sinh viên phải được cấp tài khoản khimuốn đăng ký phòng nội trú Việc đăng ký phòng nội trú thành công khi sinh viênnhận được mail xác nhận đã được phép đăng ký từ ban quản lý
- Đăng ký vé gửi xe tại ký túc xá theo tháng Việc này hỗ trợ chỗ để xe an toàn
và tiết kiệm cho sinh viên nội trú tại ký túc xá
1.6.3 Nhân viên kế toán – tài vụ
- Quản lý phí nội trú Nhân viên kế toán – tài vụ kiểm tra và quản lý lệ phí khisinh viên đăng ký phòng thành công
- Quản lý phí điện nước Kiểm kê chỉ số điện nước của mỗi phòng và quản lýphí điện nước đã sử dụng của từng phòng
- Cập nhật thông tin cá nhân Nhân viên được phép cập nhật các thông tin cánhân để thuận tiện trong việc liên hệ
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 4
Ban quản lý
Kế toán – tài vụ
Sinh viên
Trang 18Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
1.6.4 Ban quản lý ký túc xá
- Phê duyệt đơn đăng ký nội trú Sau khi sionh viên thực hiện đăng ký phòngtrên hệ thống Ban quản lý sẽ kiểm tra thông sinh tin sinh viên, tình trạng phòng vàquyết định phê duyệt cho sinh viên được đăng ký phòng
- Quản lý thông tin sinh viên Ban quản lý quản lý danh sách sinh viên đã đăng
ký nội trú tại ký túc xá theo từng học kỳ để thuận tiện cho việc thống kê, báo cáo
- Quản lý thông tin nhân viên Ban quản lý quản lý danh sách nhân viên thựchiện làm việc tại ký túc để thuận tiện cho việc thống kê, báo cáo và liên lạc khi cầnthiết
- Quản lý thông tin đăng ký vé xe theo học kỳ của sinh viên Ban quản lý quản
lý danh sách sinh viên đăng ký vé gửi xe theo từng học kỳ nhằm kiểm soát và đảm bảo
an toàn cho xe của sinh viên
- Quản lý thông tin thân nhân sinh viên Ban quản lý thống kê danh sách thânnhân của sinh viên nhằm liên lạc trong trường hợp cần thiết
- Cấp tài khoản cho sinh viên Ban quản lý thực hiện tạo tài khoản cho sinh viênđăng nhập vào hệ thống để thực hiện nghiệp vụ sau khi cập nhật các thông tin cơ bảncủa sinh viên vào hệ thống
- Vô hiệu hoá tài khoản Ban quản lý được thực hiện vô hiệu hoá tài khoản sinhviên đã tốt nghiệp nhằm tránh tình trạng sinh viên đã ra trường nhưng vẫn đăng ký nộitrú tại ký túc xá, gây ảnh hưởng đến sinh viên khoá sau không có phòng nội trú
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 5
Trang 19Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 Hệ quản trị cơ sở dữ liệu MySQL Server
- MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới vàđược các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng Vì MySQL
là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trênnhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh Với tốc độ
và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trênInternet MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ
Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệđiều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, NovellNetWare, SGI Irix, Solaris, SunOS…
- MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan
hệ sử dụng Ngôn ngữ truy vấn có cấu trúc
2.2 Ngôn ngữ lập trình
2.2.1 PHP
- PHP - viết tắt hồi quy của "Hypertext Preprocessor", là một ngôn ngữ lập trìnhkịch bản được chạy ở phía server nhằm sinh ra mã html trên client PHP đã trải qua rấtnhiều phiên bản và được tối ưu hóa cho các ứng dụng web, với cách viết mã rõ rãng,tốc độ nhanh, dễ học nên PHP đã trở thành một ngôn ngữ lập trình web rất phổ biến vàđược ưa chuộng
- PHP chạy trên môi trường Webserver và lưu trữ dữ liệu thông qua hệ quản trị
cơ sở dữ liệu nên PHP thường đi kèm với Apache, MySQL và hệ điều hành Linux(LAMP)
- Apache là một phần mềm web server có nhiệm vụ tiếp nhận request từ trìnhduyệt người dùng sau đó chuyển giao cho PHP xử lý và gửi trả lại cho trình duyệt
- MySQL cũng tương tự như các hệ quản trị cơ sở dữ liệu khác (Postgress,Oracle, SQL server ) đóng vai trò là nơi lưu trữ và truy vấn dữ liệu
- Linux: Hệ điều hành mã nguồn mở được sử dụng rất rộng rãi cho cácwebserver Thông thường các phiên bản được sử dụng nhiều nhất là RedHat EnterpriseLinux, Ubuntu
2.2.2 Framework Laravel
2.2.2.1 Giới thiệu
- Laravel là một mã nguồn mở, là một framework dùng để xây dựng webapplication, được thiết kế dựa trên mô hình MVC (Model, Controller, View), toàn bộsource code được đặt trên github Theo kết qủa khảo sát của các Developer vào tháng
12 năm 2013, thì Laravel Framework đứng top 1 một trong những framework phổ biếnnhất, tiếp sau là Phalcon, Symfony2, CodeIgniter và các framework khác Tháng 8
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 6
Trang 20Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
năm 2014, Laravel Framework được xem như là một dự án PHP phổ biến nhất trênGithub
- Laravel hiện đang là framework tốt nhất, đứng TOP 1 trong 3 năm liền trênbảng xếp hạng các Framework tốt nhất Tại Việt Nam nhu cầu tuyển dụng ứng viênLaravel rất nhiều, nếu bạn có khả năng về Laravel Framework, bạn sẽ được các nhàtuyển dụng săn đón nồng nhiệt, đây sẽ là cơ hội nghề nghiệp rất lớn dành cho bạn.2.2.2.2 Sơ lược tính năng cơ bản
- Bundles: Ở laravel phiên bản 3.x, cung cấp một hệ thống đóng gói các module,
với rất nhiều tính năng đi kèm
- Composer: Ở laravel phiên bản 4.x, được sử dụng như một công cụ quản lý với
tính năng như thêm các gói cài đặt, các chức năng PHP phụ trợ cho Laravel có trongkho Packagist
- Eloquent ORM (object relation mapping): ánh xạ các đối tượng và quan hệ cơ
sở dữ liệu, cung cấp các phương thức nội bộ để thực thi đồng thời cũng bổ sung cáctính năng hạn chế về mối quan hệ giữa các đối tượng cơ sở dữ liệu Eloquent ORMtrình bày các bảng trong cơ sở dữ liệu dưới dạng các lớp, cung cấp thêm lựa chọn truycập cơ sở dữ liệu trực tiếp mới mẻ hơn, chuyên nghiệp hơn
- Application logic: Là một phần của phát triển ứng dụng, được sử dụng bởi bộ
điều khiển controllers
- Routes: Định nghĩa mối quan hệ giữa các đường dẫn (url), các liên kết (link).
Khi một liên kết được tạo ra bằng cách sử dụng tên của routes, thì một định danh liênkết thống nhất sẽ được tạo ra bởi laravel
- Restful Controller: cung cấp các tùy chọn để tách các logic phía sau các
request HTTP POST, GET
- Class auto loading: cung cấp việc tải tự động các class trong PHP, mà không
cần include các class vào Tùy thuộc vào yêu cầu các class cần thiết sẽ được nạp vào,hạn chế các class không cần thiết
- View: chứa các mã html, hiển thị dữ liệu được chỉ định bởi controller
- Migrations: cung cấp một hệ thống kiểm soát các phiên bản lược đồ cơ sở dữ
liệu (database schema), làm cho web ứng dụng có khả năng tương tác phù hợp nhữngthay đổi logic, các đoạn mã code của ứng dụng và những thay đổi cần thiết trong việc
bố trí cơ sở dữ liệu, triển khai nới lỏng và cập nhật các ứng dụng
- Unit Testing: đóng một vai trò quan trọng trong Laravel, Unit testting chứa rất
nhiều các hệ thống unit testing, giúp phát hiện và ngăn chặn lỗi trong khuôn khổ nhấtđịnh Unit Testing có thể được chạy thông qua tiện ích command-line
- Automatic pagination: Tính năng tự động phân trang được tích hợp vào
Laravel giúp đơn giản hóa các nhiệm vụ thực hiện phân trang so với các phương phápthông thường
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 7
Trang 21Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ
3.1 Đặc tả yêu cầu phần mềm (Software Requirements)
3.1.1 Khách vãng lai
- Xem tin tức và thông tin về ký túc xá
- Xem danh sách phòng
3.1.2 Sinh viên được cấp tài khoản
Kế thừa các use-case “Xem thông tin” từ Khách vãng lai
- Đăng ký phòng nội trú
- Đăng ký vé xe
3.1.3 Kế toán – tài vụ
- Quản lý phí đăng ký nội trú của sinh viên
- Quản lý phí điện nước của từng phòng
3.1.4 Ban quản lý
- Phê duyệt yêu cầu đăng ký nội trú của sinh viên
- Cấp tài khoản cho sinh viên
- Quản lý thông tin sinh viên đã đăng ký nội trú tại ký túc xá
- Quản lý thông tin nhân viên làm việc tại ký túc xá
- Quản lý thông tin đăng ký vé gửi xe của sinh viên
- Quản lý thông tin thân nhân của sinh viên
- Đăng thông báo đến sinh viên
- Vô hiệu hoá tài khoản
- Thống kê – báo cáo
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 8
Trang 22Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
STT Use case name Tìm kiếm phòng
1 Description Sinh viên muốn tìm kiếm phòng để đăng ký nội trú
2 Actors Sinh viên đã được cấp tài khoản
3 Input Sinh viên truy cập vào hệ thống và tìm kiếm phòng
4 Output Thông tin của phòng mà sinh viên tìm kiếm
5 Basic flow Sinh viên (actor) thực hiên use-case tìm kiếm sau khi
login vào 1) Bắt đầu use-case2) Actor Sinh viên nhấn vào chọn vào button “Danh sáchphòng” để chuyển đến danh sách phòng tại ký túc xá3) Sau đó hiển thị ra thông tin của phòng đó theo sốphòng
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 9
Trang 23Xây dựng websie Quản lý ký túc xá Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng
của Basic flow)
1 Đăng nhập lỗi (hết phiên đăng nhập)
2 Tìm kiếm không đúng số phòng
Bảng 3.1 Kịch bản cho use-case tìm kiếm phòng
3.2.1.2 Use-case đăng ký phòng nội trú
STT Use case name Đăng ký phòng nội trú
1 Description Sinh viên muốn đăng ký phòng nội trú tại ký túc xá
2 Actors Sinh viên đã được cấp tài khoản
3 Input Sinh viên đã đăng nhập bằng tài khoản thành công
Và đăng ký phòng
4 Output Thông báo đã đăng ký phòng thành công và đang chờ phê
duyệt
5 Basic flow Sinh viên (actor) thực hiện use-case tìm kiếm phòng sau
khi login vào1) Bắt đầu use case2) Actor Sinh viên nhấn chọn vào button “Chọn phòng”
để thực hiện đăng ký3) Sau đó hiển thị ra form thông tin của sinh viên vàphòng vừa chọn
4) Actor chọn button “Đăng ký phòng” để xác nhận đăng
ký tại phòng đã chọn Kết thúc use case
của Basic flow)
1 Đăng nhập lỗi (hết phiên đăng nhập)
2 Sai thông tin cá nhân
3 Không còn phòng trống
Sinh viên thực hiện: Ngô Lâm Đoon Người hướng dẫn: PGS.TS Võ Trung Hùng 10