Khóa luận xây dựng hệ thống hỗ trợ chấm điểm lập trình tự động

Khóa luận trình bày hệ thống hỗ trợ chấm điểm lập trình tự động, nâng cao hiệu quả đánh giá và cải thiện kỹ năng lập trình cho sinh viên.

Chuyên ngành

Kỹ thuật phần mềm

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2023

157
12
0

Phí lưu trữ

45 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. TÓM TẮT KHÓA LUẬN

2. XÂY DỰNG HỆ THỐNG

2.1. Phân tích yêu cầu

2.2. Thiết kế hệ thống

2.3. Triển khai hệ thống

3. THỬ NGHIỆM HỆ THỐNG

3.1. Kiểm thử hệ thống

3.2. THỬ NGHIỆM THỰC TẾ

TÀI LIỆU THAM KHẢO

DANH MỤC HÌNH

DANH MỤC BẢNG

DANH MỤC TỪ VIẾT TẮT

Tóm tắt

I. Tổng quan về hệ thống chấm điểm lập trình tự động cho sinh viên

Hệ thống chấm điểm lập trình tự động đang trở thành một công cụ quan trọng trong giáo dục công nghệ thông tin. Với sự phát triển nhanh chóng của công nghệ, việc áp dụng các giải pháp tự động hóa trong việc đánh giá kỹ năng lập trình của sinh viên là cần thiết. Hệ thống này không chỉ giúp tiết kiệm thời gian cho giảng viên mà còn cung cấp phản hồi nhanh chóng và chính xác cho sinh viên.

1.1. Hệ thống chấm điểm tự động là gì

Hệ thống chấm điểm tự động là phần mềm cho phép tự động đánh giá và chấm điểm các bài tập lập trình dựa trên các tiêu chí đã được định nghĩa trước. Hệ thống này sử dụng các test case để kiểm tra tính đúng đắn của mã nguồn.

1.2. Lợi ích của hệ thống chấm điểm tự động

Hệ thống này mang lại nhiều lợi ích như giảm thiểu thời gian chấm điểm, tăng tính khách quan trong đánh giá và cung cấp phản hồi tức thì cho sinh viên. Điều này giúp sinh viên cải thiện kỹ năng lập trình nhanh chóng.

II. Vấn đề và thách thức trong việc chấm điểm lập trình

Mặc dù hệ thống chấm điểm lập trình tự động mang lại nhiều lợi ích, nhưng vẫn tồn tại một số thách thức. Việc thiết kế các test case phù hợp và đảm bảo tính chính xác của hệ thống là rất quan trọng. Ngoài ra, việc sinh viên gian lận trong quá trình nộp bài cũng là một vấn đề cần được giải quyết.

2.1. Thiết kế test case hiệu quả

Thiết kế test case là một trong những yếu tố quan trọng nhất trong hệ thống chấm điểm tự động. Test case cần phải bao quát được tất cả các tình huống có thể xảy ra trong mã nguồn để đảm bảo tính chính xác trong việc đánh giá.

2.2. Ngăn chặn gian lận trong chấm điểm

Gian lận trong việc nộp bài là một thách thức lớn. Cần có các biện pháp như kiểm tra mã nguồn và sử dụng các công cụ phát hiện đạo văn để đảm bảo tính trung thực trong quá trình đánh giá.

III. Phương pháp xây dựng hệ thống chấm điểm lập trình tự động

Để xây dựng một hệ thống chấm điểm lập trình tự động hiệu quả, cần phải áp dụng các công nghệ hiện đại và quy trình phát triển phần mềm hợp lý. Việc sử dụng các ngôn ngữ lập trình phổ biến và công nghệ đám mây sẽ giúp hệ thống hoạt động mượt mà và dễ dàng mở rộng.

3.1. Công nghệ sử dụng trong hệ thống

