SQLCLR的智能化计算机考试系统_第1页
SQLCLR的智能化计算机考试系统_第2页
SQLCLR的智能化计算机考试系统_第3页
SQLCLR的智能化计算机考试系统_第4页
SQLCLR的智能化计算机考试系统_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、sqlclr的智能化计算机考试系统摘 要在网络技术己经逐渐渗入社会生活各个层面的今天,各行各业都在享受网络带来的快捷和方便。把计算机网络技术作为现代考试的一种手段,是教育改革的一个很重要的方向。基于b/s模式的网上考试系统是一种先进的考试方式,它比传统的考试方式更优越性。本文分析了网上考试系统开发背景、开发意义以及其开发的可行性分析,通过将其与传统考试模式的对比,充分说明网上考试系统的历史必要性。本文先对开发软件系统所使用的关键理论技术进行了研究,为以后系统的设计和实现打下良好的基础。又对传统考试过程进行了分析,明确了考试流程。然后进行了需求分析,提出了网上考试系统的功能主要包括个人管理、系统

2、管理、在线考试、查询成绩、试题管理、试卷管理、批阅试卷、在线交流等功能。在此基础上,指出了设计目标。根据网上考试系统的特点,确定了系统采用b/s三层模式结构。网上考试系统为学校课程学习、个性化学习提供了灵活、方便、科学的检测手段。通过应用于公共计算机课程考试,对系统的性能和功能进行了检测,结果表明该系统达到了预期的设计目标。本文设计的网上考试系统具有使用范围广、成本低、组卷快捷方便、判卷公平准确等特点,以及良好的用户界面和完善的功能。关键词:客户机/服务器(b/s),在线考试 ,sqlclrabstracttoday the network technology has been gradua

3、lly seeped into all aspects of the society. all walks of life enjoy the speedy and convenient life that the network brings. the computer network technology is regarded as a means of the modern test, which is a very important direction for educational reform. online examination system based on b/s mo

4、del is a kind of advanced test ways, which has more superiority than traditional examination way.this paper analyzes the online examination system development background, significance and its development feasibility analysis. through the contrast with traditional test model, it fully explains the ne

5、cessity of online examination system.considering the shortcomings of online examination and the actual situation of the school, we designed and implemented an online examination system based on the mode of b/s. in this paper, firstly we study the key theoretical technology used in developing softwar

6、e system, which laid a good foundation for the future design and implementation of the system. secondly, we study the traditional examination process to make clear the examination process and do demand analysis, then put forward an online exam systems function including personal management, system m

7、anagement, online examination, results enquiry, test management, paper management, marking papers, online exchanges and so on. i also point out the target of design. according to the characteristics of examination system, we determined to use b/s three-layer model as this system structure.online tes

8、t system provides a flexible, convenient and scientific testing method for course study and personalized learning. by applied the system to a public computer test, the results showed that the system achieved the desired design goals.online test system designed in this paper has many characteristics,

9、 such as using in a wide scale, large cost savings, generating test paper conveniently, marking test paper fairly and accurately, as well as good user interface.keywords: browser/server (b/s), online examination, sqlclr目 录1 概述71.1系统开发背景71.2系统开发意义72 可行性分析82.1经济可行性82.2技术可行性82.3管理可行性83 需求分析93.1现状分析93.2

10、设计目标93.3功能分析103.3.1系统用户描述103.3.2功能描述103.3.3系统用例图113.4系统开发环境配置133.5系统开发工具143.5.1 asp.net143.5.2 sqlclr154 概要设计154.1 系统体系结构设计154.2 系统总体类设计174.3 信息管理184.4 考试管理184.5 成绩管理194.6 题库管理204.7 数据库设计214.7.1 概念模型设计214.7.2 逻辑模型设计224.7.3 物理设计234.7.4 关系图255 详细设计265.1 系统详细分析265.2 系统主要功能模块的设计285.2.1 题库管理模块285.2.2 组卷管

11、理模块305.2.3 在线考试模块335.2.4 试卷批阅模块355.3 其他功能模块设计365.3.1 登录模块365.3.2 管理模块376 系统实现376.1 系统主要功能的实现386.1.1 试题管理模块的实现386.1.2 组卷模块的实现396.1.3 在线考试模块的实现406.1.4 批阅试卷模块的实现416.2 其他功能模块426.2.1 登录模块426.2.2 信息管理界面426.3 系统测试446.3.1 功能测试446.3.2 性能测试457 结束语467.1 系统优点467.2 系统缺点与展望467.3 个人体会47参考文献48致 谢491 概述1.1系统开发背景随着计算

