APP下载

程序设计语言网络教学平台的设计与实现

2013-08-23尹燕敏张亦辰

中国教育技术装备 2013年12期
关键词:程序设计试卷试题

尹燕敏 张亦辰

程序设计语言网络教学平台的设计与实现

尹燕敏 张亦辰

河海大学计算机与信息学院 南京 211100

结合程序设计语言教学,提出程序设计语言网络教学平台的设计与实现技术,平台实现课程管理、作业抽题、测试组卷、试卷自动评阅、试卷结果分析等功能,有利于提高本类课程的教学质量。

网络教学平台;程序设计语言;测试组卷

1 引言

程序设计语言课程是计算机及相关专业的一门非常重要的基础课,是大学生学习程序设计的入门课程,也是学生学好后续课程的基础。程序设计语言课程在大一开设,很多学生对计算机编程一无所知,普遍存在畏难情绪,加上程序设计语言本身比较抽象,语法繁杂,算法复杂,所以学生普遍反映课程难学,也很难成功编写有用的程序。

近几年在高校招生规模不断扩大,在校生数量急剧增加,大班上课的情况下,教师与学主沟通的渠道减少,学生的疑问得不到及时解答,教师也无法从整体上把握学主对知识的掌握状况,在一定程度上也加大了课程学习的难度。因此,针对程序设计语言课程教学中存在的问题,研究开发该课程的网络教学平台,为学生提供自我学习和检测的平台,为教师提供学生学习效果的有用信息,服务课堂教学,是本文的主要任务。

2 系统功能

程序设计语言网络教学平台的主体功能包括:课程管理,如课件的发布和删除;作业管理,如作业的发布、提交和批改,其中作业自动抽取,使每位学生得到的作业题目相似但不同,避免抄袭;答疑指导,包括在线交流和事后回复;试卷自动组卷,按课程内容自动组成测试试卷;试卷结果分析,将测试结果进行统计分析等。系统实现集网络课程教学资源制作、发布与维护以及学生进行网络学习、完成作业和测试为一体的网络教学平台,将原来封闭式课堂教学转变为开放式课堂教学,引入更多的教学资源。

3 总体架构设计

本系统的用户为管理员、教师和学主,三者分别管理和使用本系统,根据需求分析和设计,本系统的总体结构如图1所示。通过身份验证,教师、学生和管理员可以进入各自的子平台进行相关操作。

图1 程序设计语言网络教学平台架构图

3.1 管理员子平台主要功能

管理员登录后可向系统添加教师和课程,并进行修改和删除。管理员主要进行后台管理,管理员子平台主要功能包括3个方面。

1)系统管理,主要是维护系统的正常运行。①常规模块功能是网络教学平台正常运行所包含的如课程、作业、试题、答疑及公告等功能的管理。②抽题模块实现根据教师教学要求,按照指定策略从题库抽取形成作业。教师每次布置的作业,都是从保存在数据库中的各章节作业中抽取形成,学生练习的是相似而不同的题目,这样可以有效避免学生之间相互抄袭作业。③组卷模块实现根据指定策略生成测试试卷。可以按若干章节或全部内容对学生进行测试,试卷可以随机生成,也可以根据学生平时作业情况生成针对性试卷。学生完成后,填空选择部分直接给出分数和答案,学生也可以查看主观题的答案。③分析模块实现学生作业和测试结果的统计分析,学生出错较多的题目及时反馈给教师,便于教师进行统一讲解和强化训练;将学生在某个知识点题目出错较多的信息反馈给学生,便于学生有针对性地复习和练习。

2)用户管理包括添加删除用户、设置用户权限。

3)数据管理是对后台数据库进行管理和维护。

3.2 教师子平台主要功能

1)教程管理,包括发布和删除课件、教学动画、课程典型程序等。

2)作业管理,包括作业的添加、删除、发布、浏览和批改等。

3)试题管理,包括试题的添加、删除及发布等。

4)答疑管理,针对学生提出的问题进行网上解答。

5)公告管理,包括信息发布、更新、删除等。

3.3 学生子平台主要功能

1)课程学习,包括浏览与下载教程课件、相关的动画演示、典型程序等。

2)作业练习,包括课外作业练习、提交作业及查看批改结果。

3)试题测试,学生可以根据教学情况选择章节进行测试,查看测试结果和标准答案。

4)答疑提问,包括提出问题及查看答疑结果等。

4 功能实现