Hệ thống chấm điểm tự động có thể được xây dựng bằng các công nghệ như NodeJS cho backend và React cho frontend. Việc sử dụng Docker để triển khai ứng dụng cũng giúp tăng tính linh hoạt và khả năng mở rộng.

3.2. Quy trình phát triển phần mềm

Quy trình phát triển phần mềm cần được thực hiện theo các bước rõ ràng, từ việc phân tích yêu cầu, thiết kế hệ thống, đến triển khai và kiểm thử. Điều này đảm bảo rằng hệ thống hoạt động hiệu quả và đáp ứng được nhu cầu của người dùng.

IV. Ứng dụng thực tiễn của hệ thống chấm điểm lập trình tự động

Hệ thống chấm điểm lập trình tự động đã được áp dụng trong nhiều trường đại học và trung tâm đào tạo. Kết quả cho thấy sinh viên có thể cải thiện kỹ năng lập trình nhanh chóng nhờ vào việc nhận phản hồi kịp thời từ hệ thống.

4.1. Kết quả nghiên cứu từ các trường đại học

Nhiều nghiên cứu đã chỉ ra rằng việc sử dụng hệ thống chấm điểm tự động giúp sinh viên nâng cao điểm số và cải thiện kỹ năng lập trình. Các trường đại học đã ghi nhận sự tiến bộ rõ rệt trong kết quả học tập của sinh viên.

4.2. Phản hồi từ sinh viên

Sinh viên đã có những phản hồi tích cực về hệ thống chấm điểm tự động. Họ cảm thấy hài lòng với việc nhận được phản hồi nhanh chóng và chính xác, giúp họ điều chỉnh và cải thiện mã nguồn của mình.

V. Kết luận và tương lai của hệ thống chấm điểm lập trình tự động

Hệ thống chấm điểm lập trình tự động đang ngày càng trở nên phổ biến và cần thiết trong giáo dục công nghệ thông tin. Tương lai của hệ thống này hứa hẹn sẽ có nhiều cải tiến và ứng dụng mới, giúp nâng cao chất lượng đào tạo.

5.1. Xu hướng phát triển trong tương lai

Trong tương lai, hệ thống chấm điểm lập trình tự động sẽ tiếp tục được cải tiến với việc áp dụng trí tuệ nhân tạo và học máy. Điều này sẽ giúp hệ thống trở nên thông minh hơn và có khả năng đánh giá chính xác hơn.

5.2. Tác động đến giáo dục công nghệ thông tin

Hệ thống chấm điểm tự động không chỉ giúp sinh viên cải thiện kỹ năng lập trình mà còn tạo ra một môi trường học tập tích cực hơn. Điều này sẽ góp phần nâng cao chất lượng nguồn nhân lực trong lĩnh vực công nghệ thông tin.

15/07/2025
Khóa luận xây dựng hệ thống hỗ trợ chấm điểm lập trình tự động

Trích đoạn nội dung tài liệu

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM PHÙNG THANH TÚ NGUYỄN HOÀNG THÁI DƯƠNG KHÓA LUẬN TỐT NGHIỆP XÂY DỰNG HỆ THỐNG HỖ TRỢ CHẤM ĐIỂM LẬP TRÌNH TỰ ĐỘNG BUILDING AN AUTOMATIC CODE SCORING SYSTEM KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM TP. HỒ CHÍ MINH, 2023 ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM PHÙNG THANH TÚ NGUYỄN HOÀNG THÁI DƯƠNG KHÓA LUẬN TỐT NGHIỆP XÂY DỰNG HỆ THỐNG HỖ TRỢ CHẤM ĐIỂM LẬP TRÌNH TỰ ĐỘNG BUILDING AN AUTOMATIC CODE SCORING SYSTEM KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM TP.

