考试系统的设计和实现.docx
《考试系统的设计和实现.docx》由会员分享,可在线阅读,更多相关《考试系统的设计和实现.docx(44页珍藏版)》请在冰豆网上搜索。
考试系统的设计和实现
基于C/S架构考试系统设计和实现
毕
业
论
文
基于C/S架构考试系统设计和实现
摘要:
计算机技术发展,大家已经进入了信息时代,也有些人称为数字化时代;在数字化网络环境下,学生期望得到个性化满足,依据自己情况进行学习,同时也期望能够得到科学评价,老师期望有效改善现有考试模式,提升考试效率。
本系统关键以VisualStudio为开发环境,C#为开发语言,使用SQLServer数据库,实现了对系统管理,考生管理,题库管理,在线考试,试卷审批功效。
减轻老师工作负担及提升工作效率,和此同时也提升了考试质量,从而使考试更趋于公证、客观,愈加激发学生学习爱好。
关键字:
考试系统VisualStudioC#SQL
一、绪论
1.1研究背景及意义
现在学校和社会上多种考试大全部采取传统考试方法,在此方法下,组织一次考试最少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评定和试卷分析。
显然,伴随考试类型不停增加及考试要求不停提升,老师工作量将会越来越大,而且其工作将是一件十分烦琐和很轻易犯错事情,能够说传统考试方法已经不能适应该代化考试需要。
伴随计算机应用迅猛发展,计算机网络应用不停扩大,如远程教育和虚拟大学出现等等,且这些应用正逐步深入到千家万户。
大家迫切要求利用这些技术来进行在线考试,以减轻老师工作负担及提升工作效率,和此同时也提升了考试质量,从而使考试更趋于公证、客观,愈加激发学生学习爱好。
考试系统是全新科学教育模式完美表现,它能够立即是学生学习过后立即检验自己学习效果,已发觉自己不足,使得学习效率得到很大提升。
在本系统中,题目标生成、试卷提交、成绩批阅等全部能够自动完成。
只要形成一套成熟题库就能够实现考试自动化。
这么一来,老师所要做只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了老师负担,这表明其经济性是相当可观[1]。
本系统功效包含系统管理,考生管理,题库管理,在线考试,试卷审批功效。
开发设计这一考试系统,目标是对学生学能力测验,能够使学生对自我掌握知识能力自检;只需录入试题,自动生成试卷,降低老师工作负担。
随机生成试卷,是高是公平公正,提升了考试质量。
此课题研究目标在于,对于C/S模式系统熟练掌握,C/S结构基础标准是将计算机应用任务分解成多个子任务,由多台计算机分工完成,即采取“功效分布”标准。
用户端完成数据处理,数据表示和用户接口功效;服务器端完成DBMS关键功效。
这种用户请求服务、服务器提供服务处理方法是一个新型计算机应用模式。
它能够充足发挥用户PC处理能力,使应用服务器运行数据负荷矫情,数据存放管理功效较为透明。
1.2中国外发展现实状况及趋势
伴随计算机技术飞速发展,其强大功效已为大家深刻认识,计算机在高等学校考试中应用日趋普及,它已进入人类社会各个领域并发挥着越来越关键作用。
作为计算机应用一部分,使用计算机对网络化环境下组织考试、审批,含有着人工管理所无法比拟优点。
比如:
管理简单、节省时间、无空间限制、存放量大、保密性好、寿命长、成本低、可反复利用以有资源等。
这些优点能够极大地提升网络化环境下高校考试效率,也是高校网络在线考试科学化、正规化管理,和世界接轨关键条件。
而基于网络在线考试系统,正是信息化建设产物,它是传统考场延伸。
它能够利用互联网络和局域网,随时随地对学生进行考试,加上数据库技术利用,大大简化了传统考试过程。
所以网络是电子化教学不可缺乏辅助手段。
考试系统或题库管理系统在中国已经有很多成型项目和产品,其中比较著名有永中题库管理系统,海天题库管理系统等。
考试系统趋势是安装用户端,即可实现网上考试、成绩排行等功效,还有试卷保留、自动判分、成绩查询和分析等功效。
该系统同时拥有最开放题库管理系统和最灵活智能组卷系统,能够提供Excel题目导入导出、题库导入导出等设计,提供资源快速搜集和高度共享。
系统能提供基于网络教室、校园网及Internet网上考试、测验、模拟考等,尤其是能网上组织考试,学生能在家经过Internet参与考试和查询分数和老师批语等。
手工管理方法在题库管理等需要大量事务处理应用中已显得不相适应,采取IT技术提升服务质量和管理水平势在必行[2]。
1.3论文关键工作
系统以C#为开发语言,以SQL为后台数据库。
考试系统实现功效有:
功效包含系统管理,考生管理,题库管理,在线考试,试卷审批、
在本文叙述中,首先介绍了项目标背景、中国外现实状况和发展趋势,研究意义。
对系统特点做了比较具体分析,描述了所要开发系统实现目标。
然后具体分析了系统需求。
经过对使用用户具体需求,构架了具体功效,为系统设计及实现打下一个良好基础。
接着具体介绍系统设计和实现。
经过对系统需求分析,确定了系统应该含有功效,并从整体到局部把系统功效模块化;还将这些功效进行实体化,得到对应实体及实体关系图,构建适宜数据库。
而且结合相关技术及具体实现方案描述整个系统功效实现。
最终对全文工作进行了总结,说明了在撰写论文过程中心得和不足,并对以后而应用前景做出了展望。
本论文关键由以下五部分组成:
1绪论。
关键介绍了项目研究背景及意义,中国外现实状况,和本文关键工作。
2系统分析。
对本系统进行了需求、功效和可行性进行了全方面分析。
3系统设计。
结合需求分析划分系统功效模块和对数据库表设计。
4系统实现。
介绍了系统各模块具体实现步骤。
5系统功效运行和测试。
介绍了软件测试和部分测试用例。
二、系统分析
2.1系统需求分析
2.1.1编写目标
需求分析是确定系统目标、范围、定义和功效时需要做工作。
本文中需求分析目标是了解用户对于在线考试系统基础需求。
在分别了解学生用户、老师用户对于考试系统所需要功效后,寻求和分析系统处理方案。
确保最终实现系统能够满足用户基础需求。
本系统用户可分为管理员和一般用户两类。
管理员登录,关键负责进行基础资料、题库、试卷、成绩管理和查询等。
一般用户登录,关键负责在线考试、查询考试成绩,老师对试题管理等。
2.1.2可行性分析
可行性分析采取本系统,能够使整个系统内部全部信息工作简化,提升工作效益。
因为采取统一数据信息,使相关资料能够快速地查询所需数据、资料及其它信息,使信息快速高效运行。
(1)技术可行性
本系统以SQLServer为后台数据库,SQLServer是一个重大产品版本,它推出了很多新特征和关键改善,使得它成为至今为止最强大和最全方面SQLServer版本。
SQLServer出现在微软数据平台愿景上是因为它使得企业能够运行她们最关键任务应用程序,同时降低了管理数据基础设施和发送观察和信息给全部用户成本,而且它含有简单、易用等优点[3]。
基于VisualStudio[4]环境而进行开发。
VisualStudio是微软企业推出开发环境,VisualStudio能够用来创建Windows平台下Windows应用程序和网络应用程序,也能够用来创建网络服务、智能设备应用程序和Office插件,最为流行开发工具之一,它提供了相当齐备类库和友好界面,为数据库开发提供了比很好开发环境,提供了多个数据库访问技术,可视化编程环境,使操作愈加直观简便,确保了代码模块化要求,而代码模块化提升,很有利于以后对新系统扩展和修改。
总而言之,本系统设计和开发在技术上和硬件设备上条件全部满足,所以,在技术上是可行。
。
(2)经济可行性
成本方面:
完全能够利用现有硬件条件,不需增加新硬件设备。
效益方面:
现在情况还不确定具体效益。
(3)社会原因方面可行性
法律方面可行性
本系统开发所包含到模板和资源不会侵犯她人、集体和国家利益,遵照相关法律法规。
使用方面可行性
使用本系统用户只需拥有基础计算机基础。
2.1.3用例图及用例描述[5]
(1)管理员角色相关用例图图2-1所表示
图2-1管理员角色相关用例图
管理员登陆用例描述
用例名称:
管理员登陆
用例目标:
完成管理员权限登录
参与者:
管理员
前置条件:
点击打开登陆界面
基础事件流:
①进入登陆界面。
②输入对应用户名、密码、角色类型。
③点击登陆按钮。
后置条件:
完成管理员登陆,进入管理员界面。
管理员用户管理用例描述
用例名称:
用户管理
用例目标:
对其它用户进行添加、删除、修改操作。
参与者:
管理员
前置条件:
成功登陆程序,进入管理员界面
基础事件流:
①进入管理员用户界面。
②点击修改用户按钮。
③选择添加或修改用户信息。
进行对数据保留
后置条件:
在管理员界面进入修改用户界面,完成对其它用户操作,对数据保留。
扩展点:
管理员只对用户名,密码,姓名,班级进行初始化保留。
用户浏览窗口,能够对于学生,老师进行浏览查询,修改。
试题管理用例描述
用例名称:
试题管理
用例目标:
对试题进行删除、修改操作。
参与者:
管理员
前置条件:
成功登陆程序,进入管理员界面
基础事件流:
①进入管理员用户界面。
②点击试题管理按钮,进入试题管理界面。
③选择添加或修改试题信息。
进行对数据保留
后置条件:
在管理员界面进入修改试题界面,完成对试题操作,对数据保留。
扩展点:
管理员能够对试题类型、难易程度进行修改保留。
管理员能够根据科目,对试题进行查看浏览。
成绩管理用例描述
用例名称:
成绩管理
用例目标:
对成绩进行查看、修改操作。
参与者:
管理员
前置条件:
成功登陆程序,进入管理员界面
基础事件流:
①进入管理员用户界面。
②点击试题管理按钮,进入试题管理界面。
③选择添加或修改试题信息。
进行对数据保留
后置条件:
在管理员界面进入成绩查看界面,对数据保留。
扩展点:
管理员能够对成绩根据学生学号浏览查看,仅管理员能够对成绩进行修改。
科目管理用例描述
用例名称:
科目管理
用例目标:
对科目进行删除、修改操作。
参与者:
管理员
前置条件:
成功登陆程序,进入管理员界面
基础事件流:
①进入管理员用户界面。
②点击科目管理按钮,进入科目管理界面。
③选择添加或修改科目信息。
进行对数据保留
后置条件:
在管理员界面进入修改科目界面,完成对科目标操作,对数据保留。
(2)学生角色相关用例图图2-2所表示
图2-2学生角色相关用例用例图
学生登陆用例描述
用例名称:
学生登陆
用例目标:
完成学生权限登录
参与者:
学生
前置条件:
点击打开登陆界面
基础事件流:
①进入登陆界面。
②输入对应用户名、密码、角色类型。
③点击登陆按钮。
后置条件:
完成管学生登陆,进入学生界面。
管理信息用例描述
用例名称:
学生信息管理
用例目标:
完善学生个人信息资料
参与者:
学生
前置条件:
点击打开学生用户界面
基础事件流:
①进入学生界面界面。
②点击信息修改按钮。
③对数据选项进行填写。
保留数据。
后置条件:
完成学生个人信息资料完善。
扩展点:
学生无法对学号、班级、姓名进行修改。
在线考试用例描述
用例名称:
在线考试
用例目标:
实现学生在线考试
参与者:
学生
前置条件:
点击打开学生用户界面
基础事件流:
①进入学生界面界面。
②点击在线考试。
③浏览并同意考试前注意事项,开始考试。
提交试卷。
等候系统自动评分生成考试成绩。
后置条件:
完成对选择科目标自我测试。
扩展点:
系统在开始考试以后,自动显示考试时间给和考生提醒。
在要求时间之内没有交卷,系统会自动提交试卷。
考试结束以后,系统自动评分。
浏览成绩用例描述
用例名称:
浏览考试成绩
用例目标:
查看本人以往考试成绩
参与者:
学生
前置条件:
点击打开学生用户界面
基础事件流:
①进入学生界面界面。
②点击浏览成绩。
后置条件:
查看以往考试成绩。
扩展点:
学生对于成绩只能进行浏览,不能进行修改。
(3)老师角色相关用例图图2-3所表示
图2-3老师角色相关用例图
老师登陆用例描述
用例名称:
老师登陆
用例目标:
完成老师权限登录
参与者:
老师
前置条件:
点击打开登陆界面
基础事件流:
①进入登陆界面。
②输入对应用户名、密码、角色类型。
③点击登陆按钮。
进入相关界面。
后置条件:
完成管老师登陆,进入老师界面。
管理个人信息用例描述
用例名称:
老师信息管理
用例目标:
完善老师个人信息资料
参与者:
老师
前置条件:
点击打开老师用户界面
基础事件流:
①进入老师界面界面。
②点击信息修改按钮。
③对可填写数据选项进行填写。
保留数据。
后置条件:
完成老师个人信息资料完善。
扩展点:
老师无法对工号、姓名进行修改。
试题管理用例描述
用例名称:
试题管理
用例目标:
对试题进行删除、修改操作。
参与者:
老师
前置条件:
成功登陆程序,进入老师界面
基础事件流:
①进入管理员用户界面。
②点击试题管理按钮,进入试题管理界面。
③选择添加或修改试题信息。
进行对数据保留
后置条件:
在老师界面进入修改试题界面,完成对试题操作,对数据保留。
扩展点:
老师能够对试题类型、难易程度进行修改保留。
老师能够根据科目,对试题进行查看浏览。
浏览成绩用例描述
用例名称:
浏览考试成绩
用例目标:
查看学生以往考试成绩
参与者:
老师
前置条件:
点击打开老师用户界面
基础事件流:
①进入老师界面界面。
②点击按班级浏览成绩。
后置条件:
查看学生考试成绩。
扩展点:
老师对于成绩只能进行浏览,不能进行修改。
2.1.4非功效性需求[5]
(1)性能需求如表2-1所表示。
表2–1性能需求
关键性能
具体要求
处理器
1.6GHZ
内存
2G
编程语言
C#
编程技术
ASP.NetAjax
服务器
IIS
服务器所在系统环境
WindowsXP/Windows7
(2)质量属性如表2-2所表示。
表2–2质量属性
关键质量属性
具体要求
正确性
能实现基础功效
健壮性
能长时间运行不出问题
可靠性
比较稳定
性能
性能良好
易用性
易用
清楚性
清楚
安全性
安全
可扩展性
能够扩展
兼容性
兼容各个系统
可移植性
可移植
2.2系统功效分析
从总体上考虑,系统应该实现下列功效:
对管理员来说,包含试卷管理、题库管理、成绩管理。
1、试卷管理:
管理员能够从课程,多种题型数量等方面对某份试卷提出一定要求生成试卷规则。
同时,管理员还能够对库中已经有试卷进行修改和删除,添加新试卷等。
2、题库管理:
管理员能够对题库中试题进行三种基础操作:
添加新考题、删除旧有考题、修改原有考题,现在试题类型关键为选择题。
3、成绩管理:
管理员能够查看并修改考生考试成绩
4、学生管理:
管理员能够对学生资料进行查询、删除。
5、老师管理:
能够对老师资料进行查询、删除。
对学生用户来说,包含修改个人信息,在线考试功效。
1、在线考试:
学生能够任选时间进行在线测试,考试结束后,系统会依据已经有标准答案进行在线判卷,考生能够立即知道考试成绩。
2、查询以往考试成绩:
学生能够在线查询以前参与过每门课程考试相关信息。
3、修改个人信息:
只能修改密码,姓名电话,地址等个人一般信息,严禁修改学号登录名。
对于老师用户来说,能够修改个人信息、添加试题
1、修改个人信息:
一样只能修改一般信息,严禁修改工号。
2、添加试题:
针对自己所教讲课程提交试题,能够设置题目难易度。
试题难易程度分为简单、中等、困难三个等级。
2.3技术分析
2.3.1VisualStudio介绍
本学生信息管理系统是基于VisualStudio环境而进行开发。
VisualStudio是微软企业推出开发环境,VisualStudio能够用来创建Windows平台下Windows应用程序和网络应用程序,也能够用来创建网络服务、智能设备应用程序和Office插件,最为流行开发工具之一,它提供了相当齐备类库和友好界面,为数据库开发提供了比很好开发环境,提供了多个数据库访问技术,可视化编程环境,使操作愈加直观简便,所以借助VisualC#能够开发出功效强大、速度快、应用广泛而且占用资源少中小型数据库信息管理系统。
2.3.2SQLServer介绍
本系统以SQLServer为后台数据库,SQLServer是一个重大产品版本,它推出了很多新特征和关键改善,使得它成为至今为止最强大和最全方面SQLServer版本。
SQLServer出现在微软数据平台愿景上是因为它使得企业能够运行她们最关键任务应用程序,同时降低了管理数据基础设施和发送观察和信息给全部用户成本。
这个平台有以下特点[6]:
1、可信任——使得企业能够以很高安全性、可靠性和可扩展性来运行她们最关键任务应用程序。
在过去SQLServer基础之上,SQLServer扩展了它安全性:
SQLServer能够对整个数据库、数据文件和日志文件进行简单数据加密,而不需要改动应用程序。
进行加密使企业能够满足遵守规范和及其关注数据隐私要求。
简单数据加密好处包含使用任何范围或模糊查询搜索加密数据、加强数据安全性以预防未授权用户访问、还有数据加密。
这些能够在不改变已经有应用程序情况下进行,能够审查你数据操作,从而提升了遵从性和安全性。
高效——使得企业能够降低开发和管理她们数据基础设施时间和成本。
SQLServer降低了管理系统、.NET架构和VisualStudio®TeamSystem时间和成本,使得开发人员能够开发强大下一代数据库应用程序。
推出了陈说式管理架构(DMF),它是一个用于SQLServer数据库引擎新基于策略管理框架。
陈说式管理提供了以下优点[10]:
遵从系统配置政策
·监控和预防经过创建不符合配置政策来改变系统。
·经过简化管理工作来降低企业总成本。
·使用SQLServer管理套件查找遵从性问题。
改善了安装,加速开发过程。
3、智能——提供了一个全方面平台,能够在你用户需要时候给她发送观察和信息。
(1)集成任何数据
企业继续投资于商业智能和数据仓库处理方案,方便从她们数据中获取商业价值。
SQLServer提供了一个全方面和可扩展数据仓库平台,它能够用一个单独分析存放进行强大分析,以满足成千上万用户在几兆字节数据中需求。
下面是SQLServer中在数据仓库方面部分优点。
数据、备份压缩能够更有效存放数据,同时还提升了性能,降低了I/O要求。
捕捉变更数据,变更会被捕捉并被放在变更表中。
它捕捉变更完整内容,维护交叉表一致性,甚至是对交叉schema变更也起作用。
这使得企业能够将最新信息集成到数据仓库中。
(2)发送对应报表
SQLServer提供了一个可扩展商业智能基础设施,使得IT人员能够在整个企业内使用商业智能来管理报表和任何规模和复杂度分析。
SQLServer使得企业能够有效以用户想要格式和她们地址发送对应、个人报表给成千上万用户。
经过提供了交互发送用户需要企业报表,取得报表服务用户数目大大增加了。
这使得用户能够取得对她们各自领域洞察相关信息立即访问,使得她们能够作出愈加好、愈加快、更符合决议。
SQLServer使得全部用户能够经过企业报表引擎、报表设计器来制作、管理和使用报表。
SQLServer扩展了报表中可用可视化组件。
强大可视化工具比如地图、量表和图表等使得报表愈加友好和易懂[11]。
(3)使用户取得全方面洞察力
立即访问正确信息,使用户快速对问题、甚至是很复杂问题作出反应,这是在线分析处理前提(OnlineAnalyticalProcessing,OLAP)。
SQLServer基于SQLServer强大OLAP能力,为全部用户提供了愈加快查询速度。
这个性能提升使得企业能够实施含有很多维度和聚合很复杂分析。
这个实施速度和MicrosoftOffice深度集成相结合,使SQLServer能够让全部用户取得全方面洞察力。
SQLServer分析服务含有下面分析优势[12]:
SQLServer加强了分析能力和提供了更复杂计算和聚合,使得能进行分析更宽广。
新立方体设计工具帮助用户将分析基础设施开发工作流线化,使她们能够为优化性能建立处理方案。
块计算提供了一个在处理性能方面显著提升,使得用户能够增加她们层级深度和计算复杂度。
在SQLServer中一个新资源监控器提供了对资源利用情况具体观察,这使得管理员能够愈加好优化服务器使用。
2.3.3C#介绍
VisualC#(版本号:
4.0)[7]是微软开发一个面向对象编程语言,是微软.NET开发环境关键组成部分。
它是为生成在.NETFramework[8]上运行多个应用程序而设计。
是微软企业研究员AndersHejlsberg最新结果。
C#是面向对象编程语言。
它使得程序员能够快速地编写多种基于MICROSOFT.NET平台应用程序,MICROSOFT.NET提供了一系列工具和服务来最大程度地开发利用计算和通讯领域。
C#看起来和Java有着惊人相同;它包含了诸如单一继承、接口、和Java几乎一样语法和编译成中间代码再运行过程。
不过C#和Java有着显著不一样,它借鉴了Delphi一个特点,和COM(组件对象模型)是直接集成,而且它是微软企业.NETwindows网络框架主角。
C#简单、功效强大、类型安全,而且是面向对象。
C#凭借它很多创新,在保持C样式语言表示形式和优美同时,实现了应用程序快速开发[14]。
C#是一个安全稳定、简单、优雅,由C和C++衍生出来编程语言。
它在继承C和C++强大功效同时去掉了部分它们复杂特征(比如没有宏和不允很多重继承)。
C#综合了VB简单可视化操作和C++高运行效率,以其强大操作能力、优雅语法风格、创新预言特征和便捷面向组件编程支持成为.Net开发首选语言。
三、系统设计
3.1系统架构设计
C/S结构,即大家熟知用户机和服务器结构。
它是软件系统体系结构,经过它能够充足利用两端硬件环境优势,将任务合理分配到Client端和Server端来实现,降低了系统通讯开销。
现在大多数应用软件系统全部是Client/Server形式两层结构,因为现在软件应用系统正在向分布式Web应用发展,Web和Client/Server应用全部能够进行一样业务处理,应用不一样模块共享逻辑组件
3.2系统步骤设计
用户登录模块是系统唯一入口,任何用户必需使用系统登录模块登录成功后方可使用系统。
这是任何一个信息管理系统保密性需要。
本系统需要对用户身份进行验证,验证经过后再判定用户是管理员还是一般用户,依据角色判定用户能够使用系统中对应操作功效。
依据对用户需求分析可知,系统用户有三类:
管理员、老师、学生
她们权限分别是:
(1)管理员权限:
拥有最高权限,负责服务器端维护和管理、用户添加和直接访问数据库权力;能够对试题类型、题目直接修改删除,能够添加、删除、修改学生个人信息及考试成绩,能够对数据进行备份和恢复。
管理员系统步骤图图3-1所表示
图3-1管理员系统步骤图
第一步:
管理员进行登录时输入用户账号和密码;
第二步:
系统进行账号和密码匹配验证,假如匹配则登录成功进行下一步操作,不匹配则返回到第一步,管理员重新登录;
第三步:
系统验证成功后,管理员能够进行对学生用户、老师用户、试题、科目等管理操作。
(2)老师权限:
关键是对个人信息维护、查询学生考试成绩、试题基础信息,添加该老师所教科目标试题信息,公布