在线考试系统数据库设计
- 格式:docx
- 大小:26.46 KB
- 文档页数:27
考试系统数据模型设计文档目录一、项目背景 (2)二、术语和缩写词 (2)2.1 术语 (2)2.2 缩写词 (3)三、数据模型概述 (3)3.1 模型范围 (3)3.2 模型目标 (3)四、概念数据模型(CDM) (3)4.1 实体关系图(ERD) (3)4.2 实体说明 (4)五、逻辑数据模型(LDM) (5)5.1 表结构设计 (5)5.2 视图设计 (6)5.3 存储过程设计 (6)六、物理数据模型(PDM) (7)6.1 数据库选型 (7)6.2 数据库架构设计 (7)6.3 数据存储和性能优化 (7)七、数据安全设计 (8)7.1 用户和权限管理 (8)7.2 数据加密 (8)八、数据备份和恢复策略 (8)8.1 备份计划 (8)8.2 恢复策略 (8)九、数据模型验证和维护 (9)9.1 验证计划 (9)9.2 维护计划 (9)十、附录 (9)10.1 参考资料 (9)10.2 数据字典 (9)一、项目背景随着教育信息化的发展,考试的形式和方式也在不断变革。
为了满足在线考试的需求,提高考试的效率和质量,开发一款功能强大、稳定可靠的考试系统至关重要。
本数据模型设计文档旨在为考试系统的数据库设计提供详细的规划和说明。
二、术语和缩写词2.1 术语✓考生:参与考试的人员。
✓试题:考试中呈现给考生的问题。
✓试卷:一组试题的集合,用于一次考试。
✓考试:考生在规定时间内完成试卷答题的过程。
✓成绩:考生完成考试后获得的分数。
2.2 缩写词✓UID:用户标识(User Identifier)✓SID:试卷标识(Sheet Identifier)✓TID:试题标识(Test Identifier)三、数据模型概述3.1 模型范围本数据模型涵盖了考试系统中与考生信息、试题管理、试卷生成、考试安排、成绩统计等相关的功能模块。
3.2 模型目标✓支持高效的试题录入、存储和检索。
✓实现灵活的试卷生成和管理。
✓准确记录考试过程和结果。
(一)考生
考生=编号+姓名+密码+性别+注册时间+提示问题+问题答案+专业+身份证号编号设计=类型(1:考生;
2:教师;3:管理员)+注册序号
(二)教师
教师=编号+姓名+密码+性别+注册时间+提示问题+问题答案+专业+身份证号编号设计=类型(0:考生;1:教师;2:管理员)+注册序号
(七)管理员管理员=编号+姓名+密码+性别+加入时间+身份证号+类别编号设计=类型(0:考生;1:教师;2:管理员)+注册序号
(四)套题
套题=编号+名称+所属课程+添加时间
tb Tao
(六)单选题考试题目
(七)多选题考试题目
(八)填空考试题目
(九)判断题考试题目
tb_pan Questio ns 表的结构
字段名
数据结构 是否为空
是否主键/外默认值 键
描述
(十)客观题(问答题,计算题该部分由教师批改)考试题目
tb objQuestions 表的结构
(十一)考生成绩信息表
tb stuResult
(十二)考生选课表
tb stuLesson
(十三)教师选课表
tb_tecLesson表的结构。
java在线考试系统课程设计一、课程目标知识目标:1. 理解Java语言面向对象编程的基本概念,掌握类的定义、属性和方法的创建与调用。
2. 学会使用Java集合框架处理数据,掌握异常处理机制。
3. 掌握Java在线考试系统的需求分析、功能模块划分和数据库设计。
技能目标:1. 能够运用所学知识独立设计并实现一个Java在线考试系统。
2. 通过实际操作,提高问题分析、系统设计和编程实现的能力。
3. 学会使用Java开发工具(如Eclipse)进行项目开发,培养良好的编程习惯。
情感态度价值观目标:1. 培养学生团队协作精神,提高沟通与协作能力。
2. 增强学生对Java编程的兴趣,激发主动学习的热情。
3. 培养学生面对问题时的积极态度,勇于克服困难,提高解决问题的能力。
课程性质:本课程为实践性较强的课程,旨在通过Java在线考试系统项目的设计与实现,让学生掌握Java编程的基本知识和技能,提高实际项目开发能力。
学生特点:学生已具备一定的Java基础,具有较强的学习能力和探究精神,但实际项目经验不足。
教学要求:注重理论与实践相结合,充分调动学生的主观能动性,培养其独立思考和解决问题的能力。
通过项目实践,使学生能够将所学知识应用于实际项目中,提高编程技能和团队协作能力。
同时,关注学生情感态度价值观的培养,激发学习兴趣,为其未来的学习和发展奠定基础。
二、教学内容1. Java面向对象编程基础:- 类与对象- 继承与多态- 抽象类与接口- 异常处理2. Java集合框架:- List、Set、Map接口及其实现类- 集合的遍历与操作3. 数据库设计:- 数据库基本概念- SQL语句编写- JDBC连接数据库4. Java在线考试系统设计与实现:- 系统需求分析- 功能模块划分- 数据库设计- 界面设计- 业务逻辑实现5. 项目实践:- 分组合作,明确分工- 项目进度安排与监控- 编码规范与代码审查- 系统测试与优化教学内容根据课程目标进行科学性和系统性的组织,涵盖Java面向对象编程、集合框架、数据库设计和项目实践等方面。
在线考试系统技术方案目录一、背景 (3)二、系统内容 (4)2.1、考试内容的设计和编辑 (4)2.1.1题型设计 (4)2.1.2题目难度设置 (4)2.1.3题目数量制定 (6)2.1.4考试内容的时效性 (7)2.1.5答案设置 (7)2.1.6试卷组成 (7)2.1.7试卷评分标准 (7)2.2 系统用户管理 (8)2.2.1用户注册 (8)2.2.2登录模块 (8)2.2.3用户信息管理 (8)2.2.4用户权限和角色控制 (8)2.2.5用户反馈和处理 (8)2.3 考试流程管理 (9)2.3.1考试安排 (9)2.3.2考试提醒 (9)2.3.3考试监管 (9)2.3.4试卷发放 (9)2.3.5答题记录和评分 (10)2.3.6考试结果查询 (10)2.3.7考试数据处理 (10)2.4 考试安全性管理 (10)2.4.1身份验证机制 (10)2.4.2试卷加密 (11)2.4.3考试监管 (11)2.4.4网络安全 (11)2.4.5备份与恢复 (11)2.4.6安全审计 (11)2.4.7投诉处理 (11)2.5考试结果分析模块 (12)2.5.1数据搜集 (12)2.5.2数据处理 (12)2.5.3成绩排名 (12)2.5.4能力评估 (12)2.5.5学科分析 (12)2.5.6教师评估 (13)2.5.7可视化分析 (13)2.6 技术支持和维护 (13)2.6.1系统监控 (13)2.6.2数据备份 (13)2.6.3系统更新 (14)2.6.4技术培训 (14)2.6.5技术支持 (14)2.6.6安全防范 (14)2.6.7故障处理 (14)三、数据库设计 (15)3.1用户表(users) (15)3.2试卷表(papers) (15)3.3题目表(questions) (16)3.4答卷表(answers) (16)3.5考试记录表(records) (16)3.6分数汇总表(scores) (17)四、技术方案规划 (20)五、培训 (21)六、其他说明 (21)七、总结 (21)一、背景在线考试系统是一种基于网络技术与计算机软硬件的教育评价工具,它利用互联网的便利性和强大的信息处理能力,提供了一种方便、快捷、高效的教育考核方式。
网络在线考试系统的数据库设计作者:雷晓敏来源:《中小企业管理与科技·上旬刊》2011年第11期摘要:为了建立一个新型的、安全可靠的网络在线考试系统,数据的安全性和完整性应有较高的要求。
该文介绍了在线考试系统数据库的概念设计、物理结构设计、逻辑结构、数据库连接池技术,对于在线考试系统的数据库设计有一定的参考价值。
关键词:在线考试系统SQL Server 2000数据库连接池技术众所周知,当今社会各种领域与计算机互联网技术越来越密切相关,计算机信息技术的快速发展正在改变着世界。
随着计算机网络及网络应用软件的日益普及,现代化教育蓬勃发展,建立一个新型的、安全可靠的在线考试系统已成为可能。
1 数据库开发工具的选取由于网络在线考试系统对于数据的安全性及完整性要求比较高,并且为了增加程序的适用范围,还要保证系统可以拥有存储足够多的数据能力。
因此需要选择一种可靠、安全和易用的数据库开发工具,SQL Server 2000作为一种高性能的关系型数据库管理系统,有着较好的可靠性、安全性和易用性。
SQL server 2000是Microsoft公司在2000年推出的,它继承了SQL Server 7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,共有4个版本,分别是个人版,标准版,企业版和开发版。
SQL server 2000的特点:①Internet集成。
②可伸缩性和可用性。
③企业级数据库功能。
④易于安装、部署和使用。
2 数据库设计2.1 数据库概念设计2.1.1 考生档案实体考生档案实体包括编号、姓名、密码、性别、专业、班级、提示问题、问题答案、注册时间、身份证号属性。
2.1.2 教师档案实体教师档案实体包括编号、姓名、密码、性别、所属院系、注册时间、联系电话属性。
2.1.3 管理员档案实体教师档案实体包括编号、姓名、密码。
2.1.4 套题实体套题实体包括编号、套题名称、所属课程和添加时间属性。
学生在线考试系统需求分析设计学生在线考试系统需求分析报告1.引言随着Internet的迅速发展和广泛普及,网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的推动力。
远程教育成为现代教育技术未来发展的重要方向之一,考试测试作为远程教育的一个子系统也成为一个重要的研究领域。
Internet技术的发展使得考试的技术手段和载体发生了革命性的变化,Internet的开放性、分布性的特点和基于Internet的巨大的计算能力使得考试突破了时间和空间的限制。
与传统考试模式相比,在线考试具有无可比拟的优越性,它可以将传统考试过程中的试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量的时日、人力、物力与财力,而且还可以大幅度增加考试成绩的客观性和公正性。
传统的考试方式一般要经过人工出卷、考生考试、人工阅卷等过程。
对于一些课程来说,随着考生数量的增加,教师出卷阅卷的工作量将会越来越大,并且其工作十分烦琐块、题库管理模块、试卷管理模块、学生管理模块、教师管理模块以及成绩管理模块的设计。
2.1系统需求分析设计学生在线考试系统主要包括学生端,教师端和管理员端。
首先是学生端,需要学生在登录后实现考试、查询成绩和修改密码功能。
其次是教师端,需要教师在登录后实现学生成绩查询、选课、课程题库的增删改查以及密码的修改。
再次就是管理员端,这里管理员要实现学生、教师信息的录入以及其增删改查功能,还要录入学校的全部课程供教师选择。
学生在线考试系统要考虑的主要是怎样出题、怎样收集答案、怎样保存,怎样判分这些问题。
系统功能需求图:系统流程图:2.1.1目标设计学生在线考试系统的功能如下。
1.登录系统的功能如下:●选择角色登录的欢迎界面●特定角色的登录界面及密码验证2.在线考试系统的主要实现功能要求●让学生选择试卷类型●从试题库中随机出题给学生●将随机试卷保存在暂时表中●保存学生试卷答案●自动给学生的试卷判分●查询学生成绩3.在线账户管理系统的主要功能要求●浏览学生、教师的信息●对学生、教师的信息进行添加、修改和删除●更改用户的密码2.1.2设计思想在线考试系统充分利用了Brower/Server结构的特点,实现了将考试系统移植到Internet的功能,该系统的优势在于极大的简化了老师出题的工作和学生考试的试题,做到了出题的多样性。
北方民族大学课程设计报告系(部、中心)计算机科学与工程学院姓名于淼学号20113185专业计算机科学与技术班级(2)班同组人员尚娜、农晓蕾、杨柳课程名称网络程序设计设计题目名称在线考试系统起止日期 2013.10.10-2013.12.8 成绩________________________________指导老师签名________________________在线考试系统摘要基于Web的在线考试系统——随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大,从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。
在众多的网络服务中,Web 给人耳目一新的感觉,而在这其中,JSP技术和基于Struts框架技术则因为可以进行复杂的数据库操作、很强的交互性以及方便用户控制和管理备受青睐。
目前存在各级各类的考试,而它们的各种工作主要还是依赖于手工完成,手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。
计算机信息化管理有着储存量大,速度快等许多优点,因此我们可以利用计算机网络,利用ASP技术实现动态的管理。
随着计算机网络技术的进一步发展和普及,利用JSP技术开发的各种网络在线考系统必将大行其道。
关键字:JSP技术;Struts ;在线考试系统目录:1、在线考试系统的需求分析 (4)1.1硬件,软件环境说明 (4)1.1.1硬件环境说明 (4)1.1.2软件环境说明 (4)1.1.3在线考试系统网站的技术说明 (7)1.1.3.1关于对B/S架构的理解 (7)1.1.3.2B/S架构带来的巨大好处 (8)1.2功能需求分析 (8)2、在线考试系统的总体规划与结构框图 (8)2.1在线考试系统总体设计 (8)2.2在线考试系统的总体规划设计 (8)2.2.1学生模块 (9)2.2.2管理员模块 (9)2.3在线考试系统各个模块之间的关系图及动作分解 (10)2.3.1各个子模块之间的关系和操作动作分解 (10)2.3.2管理员模块下各个子模块之间的关系及动作分解 (10)3、在线考试系统数据库设计 (11)3.1数据库的需求分析 (11)3.2在线考试系统概念结构设计 (11)3.2.1在线考试系统数据库的实体设计 (11)3.2.2在线考试系统数据库的E-R图 (12)3.3数据库的逻辑结构设计 (13)3.3.1在线考试系统数据库逻辑结构设计 (13)4、针对具体的功能模块写出设计流程图与关键的程序代码 (14)4.1在线考试系统设计流程图 (14)4.2在线考试系统管理模块设计流程图 (14)4.3在线考试系统用户登录模块设计 (15)4.4系统关键程序代码 (16)4.4.1dl.jsp源代码 (16)4.4.2zc.jsp源代码 (18)4.4.3zxks(1).jsp源代码 (23)4.4.4xgzl.jsp源代码 (26)4.4.5htdl.jsp源代码 (31)4.4.6gl_student.jsp源代码 (33)4.4.7gl_addstudent.jsp源代码 (35)4.4.8gl_lesson.jsp源代码 (40)4.4.9gl_addlesson.jsp源代码 (42)4.4.10gl_timu.jsp源代码 (46)4.4.11gl_addtimu源代码 (48)5.测试和演示系统并抓取图形界面 (53)5.1系统开发与运行环境的配置 (53)5.1.1JDK的安装与配置 (53)5.1.2Tomcat的安装与配置 (53)5.1.3Dreamweaver CS3的站点的配置 (53)5.2演示系统并抓取系统图形界面 (58)6、测试结果及存在的问题 (65)6.1测试的结果 (65)6.2存在的问题 (66)7、参考文献 (66)1.在线考试系统的需求分析1.1硬件、软件环境说明1.1.1硬件环境说明在线考试系统的硬件环境是:CPU采用的是Inter(R)Core(TM)i3-2330M CPU@2.20GHz;硬盘容量:500GB;显示器的分辨率是1366×768。
(一)考生
考生=编号+姓名+密码+性别+注册时间+提示问题+问题答案+专业+身份证号编号设计=类型(1:考生;2:教师;3:管理员)+注册序号
(二)教师
教师=编号+姓名+密码+性别+注册时间+提示问题+问题答案+专业+身份证号编号设计=类型(0:考生;1:教师;2:管理员)+注册序号
(七)管理员
管理员=编号+姓名+密码+性别+加入时间+身份证号+类别
编号设计=类型(0:考生;1:教师;2:管理员)+注册序号
(四)套题
套题=编号+名称+所属课程+添加时间
(五)课程表
(六)单选题考试题目
(七)多选题考试题目
(八)填空考试题目
(九)判断题考试题目
(十)客观题(问答题,计算题该部分由教师批改)考试题目
(十一)考生成绩信息表
(十二)考生选课表
(十三)教师选课表
tb_tecLesson表的结构。
《软件工程项目设计》设计题目:在线考试系统指导教师:学生姓名:学生学号:年月日目录引言 (2)1.1引言 (2)1.2背景 (3)1.3定义 (3)二.系统的功能分析 (3)2.1需求分析 (3)2.2可行性分析 (3)三.主要任务 (4)3.1 目标 (4)3.2 具体功能 (5)33 条件限制 (6)3.4系统的开发环境 (6)四.在线系统的需求规定 (7)4.1 对功能的规定 (7)41.1 该系统的数据流分析 (7)4.1.2 系统的层次模块图 (8)4.2数据库设计 (9)4.2.1数据库概要说明 (9)4.2.2数据库概念设计 (9)4.2.3系统的总体流程图 (14)4.2.4数据字典 (15)4.3 对性能的规定 (16)4.3.2时间特性要求 (17)4.3.4灵活特性要求 (17)4.3.5 输入输出要求 (17)4.3.6数据管理能力要求 (17)4.3.7故障管理能力要求 (18)4.3.8其他专门要求 (18)五.运行环境规定 (18)5.1设备 (18)5.2 接口 (18)5.3控制 (19)六.在线系统的实现 (19)6.1数据库的表设计 (19)6.2公共类的编写 (22)6.3模块实现 (22)6.3.1登录模块: (22)6.3.2考生注册模块 (23)6.3.3考生在线考试模块 (25)6.3.4试题添加模块 (30)七.结束语 (43)参考文献 (43)引言1.1引言伴随着网络技术的飞速发展,现在很多国外的大学和社会其他各部门都已经开设了远程教育。
通过计算机网络实现异地教育和培训。
但是远程教育的软件开发还处于起步阶段,随着这项技术的不断深入。
就要求有更好更完善的软件系统应用到远程教育中去。
同时给软件开发人员提出更高的设计要求。
考试是教育中的一个重要环节。
在我国虽然远程教育已经蓬勃发展起来。
但是目前学校和社会上的各种考试大都采用传统的考试方法。
在此方法下组织一次考试至少经过五个步骤,及人工出题、考生考试、人工阅卷。
西南财经大学Southwestern University of Finance and Economics课程实验报告课程名称:数据库学生姓名:周小钰、李佳颖学院:经济信息工程学院专业:计算机科学与技术指导教师:李玉荣.2016年12月1.课程设计题目与要求1.1数据库设计题目设计和实现一个网上在线考试系统,系统应完成以下基本的业务:a.至少两个教师,每个教一门课程b.每个班至少包含十名学生。
c.教师能够修改试卷的题目并模仿一名同学参加一门考试d.教师可提取一份试卷查卷e.教师可检查其所教班级的成绩、任一学生的成绩以及查询全班的平均成绩和总成绩。
f.每一套题至少包括十道选择题g.选择题自动阅卷,书写题人工阅卷以上很粗略描述了网上考试系统的基本要求,你们可以根据实际问题的需要,补充和细化系统的要求。
本课程设计包括两个部分:数据库和用户界面(用户图形化界面基本要求就是登录加试卷内容的提取)1.2数据库设计要求a.使用java/c语言,源程序要有适当的注释,使程序易于阅读b.建议作出用户界面c.学生可自动增加新功能模块2.数据库设计过程2.1需求分析2.1.1业务范围a.增加、删除、维护学生账号,老师账号,课程信息和选课信息b.在线出题、出题过程可修改试题、答题、分数c.学生若有疑问可以由老师提出自己的答卷查卷d.统计一个班的学生的成绩情况供老师分析e.提取试题2.1.2业务流程a.进入在线考试系统b.通过输入账号密码判断身份,分别进入不同界面:(1)进入管理员界面后获取管理员身份。
管理员具有对整个系统的管理权限,可以管理所有账户,管理课程,以及对选课过程控制。
(2)进入教师界面后获取教师身份。
教师有权自出题、对题库进行管理以及对学生试卷进行查询。
进入出题模块后,教师可自主命题,命题内容分为单选题和填空题。
进入改题模块后,首先判断是否已有人做题,若已存在完成题目的记录,则执行修改题目功能;若无学生完成题目的记录,则执行修改题目和答案两项功能。
题目:考试管理系统的数据库设计说明书1. 背景介绍考试管理系统是学校、培训机构或企业等组织用来管理考试相关信息的系统。
它涉及到考试安排、考试成绩、题库管理等多个方面的内容。
在这篇文章中,我们将探讨考试管理系统的数据库设计,包括系统的需求分析、数据库表的设计、关系建立等方面。
2. 系统需求分析考试管理系统的数据库设计首先需要进行系统的需求分析。
这其中包括对系统功能的详细了解,例如考试安排、试题管理、成绩统计等。
还需要考虑到用户的需求,包括管理员、教师和学生等不同角色的需求。
在数据库设计中,需求分析非常重要,它能够决定系统的功能和性能。
3. 数据库表的设计基于对系统需求的分析,我们需要设计数据库的表结构。
这包括考试安排表、试题信息表、成绩统计表等。
每个表需要包括哪些字段,字段的数据类型和长度是多少,以及字段之间的关系等都需要进行详细的设计。
为了提高系统的效率,还需要考虑到索引的设计和表的规范化处理。
4. 关系的建立在数据库设计中,关系的建立是非常重要的一环。
这涉及到表与表之间的关联,包括一对一关系、一对多关系和多对多关系等。
在考试管理系统中,不同的信息之间存在着复杂的关系,我们需要设计好表之间的关系,以确保数据的完整性和一致性。
5. 系统的安全性在考试管理系统的数据库设计中,系统的安全性也是需要重点考虑的问题。
这包括对用户权限的管理、数据的加密和备份等内容。
只有设计好数据库的安全机制,才能够保护系统不受到非法入侵和数据泄露的威胁。
6. 个人观点和理解在设计考试管理系统的数据库时,我认为需要充分考虑到系统的实际需求和用户的使用习惯,确保系统能够方便、高效地运行。
数据库设计不仅仅是一种技术活动,更是对系统整体架构的思考,需要考虑到系统的可扩展性和稳定性。
7. 总结考试管理系统的数据库设计是一个复杂而又精细的工作。
它需要结合实际需求,通过需求分析、表设计、关系建立和安全性保障等环节,才能够设计出一套高效、安全的数据库系统。
在线考试系统的设计与实现摘要:随着社会越来越快的发展,尤其是it行业的迅速普及,很多领域对计算机的使用不仅仅是一种时尚,更是一种依赖。
就网上考试为例,既节省资源时间,又节省空间,还具有随时性。
到目前为止,基于b/s、c/s结构的在线考试系统已经有很多了,而且是五花八门。
对在线考试进行整体的分析,明确了系统的可行性和用户需求。
关键词:在线考试系统;b/s;c/s一、系统分析(一)在线考试系统一般需求分析本系统是一个jsp与数据库结合的典型系统,该系统下考生所答的试卷就是一份虚拟试卷。
一份考卷就是由若干题型、每个题型包括若干个题组成的,每个题型都有从易到难的层次梯度。
从不同身份权限角度来给系统分块,本系统由管理员和用户两个模块组成,所以本系统主要完成以下功能。
管理员(或者教员)对题库和考生进行管理,对试题进行增加、删除、改题,对考生信息进行管理。
要注意的是,鉴于考试环境一般为机房,考试者之间的距离很近,为了使在线考试更规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。
用户功能模块主要包括信息管理,该功能下,考生可以对个人的基本信息进行修改;在线考试,该功能下,考生对虚拟试卷进行答题;成绩查询,该功能下,考生可以查询自己的成绩。
(二)系统功能模块1.服务器端生成试题:负责从题库中随机产生当场考试的相应试题。
考生监控:负责在考试期间管理监控各考生的考试状态和答题时间。
试卷回收:负责在考试结束后,将考生提交的答案上传到数据库服务器中。
试卷评分:负责自动评出提交试卷的分数(客观题)。
2.客户端登录服务:负责用户的登录输入,与服务器端的验证,如果是重登录的,需要输入重登录密码。
题目下载:负责从数据库中读取试题数据,并下载到客户端。
用户答题:负责在客户的浏览器中显示下载的相关题目,供用户答题。
答案上传:负责将客户所答题目的答案上传到服务器端。
数据库连接服务:负责从各共性服务层模块接收相关数据库连接、查询、修改等服务并返回相关数据。
在线考试系统的设计与实现的开题报告一、选题背景及意义随着信息技术的不断发展,在线考试系统越来越受到人们的关注和重视。
在线考试系统是基于网络技术、数据库技术和计算机技术等多种技术开发而成的一种电子化考试系统,它有效地将传统的纸笔考试转化为电子化考试,实现了时空的解耦和提高了考试的效率与准确性。
目前,许多企业、高校和各级政府部门都采用在线考试作为人员选拔、晋升和评价的一种方式,该系统可以极大地节省考试时间和人力物力成本,并且对考试的结果进行自动化分析和处理,让考试结果更加准确和客观。
本文旨在设计并实现一个完整的在线考试系统,包括前端页面设计、后端逻辑实现、数据库设计等方面,以期为学校、企业、政府等机构提供一个方便、高效、安全的考试系统。
二、研究内容及研究目标本项目的研究内容主要包括以下几个方面:1.在线考试系统的需求分析和功能设计;2.在线考试系统的前端设计和开发,包括页面布局设计和交互逻辑实现;3.在线考试系统的后端设计和开发,包括数据传输的安全性、考试题目的管理和批处理以及考试结果的自动化处理;4.在线考试系统的数据库设计和实现,包括数据表的设计和数据表与表之间的关系设计以及数据表的实现和维护;5.对在线考试系统的性能进行测试,包括响应时间、并发量、数据量等方面的测试。
本项目的研究目标主要有以下几点:1.设计并实现一个方便、高效、安全的在线考试系统,并满足用户需求;2.优化在线考试系统的性能,提高系统响应速度和支持并发量;3.保障在线考试系统的数据传输、数据处理和数据存储的安全性,尽可能地避免数据泄露和数据损坏的情况发生;4.提高在线考试系统的用户体验,让用户在考试过程中感受到良好的交互和流畅的操作。
三、研究方法及步骤本项目采用面向对象的软件开发方法,包括需求分析、系统设计、编码实现、测试等几个基本阶段。
具体的步骤如下:1.需求分析阶段:主要进行用户需求的调研和收集,收集用户提出的需求并进行筛选、整理和概括,确定系统的功能需求和非功能需求。
数据库设计文档成员:曹丽琼冯继伟刘维毅班级08软工三班指导老师:***日期:2011-5-22目录数据库设计文档1引言1.1 编写目的本文档是本项目开发中至关重要的一部分,通过本档编写,对本项目中相关数据存储信息进行明确定位,对数据结构等相关信息进行明确说明。
本文档尽可能的详细说明各个实体的属性及相互联系,使开发人员的开发效率尽可能增加。
1.2 项目来源➢实训要求➢开发人员:全体成员➢文档使用者:oracle 开发人员、程序设计人员1.3 文档约定1.4 预期读者和阅读建议➢开发人员:对oracle和java熟悉➢测试人员:对java及oracle有一定的了解1.5 参考资料1 《在线考试系统可行性分析》2 《在线考试系统需求分析》3 《项目(bbs)数据库设计文档—刘维毅》42数据库命名规则➢db_examonline: 在线考试系统数据库➢tb_invigilate: 监考人员➢tb_user: 学生或用户信息表➢tb_select:选择题相关信息表➢tb_answer:简答题相关信息➢tb_boolean:判断题相关信息➢tb_admin: 管理员信息表➢tb_page:数据库测试试题3数据库设计说明3.1 数据库逻辑设计数据字典●考生属性:编号tid,姓名uname,登录密码upassword,学号uno,班级uclass,考试状态ustate●监考人员属性:编号tid,姓名name,登录密码password●管理员属性:编号aid,姓名name,登录密码password●试卷属性:编号pid,科目subject, 选择题数量snum, 判断题数量bnum, 问答题数量anum,考试时间pageDate●选择题属性:编号id,题目name,选项A optionA,选项B optionB,选项C option C,选项D optionD,所属科目subject●判断题属性:编号id,题目name,对选项yes,错选项no ,所属科目subject●简答题属性:编号id,题目name, 所属科目subject●科目属性:编号sid,科目subject实体关系E_R图S—R关系:学生关系表:Stb_user(usid,uname,upassword,uno,uclass,ustate)监考人员关系表:Stb_invigilate(tid,name,password)管理员信息关系:Stb_admin(aid,name,password)考试试卷信息关系:Stb_page(usid,pid,subject,snum,bnum,anum,pageDate)选择题信息关系:Stb_select(id,pid,subject,name,optionA,optionB,optionC,optionD)判断题信息关系:Stb_boolean(id,pid,subject,name,yes,no)简答题信息关系:Stb_answer(id,pid,subject,name)科目信息关系:Stb_subject(sid,subject)3.2 数据库物理设计暂无3.3 数据库分布暂无3.4 基表设计在线考试系统数据库:3.4.1.tb_user: 考生信息表属性:编号Tid,姓名name,登录密码password,学号number,班级class,考试状态stateCreate table tb_user(Tid number(10) primary key,Uname varchar2(50),Upassword char(16),Uno number(10),Uclass varchar2(50),Ustate number(1));3.4.2.tb_invigilate: 监考人员信息表属性:编号tid,姓名name,登录密码passwordCreate table tb_invigilate(Tid number(10) primary key,Name varchar2 (50),Password char(16));3.4.3.tb_admin: 管理员信息表属性:编号aid,姓名name,登录密码passwordCreate table tb_admin(Aid number(10) primary key,Name varchar2(50),Password char(16));3.4.4.tb_page:考试试卷信息表属性:编号pid,科目subject, 选择题数量snum, 判断题数量bnum, 问答题数量anum,考试时间pageDateCreate table tb_page(Pid number(10) primary key,Subject varchar2(50),Snum number(2),Bnum number(2),Anum number(2),pageDate date,tid number(10),constraint page_FK foreign key (subject) referencestb_subject(subject),constraint page_FK2 foreign key(tid) referencestb_user(tid));3.4.5.tb_select:选择题信息表属性:编号id,题目name,选项A optionA,选项B optionB,选项C option C,选项D optionD,所属科目subjectCreate table tb_select(Id number(10) primary key,Name varchar2(50),optionA varchar2(100),optionB varchar2(100),optionC varchar2(100),optionD varchar2(100),subject varchar2(50),pid number(10),constraint select_FK foreign key(subject) referencestb_subject(subject),constraint select_FK2 foreign key(pid) referencestb_page(pid));3.4.6.tb_boolean:判断题信息表属性:编号id,题目name,对选项yes,错选项no ,所属科目subjectCreate table tb_boolean(id number(10) primary key,Name varchar2(50),Subject varchar2(50),Pid number(10),constraint boolean_FK foreign key(subject) references tb_subject(subject),constraint boolean_FK2 foreign key(pid) references tb_page(pid));3.4.7.tb_answer:简答题信息表属性:编号id,题目name, 所属科目subjectCreate table tb_answer(Id number(5) primary key,Name varchar2(50),Subject varchar2(50),Pid number(10),constraint answer_FK foreign key(subject) referencestb_subject(subject),constraint answer_FK2 foreign key(pid) referencestb_page(pid));3.4.8.tb_subject:考试科目信息表属性:编号sid,科目subjectCreate table tb_subject(Sid number(10) ,Subject varchar2(50) primary key);//备注uid是关键字已被系统占用3.5 视图设计3.6 索引设计3.7 序列设计➢设计目的:通过序列的设计,可以使得编号可以进行自增,从而达到设计目的。
●Tb_sq序列自动进行递增初值为:1递增为:1最大值:无Create sequence tb_sqIncrement by 1Start with 1NomaxvalueNocycleCache 10;Tb_invigilate_sq监考人员的 tid 自动进行递增Create sequence tb_invigilate_sq Increment by 10Start with 10NomaxvalueNocycleCache 10;3.8 完整性设计请参阅本文档的基表设计的外键设置3.9 授权设计3.10 触发器设计●Tb_user_triggerCreate or replace trigger tb_user_triggerBefore insert on tb_userFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;/--insert into tb_user (uname, upassword,uno, uclass, ustate)--values(…);●Tb_invigilate_triggerCreate or replace trigger tb_invigilate_triggerBefore insert on tb_invigilateFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;Tb_admin_triggerCreate or replace trigger tb_admin_trigger Before insert on tb_adminFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;●Tb_page_triggerCreate or replace trigger tb_page_trigger Before insert on tb_pageFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;●Tb_select_triggerCreate or replace trigger tb_select_trigger Before insert on tb_selectFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;●Tb_boolean_triggerCreate or replace trigger tb_boolean_trigger Before insert on tb_booleanFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;●Tb_answer_triggerCreate or replace trigger tb_answer_trigger Before insert on tb_answerFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;Tb_subject_triggerCreate or replace trigger tb_subject_trigger Before insert on tb_subjectFor each rowDeclareNext_no number;BeginSelectInto next_noFrom dual;::=next_no;End;3.11 存储过程设计3.11.1CRUD中的CUD三个操作--向试卷表中插入信息(create操作)Create or replace procedure insert_tb_page(p_subject in %type,p_snum in %type,p_bnum in %type,p_anum in %type,p_pageDate in %type,--插入系统时间sysdatep_tid in %type)asBeginInsert into tb_page(subject,snum,bnum,anum,pageDate,tid)values(p_subject,p_snum,p_bnum,p_anum,p_pageDate,p_tid);ExceptionWhen DUP_VAL_ON_INDEX then('subject primary key error!');When others then('异常');End insert_tb_page;--//执行过程: execute insert_tb_page(‘’,’’,…);--向判断题表中插入信息(create操作)Create or replace procedure insert_tb_boolean(b_name in %type,b_subject in %type,b_pid in %type) asbeginInsert into tb_boolean(name, subject,pid) values(b_name,b_subject,b_pid);End insert_tb_boolean;--//执行过程: execute insert_tb_boolean(‘’,’’,…);--向简答题表中插入信息Create or replace procedure insert_tb_answer(a_name in %type,a_subject in %type,a_pid in %type)asBeginInsert into tb_answer(name,subject,pid) values(a_name,a_subject,a_pid);End insert_tb_answer;--向科目表中插入信息Create or replace procedure insert_tb_subject( s_subject in %type)asBeginInsert into tb_subject(subject) values(s_subject);ExceptionWhen DUP_VAL_ON_INDEX then('subject primary key error!');When others then('异常');End insert_tb_subject;--向选择题表中插入信息Create or replace procedure insert_tb_select( s_name %type,s_optionA %type,s_optionB %type,s_optionC %type,s_optionD %type,s_subject %type,s_pid %type)asBeginInsert into tb_select(name, optionA, optionB, optionC, optionD, subject, pid)values(s_name,s_optionA,s_optionB,s_optionC,s_optionD,s_subj ect,s_pid);End insert_tb_select;--管理员信息插入Create or replace procedure insert_tb_admin(a_name in %type,a_password in %type)asBeginInsert into tb_admin(name, password) values(a_name,a_password);End insert_tb_admin;3.12 数据复制设计暂无4查询记录语句--随机函数Select randnum from(select distinct round(1,60)) as randnum from dualConnect by rownum<=100Order by randnum)where rownum<=20;--随机查询20条选择题Select * from tb_select where id in(Select * from (select rownum rn from dualConnect by rownum<=100 order bywhereRownum<=20);--随机查询10条判断题记录Select * from tb_boolean where id in(Select * from (select rownum rn from dualConnect by rownum<=100 order bywhereRownum<=10);--随机查询5条简答题记录Select * from tb_answer where id in(Select * from (select rownum rn from dualConnect by rownum<=100 order bywhereRownum<=5);5词汇表P rimary key: 主键foreign key:外键6历史数据处理导出数据库:exp 用户名/密码导入数据库:imp 用户名/密码Ms-dos。