Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
605,39 KB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC NĂM 2020 XÂY DỰNG HỆ THỐNG CHẤM BÀI TỰ ĐỘNG HỖ TRỢ GIẢNG DẠY CÁC MƠN HỌC LẬP TRÌNH Người/Nhóm thực hiện: XXXXXXXXXXXX Đà Nẵng, 5/2020 MỤC LỤC Trang DANH MỤC CÁC HÌNH VẼ MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ XXXXXXXXXX 10 1.1 GIỚI THIỆU .10 1.2 HỆ THỐNG PC2 11 1.2.1 Môi trường thực thi SDK 12 1.2.2 Khởi động file chương trình PC2 12 1.3 MỘT SỐ HỆ THỐNG HỖ TRỢ NỘP VÀ CHẤM BÀI TỰ ĐỘNG 21 1.3.1 Hệ thống CMS 21 1.3.2 Hệ thống Codeforce 23 CHƯƠNG 2: CÁC CÔNG NGHỆ HỖ TRỢ XÂY DỰNG HỆ THỐNG 25 2.1 NGÔN NGỮ PHP VÀ CƠ SỞ DỮ LIỆU MYSQL 25 2.1.1 Hệ quản trị sở liệu MYSQL .25 2.1.2 Cài Đặt Xampp 26 2.1.3 Hướng dân tạo database Xampp 30 2.1.4 Ngôn ngữ lập trình PHP 32 2.2 CÔNG CỤ CHẤM BÀI TỰ ĐỘNG THEMIS 32 2.2.1 Cài đặt khởi động Themis .33 2.2.2 Chuẩn bị kỳ thi 34 2.2.3 Nạp danh sách thi 35 2.2.4 Đặt cấu hình thi 35 CHƯƠNG 3: XÂY DỰNG HỆ THỐNG XXXXXXXXXXX 41 3.1 QUY TRÌNH NỘP VÀ CHẤM BÀI TỰ ĐỘNG 41 3.1.1 Viết code 42 3.1.2 Nộp .42 3.1.3 Hệ thống chấm .42 3.2 XÂY DỰNG HỆ THỐNG NỘP VÀ CHẤM BÀI TỰ ĐỘNG 43 3.2.1 Cơ sở vật chất môi trường xây dựng hệ thống 43 3.2.2 Xây dựng website nộp tự động 43 3.2.3 Xây dựng test cho đáp án .44 3.2.4 Tích hợp hệ thống 45 3.3 ĐÁNH GIÁ KẾT QUẢ TRIỂN KHAI 49 KẾT LUẬN 52 TÀI LIỆU THAM KHẢO 53 DANH MỤC CÁC HÌNH VẼ Hình 1.1: Giao diện hệ thống PC2 server 13 Hình 1.2: Cài đặt mật 14 Hình 1.3: Server tạo có tên Site1 15 Hình 1.4: Giao diện pc2 administrator 15 Hình 1.5: Giao diện chức pc2 administrator .16 Hình 1.6: Giao diện tạo user 16 Hình 1.7: Thiết lập cấu hình tốn 17 Hình 2.1: Mơ hình tương tác web PHP với MyQL 26 Hình 2.2: Giới thiệu xampp 27 Hình 2.3: Cài đặt xampp 27 Hình 2.4: Cài đặt xampp 28 Hình 2.5: Cài đặt đường dẫn xampp 28 Hình 2.6: Đang cài đặt xampp 29 Hình 2.7: Kết thúc cài đặt xampp 29 Hình 3.1: Quy trình nộp chấm tự động 41 Hình 3.2: Cơ sở liệu người học 43 Hình 3.3: Trang nộp tự động .44 Hình 3.4: Trang nộp tự động .45 Hình 3.5: Thanh cơng cụ Themis 46 Hình 3.6: Thiết lập đường dẫn chứa thi đáp án 46 Hình 3.7: Chọn thư mục chứa đề thi 47 Hình 3.8: Chọn thư mục chứa làm sinh viên 47 MỞ ĐẦU Tính cấp thiết đề tài Giới thiệu tình hình nước quốc tế vấn đề liên quan đến đề tài Từ nêu lý chọn đề tài Mục tiêu nghiên cứu - Làm đề tài để đạt gì? (Học tập nghiên cứu kiến thức sau: Phân tích thiết kế hệ thống thơng tin, cách xây dựng trang web/ứng dụng…) - Xây dựng sản phẩm trang website/ứng dụng Đối tượng phạm vi nghiên cứu - Đối tượng nghiên cứu: ???? - Phạm vi nghiên cứu: giới hạn phạm vi nào? Hướng tiếp cận phương pháp nghiên cứu 4.1 Cách tiếp cận Từ nhu cầu học lập trình sinh viên, hạn chế phương pháp truyền thống ưu điểm giải pháp tự động để xây dựng hệ thống hỗ trợ chấm nộp tự động 4.2 Phương pháp nghiên cứu Cách để làm đề tài này? Bố cục đề tài Đề tài phân thành ba chương với cấu trúc sau: Chương 1: Tổng quan XXXX Chương giới thiệu tổng quan … Chương 2: Dùng công cụ để viết ứng dụng/web? (MySQL ngơn ngữ PHP, Java, C#, Android/iOS ) Chương 3: Xây dựng hệ thống/ứng dụng XXXX Chức năng, giao diện,… sao? Cuối phần kết luận hướng phát triển CHƯƠNG 1: TỔNG QUAN VỀ XXXXXX 1.1 GIỚI THIỆU Hiện nay, giớ i cũ ng Việt Nam 1.2 HỆ THỐNG TTT Khở i độ ng PC2 server qua file pc2server.bat, ta đượ c mà n hình dướ i đây: Hình 1.1: Giao diện hệ thống PC2 server Mặ c định cho lầ n đầ u tiên cho tên đă ng nhậ p củ a PC2 server “site1”, khơ ng có password Sau đă ng nhậ p, PC2 yêu cầ u cà i đặ t password cho tồ n PC2, ta đượ c mà n hình dướ i đây: Hình 1.2: Cài đặt mật Sau cà i đặ t xong password chủ , mặ c định PC2 tự tạ o server tên site1, ta đượ c mà n hình dướ i (Hình 1.3) Như vậ y ta khở i độ ng xong server cho PC2 1.3 MỘT SỐ HỆ THỐNG HỖ TRỢ XXXXXXXXX Ngồi hệ thống XXX có từ lâu, giới có nhiều hệ thống triển khai hỗ trợ nộp chấm tự động Các hệ thống triển khai hệ điều hành Unix Ubuntu Sau số hệ thống thông dụng nay: 1.3.1 Hệ thống CMS Hệ thống chấm thi CMS (Contest Management System) chuyên sử dụng cho kỳ thi Olympic Tin học quốc tế (IOI): http://cms.readthedocs.org/en/latest/Introduction.html Đăng nhập vào hệ thống CMS Sử dụng trình duyệt (Chrome/Firefox) vào địa chỉ: 192.168.10.102:8888 Sau đăng nhập User Password User SBD bạn, Password BTC cung cấp Nếu không hiển thị ngôn ngữ tiếng Anh bạn lựa chọn ngơn ngữ nút góc bên phải Hình 1.14: Đăng nhập hệ thống CMS Đề cú pháp biện dịch Thí sinh tải đề mục Statement Trong hiển thị cú pháp biên dịch sử dụng để chấm Cụ thể cú pháp sau: CHƯƠNG 2: CÁC CÔNG NGHỆ HỖ TRỢ 2.1 NGÔN NGỮ PHP VÀ CƠ SỞ DỮ LIỆU MYSQL 2.1.1 Hệ quản trị sở liệu MYSQL MySQL hệ quản trị sở liệu tự nguồn mở phổ biến giới nhà phát triển ưa chuộng trình phát triển ứng dụng Vì MySQL sở liệu tốc độ cao, đơn giải, linh hoạt, ổn định dễ sử dụng, có tính khả chuyển, đặc biệt miễn phí tốn phí, hoạt động nhiều hệ điều hành cung cấp hệ thống lớn hàm tiện ích mạnh Với tốc độ tính bảo mật cao, MySQL thích hợp cho ứng dụng có truy cập CSDL internet MySQL miễn phí hồn tồn bạn tải MySQL từ trang chủ Nó có nhiều phiên cho hệ điều hành khác nhau: phiên Win32, Win 64 cho hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS … Hình 2.1: Mơ hình tương tác web PHP với MyQL 2.1.2 Cài Đặt Xampp Xampp chương trình máy chủ ảo Web tích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server công cụ phpmyadmin Không Appserv, Xampp có chương trình quản lý tiện lợi, cho phép tự động bật tắt khởi động lại dịch vụ máy chủ bất ký lúc Hình 2.2: Giới thiệu xampp … 10 CHƯƠNG 3: XÂY DỰNG HỆ THỐNG KKKKK Chương tiếp tục vận dụng công nghệ công cụ chấm tự động để đề xuất giải pháp xây dựng hệ thống nộp chấm tự động hỗ trợ dạy học lập trình Các phần Chương tập trung nghiên đề xuất quy trình nộp chấm tự động, công đoạn xây dựng hệ thống đánh giá kết triển khai 3.1 QUY TRÌNH XXXX Sau đâ y sơ đồ triển khai quy trình nộ p chấ m bà i tự độ ng (Hình 1): Hình 3.1: Quy trình nộp chấm tự động 3.1.1 Viết code 11 Sau đượ c trang bị cá c kiến thứ c cầ n thiết, vớ i mỗ i đề bà i cho, sinh viên thự c bướ c sau: Bước 1: Đọ c để hiểu đề toá n Bước 2: Xá c định đầ u o đầ u củ a bà i toá n Bước 3: Phát thảo mơ hình để giải tốn Bước 4: Phân tích chi tiết cụ thể toán Bước 5: Chọn củng cố mơ hình tối ưu để giải toán Bước 6: Phân rã giải pháp chọn thành modul nhỏ để lập trình Bước 7: Viết mã lệnh Bước 8: Chạy thử nghiệm Bước 9: Kiểm tra tính đắn, tính phổ qt tính hiệu chương trình 3.1.2 Nộp Sau kiểm tra, hoà n thiện bà i m củ a mình, sinh viên nộ p bà i m củ a lên hệ thố ng chấ m bà i thô ng qua mộ t trang website ng tô i tạ o để hỗ trợ việc nộ p bà i đượ c thuậ n tiện 3.1.3 Hệ thống chấm Hệ thố ng sau nhậ n bà i củ a sinh viên tự độ ng biên dịch, chạ y chương trình chấ m kết theo đú ng cá c test đá p n mà ng tô i xây dự ng Sau chấ m xong, hệ thố ng tự độ ng thô ng bá o kết cho ngườ i họ c kết bà i m củ a mình: đú ng nhiệm vụ hồ n nh, ngượ c lạ i ngườ i họ c phả i quay lạ i để kiểm tra sai só t đâ u, cậ p nhậ t viết code gở i lạ i cho hệ thố ng chấ m Trong giai đoạ n nà y, giá o viên cũ ng tham gia hỗ trợ , tư vấ n cho sinh viên nhữ ng điểm sai, thiếu só t củ a ngườ i họ c để họ hoà n thiện kỹ nă ng thự c hà nh củ a 12 3.2 XÂY DỰNG HỆ THỐNG XXXXXXXXXXX Để triển khai xây dự ng hệ thố ng, ng tơ i thự c theo trình tự sau: 3.2.1 Cơ sở vật chất môi trường xây dựng hệ thống Má y chấ m: dù ng má y sever hoặ c laptop Hệ thố ng má y tính cá nhâ n để m bà i Hệ thố ng mạ ng cụ c hoặ c mạ ng internet: kết nố i cá c má y m bà i vớ i má y chấ m Phầ n mềm chấ m bà i tự độ ng: Themis 3.2.2 Xây dựng website Chú ng tô i sử dụ ng ngô n ngữ PHP sở liệu MySQL để xâ y dự ng website nộ p bà i tự độ ng Cá c bướ c tiến hà nh xây dự ng website nộ p bà i đượ c thự c sau: Bước 1: Xây dự ng sở liệu ngườ i họ c, mỗ i sinh viên có mộ t tà i khoả n (user) mậ t khẩ u (password) (Hình 3.2) Hình 3.2: Cơ sở liệu người học Bước 2: Thiết kế trang nộ p tự độ ng 13 Ngoà i user password, trang web cị n có thêm cá c thơ ng tin: Tên bà i tố n (Problem ID), chọ n ngơ n ngữ lậ p trình (Programming Language) vù ng Source code (chứ a nộ i dung đoạ n code củ a chương trình sau hoà n thiện) … 14 KẾT LUẬN Các kết đạt Đã làm gì??? Hạn chế đề tài Cái chưa làm được? Hướng phát triển Hướ ng phá t triển tương lai gì? Cả i tiến, bổ sung? 15 TÀI LIỆU THAM KHẢO [1] Phuong A PHAM, Man D NGUYEN, Long Q NGUYEN, Bao N LE (2014), “Learning Computer Programming in CDIO’S Team Settings”, Proceedings of the 10th Annual International CDIO Conference, Universitat Politècnica de Catalunya, Barcelona, Spain [2] Phạm Anh Phương, Trần Văn Hưng (2015), “Huấn luyện lập trình nhóm theo tiếp cận CDIO”, Kỷ yếu Hội thảo khoa học toàn quốc: Bồi dưỡng lực cho giảng viên trường Sư phạm, NXB Thông tin Truyền thông, 2015, trang 895-903 [3] http://www.ecs.csus.edu/pc2/ [4] http://codeforces.com/ [5] http://vnoi.info/ [6] http://laptrinh.ntu.edu.vn/ 16 ... … 10 CHƯƠNG 3: XÂY DỰNG HỆ THỐNG KKKKK Chương tiếp tục vận dụng công nghệ công cụ chấm tự động để đề xuất giải pháp xây dựng hệ thống nộp chấm tự động hỗ trợ dạy học lập trình Các phần Chương... động file chương trình PC2 12 1.3 MỘT SỐ HỆ THỐNG HỖ TRỢ NỘP VÀ CHẤM BÀI TỰ ĐỘNG 21 1.3.1 Hệ thống CMS 21 1.3.2 Hệ thống Codeforce 23 CHƯƠNG 2: CÁC CÔNG NGHỆ HỖ TRỢ XÂY... cứu 4.1 Cách tiếp cận Từ nhu cầu học lập trình sinh viên, hạn chế phương pháp truyền thống ưu điểm giải pháp tự động để xây dựng hệ thống hỗ trợ chấm nộp tự động 4.2 Phương pháp nghiên cứu Cách