HỒ CHÍ MINH, 2023 THÔNG TIN HỘI ĐỒNG CHẤM KHÓA LUẬN TỐT NGHIỆP Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số …………………… ngày …………………. của Hiệu trưởng Trường Đại học Công nghệ Thông tin. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc CÔNG NGHỆ THÔNG TIN TP. NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ HƯỚNG DẪN) Tên khóa luận: XÂY DỰNG HỆ THỐNG HỖ TRỢ CHẤM ĐIỂM LẬP TRÌNH TỰ ĐỘNG Nhóm SV thực hiện: Cán bộ hướng dẫn/phản biện: Phùng Thanh Tú 19522455 ThS.

Thái Thụy Hàn Uyển Nguyễn Hoàng Thái Dương 19521409 Đánh giá Khóa luận 1. Về cuốn báo cáo: Số trang: Số chương: Số bảng số liệu: Số hình vẽ: Số tài liệu tham khảo: Sản phẩm: Một số nhận xét về hình thức cuốn báo cáo: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… 2. Về nội dung nghiên cứu: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… 3. Về chương trình ứng dụng: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… 4.

Về thái độ làm việc của sinh viên: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… Đánh giá chung: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… Điểm từng sinh viên: Phùng Thanh Tú:………./10 Nguyễn Hoàng Thái Dương:………./10 Người nhận xét (Ký tên và ghi rõ họ tên) ĐHQG TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc CÔNG NGHỆ THÔNG TIN TP. NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ PHẢN BIỆN) Tên khóa luận: XÂY DỰNG HỆ THỐNG HỖ TRỢ CHẤM ĐIỂM LẬP TRÌNH TỰ ĐỘNG Nhóm SV thực hiện: Cán bộ hướng dẫn/phản biện: Phùng Thanh Tú 19522455 ThS. Thái Thụy Hàn Uyển Nguyễn Hoàng Thái Dương 19521409 Đánh giá Khóa luận 5.

Về cuốn báo cáo: Số trang: Số chương: Số bảng số liệu: Số hình vẽ: Số tài liệu tham khảo: Sản phẩm: Một số nhận xét về hình thức cuốn báo cáo: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… 6. Về nội dung nghiên cứu: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… 7. Về chương trình ứng dụng: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… 8. Về thái độ làm việc của sinh viên: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… Đánh giá chung: …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… Điểm từng sinh viên: Phùng Thanh Tú:………./10 Nguyễn Hoàng Thái Dương:………./10 Người nhận xét (Ký tên và ghi rõ họ tên) LỜI CẢM ƠN Trong vòng 4 năm đại học vừa qua, chúng em xin chân thành cảm ơn các quý Thầy Cô, đặc biệt là quý Thầy Cô khoa Công nghệ phần mềm, đã tận tình giảng dạy và giúp đỡ chúng em, tạo điều kiện cho chúng em học tập và nghiên cứu, đồng thời cung cấp những kiến thức nền tảng trọng yếu cho chúng em để chúng em có thể xây dựng và hoàn thành luận văn cũng như áp dụng những kiến thức quý báu đó trong quá trình phát triển sự nghiệp sau này.

Chúng em xin chân thành cảm ơn quý thầy cô của trường Đại học Công nghệ thông tin, đặc biệt là cô Thái Thụy Hàn Uyển đã tận tình đóng góp những ý kiến, đồng thời tạo điều kiện và môi trường cho chúng em thử nghiệm khóa luận trong thực tế, qua đó hỗ trợ để chúng em có thể tìm ra những thiếu sót, cũng như cải thiện và hoàn thành khóa luận một cách tốt nhất. Bên cạnh đó, nhóm xin chân thành cảm ơn các bạn lớp Hướng đối tượng IT002.N25 đã dùng thử ứng dụng, tạo điều kiện cho nhóm thử nghiệm khóa luận trong thực tế, cũng như đóng góp những phản hồi giúp nhóm cải thiện khóa luận cũng như khắc phục những thiếu sót mà nhóm sẽ không phát hiện được nếu không thử nghiệm thực tế. Trong suốt quá trình tìm hiểu và thực hiện khóa luận, do đề tài sử dụng cả những công nghệ mới phức tạp và những công nghệ khá cũ, thời gian và khả năng có giới hạn nên nhóm vẫn còn nhiều thiếu sót. Do đó, chúng em rất mong nhận được sự thông cảm và những ý kiến đóng góp chân thành từ phía quý thầy cô và các bạn.