12、机技术、网络技术迅速发展和高校校园网功能的日益完善,很多高校建立了基于校园网的网络信息管理平台,为提高教学管理水平提供了先进的管理手段。利用这样的技术和平台来进行在线考试,不仅能够减轻教师的工作负担提高其工作效率,与此同时也提高了考试的质量。目前,基于网络的在线考试系统己经成为现代考试方式的有力补充和发展,通过internet/intranet来实现网上考试,可以实现教考分离以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,可以大规模的实行考试,实现考试的客观、公证性,自动化组卷、阅卷可以减轻教师的工作强度,大大改善了考试工作的效

13、率。1.2系统开发意义现阶段,很多高校中学生的期末考试仍采用任课教师(个人或集体)考前出题的方式,同时为解决考前漏题、补考或缓考以及教务处要求的试题难度差异与题量等问题,教师就要同时出多套试卷,其题量和难度要求相同,而且要给出答案和评分标准。显然,随着考试类型的不断增加及要求的不断提高,教师的工作量将会越来越大,考试问题变得更繁琐更容易出错。如果在服务器上建立题库,每次考试都从题库中题目自动生成试卷,不仅较好地解决了考教分离的问题,而且可以把教师从繁琐的工作中解脱出来。近年来,网上考试系统的开发日趋完善,但是仍存在需要改善的问题。一方面,针对单一课程的小型题库,甚至某些学校购得的题库系统中的题

14、目本身是不可维护的,即使题目已不适合自己的学生考试使用,也无法更新题库中的题目1。另一方面,对于考试测试结果的分析,系统需要更加智能化得反馈给考生,真正达到考试的意义,让考生有所得。为解决系统中存在的这些问题,通过研究几种不同的网上系统和充分的考虑,最后给出了一个较为理想的考试系统解决方案,并结合当前比较流行的b/s结构开发一个功能完备的智能化网上考试系统。2 可行性分析可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、管理的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短

15、的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。2.1经济可行性主要是对项目的经济效益进行评价,利用计算机来实现网上考试已成为适应当今教学管理的方式。开发计算机考试系统,能够实现试卷管理和试卷生成自动化,在减少由于认为失误而造成损失的同时,也可以使教师减少工作量,更重要节省了人力和物力资源。本系统在经济上是可以接受的,并且本系统实施后可以显著提高考试效率和考试质量,便于学院完全实现网络化管理。所以本系统在经济上是可行的。2.2技术可行性技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要。软件方面,计算机考试系统需要的各种软件环境都已具

16、备,数据库服务器方面则有sql server,能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。其灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。2.3管理可行性由于本系统只是面向学校内部信息管理人员和在职教师开发的信息管理系统,系统参考了现实考试系统过程,按照人工操作流程设计而成,当然也有部分修改。以windows的友好界面和本系统良好的安全性设置,信息管理员在专业人员的指导帮助下迅速掌握系统的操作方法。同时,

17、用户也可以根据我们编写的详细的“用户操作说明书”,来学习正确的操作本系统。3 需求分析3.1现状分析传统的考试方法要求组织者提前命题试卷,然后约定一个统一时间,让所有考生到考场里进行考试。这种模式如图3-1 所示:图3-1 传统考试模式这种模式存在有较多的问题:命题:一方面命题难度和题量有限制,对于教师来讲负担很大,十分繁琐。另一方面,统一命题统一考试,需要命题组十分谨慎,要确保考试之前不能让命好的试题泄漏出去。试卷印刷:对与大规模的考试,试卷印刷成本高,纸张资源浪费严重。对于涉及地域范围较广的考试(如英语四,六级考试),还要考虑试卷的长途运送费用。在考试的印刷和运输过程中同样有试题泄漏出去的

18、问题,任何一个环节出了问题,都可能使前面有的工作付诸流水。考试安排:要对监考人员进行培训与管理,大规模的考试对教室资源和教师数量都有要求,这样同时涉及到人力和物力资源,因此考试安排非常复杂。进行考试:试卷相同,使得作弊成为普遍的现象,虽然加强监考,加重对作弊者的惩罚程度等,但这些都没能从根本上杜绝作弊,同时还增加了人员布置。不同地域监考的严格程度,考试时问控制的严格程度,也很难达到统一。过多人为因素的加入,也使得考试的公正性下降。判卷:考试结束后,采用人工判卷比较容易出错,并可能出现人为造成的不公正现象。3.2设计目标考试系统应该包括系统的登陆、在线的考试系统、分数查询系统、试卷管理系统和在线

