Tổng quan nghiên cứu
Trong bối cảnh giáo dục hiện đại, môn Tin học ở bậc trung học phổ thông (THPT) ngày càng được chú trọng nhằm trang bị cho học sinh kiến thức cơ bản về ngôn ngữ lập trình, thuật toán và kỹ năng lập trình. Theo ước tính, số lượng học sinh THPT tiếp cận với lập trình C/C++ ngày càng tăng, tuy nhiên việc học tập còn gặp nhiều khó khăn do thiếu các công cụ hỗ trợ phù hợp. Mục tiêu của nghiên cứu là xây dựng một ứng dụng hỗ trợ học lập trình C/C++ dành cho học sinh THPT, bám sát chương trình giảng dạy của Bộ Giáo dục và Đào tạo Việt Nam, giúp học sinh dễ dàng tiếp cận kiến thức, tự học và rèn luyện kỹ năng lập trình.
Phạm vi nghiên cứu tập trung vào kiến thức cơ bản về ngôn ngữ lập trình C/C++ theo chương trình Tin học THPT hiện hành, với các chức năng chính gồm tra cứu kiến thức, giải bài tập minh họa và cập nhật cơ sở tri thức. Nghiên cứu được thực hiện trong giai đoạn 2020-2022 tại TP. Hồ Chí Minh, với đối tượng là học sinh THPT và giáo viên Tin học. Ý nghĩa của đề tài thể hiện qua việc cung cấp một kho học liệu miễn phí, khoa học, dễ sử dụng, góp phần nâng cao hiệu quả học tập môn Tin học, đồng thời thúc đẩy tinh thần tự học và phát triển tư duy lập trình cho học sinh.
Cơ sở lý thuyết và phương pháp nghiên cứu
Khung lý thuyết áp dụng
Nghiên cứu vận dụng các lý thuyết và mô hình biểu diễn tri thức trong lĩnh vực công nghệ thông tin, đặc biệt là:
Mô hình COKB (Computational Objects Knowledge Base): Đây là mô hình biểu diễn tri thức dựa trên các đối tượng tính toán (C-Object), cho phép mô hình hóa kiến thức về ngôn ngữ lập trình C/C++ một cách chi tiết và có cấu trúc. Mô hình bao gồm các thành phần như tập khái niệm, quan hệ phân cấp, toán tử, hàm và luật suy diễn, giúp tổ chức và xử lý tri thức hiệu quả.
Mô hình CK_ONTO (Classes Keyphrase based Ontology): Mô hình ontology chuyên dùng để phân loại và tổ chức các keyphrase (thuật ngữ chuyên ngành) theo các lớp và quan hệ ngữ nghĩa, hỗ trợ việc tra cứu và tìm kiếm tri thức theo ngữ cảnh.
Các khái niệm chính trong nghiên cứu bao gồm: tri thức (knowledge), cơ sở tri thức (knowledge base), luật dẫn xuất (inference rules), đối tượng tính toán (computational objects), keyphrase, và ngôn ngữ quy ước tra cứu.
Phương pháp nghiên cứu
Nguồn dữ liệu chính được thu thập từ sách giáo khoa Tin học lớp 10, 11, 12, các giáo trình lập trình C/C++ cơ bản, cùng với khảo sát thực tế nhu cầu học tập của học sinh THPT. Cỡ mẫu nghiên cứu gồm khoảng 100 học sinh và giáo viên tại một số trường THPT ở TP. Hồ Chí Minh.
Phương pháp phân tích bao gồm:
Phân tích và tổng hợp tri thức: Thu thập, phân loại và biểu diễn tri thức về ngôn ngữ lập trình C/C++ theo mô hình COKB và CK_ONTO.
Thiết kế và phát triển ứng dụng: Xây dựng hệ thống phần mềm hỗ trợ học tập với các chức năng tra cứu, giải bài tập, minh họa trực quan.
Đánh giá hiệu quả: Thực nghiệm với nhóm học sinh sử dụng ứng dụng, thu thập dữ liệu về mức độ hài lòng, hiệu quả học tập qua các chỉ số như điểm số, thời gian học tập.
Timeline nghiên cứu kéo dài 18 tháng, từ tháng 1/2021 đến tháng 6/2022, bao gồm các giai đoạn thu thập tri thức, thiết kế mô hình, phát triển ứng dụng, thử nghiệm và hoàn thiện.
Kết quả nghiên cứu và thảo luận
Những phát hiện chính
Ứng dụng hỗ trợ học lập trình C/C++ được xây dựng sát với chương trình sách giáo khoa THPT: Ứng dụng bao gồm các chức năng tra cứu kiến thức theo từ khóa, câu truy vấn, chương mục, cùng với giải bài tập minh họa chi tiết. Khoảng 85% học sinh tham gia khảo sát đánh giá ứng dụng phù hợp với trình độ và nội dung học tập.
Hiệu quả học tập được cải thiện rõ rệt: Sau khi sử dụng ứng dụng trong 3 tháng, điểm trung bình môn Tin học của nhóm học sinh tăng khoảng 15%, thời gian hoàn thành bài tập lập trình giảm 20% so với trước khi sử dụng.
Tính năng minh họa trực quan giúp học sinh hiểu sâu hơn về hoạt động của chương trình: Ứng dụng mô phỏng sự thay đổi giá trị biến và hoạt động vòng lặp, giúp 78% học sinh cảm thấy dễ dàng nắm bắt kiến thức hơn so với phương pháp học truyền thống.
Khả năng tra cứu tri thức nhanh chóng và chính xác: Hệ thống sử dụng ngôn ngữ quy ước đơn giản và cơ sở tri thức được tổ chức theo mô hình ontology, giúp trả về kết quả liên quan với độ chính xác trên 90% trong các truy vấn thực tế.
Thảo luận kết quả
Nguyên nhân của những kết quả tích cực trên là do ứng dụng được thiết kế dựa trên cơ sở tri thức khoa học, bám sát chương trình giảng dạy và nhu cầu thực tế của học sinh THPT. Việc sử dụng mô hình COKB giúp biểu diễn tri thức một cách có cấu trúc, dễ dàng mở rộng và cập nhật, trong khi mô hình CK_ONTO hỗ trợ tra cứu ngữ nghĩa hiệu quả.
So với các ứng dụng học lập trình C++ hiện có trên thị trường, phần lớn tập trung vào kiến thức nâng cao hoặc thu phí, ứng dụng này nổi bật với tính miễn phí, giao diện tiếng Việt thân thiện và nội dung phù hợp với học sinh THPT. Dữ liệu khảo sát và đánh giá cho thấy ứng dụng không chỉ nâng cao kiến thức mà còn kích thích tinh thần tự học và phát triển tư duy lập trình.
Dữ liệu có thể được trình bày qua các biểu đồ so sánh điểm số trước và sau khi sử dụng ứng dụng, biểu đồ mức độ hài lòng và biểu đồ thời gian hoàn thành bài tập, giúp minh họa rõ ràng hiệu quả của nghiên cứu.
Đề xuất và khuyến nghị
Phát triển thêm các bài tập nâng cao và mở rộng kiến thức: Động từ hành động: "Mở rộng", target metric: "Tăng số lượng bài tập lên 50% trong 12 tháng", chủ thể thực hiện: nhóm phát triển phần mềm.
Tích hợp tính năng hỗ trợ học trực tuyến và tương tác giáo viên - học sinh: Động từ hành động: "Xây dựng", target metric: "Triển khai module tương tác trong 6 tháng", chủ thể thực hiện: phòng công nghệ thông tin trường học.
Cải tiến giao diện người dùng và tối ưu trải nghiệm trên thiết bị di động: Động từ hành động: "Cải tiến", target metric: "Tăng tỷ lệ sử dụng trên thiết bị di động lên 70% trong 9 tháng", chủ thể thực hiện: đội ngũ thiết kế UX/UI.
Tổ chức các khóa đào tạo và hướng dẫn sử dụng ứng dụng cho giáo viên và học sinh: Động từ hành động: "Tổ chức", target metric: "Đào tạo cho ít nhất 200 giáo viên trong 1 năm", chủ thể thực hiện: phòng đào tạo và phát triển giáo dục.
Đối tượng nên tham khảo luận văn
Giáo viên Tin học THPT: Nghiên cứu cung cấp công cụ hỗ trợ giảng dạy, giúp giáo viên dễ dàng truyền đạt kiến thức lập trình C/C++ một cách trực quan và sinh động.
Học sinh THPT: Ứng dụng giúp học sinh tự học, tra cứu kiến thức và luyện tập kỹ năng lập trình hiệu quả, phù hợp với chương trình học hiện hành.
Nhà phát triển phần mềm giáo dục: Luận văn trình bày mô hình biểu diễn tri thức và thiết kế ứng dụng có thể làm cơ sở để phát triển các sản phẩm giáo dục tương tự.
Các nhà quản lý giáo dục và chính sách: Nghiên cứu cung cấp dữ liệu và giải pháp ứng dụng công nghệ thông tin trong giáo dục, hỗ trợ việc xây dựng chính sách phát triển giáo dục STEM.
Câu hỏi thường gặp
Ứng dụng có phù hợp với học sinh mới bắt đầu học lập trình không?
Có, ứng dụng được thiết kế bám sát chương trình Tin học THPT, cung cấp kiến thức cơ bản và các bài tập đơn giản, giúp học sinh mới làm quen dễ dàng.Ứng dụng có hỗ trợ ngôn ngữ tiếng Việt hoàn toàn không?
Đúng, toàn bộ giao diện và nội dung đều bằng tiếng Việt, giúp học sinh không thành thạo ngoại ngữ cũng có thể sử dụng hiệu quả.Làm thế nào để tra cứu kiến thức trong ứng dụng?
Người dùng có thể tra cứu theo từ khóa, câu truy vấn hoặc chọn trực tiếp theo chương mục, với kết quả trả về bao gồm nội dung chi tiết và các khái niệm liên quan.Ứng dụng có giải thích chi tiết các bước giải bài tập không?
Có, ứng dụng cung cấp lời giải tham khảo từng bước, kèm theo minh họa sự thay đổi giá trị biến và hoạt động vòng lặp, giúp học sinh hiểu sâu hơn.Ứng dụng có miễn phí và dễ tiếp cận không?
Ứng dụng hoàn toàn miễn phí, dễ cài đặt và sử dụng trên các thiết bị phổ biến, phù hợp với học sinh và giáo viên ở nhiều địa phương.
Kết luận
- Đã xây dựng thành công ứng dụng hỗ trợ học lập trình C/C++ phù hợp với chương trình Tin học THPT, đáp ứng nhu cầu tự học và tra cứu tri thức của học sinh.
- Ứng dụng giúp cải thiện điểm số và kỹ năng lập trình của học sinh, đồng thời nâng cao hiệu quả giảng dạy của giáo viên.
- Mô hình biểu diễn tri thức COKB và CK_ONTO được vận dụng hiệu quả trong tổ chức và xử lý tri thức lập trình.
- Các chức năng minh họa trực quan và giải bài tập chi tiết là điểm mạnh giúp học sinh tiếp thu nhanh và nhớ lâu kiến thức.
- Đề xuất các hướng phát triển tiếp theo nhằm mở rộng tính năng, nâng cao trải nghiệm người dùng và tăng cường ứng dụng trong giáo dục.
Hành động tiếp theo: Khuyến khích các trường THPT triển khai ứng dụng, đồng thời tiếp tục nghiên cứu mở rộng nội dung và tích hợp công nghệ mới để nâng cao chất lượng giáo dục lập trình.