在线考试系统做到已经用时两个星期多了,上次说到已经开发了近三分之一了。其实开发到两个星期的时候我负责的模块已经完成了,因为其中有很多是原先做题库时写过的。
但是后来在分析之后觉得原先的试题表要是针对在线考试的话会不太恰当,原先我们的设计没有考虑会有很多用户同时抽取试题并且还需要记录每一个用户所抽取的试题。因此这时就要对数据库结构进行改动了。
其实按照我的想法,采用原来的数据库设计也是可以的。
原先是这样设计的,所有的试题都是按照课程进行分类的,每个课程会单独生成一个表,其中题干和答题选项都是一个字段。
按照这种设计做在线考试的话存在的问题有:
l 生成试卷的格式,因为答题选项是一个字段,因此不好控制显示格式
l 对于填空题,无法知道该试题有几个空,填写时是否需要按照固定顺序。
l 并且对于各个试题之间的关系不够清楚,因为所有的不同种类的试题将会存放在同一张表中,这样会导致以后进行维护时比较麻烦。
所以为了改进系统,采用按照课程和题型来建立数据表。这样的好处就是在逻辑上各个不同种类的试题分析起来比较清晰互不相关,但是唯一的问题就是在抽取试题的时候就会被题型限制,因为如果不知道是什么题型的话就找不到这张表。
最后就采用了这样的设计了,从采用到现在已经四天了吧。
这一改动可就麻烦了,原先直接拿过来用的代码就不再适用了,也就是我原先的工作等于白了一半,所以就重新来过吧。