试题库管理系统--数据库设计

一、概要设计

1.1 背景和意义

    目前,许多高校绝大多数课程还采用考教统一的模式来完成教学过程,这种传统的考试模式在教学到实施考试的过程带有很大的主观随意性和不规范性。另外随着各高校近年来学生规模的扩大,教学任务日益繁重,教师的工作量相应的不断增加。迫切需要计算机辅助教学系统来打破这种传统的教学模式,减轻教师的工作负担,提高教学质量。因此,本文研究设计了一个试题库管理系统,来解决和缓解高校课程教学中现存的问题,提高教学质量和考试效果,减轻教师工作压力。试题库管理系统可辅助教师对所教科目的各种试题的题型、难度等相关资料进行保存、查询等信息管理;并在需要对学生进行测验、评估的时候,从题库中抽取出相应要求的题目,组成一套试卷。 

    本文首先简要介绍了开发试题库管理系统的可行性分析,系统的需求分析和总体设计,然后主要针对系统的设计、组成、用户界面设计、程序设计进行了详细分析,并对系统部分关键性代码进行了讲解,同时对一般系统软件设计的基本思想及工作流程给出了方法技巧。首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。


1.2 内容和要求

功能要求

1.教师登录信息管理(教师编号、教师名、所属专业号)

2.信息管理(试题类型、试题难度、试题科目号)

3.试题的增、删、改、查、分类等功能

4.试题专业信息管理(专业号、专业名)

5.试卷信息管理(科目号、题型号、时间、出题教师号)

6.视图查看各专业题型的数量,各科目题型数量

7.数据库相关表之间的参照完整性约束

二、需求分析

2.1系统调查

  对现行的试题库管理业务进行了详细的调查和研究是了解系统需求和进行系统分析和设计的重要基础工作,因此要对我们的试题库管理工作进行全面的细致的调查研究。首先与相关的老师进行了交流和沟通,了解他们对试题库管理的看法,看看有没有什么新的要求,在这个基础上,结合自身所掌握的知识水平,量力而行开发相应的试题库管理系统。

   在调查中我们可以发现,高校的试题库是极其庞大的,如果没有一个智能的系统将人们从手工阶段解放出来,那么一个庞大的、完整的试题库是无法有效运行的,甚至出题的老师也无法有效、准确地在试题库中抽取自己所需要的试题,这等于说是一个没有实际运用价值的试题库。所以说,他们对希望有这样的一个可以详细地表示试题属性的这样的一个试题库。那么今天我们就围绕着这样的一个目标展开我们的工作。


2.2 用户需求

    要设计一个性能良好的管理系统,明确用户的应用环境对系统的要求是首要的和基本的。本系统从以下四个方面对用户需求进行了分析:

1) .用户的需求信息:出题老师可以看到题目所属的类型和题目所考察的内容以及试题的分值和难度等级。当然这个权限也给管理员和系主任。

2) 用户的处理要求教师可以对试题库进行插入和删除操作,出题老师可以凭借自己自定义的选题要求在试题库中选择自己需求的试题。

3)对系统的适应性、通用性要求要求系统不仅能提供一门课程的试题库管理,还要综合多么学科进行管理,建立一个高效的试题库管理系统。

4)对系统的安全性要求,要求进入系统必须口令校验。

 

2.3开发技术

开发工具:Microsoft SQL Server 2012

开发语言:SQL

开发技术:数据库开发技术

面向对象:需求者


2.4 系统主要功能



三、E-R图

各个实体的E-R图如下所示:















四、逻辑结构设计

4.1 逻辑转换

根据上节中的E-R图可以将系统中的概念模型转换为具体的表(即关系)结构,共分为8个关系,详细信息如下所示:

专业专业号、专业名)

教师教师工号、教师名、专业号

科目科目号、科目名、专业号

题型题号、类型、难度、科目号、教师工号

设计题题号题型号、内容、答案)

选择题题号题型号、内容、选项1、选项2、选项3、选项4、答案)

判断题题号题型号、内容、答案)

试卷试卷号、科目号、时间、教师工号、内容)

4.2细化表结构

为方便,根据上述文字描述,用英文简写为表和列取名,确定列的数据类型及必要的约束规则,给出如下所示数据库表的基本结构及说明:

(1).专业信息表

列名

说明

数据类型

约束

Specialty_id

专业号

char(4)

not null  primary key

Specialty_name

专业名

varchar(10)

not null unique

 

(2) .教师信息表

列名

说明

数据类型

约束

Teacher_id

老师编号

char(8)

not null  primary key

Teacher_name

教师名

varchar(10)

not null

Teacher_Specialty

所属专业号

char(4)

not null

foreign key

 

3.科目信息表

列名

说明

数据类型

约束

Course_id

科目编号

char(10)

not null

primary key

Course_name

科目名

varchar(10)

not null

Course_Specialty

所属专业号

char(4)

not null

foreign key

primary key

 

 

 (4).题型信息表

列名

说明

数据类型

约束

Question_id

试题号

int

not null IDENTITY(1, 1) primary key

Question_name

试题类型

varchar(10)

not null

Question_level

试题难度

varchar(4)

not null default '简单'

Question_Course

所属科目号

char(10)

not null

Question_Teacher

教师号

char(8)

not null


(5).设计题信息表

列名

说明

数据类型

约束

Design_id

试题号

tinyint

not null IDENTITY(1, 1) primary key

Design_Question

题型号

int

not null

foreign key

Design_Info

内容

text

not null

Design_answ

答案

text

not null


(6).选择题信息表

列名

说明

数据类型

约束

ChoiceQst_id

试题号

tinyint

not null IDENTITY(1, 1) primary key

ChoiceQst_Question

题型号

int

not null

foreign key

ChoiceQst_Info

内容

text

not null

ChoiceQst_OP1

操作1

text

not null

ChoiceQst_OP2

操作2

text

not null

ChoiceQst_OP3

操作3

text

not null

ChoiceQst_OP4

操作4

text

not null

ChoiceQst_answ

答案

char

not null

 

7.判断题信息表

列名

说明

数据类型

约束

TrueOrFalse_id

试题号

tinyint

 not null IDENTITY(1, 1) primary key

TrueOrFalse_Question

题型号

int

not null

foreign key

TrueOrFalse_Info

内容

text

not null

TrueOrFalse_answ

答案

char

not null

 

8.试卷信息表

列名

说明

数据类型

约束

Paper_id

试卷号

tinyint

not null IDENTITY(1, 1) primary key

Paper_Course

科目号

char(10)

not null

Paper_madedate

时间

datetime

not null

Paper_teacher

出题教师号

char(8)

not null

foreign key

Paper_Info

内容

text

not null



五.数据库设计

5.1 创建表

(1).Specialty专业信息表



(2).教师信息表


(3).科目信息表


(4).题型信息表


(5) .设计题信息表


(6) .选择题信息表


(7) .判断题信息表


(8) .试卷信息表


5.2 创建必要视图

1.创建试题-科目视图


(2).设计题视图


3.选择题视图



(4).判断题视图



六、总结

经过一周的设计和开发,试题库管理系统基本开发完毕。其功能基本符合学校管理者需求,
能够完成各个专业各门学科的试题录入,根据要求自动成卷等多方面的功能。

猜你喜欢

转载自blog.csdn.net/madehaiyoushei/article/details/80818248
今日推荐