19、阅卷系统等,能实现智能自动组卷、自动阅卷和自动分析,大大缩短考试周期,其总体目标:1考试系统可以帮助教师完成从题目设计,考试安排,考试实施,考卷批改到分数计算总结的整个考试过程;2所有的考试数据和其它数据库需要一种主流的方式进行存储和管理,例如使用数据库技术;3考试数据的存放和处理必须对考生保密,需要一定的安全性保障;4题目最好有一定的稳定性和随机性。稳定性可以保证每一次考试对每一个考生是公平的,随机性可以避免作弊的发生;5在考试系统中可以对题库进行更新和维护。3.3功能分析3.3.1系统用户描述考试系统根据用户性质把用户类别分为三种:系统管理员、教师和学生,只有被授权的用户才能使用系统的资源

20、。1系统管理员,其主要功能是做系统管理,具体有: 系统初始化、全面管理各类用户的密码、系统中数据库的转储与故障恢复、运行维护等;2教师,该用户是本系统中最重要的一类用户,首先教师要进行试题类型设计、题库中所有题目的编写与选定,一旦完成就可借助本系统为其提供的试题录入、查询、修改、删除、浏览等功能将海量试题存入数据库,并完成校对工作。同时该客户程序还提供两种生成试卷的功能,一种为与其它类用户相同的自动生成试卷,另一种为教师手动生成试卷功能,即由教师通过浏览功能逐题地从题库中选取。并且在以后的题库的更新需要教师完成;3学生,登录考试模块进行考试,系统经过智能分析反馈给学生考试结果。3.3.2功能描

21、述系统应该具备的基本功能(见图3-2):1用户管理,包括教师管理、学生管理和权限管理,实现用户添加与删除,更改用户信息以及根据不同的用户设置不同的权限;2模拟测试,用户可以从题库中随机抽取试题并进行测试;3考试管理,一方面能按照指定的要求(包括试题的种类,数量和难度)生成整套的考试题,学生可以上机考试并生成答案;另一方面教师手动生成试卷,学生上机考试并生成答案;4成绩管理,对答案进行自动评分,并可以反馈给学生考试结果,告诉学生哪方面掌握的不好,需要深入学习。5题库管理,对题库中的试题进行更新和维护。除了实现上述功能以外,在线考试系统还应该具有友好、简洁的界面,安全性要高,稳定性要强。图3-2

22、系统功能划分3.3.3系统用例图1系统总用例图根据上述功能分析,系统总用例图见图3-3.图3-3 系统总用例图2用户管理用例图用户管理中,系统管理员有查询教师、学生信息,设置其权限的权利,教师和学生都可以在系统中注册信息或者更新自己的信息,其用例图见图3-4.图3-4 用户管理用例图3考试管理用例图考试管理中,首先是试卷形成,一种系统自动组卷,另一种由教师手动组卷;其次学生考试;最后由系统存储答案,其用例图见图3-5.图3-5 考试管理用例图4成绩管理用例图成绩管理包括系统的自动评分、部分主观题的老师打分以及系统对成绩的智能分析和学生的成绩查询,用例图见图3-6.图3-6 成绩管理用例图5题库

23、管理用例图见图3-7. 图3-7 题库管理用例图3.4系统开发环境配置选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企业在规划内部网络时,将微软平台作为首选方案;令一方面从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都是非常容易,而且性能优越。具体如下:开发工具:microsoft visual studio 2010数据库:sql server 2008服务器:sql server 服务器技术:asp.net3.5系统开发工具本系统是基于asp.net+ sql server数据库,并利用sqlclr功能实现的。现对其进行简要介绍。3.5.1 asp.ne

