链接:https://pan.baidu.com/s/1ilMGCA_n1GPDk3O8k7w7Gg
提取码:m0ke
复制这段内容后打开百度网盘手机App,操作更方便哦
一、概要设计
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).判断题视图
六、总结
能够完成各个专业各门学科的试题录入,根据要求自动成卷等多方面的功能。