Một lần nữa, nhóm nghiên cứu xin chân thành cảm ơn quý thầy cô và các bạn. Thành phố Hồ Chí Minh, tháng 07 năm 2023 Phùng Thanh Tú Nguyễn Hoàng Thái Dương ĐHQG TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc CÔNG NGHỆ THÔNG TIN ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: XÂY DỰNG HỆ THỐNG HỖ TRỢ CHẤM ĐIỂM LẬP TRÌNH TỰ ĐỘNG TÊN ĐỀ TÀI TIẾNG ANH: BUILDING AUTOMATED CODE SCORING SYSTEM Cán bộ hướng dẫn: ThS. Thái Thụy Hàn Uyển Thời gian thực hiện: Từ ngày 25/02/2023 đến ngày kết thúc Khóa luận tốt nghiệp Sinh viên thực hiện: Phùng Thanh Tú - 19522455 Nguyễn Hoàng Thái Dương - 19521409 Nội dung đề tài: 1.

Giới thiệu đề tài: Hiện nay lập trình và Công nghệ thông tin là một từ khóa vô cùng hấp dẫn được rất nhiều người quan tâm. Trước bối cảnh người người nhà nhà theo ngành nhưng vẫn thiếu nguồn nhân lực chất lượng cao phục vụ cho đất nước, em nhận ra việc đào tạo các lập trình viên tài năng là một bước vô cùng quan trọng trong việc đóng góp tạo ra nguồn nhân lực chất lượng cao cho đất nước, góp phần giải tỏa cơn khát nhân lực vốn đã là thực trạng ở không chỉ Việt Nam mà còn trên toàn thế giới. Hiện nay có rất nhiều ứng dụng giải bài tập lập trình phổ biến như Hackerrank, LeetCode, Codeforce, … đã và đang hoạt động, ngoài ra cũng có những ứng dụng hỗ trợ dạy và học như Moodle, Google Classroom, … Tuy nhiên chúng đều có những vấn đề, hoặc chỉ tập trung vào giải bài tập, ít có sự tương tác giữa giảng viên và học viên, hoặc tập trung vào việc dạy và học nhưng lại không hỗ trợ hoàn toàn cho việc dạy lập trình. Do đó, để giải quyết vấn đề đó, em quyết định bắt tay vào thực hiện đề tài này.

Mục tiêu đề tài: - Xây dựng ứng dụng tạo & quản lý lớp học có sự hỗ trợ của Hệ thống hỗ trợ chấm điểm lập trình tự động. Lưu ý ứng dụng sẽ tập trung hoàn toàn vào trải nghiệm dạy và học, do đó sẽ không có tính năng quản lý sinh viên và giảng viên. - Cho phép người quản trị hệ thống (có quyền truy cập vào máy chủ) mở rộng hệ thống, hỗ trợ thêm ngôn ngữ lập trình mới mà không cần sửa đổi mã nguồn (mà thêm bằng cách thêm dữ liệu trong database và cài đặt compiler và runtime của ngôn ngữ mới ở trong terminal của server container). - Cho phép giảng viên tạo & quản lý môn học, đồng thời mời sinh viên vào lớp thông qua link - Cho phép giảng viên tạo Tài liệu học tập, Bài tập, cài đặt Chấm điểm tự động cho Bài tập lập trình - Cho phép sinh viên truy cập vào lớp học và các tài liệu trong lớp học, giải và nộp các Bài tập lập trình - Hệ thống chấm điểm tự động chấm điểm dựa theo các cài đặt mà Giảng viên đã thiết lập, đồng thời quy về điểm số cho bài tập - Điểm số được tính toán tự động dựa theo các trọng số, sau đó quy về điểm trung bình môn học cho các học sinh - Thống kê điểm số của môn học - Tất cả các tài liệu & bài tập lập trình và cả bài nộp của sinh viên đều được thực hiện thông qua một trình soạn thảo văn bản giống với VSCode (Monaco Editor) - Giao diện bắt mắt, trực quan, bố cục hợp lý, dễ sử dụng 3.

