Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 53 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
53
Dung lượng
1,06 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG BỘ MÔN CÔNG NGHỆ THÔNG TIN LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC Đề tài Ứng dụng xếp thời khóa biểu cho giảng viên giảng dạy Khoa Phát Triển Nông Thôn Sinh viên thực Cán hướng dẫn Họ tên: Nguyễn Trung Kiên MSSV: B1412464 Khoá: K40 Cần Thơ, 05/2019 ThS Nguyễn Tí Hon BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG BỘ MÔN CÔNG NGHỆ THÔNG TIN LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC Đề tài Ứng dụng xếp thời khóa biểu cho giảng viên giảng dạy Khoa Phát Triển Nông Thôn Sinh viên thực Họ tên: Nguyễn Trung Kiên MSSV: B1412464 Khoá: K40 Cán hướng dẫn ThS Nguyễn Tí Hon Cán phản biện ThS Nguyễn Ngọc Mỹ ThS Sử Kim Anh Luận văn bảo vệ tại: Hội đồng chấm luận văn tốt nghiệp Bộ Công Nghệ Thông Tin, Khoa CNTT & TT, Trường Đại học Cần Thơ vào ngày 20 tháng 05 năm 2019 Mã số đề tài: Có thể tìm hiểu luận văn tại: -Trung tâm Học liệu, Trường Đại học Cần Thơ Website: http://www.lrc.ctu.edu.vn/ Cần Thơ, 05/2019 LỜI CẢM ƠN Đầu tiên, em xin trân trọng cảm ơn Bộ môn Công Nghệ Thông Tin, Khoa Công Nghệ Thông Tin Truyền Thông trường Đại học Cần Thơ tạo điều kiện tốt để em hồn thành tốt đề tài Dưới phân công hướng dẫn ThS Nguyễn Tí Hon em thực đề tài “Ứng dụng xếp lịch thời khóa biểu cho giảng viên giảng dạy Khoa Phát Triển Nông Thôn” Để đề tài hồn thành cách thuận lợi tốt đẹp nhất, em xin chân thành cảm ơn thầy Nguyễn Tí Hon với lịng biết ơn sâu sắc tận tình dẫn định hướng tạo điều kiện tốt cho em em đồng hành trình thực đề tài luận văn Em xin bày tỏ lịng biết ơn tất thầy giảng dạy truyền đạt kiến thức quý báu cho em suốt thời gian em học tập trường, nên tảng quý giá để em thực tốt luận văn Bên cạnh đó, em xin gửi lời cảm ơn đến người thân gia đình, bạn bè giúp đỡ, động viên em suốt trình thực luận văn Trong trình thực luận văn, em tích luỹ thêm nhiều kiến thức điều vô quý báu cho thân em, song song em kết hợp với tảng có sẳn để cố gắng thực đề tài cách hoàn chỉnh hạn chế kiến thức kinh nghiệm lập trình nên thiếu sót khơng thể tránh khỏi Em mong nhận góp ý q Thầy, Cơ bạn để đề tài hoàn chỉnh hơn, đồng thời tạo tiền đề tốt cho nghiên cứu sau Cuối lời em xin gửi lời chúc quý Thầy Cô dồi sức khoẻ, hạnh phúc đạt nhiều thành công công tác sống Xin chân thành cảm ơn! Cần Thơ, ngày 20 tháng 05 năm 2019 Sinh viên thực Nguyễn Trung Kiên i MỤC LỤC LỜI CẢM ƠN i MỤC LỤC ii DANH MỤC HÌNH ẢNH iv DANH MỤC BIỂU BẢNG v DANH MỤC KÝ HIỆU, CHỮ VIẾT TẮT .vi TÓM TẮT vii ABSTRACT .viii CHƯƠNG 1: TỔNG QUAN .1 1.1 ĐẶT VẤN ĐỀ .1 1.1.1 Hiện trạng .1 1.1.2 Mục tiêu 1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ 1.3 PHẠM VI CỦA ĐỀ TÀI .3 1.3.1 Về sở lý thuyết 1.3.2 Về chức 1.3.3 Về kỹ thuật 1.4 PHƯƠNG PHÁP NGHIÊN CỨU .5 1.4.1 Thu thập liệu 1.4.2 Phân tích hệ thống 1.4.3 Cơng cụ ngơn ngữ lập trình .6 1.5 Bố cục luận văn ii CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 PHÂN TÍCH THIẾT KẾ HỆ THỐNG THƠNG TIN 2.2 Lập trình hướng đối tượng 2.2.1 Khái niệm 2.2.2 Các đặc trưng lập trình hướng đối tượng .9 2.2.3 Các khái niệm khác lập trình hướng đối tượng 2.2.4 Các tính chất Lập trình hướng đối tượng .10 2.3 NODEJS .12 2.4 Mơ hình MVC 13 2.5 Mongo DB 16 CHƯƠNG 3: NỘI DUNG NGHIÊN CỨU .17 3.1 MƠ TẢ BÀI TỐN 17 3.1.1 Mô tả quy trình tốn .18 3.1.2 Sơ đồ use case .19 3.2 CÀI ĐẶT HỆ THỐNG 20 3.2.1 Lưu đồ giải thuật đăng nhập .20 3.2.2 Lưu đồ giải thuật xử lý xếp thời khóa biểu 21 3.2.3 Lưu đồ giải thuật xuất file thời khóa biểu xếp .23 3.3 THIẾT KẾ HỆ THỐNG 24 3.3.1 Các mơ hình thiết kế 24 3.3.2 CƠ SỞ DỮ LIỆU .26 3.3.3 MÔ TẢ CÁC THỰC THỂ 27 3.4 KIỂM THỬ 29 iii CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM 30 4.1 Biểu mẫu thu thập tiết dạy 30 4.2 WebSite 31 4.2.1 Giao diện đăng nhập 31 4.2.2 Giao Diện Chính .31 4.2.3 Giao Diện Kết 32 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 33 KẾT QUẢ ĐẠT ĐƯỢC 33 KẾT QUẢ ĐẠT ĐƯỢC 33 HƯỚNG PHÁT TRIỂN .34 PHỤ LỤC 35 TÀI LIỆU THAM KHẢO 36 iv DANH MỤC HÌNH ẢNH HÌNH 2.2 MƠ HÌNH MVC .14 HÌNH 3.1 QUY TRÌNH TỔNG QUÁT CỦA HỆ THỐNG 18 HÌNH 3.2 SƠ ĐỒ USE CASE CÁC CHỨC NĂNG CỦA WEBSITE 19 HÌNH 3.3 LƯU ĐỒ GIẢI THUẬT ĐĂNG NHẬP 20 HÌNH 3.4 LƯU ĐỒ XỬ LÝ VÀ SẮP XẾP DỮ LIỆU 21 HÌNH 3.5 LƯU ĐỒ GIẢI THUẬT XUẤT FILE THỜI KHĨA BIỂU .23 HÌNH 3.6 MƠ HÌNH CDM CỦA HỆ THỐNG 24 HÌNH 3.7 MƠ HÌNH LDM CỦA HỆ THỐNG 24 HÌNH 3.8 MƠ HÌNH PDM CỦA HỆ THỐNG 25 HÌNH 3.9 MƠ HÌNH CƠ SỞ DỮ LIỆU QUAN HỆ 26 HÌNH 4.1 BIỄU MẪU THU THẬP GIỜ RẢNH CHO GIẢNG VIÊN ĐĂNG KÝ 30 HÌNH 4.2 GIAO DIỆN ĐĂNG NHẬP .31 HÌNH 4.3 GIAO DIỆN CHÍNH 31 HÌNH 4.4 GIAO DIỆN KẾT QUẢ 32 HÌNH 4.5 GIAO DIỆN LỌC DỮ LIỆU KẾT QUẢ THEO MÃ CÁN BỘ 32 v DANH MỤC BIỂU BẢNG Bảng 1.1 Các công cụ công nghệ sử dụng Bảng 3.1 Lớp Học Phần .27 Bảng 3.2 Cán giảng viên .27 Bảng 3.3 Danh Sách Học Phần 27 Bảng 3.4 Nhóm học 28 Bảng 3.5 Phòng học 28 Bảng 3.7 User 28 Bảng 3.8 Kiểm thử chức Website 29 vi DANH MỤC KÝ HIỆU, CHỮ VIẾT TẮT Ký hiệu/ chữ viết tắt Diễn giải AJAX Asynchronous JavaScript and XML CSDL Cơ sở liệu CSS Cascading Style Sheets HTML5 HyperText Markup Language version JSON JavaScript Object Notation MVC Model - View - Controller NoSQL No Structured Query Language vii TÓM TẮT Khoa Phát Triển Nông Thôn ngày phát triển mở rộng ngành học nên số lượng sinh viên số lượng tiết học ngày tăng, trở thành khó khăn việc xếp thời khóa biểu cho lớp học phần Ở đầu học kỳ, cán phụ trách phải vất vả thời gian công sức để xếp thời khóa biểu hồn chỉnh Việc xây dựng hệ thống hỗ trợ việc lịch cần thiết để tạo nên tiện lợi, nhanh chóng giảm tải phần công việc cho cán phụ trách mảng công việc Đề tài “Ứng dụng xếp lịch thời khóa biểu cho giảng viên giảng dạy Khoa Phát Triển Nông Thôn” nhằm tạo hệ thống để phục vụ cho cán phụ trách lẫn giảng viên Hệ thống giải vấn đề khó khăn như: cho giảng viên đăng ký trước rảnh mình, hệ thống tự động lấy lớp học phần để xếp vào tiết mà giảng viên đăng ký, tận dụng thời gian tất phòng học, xuất file xls thời khóa biểu hồn chỉnh Nhằm nâng cao tính tiện lợi nhanh chóng nên hệ thống xây dựng dạng tảng mơ hình MVC ứng dụng web viết HTML, Javascript sử dụng kèm theo thư viện framework bật nay, với hệ thống thu thập biểu mẫu Google sử dụng Microsoft® Office Excel cho việc lưu trữ thông tin trước sau thu thập Về Website viết NodeJS để đảm bảo tính mạnh mẽ, nhanh chóng, ổn định, bên cạnh cịn kết hợp với sở liệu MongoDB để việc lưu trữ xử lý liệu tốt Đây đơi tương thích với cho hệ thống lớn Hệ thống đảm bảo chức xử lý nhập xuất liệu từ file Excel Bên cạnh đó, sử dụng biểu mẫu Google để thu thập lưu trữ tiết dạy mà giảng viên đăng ký học kỳ tới Từ khoá: Hệ thống, xếp thời khóa biểu, ứng dụng web, Excel, Biễu mẫu Google viii Mơ hình mức luận lý (PDM) Hình 3.8 Mơ hình PDM hệ thống [SVTH]: Nguyễn Trung Kiên 28 3.3.2 CƠ SỞ DỮ LIỆU Hình 3.9 Mơ hình sở liệu quan hệ Hệ thống xây dựng theo mơ hình sở liệu quan hệ Trong thấy: Ds_hocphan (1-n) Lop_hp: thông tin Ds_hocphan mở nhiều Lop_hp khác Lop_hp (1-1) Ds_hocphan: Lop_hp dạy học phần Ds_hocphan giảng dạy Nhom_hp (1-n) Lop_hp: thông tin Nhom_hp nằm nhiều Lop_hp khác Lop_hp (1-1) Nhom_hp: Lop_hp Nhom_hp Ds_canbo (1-n) Lop_hp: thơng tin Ds_canbo giảng viên dạy nhiều Lop_hp khác Ds_phong: Phòng học xếp dựa sỉ số sinh viên có lớp học phần [SVTH]: Nguyễn Trung Kiên 29 3.3.3 MÔ TẢ CÁC THỰC THỂ Bảng 3.1 Lớp Học Phần STT Tên thuộc tính Kiểu liệu MA_HP MA_NH MA_CB String String String TIET_BUOI String SI_SO String Số dươn g Độ dài tối đa Khóa Diễn giải x x x x Mã học phần Mã nhóm học Mã cán giảng dạy Số tiết dạy buổi Sỉ số sinh viên Mô tả: Thể thông tin lớp học phần Bảng 3.2 Cán giảng viên ST T Tên thuộc tính MA_CB TEN_CB EMAIL SDT_CB Kiểu liệu String String String String Số dương Khóa Độ dài chín Diễn giải tối đa h Mã cán x Họ tên cán Email cán x 10 Số điện thoại cán Mô tả: Thể thông tin cán giảng viên Bảng 3.3 Danh Sách Học Phần ST T Tên thuộc tính MA_HP [SVTH]: Nguyễn Trung Kiên Độ dà Kiểu Số Khóa i Diễn giải liệu dương tối đa Mã học phần String x 30 TEN_HP TINCHI SO_TIET String Int Int x x Tên học phần Số tín Số tiết học Mô tả: Thể thông tin học phần [SVTH]: Nguyễn Trung Kiên 31 Bảng 3.4 Nhóm học ST T Tên thuộc tính MA_NH TEN_NH Kiểu liệu String String Độ Số Khóa dài tối Diễn giải dương đa Mã nhóm nhọc x Ký hiệu Mơ tả: Thể thơng tin nhóm học Bảng 3.5 Phịng học STT Tên thuộc tính MA_PHONG TEN_PHONG TRANGTHAI LOAI_PHONG Độ dà Kiểu Số Khóa i Diễn giải liệu dương tối đa Int x x Mã phòng học String Tên phòng học String Trạng thái phòng String Loại phòng, sức chứa Mơ tả: Thể thơng tin phịng học ID Bảng 3.6 Lịch Đã Xếp Độ Số Kiểu dài dươn liệu tối g đa String LICHDAXEP String STT Tên thuộc tính Khóa Diễn giải x Mã lịch xếp Mảng chứa phần tử lịch xếp Mơ tả: Thơng tin thời khóa biểu xếp hoàn chỉnh Bảng 3.7 User STT Tên thuộc tính Kiểu liệu ID_CB String Password String Quyen String Số dươn g Độ dài tối đa Khóa Diễn giải x Mã đăng nhập Mật x Quyền truy cập Mô tả: Thông tin người dùng hệ thống [SVTH]: Nguyễn Trung Kiên 32 [SVTH]: Nguyễn Trung Kiên 33 3.4 KIỂM THỬ Với thiết kế cài đặt hệ thống vậy, hi vọng hệ thống đem lại thoải mái, tiện dụng, an toàn, tin cậy cho người dùng Nhưng trước đến tay người dùng thật có vài kịch để kiểm thử xem hệ thống có ưu điểm khuyết điểm để cải thiện phát triển tương lai Dưới số kịch kiểm thử Đối với Website cho người dùng Kiểm thử chức Bảng 3.8 Kiểm thử chức Website Kịch Bản Kiểm Thử Đăng nhập với tên đăng nhập mật Đăng nhập với tên đăng nhập mật sai Nhập file Excel định dạng cho phép Không nhập file nhập file sai định dạng Giảng viên đăng ký đủ tiết dạy với lớp học phần có tên giảng dạy Mong Muốn Kết Quả Vào sử dụng Website Thành công Yêu cầu nhập lại, không cho Thành công phép truy cập Website Chạy hệ thống, xếp lịch Thành công thành công Báo lỗi sai file yêu cầu Thành công Xếp lịch thành công Thành công Không xếp lịch cho Giảng viên đăng ký khơng đủ tiết giảng viên trả kết Thành cơng dạy so với học phần có tên giảng dạy “x” Trả kểt “Giảng viên Giảng viên không đăng ký tiết dạy Thành công chưa đăng ký tiết dạy” Đủ phòng học xếp lớp học phần Xếp lịch thành cơng Thành cơng Khơng đủ phịng so với lớp học Trả kết “không cịn Thành cơng phần phịng học trống” Xuất lile Excel lịch xếp [SVTH]: Nguyễn Trung Kiên Xuất file thành công, tự động Thành công tải file Excel kết 34 CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM 4.1 BIỂU MẪU THU THẬP TIẾT DẠY Hình 4.1 Biễu mẫu thu thập rảnh cho giảng viên đăng ký [SVTH]: Nguyễn Trung Kiên 35 4.2 WEBSITE 4.2.1 Giao diện đăng nhập Hình 4.2 Giao diện đăng nhập 4.2.2 GIAO DIỆN CHÍNH Hình 4.3 Giao diện [SVTH]: Nguyễn Trung Kiên 36 4.2.3 Giao Diện Kết Hình 4.4 Giao diện kết 4.2.4 Giao diện lọc liệu theo mã cán Hình 4.5 Giao diện lọc liệu kết theo mã cán [SVTH]: Nguyễn Trung Kiên 37 [SVTH]: Nguyễn Trung Kiên 38 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN KẾT QUẢ ĐẠT ĐƯỢC Sau kết đạt sau q trình hồn thành đề này: Thiết kế xây dựng ứng dụng xếp lịch thời khóa biểu cho giảng viên giảng dạy khoa Phát Triển Nông Thôn Sử dụng sở MongoDB để lưu trữ xử lý thông tin Đây sở liệu NoSQL, có tính linh hoạt cao, truy vấn nhanh Cho dù hệ thống xây dựng theo mơ hình sở liệu quan hệ việc ràng buộc liệu NoSQL thực qua q trình lập trình Nghiên cứu công nghệ NodeJs khái niệm mô hình MVC Nâng cao khả phân tích thiết kế hệ thống, thiết kế sở liệu, thiết kế mơ hình chức năng, giải thuật,… Nâng cao khả lập trình Web với Javascript sử dụng kỹ thuật AJAX, JQuery,… Tìm hiểu cải thiện khả lập trình NodeJS, tìm hiểu cách thức xây dựng website với NodeJS Bằng cách sử dụng tốt front-end Framework Bootstrap học cách thiết kế website chuẩn responsive tương thích nhiều hình có kích thước khác Biết cách thức import/export xử lý file Excel [SVTH]: Nguyễn Trung Kiên 39 ƯU ĐIỂM Về Website yêu cầu đáp ứng cho việc quản lý xếp, với khả import/export file liệu nhanh chóng Giao diện Website thiết kế xây dựng đơn giản Front-end Framework Bootstrap nên tiện dụng, dễ thao tác, trực quan Tốc độ xử lý nhanh xác Tốc độ truy xuất Web ổn định, đảm bảo tính xác nhờ sử dụng kỹ thuật AJAX JQuery Website viết NodeJS kết hợp với việc sử dụng sở liệu MongoDB khiến cho việc xử lý liệu tương đối dễ dàng, nhanh chóng HƯỚNG PHÁT TRIỂN Nhằm khắc phục khuyết điểm trên, nên số hướng phát triển hi vọng khiến cho hệ thống ngày mạnh mẽ hơn: Cho giảng viên đăng ký tiết dạy website Phân quyền với nhiều người dùng Thêm nhiều chức để giúp cho cán thuận tiện việc quản lý lịch giảng dạy [SVTH]: Nguyễn Trung Kiên 40 PHỤ LỤC [SVTH]: Nguyễn Trung Kiên 41 TÀI LIỆU THAM KHẢO Tài liệu: [1] Trường Đại học Cần Thơ Giáo trình Phân tích thiết kế hệ thống thơng tin [2] CT176 – LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Slide giảng Lập Trình Hướng Đối Tượng [3] Bộ mơn Mạng Máy Tính Truyền Thông – Khoa Công Nghệ Thông Tin Truyền Thơng Slide giảng An Tồn Hệ Tống [4] GoalKicker.com MongoDB® Notes for Professionals [5] GoalKicker.com JavaScript™ Notes for Professionals [6] GoalKicker.com Node.js Notes for Professionals Trang web: [7] [8] NodeJS Tutorial, https://www.tutorialspoint.com/nodejs/,2018 MongoDB Tutorial, https://docs.mongodb.com/manual/tutorial/getting-started/, 2018 [9] BootStrap Tutorial, https://getbootstrap.com/docs/3.3/getting-started/, 2018 [10] JQuery:The Write Less,Do More, JavaScript Library, https://jquery.com/ , 2018 [11] Stackoverflow Forum, http://stackoverflow.com/,2018 [12] w3shool.com, http://www.w3schools.com/,2018 [13] Các khố học lập trình NodeJS, MongoDB , https://khoapham.vn/, 2018 [14] Các học NodeJS, MongoDB https://o7planning.org/, https://duythanhcse.wordpress.com/ , 2018 [15] Diễn đàn Viblo https://viblo.asia/, 2018 [SVTH]: Nguyễn Trung Kiên 42