用ASP开发试题库与在线考试系统(6)
文章类别:
asp | 发表日期:2008-10-5 20:39:34
基本算法:
{定义参数,获得整套试卷的共同限制参数,即包括输入必要条件得到必要参数和 输入任选条件得到任选参数}
必要参数组合= A1 AND A2 ~~AND An;任选参数组合= B1 OR B2 ~~OR Bn;
大题数dts =3 '默认为3道大题;小题数xts=0 '默认为50道小题;
IF 无判断题 THEN dts=dts - 1 END IF '开始计算大题数
IF 无单选题 THEN dts=dts - 1 END IF
IF 无多选题 THEN dts=dts - 1 END IF
开始扫描相应科目的试题库,获得临时所有符合条件的试题预览,接着开始手工细选试题以生成试卷或计算机自动组卷。
IF 符合必要参数组合 THEN
SELCECT 任选参数
B1:显示符合必要参数+B1的试题编号及内容
B2:显示符合必要参数+B2的试题编号及内容
┋ ┋ ┋
Bn:显示符合必要参数+Bn的试题编号及内容
END SELCECT
END IF
IF dts>= 1 THEN
IF 试题编号合法THEN xts=xts + 1
ELSE 请输入合法的试题编号!
END IF
IF dts>xts THEN xts必须大于或等于dts!
ELSE
IF 某已存在的题型中小题数为0 THEN 该题型至少要有1道试题!
END IF
END IF
IF 判断题存在且分数<= 0 OR分数>100 THEN 请修改!
ELSE TOTALFEN= TOTALFEN +PDTF
END IF
IF 单选题存在且分数<= 0 OR分数>100 THEN 请修改!
ELSE TOTALFEN= TOTALFEN +DXTF
END IF
IF 多选题存在且分数<= 0 OR分数>100 THEN 请修改!
ELSE TOTALFEN= TOTALFEN +TSTF
END IF
IF TOTALFEN <= 0 OR TOTALFEN > 100 THEN
总分在1---100分之内!
END IF
ELSE 试卷大题数不得为0!
IF testtime<= 0 OR testtime>= 4 (hour) THEN
考试时间必须满足0 <testtime< 4 (hour)!
END IF
END IF
IF所有数据均合法 THEN 则将该试卷的相关信息存盘
END IF
主要有下面两个子模块:
其一:手工组卷模块
用户提交相关限制条件,由系统根据这些条件先从大的范围内调出试题,稍后再手工通过复选按钮细选以生成自己所需的试卷,即利用现有的试题库,可编制出多份试卷。在组卷时,可以对所选的每一试题进行增删,顺序进行调整,并可自行规定各大(小)题分数和试卷的考试时间(默认值前已述及)。总之,能作出用户完全满意的试卷,以供在线考试或测试使用。
其好处关键在于---选题随机性强、成卷速度较快、试卷质量高;知识考核点分布均匀,且内容覆盖面容易控制。例如,期中考试时,只考前一半内容时,只要选取章节码小于或等于某个指定的值,则一定不会出现后一半内容的试题。
其二:计算机自动卷模块
完全由系统自动按照"易-中-难"顺序和根据用户选择的信息,灵活、随机的抽取试题库中的各类试题组成试卷,试卷内容会随着库中试题的改变而改变,试卷库中没有保存试卷的基本信息及相应的试题编号,不妨称之为活动的互动的试卷。不过,其试卷质量不高,难易程度把握不当,知识考核点分布不均,一般只作在线练习使用。
4.3.4、进入在线考场模块
进入在线考场是本系统非常重要的部分之一。因为一个系统如果涉及到现实的话,就必须考虑得十分周到、完善。考生登录后,只要输入已编辑好的试卷编号,就可以调出其试卷进行在线考试或测试,其答题信息通过单、复选按钮选择答案来反映。为了防止考生多次提交试卷和规范考场纪律,采取自愿交卷和到了规定的时间自动收卷两者有机结合的方式、限制考试时间和期限以及禁用鼠标等办法予以实现。但真正的无人监视的考试好象不能用软件实现,而且其安全性在系统设计中也很重要。因此,在设计过程中注意了以下几个问题:
1、只有考生自己才能参加考试!2、考试时间到了将自动交卷!
3、限制提交次数,暂只提供一次机会!4、禁止用户联网作弊!
上图为此模块程序设计详细流程图
4.3.5、在线练习模块
计算机自动组卷模块组成的互动的试卷(卷库中没有保存此类试卷的任何信息!)是通过单复选按钮来反映用户的做题信息。它主要用于平时的在线练习等,让用户了解自身的不足,并有针对性地进行复习和训练。因此,用户做完后,只要点击"查看答案",就可以与相应试题的标准答案对比,以便及时反馈情况,而没有提供成绩判定与分析和时间限制等。
4.3.6、成绩分析与试卷评估模块
考生每参加一次考试,系统根据已有的标准答案很快得出其分数,再根据不同的分数段给出相异的评语。一方面与其它同科考生进行横向对比,得出各个考生之间的差别;另一方面,也通过用户一段时期内参加同科考试的成绩来做纵向比较,用以说明其掌握该科目内容的实际程度,以便做出相应的决定。另外,管理员先给出一套完整试卷的预先评估,然后由系统自动根据同一试卷编号的所有用户成绩给出其实际的评估,并且都有一个难度等级,把两次评估进行比较得出该卷的难易程度以及更详细的评估情况。
4.3.7、删除模块
在整个系统中,只有系统管理员具有此权限。管理员通过复选按钮选择要删除的用户、留言、试卷及科目,而对于数量较大的试题库则通过输入或选择条件,就可达到删除那些过时的无用的试题,当然,对于那些恶意破坏系统的用户,管理员有权删除他,以示惩罚。这样就可确保数据库不至于十分庞大和其安全性。