24、t1. asp的特点描述从软件的技术层面看,asp有如下的特点如下:1.无需编译,asp脚本集成于html当中,容易生成,无需编译或链接即可直接解释执行。2.易于生成,使用常规文本编辑器(如windows下的记事本),即可以进行*.asp页面的设计。3.独立于浏览器,用户端只要使用可解释常规html码的浏览器,即可浏览asp所设计的主页。asp脚本是在站点服务器端执行的,用户端的浏览器不需要支持它。因此,若不通过从服务器下载来观察*.asp 主页,在浏览器端见不到正确的页面内容。4.面向对象,在asp脚本中可以方便地引用系统组件和asp的内置组件,还能通过定制 activex server c

25、omponent(activex服务器组件)来扩充功能。5.与任何activex scripting语言兼容,除了可使用vbscript 和jscript语言进行设计外,还可通过plug-in的方式,使用由第三方所提供的其它scripting 语言。6.源程序码不会外漏 asp脚本在服务器上执行,传到用户浏览器的只是asp执行结果所生成的常规html码,这样可保证辛辛苦苦编写出来的程序代码不会被他人盗取。2. asp的功能描述从应用的层面看,asp有如下的功能:1.处理由浏览器传送到站点服务器的表单输入。2.访问和编辑服务器端的数据库表。使用浏览器即可输入、更新和删除站点服务器的数据库中的数据

26、。3.读写站点服务器的文件,实现访客计数器、座右铭等功能。4.提供广告轮播器、取得浏览器信息、url表管理等内置功能。5.由cookies读写用户端的硬盘文件,以记录用户的数据。6.可以实现在多个主页间共享信息,以开发复杂的商务站点应用程序。7.使用vbscript或jscript等简易的脚本语言,结合html码,快速完成站点的应用程序。通过站点服务器执行脚本语言,产生或更改在客户端执行的脚本语言。8.扩充功能的能力强,可通过使用visual basic、java、visual c等多种程序语言制作activex server component以满足自己的特殊需要。3. asp的机制asp典

27、型工作过程如下,如图3-8所示:1.在客端浏览器上输入一个url让地址并回车,请求一个页面;2.服务器接受用户请求,调出相应页面(假设该页面含有一个表单);3.服务器把刚调出的含有表单的页面送给客户机浏览;4.用户填写完表单,单击“提交”按钮把数据送给服务器,假设表单中 action 的url是带有扩展名*.asp的文件; 5.服务器运行该asp文件,取出用户提交的信息; 6.如果asp文件需要从数据库中得到信息,那么它与数据库连接并从数据库中取出数据;7.运行asp文件,按照用户请求生成一个html结果页面; 8.服务器把结果页面送给客户机浏览器。图3-8 asp典型工作图3.5.2 sql

28、clr与之前的版本不同,sql server 2005以后就集成了.net公共语言运行时(简称sqlclr),这样开发人员就可以使用.net语言代码来创建和管理数据库。sqlclr程序运行在sql server服务器进程中,这不仅有利于获得更为优越的性能和可扩展性,而且能够有效地避免服务器与客户端之间不必要的数据交互;而且与t-sql语句相比,sqlclr代码能够使用高级程序语言的丰富特性,因而具有更强的功能和更广泛的应用范围;此外sqlclr对象在不同数据库之间的移植也比t-sql对象要方便的多。4 概要设计根据对系统的需求分析,针对系统各个功能进行概要设计,并完成对各个部分的类图或对象图设

29、计。其概要设计为系统实现奠定了基础,是各个模块更加的清晰明了。4.1 系统体系结构设计根据网上考试系统使用环境、用户等特点,本系统采用的采用b/s模式。整个考试系统采用三层结构体系,三层结构是用户界面层、业务逻辑层和数据访问层。本系统采用的三层结构如图4.1.1表示层负责对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。直接跟用户进行交互,一般也就是指系统的界面,用于数据录入,数据显示等。因此,在考试系统中分为三种用户界面,即管理员界面、教师界面、学生界面。根据用户身份的不同,所使用的界面不同,处理的事物也就不同。学生面对的是要考试的内容、查询成绩。教师通过登陆进入后台上传试题、输

30、入参数、组成试卷、评分、查看成绩分析。管理员登陆后可以管理所有内容以及对权限进行设置。用户层采用浏览器方式,方便用户,界面友好。此层主要通过asp.net的web form来实现。2业务逻辑层主要是针对具体的问题的操作,也可以理解成对数据层的操作。在考试系统中做一些有效性验证的工作,以更好地保证程序运行的健壮性。如完成数据添加、修改和查询业务等;不允许指定的文本框中输入空字符串,数据格式是否正确及数据类型验证;用户的权限的合法性判断等等,通过以上的诸多判断以决定是否将操作继续向后传递,尽量保证程序的正常运行。在本考试系统中通过多个模块来实现。图 4.1 系统三层体系结构图3数据访问层顾名思义,