Phạm vi đề tài: • Phạm vi môi trường: - Ứng dụng có thể được truy cập từ Web trên các máy tính cá nhân (PC) - Server của ứng dụng được đóng gói bằng các Container và có thể được host trên mọi thiết bị hỗ trợ Docker, kể cả là trên các nền tảng Cloud • Phạm vi chức năng: - Xác thực và quản lí thông tin cá nhân - Tạo & Quản lí môn học - Mời & tham gia môn học - Tạo & Quản lí Tài liệu của môn học (markdown, ảnh, video) - Tạo & Quản lí các bài tập lập trình - Chấm điểm tự động cho các bài nộp bài tập lập trình - Thống kê dữ liệu lớp học (điểm và điểm trung bình của các học viên) - Cho phép ứng dụng mở rộng, hỗ trợ thêm ngôn ngữ lập trình mới mà không cần sửa đổi source code (mà thông qua dữ liệu trên database) 4. Đối tượng sử dụng: - Giảng viên muốn tạo lớp học lập trình. - Học viên/Học sinh muốn tham gia và học trong một lớp học lập trình. Phương pháp thực hiện: - Tìm hiểu các công nghệ liên quan - Tìm hiểu các ứng dụng liên quan để hiểu rõ về nghiệp vụ.

- Nghiên cứu nhu cầu hiện nay trong việc dạy học lập trình - Tiến hành phân tích và thiết kế hệ thống. - Tìm hiểu UX/UI và tiến hành thiết kế giao diện cho ứng dụng. - Tiến hành triển khai và kiểm thử. Công nghệ sử dụng: - Backend: NodeJS, ExpressJS, Joi, RabbitMQ, MSSQL Driver for Node, ioi/isolate, ubuntu CLI - Frontend: React, Redux, Redux Saga, TypeScript, MUI - Testing: Jest, RTL - Database: Microsoft SQL Server - Source Control: GitHub.

- Deploy: Docker, Kubernetes, AWS - Document & Process Management: Notion - Project management: Scrum Framework 7.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Hệ thống chấm điểm lập trình tự động: Giải pháp hiệu quả cho sinh viên" trình bày một giải pháp tiên tiến giúp sinh viên cải thiện kỹ năng lập trình thông qua việc tự động hóa quá trình chấm điểm. Hệ thống này không chỉ tiết kiệm thời gian cho giảng viên mà còn cung cấp phản hồi nhanh chóng và chính xác cho sinh viên, từ đó nâng cao hiệu quả học tập. Bằng cách áp dụng công nghệ vào giáo dục, tài liệu này mở ra cơ hội cho sinh viên phát triển kỹ năng lập trình một cách hiệu quả hơn.

Nếu bạn quan tâm đến việc ứng dụng công nghệ trong giáo dục, bạn có thể tìm hiểu thêm về quản lý ứng dụng công nghệ thông tin trong dạy học hoặc khám phá vận dụng quan điểm giao tiếp vào dạy học ngữ pháp. Ngoài ra, bạn cũng có thể tham khảo ứng dụng sơ đồ tư duy trong dạy học để mở rộng kiến thức về các phương pháp giảng dạy hiện đại. Những tài liệu này sẽ giúp bạn có cái nhìn sâu sắc hơn về việc ứng dụng công nghệ và phương pháp giảng dạy trong giáo dục hiện đại.