ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT KHOA CÔNG NGHỆ SỐ ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN XÂY DỰNG HỆ THỐNG WEBSITE ĐĂNG KÝ SỬ DỤNG PHÒNG THỰC HÀNH M
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA CÔNG NGHỆ SỐ
ĐỒ ÁN TỐT NGHIỆP
ĐẠI HỌC
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
XÂY DỰNG HỆ THỐNG WEBSITE ĐĂNG KÝ
SỬ DỤNG PHÒNG THỰC HÀNH MÁY TÍNH CHO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT ĐÀ NẴNG
Sinh viên thực hiện: Hà Phước Dưỡng
Trang 2ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA CÔNG NGHỆ SỐ
ĐỒ ÁN TỐT NGHIỆP
ĐẠI HỌC
NGÀNH: CÔNG NGHỆ THÔNG TIN
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI:
XÂY DỰNG HỆ THỐNG WEBSITE ĐĂNG KÝ SỬ DỤNG PHÒNG THỰC HÀNH MÁY TÍNH TRƯỜNG
ĐẠI HỌC SƯ PHẠM KỸ THUẬT
Giảng viên hướng dẫn duyệt
Đà Nẵng, 06/ 2022
Trang 3NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN
NHẬN XÉT CỦA DOANH NGHIỆP
Trang 4NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN
Trang 5TÓM TẮT
Trang 6Tên đề tài: Xây dựng website đăng ký sử dụng phòng thực hành máy tính trường Đại học Sư phạm kỹ thuật Đà Nẵng
Sinh viên thực hiện: Hà Phước Dưỡng
Mã sinh viên: 1811505310210 Lớp:18T2
Sau khi được cô Ths.Nguyễn Thị Hà Quyên hướng dẫn đề tài này thì em đã thực hiện được các chức năng cơ bản của hệ thống như sau:
• Cho phép sinh viên tìm kiếm phòng máy
• Cho phép sinh viên cập nhật thông tin cá nhân
• Cho phép sinh viên xem thời khóa biểu cá nhân
• Cho phép sinh viên đăng ký sử dụng máy
• Cho phép sinh viên xem kết quả , lịch sử mượn máy
• Cho phép sinh viên báo cáo tình trạng máy đã mượn
• Cho phép giảng viên tìm kiếm phòng máy
• Cho phép giảng viên cập nhật thông tin cá nhân
• Cho phép giảng viên xem lịch dạy cá nhân
• Cho phép giảng viên đăng ký sử dụng máy với số lượng nhiều máy
• Cho phép giảng viên xem kết quả, lịch sử mượn máy
• Cho phép người quản lý phòng máy (Admin):
+ Xem danh sách đăng ký mượn máy của sinh viên/giảng viên
+ Duyệt yêu cầu mượn máy của sinh viên/giảng viên
+ Quản lý số lượng máy của mỗi phòng máy
+ Quản lý máy của từng phòng (tình trạng còn sử dụng được hay không).+ Quản lý thời khóa biểu của phòng máy
+ Xem báo cáo tình trạng máy của sinh viên/giảng viên
Trang 7TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA CÔNG NGHỆ SỐ
CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Giảng viên hướng dẫn: ThS Nguyễn Thị Hà Quyên
Sinh viên thực hiện: Hà Phước Dưỡng Mã SV: 1811505310210
1 Tên đề tài:
Xây dựng website đăng ký sử dụng phòng thực hành máy tính trường Đại học Sư
phạm kỹ thuật Đà Nẵng
2 Các số liệu, tài liệu ban đầu:
- Hiện tại trường Đại học Sư Phạm Kỹ Thuật có khoảng 5000 sinh viên, nhu cầu sửdụng phòng máy tính để phục vụ cho việc học là rất cao Mỗi học kì có khoảng 30học phần cần sử dụng phòng máy tính
- Tham khảo chương trình đào tạo từ các ngành của trường Đại học Sư Phạm KỹThuật
- Các tài liệu tham khảo được lấy từ nhiều nguồn, đa phần là các bài viết và khóahọc về lập trình trên youtube
3 Nội dung chính của đồ án:
Chương 1: Cơ sở lý thuyết
Chương 2: Phân tích thiết kế
Chương 3: Xây dựng chương trình
Kết luận và hướng phát triển
Trang 8LỜI NÓI ĐẦU
Lời đầu tiên, em xin chân thành cảm ơn Trường Đại học Sư Phạm Kỹ Thuật ĐàNẵng đã tạo điều kiện để em có được môi trường học tập và phát triển bản thân tốt nhất.Đặc biệt em xin gửi lời cảm ơn chân thành và sâu sắc tới cô ThS Nguyễn Thị HàQuyên đã hướng dẫn, giúp đỡ em trong suốt thời gian thực hiện đề tài này
Em xin chân thành cảm ơn thầy cô bộ môn đã tận tình giảng dạy, truyền đạtkiến thức cho chúng em trong các kỳ học vừa qua
Xin chân thành cảm ơn tất cả bạn bè đã động viên, giúp đỡ chúng em trong thời gianhọc tập và hoàn thành đồ án
Mặc dù đã cố gắng nhiều nhưng sẽ không thể tránh khỏi những thiếu sót vì thời gianhạn chế và kiến thức trong đề tài làm đồ án Em kính mong nhận được sự góp ý của quýThầy Cô và các bạn để hoàn thành tốt hơn nữa
Em xin chân thành cảm ơn!
Trang 9
CAM ĐOAN
Chúng em 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ẫn của giảng viên ThS.Nguyễn Thị Hà Quyên
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ông trì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á,chúng em xin chịu hoàn toàn trách nhiệm
Sinh viên thực hiện
Hà Phước Dưỡng
Trang 10MỤC LỤC
MỤC LỤC 10
DANH MỤC BẢNG 13
DANH MỤC HÌNH ẢNH 14
MỞ ĐẦU 1
1 Mục đích đề tài 2
2 Đối tượng nghiên cứu và phạm vi nghiên cứu 2
a Đối tượng nghiên cứu 2
b Phạm vi nghiên cứu 2
3 Phương pháp nghiên cứu 2
4 Giải pháp công nghệ 2
5 Cấu trúc đồ án 2
CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 2
1.1 Hệ quản trị cơ sở dữ liệu 3
2.1.1 MySQL là gì 3
2.1.2 Đôi nét về lịch sử 3
2.1.3 Ưu điểm MySQL 3
1.2 Ngôn ngữ lập trình PHP 4
2.1.1 PHP là gì 4
2.1.2 Đôi nét về lịch sử 4
1.3 Laravel Framework 5
1.3.1 Laravel là gì 5
1.3.2 Đôi nét về lịch sử 6
1.4 Bootstrap 7
1.4.1 Bootstrap là gì 7
1.4.2 Đôi nét về lịch sử 7
1.5 Mô hình MVC 8
CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ 10
Trang 112 Đặc tả yêu cầu phần mềm (Software Requirements) 10
2.1 Sinh viên 10
2.2 Giảng viên 10
2.3 Admin 10
2.4 Sơ đồ Usecase 11
Kịch bản cho Usecase 12
2.4.1 Actor sinh viên, giảng Viên 12
2.4.2 Actor Admin 16
2.5 Sơ đồ ERD 19
2.6 Diagram trong MySQL 20
2.7 Sơ đồ Activity Diagram 21
2.7.1 Acitivity Diagram đăng ký máy 21
2.7.2 Acitivity Diagram duyệt đăng ký máy 23
2.8 Sơ đồ Robustness Diagram 24
2.8.1 Robustness Diagram cho usecase đăng ký máy (Sinh viên/ Giảng viên) 24 2.8.2 Robustness Diagram cho usecase xem kết quả đăng ký (Sinh viên/ Giảng viên) 25
2.8.3 Robustness Diagram cho usecase báo cáo tình trạng máy (Sinh viên/ Giảng viên) 26
2.8.4 Robustness Diagram cho usecase duyệt máy (Admin) 27
2.8.5 Robustness Diagram cho usecase xem phản hồi (Admin) 27
2.9 Sơ đồ tương tác 28
2.9.1 Actor Sinh viên, Giảng Viên 29
2.9.2 Actor Admin 31
CHƯƠNG 3 XÂY DỰNG CHƯƠNG TRÌNH 33
3.1 Công cụ xây dựng chương trình 33
3.1.1 Visual Studio Code 33
3.1.2 Xampp 34
3.2 Trang Người dùng 35
Trang 123.2.1 Giao diện trang đăng nhập 35
3.2.2 Giao diện trang chính 35
3.2.3 Giao diện cập nhật thông tin 37
3.2.4 Giao diện trang đăng ký máy 37
3.2.5 Giao diện xem lịch sử đăng ký 39
3.2.6 Giao diện xem chi tiết đăng ký 39
3.2.7 Giao diện báo cáo tình trạng 40
3.3 Trang Admin 40
3.3.1 Giao diện đăng nhập Admin thành công 40
3.3.2 Giao diện quản lý máy 41
3.3.3 Giao diện quản lý phòng 42
3.3.4 Giao diện quản lý lớp 43
3.3.5 Giao diện quản lý thời khóa biểu 44
3.3.6 Giao diện quản lý đăng ký 44
3.3.7 Giao diện trang duyệt máy 44
3.3.8 Giao diện trang xem phản hồi 45
KẾT LUẬN & HƯỚNG PHÁT TRIỂN 47
1 Kết luận 47
2 Hướng phát triển 47
TÀI LIỆU THAM KHẢO 48
DANH MỤC BẢNG Bảng 2 1 Kịch bản cho use-case đăng nhập 12
Bảng 2 2 Kịch bản cho use-case cập nhật thông tin cá nhân 12
Trang 13Bảng 2 3 Kịch bản cho use-case xem thời khóa biểu cá nhân 13
Bảng 2 4 Kịch bản cho use-case đăng ký mượn máy 13
Bảng 2 5 Kịch bản cho use-case xem kết quả đăng ký 15
Bảng 2 6 Kịch bản cho use-case báo cáo tình trạng máy 16
Bảng 2 7 Kịch bản cho use-case cập nhật thời khóa biểu 16
Bảng 2 8 Kịch bản cho use-case xem yêu cầu đăng ký 17
Bảng 2 9 Kịch bản cho use-case duyệt đăng ký mượn máy 17
Trang 14DANH MỤC HÌNH ẢNH
Hình 1 1 Logo MySQL 3
Hình 1 2 Logo PHP 4
Hình 1 3 Logo Laravel 5
Hình 1 4 Logo Bootstrap 7
Hình 1 5 Mô hình MVC 8
Hình 2 1 Sơ đồ usecase 11
Hình 2 2Sơ đồ ERD 19
Hình 2 3Sơ đồ Diagram 20
Hình 2 4Activity diagram đăng ký máy sinh viên 21
Hình 2 5Activity diagram đăng ký máy giảng viên 22
Hình 2 6Activity diagram duyệt đăng ký máy 23
Hình 2 7Activity diagram phản hồi tình trạng máy của sinh viên 24
Hình 2 8Sơ đồ Robustness cho usecase đăng ký máy sinh viên 24
Hình 2 9Sơ đồ Robustness cho usecase đăng ký máy giảng viên 25
Hình 2 10 Sơ đồ Robustness cho usecase xem kết quả đăng ký sinh viên 25
Hình 2 11Sơ đồ Robustness cho usecase xem kết quả đăng ký giảng viên 26
Hình 2 12 Sơ đồ Robustness cho usecase báo cáo tình trạng máy sinh viên 26
Hình 2 13 Sơ đồ Robustness cho usecase báo cáo tình trạng máy sinh viên 27
Hình 2 14 Sơ đồ Robustness cho usecase duyệt máy 27
Hình 2 15 Sơ đồ Robustness cho usecase xem phản hồi 28
Hình 2 16 Sơ đồ sequence cho usecase đăng ký mượn máy 29
Hình 2 17 Sơ đồ sequence cho usecase xem kết quả đăng ký 30
Hình 2 18 Sơ đồ sequence cho usecase báo cáo tình trạng 31
Hình 2 19 Sơ đồ sequence cho usecase duyệt máy 31
Hình 2 20 Sơ đồ sequence cho usecase xem phản hồi 32
Hình 2 21 Sơ đồ sequence cho usecase cập nhật thời khóa biểu 32
Hình 3 1 Giao diện trang đăng nhập 35
Hình 3 2 Giao diện trang chính 35
Hình 3 3 Giao diện cập nhật thông tin 37
Hình 3 4 Giao diện đăng ký máy sinh viên (trước khi chọn thông tin) 37
Hình 3 5 Giao diện đăng ký máy sinh viên (sau khi chọn thông tin) 37
Trang 15Hình 3 6 Giao diện đăng ký máy giảng viên (trước khi chọn thông tin) 38
Hình 3 7 Giao diện đăng ký máy giảng viên (sau khi chọn thông tin) 38
Hình 3 8 Giao diện xem lịch sử đăng ký 39
Hình 3 9 Giao diện xem lịch sử đăng ký 39
Hình 3 10 Giao diện báo cáo tình trạng 40
Hình 3 11 Giao diện sau khi Admin đăng nhập thành công 39
Hình 3 12 Giao diện quản lý máy 40
Hình 3 13 Giao diện thêm máy 40
Hình 3 14 Giao diện quản lý phòng 41
Hình 3 15 Giao diện thêm phòng 41
Hình 3 16 Giao diện quản lý lớp 42
Hình 3 17 Giao diện thêm lớp 42
Hình 3 18 Giao diện quản lý thời khóa biểu 43
Hình 3 19 Giao diện quản lý đăng ký 43
Hình 3 20 Giao diện trang duyệt máy 44
Hình 3 21 Giao diện trang xem phản hồi 45
Trang 16DANH MỤC CHỮ VIẾT TẮT TIẾNG VIỆT
Stt Chữ viết tắt Giải nghĩa
2 UT2 Trường Đại học Sư Phạm2 2 n2 2 22 2 22 22 22 2 m
Kỹ Thuật Đà Nẵng2 T2 uật Đà Nẵng2 t 2 à Nẵng2 n2
Trang 17DANH MỤC CHỮ VIẾT TẮT TIẾNG ANH
2 CSS Cascading Style Sheets 2 2n2 2 2 n2 t2 p t2 n t2 2 o
t2 n2
2 PHP Hypertext Preprocessor 22 t2 2 n xử lý siêu văn2 lý s2 êuật Đà Nẵng văn2 n
2 2 n
Trang 18Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
MỞ ĐẦU
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à một thứ phương tiện quý hiếm 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.
Hiện nay các công ty tin học hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet Với những thao tác đơn giản trên máy có nối mạng Internet bạn sẽ có tận tay những gì mình cần mà không phải mất nhiều thời gian Bạn chỉ cần vào các trang dịch
vụ thương mại điện tử, làm theo hướng dẫn và click vào những gì bạn cần Các nhà dịch vụ sẽ mang đến tận nhà cho bạn Ngoài các dịch vụ internet phục vụ cho đời sống tiêu dùng hằng ngày, thì môi trường giáo dục cũng là một nơi mà internet giúp ích rất nhiều cho công việc giảng dạy của giáo viên cũng như là việc học tập của học sinh Hiện nay, công nghệ thông tin đang là một ngành học thu hút rất nhiều sự quan tâm của tất cả mọi lứa tuổi trong thời điểm phát triển của thời đại công nghệ 4.0 và tính phát triển mạnh mẽ của nó trong tương lai, ngày càng nhiều học sinh đã đăng ký theo học ngành học “nóng hổi” này!
Tuy rất nhiều học sinh đã nộp vào ngành công nghệ thông tin, nhưng do điều kiện gia đình đang khó khăn, rất nhiều học sinh không có được máy tính để thực hành được những kiến thức đã học sau giờ học được Để đáp ứng được nhu cầu học tập của các bạn học sinh, chúng em đã tìm hiểu để xây dựng 1 website “QUẢN LÝ VIỆC ĐĂNG KÝ
SỬ DỤNG PHÒNG MÁY TẠI TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT” nhằm đáp ứng nhu cầu sử dụng máy tính tại phòng máy của bộ môn CNTT tại trường Đại học Sư Phạm Kỹ Thuật cũng như là phục vụ việc mượn phòng để thực hiện công việc giảng dạy ngoài giờ của giáo viên nội bộ nhà trường.
Với sự hướng dẫn tận tình của cô Nguyễn Thị Hà Quyên, chúng em đã hoàn thành
đồ án tốt nghiệp này Tuy đã cố gắng hết sức tìm hiểu, phân tích thiết kế và cài đặt hệ thống nhưng chắc rằng không tránh khỏi những thiếu sót Chúng em rất mong nhận được sự thông cảm và góp ý của quí thầy cô
Chúng em xin chân thành cảm ơn!
CHƯƠNG 1 Mục đích đề tài
Trang 19Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
- Xây dựng website đăng ký sử dụng phòng máy cho phép sinh viên và giáo viêntrong trường đăng ký lịch sử dụng phòng máy ngoài giờ học
- Quản lí dễ dàng quản lí các giáo viên và sinh viên đăng ký sử dụng phòng máytại trường Đại học Sư Phạm Kỹ Thuật
2 Đối tượng nghiên cứu và phạm vi nghiên cứu
a Đối tượng nghiên cứu
Sinh viên và giảng viên có nhu cầu mượn máy tính của phòng thực hành tại trườngĐại Học Sư Phạm Kỹ Thuật
b Phạm vi nghiên cứu
• Trường Đại Học Sư Phạm Kỹ Thuật – Đại Học Đà Nẵng
• Địa chỉ: 48 Cao Thắng – Hải Châu – Đà Nẵng
3 Phương pháp nghiên cứu
• Từ nhu cầu cần sử dụng máy tính ngoài giờ học chính của sinh viên và giảng viêntại trường Đại học Sư Phạm Kỹ Thuật Đà Nẵng
• Phân tích thiết kế hướng đối tượng bằng cách sử dụng ngôn ngữ UML
Qua đó em quyết định chọn đề tài “Xây dựng website đăng ký sử dụng phòng thựchành máy tính trường Đại học Sư phạm kỹ thuật Đà Nẵng”
4 Giải pháp công nghệ
• Ngôn ngữ lập trình: PHP(Laravel), HTML , CSS
• Cơ sở dữ liệu: MySQL
• Công cụ phát triển: Visual Studio Code, Figma, Github, Xampp, StarUml
5 Cấu trúc đồ án
• Chương 1: Cơ sở lý thuyết
• Chương 2: Phân tích thiết kế hệ thống
• Chương 3: Xây dựng chương trình
CHƯƠNG 1
CƠ SỞ LÝ THUYẾT
Trang 20Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
1.1 Hệ quản trị cơ sở dữ liệu
Hình 1 1 Logo MySQL
1.1.1 MySQL là gì
MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ mã nguồn mở (RDBMS) dựatrên ngôn ngữ truy vấn có cấu trúc ( SQL) được phát triển, phân phối và hỗ trợ bởi tậpđoàn Oracle MySQL chạy trên hầu hết tất cả các nền tảng, bao gồm cả Linux , UNIX
và Windows MySQL thường được kết hợp với các ứng dụng web
1.1.3 Ưu điểm MySQL
Dễ sử dụng: MySQL là cơ sở dữ liệu tốc độ cao, ổn định, dễ sử dụng và hoạt độngtrên nhiề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
Độ 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 khi sở hữu nhiều nhiều tính năng bảo mật thậm chí là ở cấp cao
Đa tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được mong chờ từ một hệquản trị cơ sở dữ liệu quan hệ cả trực tiếp lẫn gián tiếp
Khả năng mở rộng và mạnh mẽ: MySQL có thể xử lý rất nhiều dữ liệu và hơn thếnữa nó có thể được mở rộng nếu cần thiết
Nhanh chóng: Việc đưa ra một số tiêu chuẩn cho phép MySQL để làm việc rất hiệuquả và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi
Trang 21Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
có thể dễ dàng nhúng vào trang HTML Do được tối ưu hóa cho các ứng dụng web, tốc
độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng món đồtương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành mộtngôn ngữ lập trình web phổ biến nhất thế giới
Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và có sựđóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nênnhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanhnghiệp
PHP4: Được công bố năm 2000 tốc độ xử lý được cải thiện, PHP 4.0 đem đến cáctính năng chủ yếu khác gồm có hỗ trợ nhiều máy chủ web, hỗ trợ session HTTP, tạo
Trang 22Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
output buffering, nhiều cách xử lý dữ liệu input bảo mật hơn và cung cấp một vài cáccấu trúc ngôn ngữ mới Với PHP 4, số nhà phát triển dùng PHP lên đến hàng trămnghìn và hàng triệu trang web dùng PHP, chiếm 20% số tên miền trên mạng Internet.Team phát triển PHP lên tới con số hàng nghìn người và nhiều người khác tham gia vàocác dự án có liên quan đến PHP như PEAR, PECL và tài liệu cho PHP
PHP5: Bản chính thức ra mắt ngày 13 tháng 7 năm 2004 sau một chuỗi các bảnkiểm thử bao gồm Beta 4, RC 1, RC2, RC3 Mặc dù đây là phiên bản sản xuất đầu tiênnhưng PHP 5.0 vẫn còn một số lỗi, đáng kể là lỗi xác thực HTTP
Laravel hiện được phát hành theo giấy phép MIT, với source code được lưu trữ tạiGitthub
Mặc dù ra đời muộn hơn so với các đối thủ, tuy nhiên Laravel đã thật sự tạo thànhmột làn sóng lớn, được đánh giá tốt và sử dụng rộng rãi nhất hiện nay Biểu đồ dướiđây cho thấy sự tăng trưởng về số lượng sao trên Github của Laravel so với cácFramework khác
1.3.2 Đôi nét về lịch sử
Bản Laravel beta đầu tiên được phát hành vào ngày 9/6/2011, tiếp đó là Laravel 1phát hành trong cùng tháng Laravel 1 bao gồm các tính năng như xác thực, bản địahóa, model, view, session, định tuyến và các cơ cấu khác, nhưng vẫn còn thiếucontroller, điều này làm nó chưa thật sự là một MVC framework đúng nghĩa
Trang 23Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
Laravel 2 được phát hành vào tháng 9 năm 2011, mang đến nhiều cài tiến từ tác giả
và cộng đồng Tính năng đáng kể bao gồm hỗ trợ controller, điều này thực sự biếnLaravel 2 thành một MVC framework hoàn chỉnh, hỗ trợ Inversion of Control (IoC), hệthống template Blade Bên cạnh đó, có một nhược điểm là hỗ trợ cho các gói của nhàphát triển bên thứ 3 bị gỡ bỏ
Laravel 3 được phát hành vào tháng 2 năm 2012, với một tấn tính năng mới baogồm giao diện dòng lệnh (CLI) tên “Artisan”, hỗ trợ nhiều hơn cho hệ thống quản trị cơ
sở dữ liệu, chức năng ánh xạ cơ sở dữ liệu Migration, hỗ trợ “bắt sự kiện” trong ứngdụng, và hệ thống quản lý gói gọi là “Bundles” Lượng người dùng và sự phổ biến tăngtrưởng mạnh kể từ phiên bản Laravel 3
Laravel 4, tên mã “Illuminate”, được phát hành vào tháng 5 năm 2013 Lần này thực
sự là sự lột xác của Laravel framework, di chuyển và tái cấu trúc các gói hỗ trợ vào mộttập được phân phối thông qua Composer, một chương trình quản lý gói thư viện phụthuộc độc lập của PHP Bố trí mới như vậy giúp khả năng mở rộng của Laravel 4 tốthơn nhiều so với các phiên bản trước Ra mắt lịch phát hành chính thức mỗi sáu thángmột phiên bản nâng cấp nhỏ các tính năng khác trong Laravel 4 bao gồm tạo và thêm
dữ liệu mẫu (database seeding), hỗ trợ hàng đợi, các kiểu gởi mail, và hỗ trợ “xóamềm” (soft-delete: record bị lọc khỏi các truy vấn từ Eloquent mà không thực sự xóahẳn khỏi DB)
Laravel 5 được phát hành trong tháng 2 năm 2015, như một kết quả thay đổi đáng
kể cho việc kết thúc vòng đời nâng cấp Laravel lên 4.3 Bên cạnh một loạt tính năngmới và các cải tiến như hiện tại, Laravel 5 cũng giới thiệu cấu trúc cây thư mục nội bộcho phát triển ứng dụng mới Những tính năng mới của Laravel 5 bao gồm hộ trợ lậplịch định kỳ thực hiện nhiệm vụ thông qua một gói tên là “Scheduler”, một lớp trừutượng gọi là “Flysystem” cho phép điều khiển việc lưu trữ từ xa đơn giản như lưu trữtrên máy local – dễ thấy nhất là mặc định hỗ trợ dịch vụ Amazone S3, cải tiến quản lýassets thông qua “Elixir”, cũng như đơn giản hóa quản lý xác thực với các dịch vụ bênngoài bằng gói “Socialite”
Laravel 5.1 phát hành vào tháng 6 năm 2015, là bản phát hành đầu tiên nhận được
hỗ trợ dài hạng (LTS) với một kết hoạch fix bug lên tới 2 năm vào hỗ trợ vá lỗi bảo mậtlên tới 3 năm Các bản phát hành LTS của Laravel được lên kế hoạch theo mỗi 2 năm
Trang 24Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
Laravel 5.3, được phát hành vào ngày 23 tháng 8 năm 2016 Các tính năng mớitrong 5.3 tập trung vào việc cải thiện tốc độ phát triển bằng cách bổ sung thêm các cảitiến cho các tác vụ phổ biến
Laravel 5.4 Phiên bản này có nhiều tính năng mới, như Laravel Dusk, Laravel Mix,Blade Components và Slots, Markdown Emails, Automatic Facades, RouteImprovements, Higher Order Messaging cho Collections, và nhiều thứ khác
Laravel 5.5, phát hành vào ngày 30 tháng 8 năm 2017 là phiên bản LTS thứ 2
Laravel 5.6, phát hành vào ngày 7 tháng 2 năm 2018
Laravel 5.7, phát hành vào ngày 4 tháng 9 năm 2018 với những cập nhật
Laravel 6, phát hành vào ngày 3 tháng 9 năm 2019
Laravel 7, ra mắt ngày 3 tháng 3 năm 2020 với nhiều tính năng cũng như cải thiệntốc độ
1.4 Bootstrap
Hình 1 4 Logo Bootstrap
1.4.1 Bootstrap là gì
Hiểu đơn giản, Bootstrap là những đoạn code viết sẵn để giúp developer dễ dàng tạo
ra những giao diện website tương thích với màn hình điện thoại
Bootstrap là một framework bao gồm các HTML template, CSS template vàJavaScript template dùng để phát triển website chuẩn responsive
1.4.2 Đôi nét về lịch sử
19/8/2011 trên GitHub, Bootstrap được “ra mắt” như một mã nguồn mở với tên gọiban đầu là Twitter Blueprint Đây là một món đồ sáng tạo của Mark Otto và JacobThornton tại Twitter
31/1/2012, Bootstrap phiên bản 2 được phát hành Phiên bản này được bổ sung bốcục lưới 12 cột, thiết kế tùy chỉnh có thể tương thích linh hoạt với kích thước nhiều mànhình
Trang 25Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
19/8/2013, Bootstrap 3 ra đời với giao diện tương thích với smartphone, trở thànhNo.1 project trên GitHub
Tháng 10/2014, Mark Otto công bố phiên bản Bootstrap 4 đang được phát triển.Phiên bản alpha đầu tiên của Bootstrap 4 đã được triển khai vào tháng 8/2015
Phiên bản mới nhất là Bootstrap 4.5
Đến nay, Bootstrap vẫn là một trong những framework thiết kế website được nhiềudeveloper đánh giá cao
1.5 Mô hình MVC
MVC là từ viết tắt bởi 3 từ Model – View – Controller Đây là mô hình thiết kế
sử dụng trong kỹ thuật phần mềm Mô hình source code thành 3 phần, tương ứng mỗi
từ Mỗi từ tương ứng với một hoạt động tách biệt trong một mô hình
Hình 1 5 Mô hình MVC
Model (M):
Là bộ phận có chức năng lưu trữ toàn bộ dữ liệu của ứng dụng Bộ phận này làmột cầu nối giữa 2 thành phần bên dưới là View và Controller Model thể hiện dướihình thức là một cơ sở dữ liệu hoặc có khi chỉ đơn giản là một file XML bình thường.Model thể hiện rõ các thao tác với cơ sở dữ liệu như cho phép xem, truy xuất, xử lý dữliệu,…
View (V):
Trang 26Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
Đây là phần giao diện (theme) dành cho người sử dụng Nơi mà người dùng có thểlấy được thông tin dữ liệu của MVC thông qua các thao tác truy vấn như tìm kiếm hoặc
sử dụng thông qua các website
Thông thường, các ứng dụng web sử dụng MVC View như một phần của hệthống, nơi các thành phần HTML được tạo ra Bên cạnh đó, View cũng có chức năngghi nhận hoạt động của người dùng để tương tác với Controller Tuy nhiên, Viewkhông có mối quan hệ trực tiếp với Controller, cũng không được lấy dữ liệu từController mà chỉ hiển thị yêu cầu chuyển cho Controller mà thôi
Controller (C):
Bộ phận có nhiệm vụ xử lý các yêu cầu người dùng đưa đến thông qua view Từ
đó, C đưa ra dữ liệu phù hợp với người dùng Bên cạnh đó, Controller còn có chứcnăng kết nối với model
Trang 27Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ
2 Đặc tả yêu cầu phần mềm (Software Requirements)
Phần liệt kê Actor-Usecase lấy nội dung từ phần Liệt kê User-Chức năng ở chương
1 (lưu ý sử dụng multilevel list)
1.6 Sinh viên
1.6.1 Đăng nhập
Đăng nhập bằng tài khoản sinh viên
1.6.2 Cập nhật thông tin cá nhân
1.6.3 Tìm kiếm phòng máy
Chọn ngày sử dụng và tiết sử dụng
Chọn tiết sử dụng
Tìm kiếm ( bấm vào nút “tìm kiếm”)
1.6.4 Đăng ký mượn máy
Chọn số lượng máy muốn mượn
Tìm kiếm ( bấm vào nút “tìm kiếm”)
1.8 Admin
1.8.1 Cập nhật thời khóa biểu phòng máy
1.8.2 Xem yêu cầu đăng ký của sinh viên/ giảng viên
1.8.3 Duyệt yêu cầu đăng ký của sinh viên/ giảng viên
Chọn máy cho sinh viên/ giảng viên
2.3.4 Xem báo cáo của sinh viên/ giảng viên
Trang 28Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
1.9 Sơ đồ Usecase
Hình 2 1 Sơ đồ usecase
Trang 29Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
Kịch bản cho Usecase1.9.1 Actor sinh viên, giảng Viên
1.9.1.1 Usecase Đăng nhập
Bảng 2 1 Kịch bản cho use-case đăng nhập
Tên Usecase Đăng nhập
Mô tả Sinh viên /giảng viên muốn đăng ký mượn máy cần phải đăng
nhập vào hệ thống
Actors Sinh viên, Giảng viên
3a.1 Nhập lại usecase tiếp tục bước 44a Actor nhập sai Passwork
4a.1 Actor nhập lại usecase tiếp tục bước 5
1.9.1.2 Usecase cập nhật thông tin cá nhân
Bảng 2 2 Kịch bản cho use-case cập nhật thông tin cá nhân
Tên usecase Cập nhật thông tin cá nhân
Mô tả Sinh viên / giảng viên thay đổi thông tin cá nhân như số điện
thoại, địa chỉ,…
Actors Sinh viên , Giảng viên
Đầu vào Sinh viên / giảng viên bấm vào mục “Cập nhật thông tin”
Đầu ra Thông tin cá nhân đã được thay đổi
Các bước thực 1 Actor chọn vào mục “Cập nhật thông tin”
Trang 30Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
hiện 2 Actor chỉnh sửa thông tin
1.9.1.3 Usecase xem thời khóa biểu cá nhân
Bảng 2 3 Kịch bản cho use-case xem thời khóa biểu cá nhân
Tên usecase Xem thời khóa biểu cá nhân
Mô tả Sinh viên / giảng viên xem thời khóa biểu dạy/học của mình ở
phòng máy
Actors Sinh viên , Giảng viên
Đầu vào Sinh viên / giảng viên bấm vào mục “Xem thời khóa biểu”
Đầu ra Thời khóa biểu của Sinh viên/giảng viên
1.9.1.4 Usecase đăng ký mượn máy
Bảng 2 4 Kịch bản cho use-case đăng ký mượn máy
Tên usecase Đăng ký mượn máy
Mô tả Sinh viên / giảng viên sẽ tìm phòng theo nhu cầu sử dụng và gửi
yêu cầu đăng ký cho admin
Actors Sinh viên/ giảng viên
Đầu vào Sinh viên sau khi thực hiện việc Đăng Nhập thành công
Chọn mục “Đăng ký máy” vào đó để thực hiện việc đăng kýmượn máy
Nhập thông tin muốn đăng ký (ngày sử dụng, tiết sử dụng, sốlượng máy nếu là giảng viên)
Đầu ra Yêu cầu đăng ký đến admin
Các bước thực
hiện
1 Sinh viên (Actor) nhấn vào mục đăng ký máy
2 Actor chọn ngày muốn mượn máy
3 Actor chọn tiết muốn mượn máy
4 Actor chọn số lượng máy muốn mượn (đối với giảng viên)
5 Actor bấm vào nút “Tìm kiếm”
Trang 31Xây dụng website quản lý đăng ký sử dụng phòng thực hành máy tính trường UTE Đà Nẵng
6 Actor chọn phòng máy
7 Actor bấm vào nút “Đăng ký"
Các bước phát
sinh
2a Actor không chọn ngày
• Usecase thực hiện bước 23a Actor không chọn tiết
• Usecase thực hiện bước 34a Actor không chọn phòng
• Usecase thực hiện bước 6
Các trường
hợp ngoại lệ
2a Actor không chọn đủ thông tin
• Usecase dừng lại và thông báo “ Chưa chọn đủ thông tin”3a Actor chọn ngày , giờ trùng với lịch học cá nhân
• Usecase dừng lại và thông báo “Trùng lịch học”
4a Actor chọn cùng lúc nhiều phòng
• Usecase dừng lại và thông báo “Chỉ được đăng ký 1phòng”
1.9.1.5 Usecase xem kết quả đăng ký
Bảng 2 5 Kịch bản cho use-case xem kết quả đăng ký