31、就是用于专门跟数据库进行交互。主要是对原始数据的操作层,而不 是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务。需要强调的是,所有的数据对象只在这一层被引用,如system.data.sqlclient等,除数据访问层之外的任何地方都不应该出现这样的引用。该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。4.2 系统总体类设计通过对系统的功能分析,对系统用户分为三类:系统管理员、教师和学生,三者关系相互协调,相互作用形成系统的基本构架(构架类图见图4.2-1)。图4.2-1 系统总体设计类图系统管理员除了一般的重设密码(自己或全体)

32、、开通或关闭考试以及开通或关闭考试期间的注册,还拥有学生和教师管理以及学院、班级、主修专业和课程等信息管理。对学生和教师的管理直接关系着学生和教师。系统管理员通过注册教师决定在考试中是否可用,即拥有更新题库和评分的权利。信息管理主要是通过更新学院、课程等信息来更新考试科目以及学生等范围。教师主要功能是更新题库、合成试卷和评分,其中评分主要是对填空题和简答题等主观题目的评分。更新题库是根据不同的题目类型来更新的,合成试卷通过试题类型和困难度来进行手动组合。4.3 信息管理信息管理主要包括用户管理和考试范围管理即对待考试的学院、专业、班级以及科目信息的管理。用户管理分为对学生和教师的管理,有查看学

33、生或教师信息,添加或删除学生或教师信息等功能。由于学生属于大众化,其完成成绩测试获得结果后,系统就可以将其脱离,因此对学生不必作深入地分析,其目的就是考试。信息管理类图分析见图4.3-1.图4.3-1 信息管理类图设计4.4 考试管理在对考试管理的功能分析中,主要流程是试卷生成、学生考试、提交和保存答案。考试管理类图见图4.4-1.图4.4-1 考试管理类图1.类validate此类定义为控制类,主要用于判断是否已经生成题以用于二次登陆(is_havedtopic()),是否在考试状态并可以提交答案(isvalueexam()),判定机器ip确定一台机器没有两人登录(isvaluerelogi

34、n()),是否可以注册(isvaluereg())以及监考员监测页面信息(admin_msg())。2.类mytopic此类主要用于答题卡绑定。3.类gettopic获取题目信息。4.类updata控制类,除构造函数外类中方法依次表示提交答案,记录本机ip,提交考试中遇到的问题和保存考试所有的答案。4.5 成绩管理成绩管理的功能分析中,主要分为评分,学生查看成绩和反馈结果分析,其类图见4.5-1.图4.5-1 成绩管理类图1.类teacher2.此类中描述了教师的基本操作,其中包含了主观题题目打分(set_score_fortopic())、重新打分(return_setscore_more(

35、))和一次确认打分(confirm_setscore_more()),以此结合客观题自动评分来确定学生分数。3.类score提供了学生查看成绩的方法(getscorebyid())。4.类statistic提供教师统计学生成绩的方法(teacher_deal_lest(int subjectid))。5.类studenttopic学生的答题记录,由学生对填空、选择、判断、简答和问答题的答题信息组成。4.6 题库管理题库管理主要是教师对依照科目对题库的更新、查看、添加和删除,其类图见4.5-1.1.类select控制类,图4.6-1表示在类中方法依次表示添加一个选择题,删除一个选择题,查看科目的

36、所有题目以及更新选择题。2.类topic主要描述考题在数据库存储中所具备的具体属性,又由填空、选择、判断、简答和问答题组成。3.类filljiandaanswer控制类,方法包括添加一道题(整合填空、简答、问答和判断)(add_one_topic()),删除一道题(del_one_topic()),查看具体科目的所有题目(get_infoby_subjectid()),以及更新题目(update_topic())。图4.6-1 题库管理类图4.类teacher在教师类的方法中包含了更新题目,查看具体科目的所有题目以备教师不至于添加同样的题目。4.7 数据库设计数据库的设计就是把现实世界用数据库