网络教学平台的体系结构采用目前较为通用的B/S应用开发模式。本系统的开发采用J2EE体系结构,使用Struts2+Spring+Hibernate框架,以Tomcat作为Web容器,Eclipse作为开发工具,MySQL作为数据库服务器。整个页面布局较为美观,整个系统呈现出操作简单、界面友善、灵活性好的特点。

4.1 抽题模块的实现

抽题模块主要用到数据库中试题表,作业题按类型、知识点及难度系数分类,教师留作业时选中某一题目,则抽题模块会在数据库中查询和教师作业相同类型、同一知识点、相同难度的不同题目随机发给学生,并记录每道题的抽取次数。

4.2 组卷模块的实现

组卷模块主要用到表1的试题表,生成表2所示的试卷表中内容,组卷方式非常灵活。与通常的考试试卷不同,本系统的用户可以选择某几章进行组卷,避免学生只能到课程结束才能做整套题目。用户还可以自行规定每种类型题目所占的分数比例及具体分数,选择完成后系统根据对题目类型及数量的约定,采取先对不同题型分别组卷,最后再组合成一份完整试卷的方法。

表1 试题表结构

表2 试卷表

表3 题目统计表

表4 学生错题统计表

一个完善的组卷算法应满足题目具有随机性、知识点无重复等特点。为保证生成试卷的随机性和科学性,在实现对不同题型组卷时,把组卷策略的内容进行整理、分析,形成试题的抽取要求。具体流程:1)生成试卷编号;2)根据选定的章节范围选择某题目类型的全部题目,得到一记录集R,试题序号记为1;3)R中根据知识点进行分组;4)随机从每组中选中一道题目s;5)判断s是否满足试卷难度要求,若s满足要求则转入6,若s不满足难度要求则转入4重新随机抽取;6)将s加入试卷中,题目顺序号加1,s的使用标志为已使用,下次不会再抽取;7)判断该题型题目个数是否满足要求,不满足则转入4,满足则结束本类型组卷,转入2继续其他类型题目的组卷,直到按要求组卷完成;8)生成参考答案。

4.3 分析模块的实现

分析模块主要用到数据库中试题统计表和学生错题统计表。学生的作业和测试题目形成后,抽题和组卷系统会将抽到的题目次数加一;学生提交后,系统对照答案给出分数的同时,会将出错的次数计入试题统计表中,同时对每位学生做题时间和出错的题目也都进行记录。分析模块对表中数据进行统计,将每位教师所教学生中出错率高的题目内容发送给任课教师;对学生出错的题目进行统计分析,得到学生对某些知识点出错较多的信息,提醒学生进行该知识点的专项复习。

5 结论

本文的设计思想已经成功应用于高校程序设计网络教学系统中。实际使用效果表明,本文所述的程序设计教学网络教学平台设计思想是可行的。该网络系统较好地实现了课内讲解与课后学习相结合,可将程序设计课的教学内容与主要应用完整系统地在网络中发布,供不同需求的学生在网上进行个性化学习;可以使用多媒体的手段形象生动地讲解典型例题;测试组卷模块可供学生重复学习;分析模块对学生出现的问题给出详细分析和指导;可以利用网络提供的条件,引导有兴趣的学生进行相关问题的讨论和答疑等。

[1]王娟勤.基于WEB的程序设计类教学辅助系统的研发[J].高等农业教育,2011(11):62-63.

[2]吴清佳.C程序设计辅助教学系统的设计[J].现代计算机,2011(4):101-103.

[3]宁诲涛.如何在网络教学中提高《C语言程序设计》课程的教学质量[J].科技视界,2012(29):86.

Design and Implementation of Network Teaching Platform for Programming Language

Yin Yanmin,Zhang Yichen

In this paper, combined with the teaching of programming language, we presents the design and realization of network teaching platform for programming language, including course management, homework management, test paper automatic generation, papers automatic correcting,results analysis etc. The platform improves the teaching qualit y.

network teaching platform; programming language; test system

TP315

B

1671-489X(2013)12-0037-02

10.3969/j.issn.1671-489X.2013.12.037

猜你喜欢

程序设计试卷试题
2021年高考数学模拟试题(四)
基于Visual Studio Code的C语言程序设计实践教学探索
2019年高考数学模拟试题(五)
《陈涉世家》初三复习试题
从细节入手,谈PLC程序设计技巧
2019届高考数学模拟试题(二)
Module5 A Trip Along the Three Gorges
Module5 Great People and Great Inventions of Ancient China
Module 4 Sandstorms in Asia
Module 1 Europe