37、技术反映出来。可以用e-r图表示现实世界,经过规化设计,然后使用数据流来描述信息世界动态变化。根据数据库设计理论,数据库设计可以分为六个阶段:需求分析、概念模型设计、逻辑模型设计、物理模型设计、数据库实施和数据库运行与维护。下面对概要模型设计、逻辑模型设计、物理模型设计三个方面对计算机网上考试系统所涉及到的数据库进行分析设计。4.7.1 概念模型设计概念模型用于信息世界的建模,它是现实世界到信息世界的第一层抽象,它是数据库设计的有力工具,也是数据库开发人员与用户之间进行交流的语言。因此概念模型既要有较强的表达能力,应该简单、清晰、易于理解。目前最常用的是实体-联系模型。用实体关系方法对具体数据

38、进行抽象加工,将实体集合抽象成实体类型,用实体间的关系反映现实世界事物间的内在关系。根据需求分析,得到抽象数据,把这些抽象事物先转换成实体,然后把能表示事物的特性转换成事物的属性。其中主要实体的属性如下:系统管理员:编号,登录名,密码,问题,答案,状态教师:编号,登录名,密码,真实名,科目编号,问题,答案,学院编号,办公室编号,状态学生:编号,登录名,密码,真实名,性别,学院编号,专业编号,班级编号,注册ip,状态学院:学院编号,学院名,状态(是否开通考试)专业:专业编号,专业名,学院编号,状态班级:班级编号,班级名,专业编号,状态教师办公室:办公室编号,办公室名,学院编号,状态学科:学科编号

39、,学科名,章节数,专业编号,简述,状态(是否被开通考试)试题:试题编号,内容,关键答案,学科编号,试题分数,难度,章节,教师编号,创建时间,标记,状态试卷:试卷编号,选择题个数和分数,填空题个数和分数,判断题个数和分数,简答题个数和分数,问答题个数和分数,学科编号,教师编号学生答案:答案编号,学生编号,学科编号,试题编号,学生答案内容,所得分数,是否确定所给分数,是否被批改学生考试中遭遇的问题:问题编号,学生编号,内容,管理员回复,请求时间最后成绩:编号,学生编号,学科编号,选择题分数,判断题分数,填空题分数,简答题分数,问答题分数,总分4.7.2 逻辑模型设计逻辑模型设计的任务就是把概念模型

40、转换成某个具体的dbms所支持的数据模型。这里,构造关系模型:系统管理员(编号,登录名,密码,问题,答案,状态)教师(编号,登录名,密码,真实名,科目编号,问题,答案,学院编号,办公室编号,状态)学生(编号,登录名,密码,真实名,性别,学院编号,专业编号,班级编号,注册ip,状态)学院(学院编号,学院名,状态(是否开通考试)专业(专业编号,专业名,学院编号,状态)班级(班级编号,班级名,专业编号,状态)教师办公室(办公室编号,办公室名,学院编号,状态)学科(学科编号,学科名,章节数,专业编号,简述,状态(是否被开通考试)试题(试题编号,内容,关键答案,学科编号,试题分数,难度,章节,教师编号,

41、创建时间,标记,状态)试卷(试卷编号,选择题个数和分数,填空题个数和分数,判断题个数和分数,简答题个数和分数,问答题个数和分数,学科编号,教师编号)学生答案(答案编号,学生编号,学科编号,试题编号,学生答案内容,所得分数,是否确定所给分数,是否被批改)学生考试中遭遇的问题(问题编号,学生编号,内容,管理员回复,请求时间)最后成绩(编号,学生编号,学科编号,选择题分数,判断题分数,填空题分数,简答题分数,问答题分数,总分)4.7.3 物理设计物理设计是对于给定的逻辑数据模型选取一个最适合应用环境的物理结构。经过对时间效率、空间效率、维护代价、和各种用户要求进行权衡,该系统所设计主要数据表如下:1

42、用户信息表这里以教师的教师表为例,结构见表4.7.3-1.表4.7.3-1 教师信息表属性名数据类型长度说明idint4编号teacheridvarchar20登录名pwdvarchar20登录密码namevarchar20真实名subjectnamevarchar150学科名questionsvarchar20问题answervarchar20答案schoolidvarchar30学院编号roomidvarchar30办公室编号statusvarchar30状态2试题表该表用于存储试题的相关信息,结构如表4.7.3-2.表4.7.3-2 试题表属性名数据类型长度说明idvarchar30编号

43、textsvarchar1000试题内容keysvarchar500关键答案subjectidvarchar30学科编号scoresint4试题分数difficultlevelint4难易度chapterint4章节teacheridvarchar20教师编号createtimedatetime默认创建时间signint4标记statusint4状态3试卷表记录试卷组成的相关信息,结构如表4.7.3-3.表4.7.3-3 试卷信息表属性名数据类型长度说明idint4试卷编号subjectidvarchar30学科编号selecthardint4难选择题个数selecteasyint4简单选择题

44、个数待添加的隐藏文字内容2fillhardint4难填空题个数filleasyint4简单填空题个数judgehardint4难判断题个数judgeeasyint4简单判断题个数jiandahardint4难简答题个数jiandaeasyint4简单简答题个数answerhardint4难问答题个数answereasyint4简单问答题个数selecthardscoreint4难选择题分数selecteasyscoreint4简单选择题分数fillhardscoreint4难填空题分数filleasyscoreint4简单填空题分数judgehardscoreint4难判断题分数judgeea

45、syscoreint4简单判断题分数jiandahardscoreint4难简答题分数jiandaeasyscoreint4简单简答题分数answerhardscoreint4难问答题分数answereasyscoreint4 简单问答题分数operateteacherid varchar20操作教师编号4学生答案表该表用于存储学生答案的相关信息,结构见表4.7.3-4.表4.7.3-4 学生答案表属性名数据类型长度说明idint4答案编号studentidvarchar20学生学号subjectidvarchar30学科编号topicidvarchar30试题编号useranswervarc

46、har500学生答案getscoreint4所得分数ismakesureint4是否确定所给分数isbeenscoredint4是否被批改5学生考试中遭遇问题的表该表存储学生遭遇的问题的相关信息,用于学生反馈信息,结构见表4.7.3-5.表4.7.3-5 问题表属性名数据类型长度说明idint4问题编号studentidvarchar20学生编号subjectidvarchar30学科编号textsvarchar500反馈内容replyvarchar200管理员回复stactsint4是否回复datedatetime默认请求时间6最终成绩表该表存储学生成绩的相关信息,结构见表4.7.3-6.表

47、4.7.3-6 最终成绩表属性名数据类型长度说明idint4编号studentidvarchar20学生学号subjectidvarchar30学科编号selectscoreint4选择题分数fillscoreint4填空题分数judgescoreint4判断题分数jiandascoreint4简答题分数answerscoreint4问答题分数totalscoreint4总分4.7.4 关系图数据表建好以后,要实施完整性约束,即实体完整性、参照完整性、用户自定义完整性。实体完整性能够保证实体的唯一性、实体的可区分型。参照完整性保证整个数据库中数据的完整性。在数据库管理系统中设置可以减少应用程序

48、的负担。可以通过对表进行关联来实现表的完整性约束。表的关系图4.7.4如下所示:图4.7.4 数据表的关系图5 详细设计详细设计是系统编码实现的基础。因此,对系统各个功能模块进行详细分析和设计,对于系统功能实现有着至关重要的作用。5.1 系统详细分析为方便进行详细设计,对系统功能设计进一步模块化,把复杂的系统分解为若干个相互联系、相对简单的子系统。根据系统的使用者,可以把系统分为三个子系统:管理员子系统、教师子系统和考生子系统。根据图3-2 系统功能划分,子系统的功能结构如下:管理员子系统见图5.1-1.图5.1-1 管理员子系统教师子系统见图5.1-2.图5.1-2 教师子系统考生子系统见图

49、5.1-3.图5.1-3 考生子系统5.2 系统主要功能模块的设计对系统的几个主要功能模块的实现进行详细设计,包括试题管理模块、组卷管理模块、在线考试模块和成绩评定模块。5.2.1 题库管理模块试题管理模块的功能是对组成试卷的试题库进行添加、删除、修改、查询等操作。具体实现方法是试题录入到数据库以后,系统会为每道试题加上一个编号,方便在组卷的时候使用。教师登录后,先按照所要上传试题的类型选择题型。由于试题的题型格式差距比较大,因此为每种题型设计了一种界面。根据教师的选择会出现不同的界面,教师只需根据界面上的表格依次填写待上传试题的科目、难度、知识点、试题文本、答案等。其序列图见图5.2.1-1

50、.图5.2.1-1 教师更新试题序列图其协作图见图5.2.1-2.图5.2.1-2 试题更新协作图在试题管理功能模块中,既可以搜索查看试题,也可以修改和删除搜索到的试题。修改和删除操作和添加试题相似,但首先要通过查询找到要修改或删除的信息,提交更新信息,更新题库。试题更新(添加、修改、删除)活动图见图5.2.1-3.图5.2.1-3 更新试题活动图试题更新状态图见图5.2.1-4.图5.2.1-4 试题更新状态图5.2.2 组卷管理模块为了满足不同用户需求,本系统组成试卷的方式有两种,手动组成试卷和系统自动组成试卷。自动组卷由系统自动生成。手动方式来组成试卷,教师可以先选取试卷模板,然后按照模

51、板的格式手工输入试题及其相应的编号,然后生成试卷。试卷生成的方法是, 教师输入相应的试卷信息, 然后把试卷信息传递给业务逻辑层。抽取合适的试题,把题号、题型、分数、答案等相关信息记下来存放到数据表,组成初始试卷种群。手动组卷序列图见图5.2.2-1.图5.2.2-1 手动组卷序列图其协作图见图5.2.2-2.图5.2.2-2 手动组卷协作图组卷管理活动图见图5.2.2-3.图5.2.2-3 组卷活动图组卷状态图见图5.2.2-4.图5.2.2-4 组卷状态图5.2.3 在线考试模块学生考试首先要登录系统选择考试科目,然后进入考试。如果试卷没有老师手动组卷,那么就由学生选择随机生成试题。考试过程

52、有时间控制,时间到则交卷,考试开始时间计数器开始倒计时,系统读取考生考试机系统时间作为开始考试时间,考试总时间减去所用时间计算出剩余时间,保存剩余时间到服务器。学生考试序列图见图5.2.3-1.图5.2.3-1 学生考试序列图学生考试协作图见图5.2.3-2.图5.2.3-2 学生考试协作图学生答案保存在数据表中,当有异常情况中断考试时,只要考生重新登录,系统会读取数据并恢复到原来的情况,让考生继续考试。这样可以防止意外死机造成系统重启后能恢复考试时间。学生考试活动图见图5.2.3-3.图5.2.3-3 学生考试活动图学生考试状态图见图5.2.3-4.图5.2.3-4 学生考试状态图5.2.4

53、 试卷批阅模块考试题包括客观题和主观题。对于客观题, 系统自动评分。对于客观题,系统从学生答题的数据表中读取答题数据,然后和相应的答案进行对比,完全一样得分。否则,分数为零。然后把所得分数记录到数据库中。客观题评分序列图见图5.2.4-1.图5.2.4-1 客观题评分序列图对于主观题,由教师处理打分。教师根据科目信息让系统自动显示学生的答题和答案,然后给予评分,并确认给分。主观题评分序列图见图5.2.4-2.图5.2.4-2 主观题评分序列图5.3 其他功能模块设计5.3.1 登录模块系统用户必须通过登录才能进入系统主页,登录需要输入用户id和密码以及选择权限,验证通过则进入系统主页,否则返回

54、登录界面重新输入。序列图如图5.3.1-1。图5.3.1-1 登录序列图登录活动图见图5.3.1-2.图5.3.1-2 登陆活动图登录状态图见图5.3.1-3.图5.3.1-3 登录状态图5.3.2 管理模块系统管理模块主要包括人员管理和考试范围管理管理功能两大功能。人员管理主要用来管理用户的信息,可以添加用户、删除用户,对于大群体学生设置导入功能,对于教师设置详细添加,修改和删除教师信息;考试范围管理主要涉及学院、专业、班级和考试科目的管理。以添加考试科目为例,可以通过点击科目管理菜单,打开科目列表信息。在页面上面的表单中输入要添加的科目信息,然后点击添加按钮,执行插入sql语句,把相关的信息添加到数据库中。如果需要删除和编辑科目信息,可以在下面点击编辑和删除按钮,进行相应的操作。6 系统实现软件实现包括软件编码和测试,编码是在详细设计的基础上进行的,它将详细设计得到的处理过程的描述转换为基于某种计算机语言的程序。软件测试的目的是尽可能多的发现软件中的错误,进行诊断并改正错误,以保证开发出高质量的软件。6.1 系统主要功能的实现下面对系统的几个主要功能模块的实现进行论述,包括试题管理模块、试卷管理模块、在线考试模块和批阅试卷模块。6.1.1 试题管理模块的实现试题管理模块的功能是对组成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论