当前位置首页 > 计算机 > 数据库/结构与算法
搜柄,搜必应! 快速导航 | 使用教程

题库型考试自动组卷系统数据库设计

文档格式:DOC| 38 页|大小 2.28MB|2025-03-16 发布|举报 | 版权申诉
第1页
第2页
第3页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 38
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • 真诚为您提供优质参考资料,若有不当之处,请指正辽 东 学 院 本 科 毕 业 论 文(设 计)题库型考试自动组卷系统的设计与实现The Design and Implementation of Auto-Generating Examination Paper about the Item Bank Type Examination 学 生 姓 名: 艾萍 学 院: 信息技术学院 专 业: 信息管理与信息系统 班 级: B0601 学 号: 0911060101 指 导 教 师: 陈志勇 审 阅 教 师: 完 成 日 期: 2010年5月25日 辽 东 学 院Eastern Liaoning University独创性说明XXX郑重声明:本毕业论文(设计)是我个人在指导教师指导下进行的研究工作及取得研究成果尽我所知,除了文中特别加以标注和致谢的地方外,毕业论文(设计)中不包含其他人已经发表或撰写的研究成果,也不包含为获得辽东学院或其他单位的学位或证书所使用过的材料。

    与我一同工作的同志对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意XXX签名:___________ 日期:__ __ 32 / 38摘 要组卷考试在计算机网络下完成,可以大大提高考试工作的效率和质量项目采用Visual Studio 2005开发平台和SQL Server 2005数据库技术,依据面向对象的分析方法,开发出了基于C/S模式的题库型考试自动组卷系统本文从题库型考试自动组卷系统在考试中发挥的作用出发,详细阐述了一个功能较完善的组卷系统的服务器端和客户端开发过程首先进行了项目概述,简单介绍了项目开发的背景及项目开发的意义;接下来是系统规划阶段,首先对项目开发的可行性进行了分析;在需求分析阶段,通过对实际考试的功能需求分析,得到了系统用例;系统设计阶段主要完成了开发模式的选择、功能模块的划分、动态图的绘制、类的设计、数据库的设计;系统实现阶段介绍系统主要功能的关键代码本系统的设计实施为题库型考试自动组卷系统的运行做基础,同时为组卷考试系统的开发提供一个参考模式,并进一步推动高校的校园信息化建设关键词:题库;自动化;试卷;在线考试The Design and Implementation of Auto-Generating Examination Paper about the Item Bank Type Examination AbstractThe method that finishes in the generating examination by network can greatly increase the efficiency and quantity of examination work. According to the object-oriented analysis method the system uses the platform of Visual Studio 2005 and database technique of SQL Server 2005 to developed the auto-generating examination paper system about the item bank type examination based on C/S model. This thesis starting from the function of auto-generating examination paper about the item bank type examination system, elaborates in detailedly the server and client development of a complete functional auto-generating examination paper system. Proceeding from the summary of the project, this thesis simply introducs the background and the significance of project development.Then on the phase of system plan,firstly it analyzes the feasibility of the system.In the phase of system analysis, through the fuction demands analysis of the real examination, it gains the use case of the system. On the phase of system design, it mainly completes the partition of function modules, drawings of dynamic views , classes design and database design.The phase of system implementation describes the improtent code of the main features.Design and implementation of this system is used as the basis for the movement of auto-generating examination paper about the item bank type examination system, simultaneously provides a reference pattern for the development of auto-generating paper and examination systems, and further impels the campus informationization construction.Key Words:Item bank;Autoimmunization;Test Paper;On-line Examination目 录摘 要 IAbstract II一、引 言 1(一)项目开发的背景 1(二)项目开发的意义 2二、系统规划 4可行性分析 41.技术可行性 42.经济可行性 53.社会可行性 6三、系统需求分析 7(一)系统主要功能 7(二)系统用例分析 81.识别参与者 82.系统用例图 9四、系统设计 20(一)系统功能模块设计 20(二)动态视图分析 201.服务器端教师添加单选题时序图 212.服务器端教师编辑试卷设置信息时序图 213.服务器端教师新建试卷,系统自动生成试卷的时序图 224.客户端学生在线测试的时序图 235.服务器端教师添加、修改试题活动图 246.服务器端教师添加、修改试卷设置信息的活动图 267.服务器端教师试卷打印的活动图 268.服务器与客户端考试管理学生考试的活动图 27(三)类图的设计 281.系统的三层结构 292.系统中的实体类 293.系统中的控制类 311.概念结构设计 322.逻辑结构设计 343.系统数据表设计 35(五)系统开发工具与开发模式的选择 431.开发工具 432.开发模式 43五、系统实现 44服务器端教师试卷打印模块 441.试卷打印窗体的功能描述 442.试卷打印窗体的关键代码功能描述 453.试卷打印窗体的关键代码 46结 论 48参 考 文 献 49致 谢 50辽东学院本科毕业论文(设计)版权使用授权书 51一、引 言(一)项目开发的背景考试是检验教师的教与学生的学的重要手段,也是促进学生学习的重要手段,是教学过程中的一个重要环节[1]。

    学生考试成绩的优劣,不但反映其对教学内容和应掌握知识的分析、理解、吸收、运用的能力,更反映教师对教学内容的把握和熟练程度目前,学校内及社会上存在各种考试,一般以教师人工出卷、传统纸质考试为主两者结合存在诸多局限:第一,教师人工出卷方面:教师命题时,在出题前需要查阅相关教材资料,凭借自己的教学经验出题这样对试卷中试题的难度不好把握,而且基础性试题与应用性试题比重、试题中教学内容覆盖率需要教师人工控制,教师工作量繁重第二,传统纸质考试方面:学校采用传统纸质考试时,对于大规模考试试卷印刷费工费时,成本高,对纸张资源是一种浪费;对于教师、教室资源数量相对紧张的学校,到了考试密集期考场安排工作是繁琐又复杂的事情;考生答题时学生难免会相互抄袭,有失公平性随着计算机多媒体技术和网络技术的日益普及,特别是近年来Internet的高速发展,传统有纸化考试方式受到了前所未有的挑战,出现了一些基于网络环境的无纸化考试,主要分为B/S与C/S两种模式[2]B/S模式的计算机考试系统已经很成熟,主要是一些培训机构的远程专业性考试,如北大远程教育考试等,考生利用浏览器访问服务器进行考试,教师利用浏览器对试题库进行管理,管理员对考试进行管理。

    C/S模式的考试系统运行在校园内部的局域网上,一般是为了解决人工出卷和纸质考试的弊端开发出的带有自动组卷、学生上机考试功能的系统这些系统的操作基本如下:教师操作服务器端对题库、考试进行管理,学生登录客户端进行考试,管理员对基础数据、考试进行管理然而大部分学校机房的计算机数量有限,在期中期末等考试密集期无法提供足够的机器供学生上机进行考试,这些学校不能完全采用网络考试的方式,还是以纸质考试为主并且无论是C/S还是B/S模式的考试系统都无法对需要学生在答案中画图的试题进行考核,这种试题的考核也只能以纸质考试实现但是目前社会上存在的考试系统都只有自动组卷和在线考试功能并没有将试卷导出成纸质试卷的功能,也就无法解决以上两种情况的问题如果考试系统在自动组卷的基础上添加试卷导出的功能,这样就能解决教师人工出卷的弊端同时又能满足网络环境不足的学校进行纸质考试的需求最简便的方法是购买获得已经成功运行、成熟的在线考试系统,在其自动组卷功能的基础上添加试卷导出的功能但是成熟的系统费用必然高昂,并且如果编程人员的设计思路不清晰,代码中的注释说明不够多,后续添加功能的程序员很难看懂其设计思路、在其上添加试卷导出功能的难度可想而知。

    为此,希望开发出一个带有试卷导出功能的网络考试系统,这样既能解决纸质考试为主学校的人工出卷弊端,也能满足有一定网络环境的学校进行在线考试的需求,还能实现对画图题的考核无论针对哪种需求,系统的主要功能是自动组卷并导出试卷和在线考试,而他们的基础都是对试题库的维护,因此题库型考试自动组卷系统的三大重点是题库管理、自动组卷并导出试卷、考试管理二)项目开发的意义通过上述分析,题库型考试自动组卷系统的运行应该实现试题管理、导出试卷、学生考试、教师批卷、成绩查询等全过程的网络化管理将教师出卷、排版、学生考试、教师评分等环节通过计算机进行管理,为教师、学生提供便利使考试管理工作更加自动化、科学化、规范化,方便教师对学生学习情况的掌握,也方便学校对考试工作进行监督、管理使教师从繁重的工作中解脱出来,将更多的精力投入到教学中去,最大限度地减少不必要的错误,提高学校考试管理的现代化水平题库型考试自动组卷系统的主要功能如下:第一,题库管理方面:利用计算机管理试题可以轻松查看每套试题的难度、所属章节;可以处理多种常见的考试题型,如单选题,多选题,填空题,判断题,问答题;添加、修改试题也可以做到操作简单,便于教师对试题进行管理。

    第二,考试管理方面:可以方便地对学生考试进行控制;能提供简单的组织考试的方式:学生上机考试,上机练习;能批阅学生上机考试所做的答案并能查询成绩,满足实际考试的需求第三,自动组卷并导出试卷方面:能方便且科学的从题库中抽出一套符合要求的试卷,可以设置试卷中的题型,题量,起始章节,结束章节,难度系数,即使题库中试题量很大也可以一键随机生成试卷,无需排版、随时打印,供传统纸式考试用传统考试模式、现有的考试系统与待开发的题库型考试自动系统在功能方面的对比如表1.1所示表1.1 三种考试方式的对比轻松管理题库题型全面自动组卷生成纸质试卷传统考试模式×√×√现有考试系统√×√×欲开发的系统√√√√教师人工组卷时通常把试题存放在word或者excel中,当试题量很大时,无论是查看试题,还是为试卷筛选试题都变得很困难,题库型考试自动组卷系统利用计算机管理题库,查看和筛选试题都变得非常方便现有的考试系统几乎都只是对选择题的考核,很少有主观题的考核方式,题库型考试自动组卷系统能满足5种题型的考核,更符合实际考试的需求简而言之,题库型考试自动组卷系统的运行会使整个考试过程变得简单,高效 二、系统规划系统规划是信息系统生命周期的第一阶段,这一阶段的主要目标是明确系统整个生命周期内的发展方向、系统规模和开发计划[3]。

    通过上述对开发背景和意义的分析,现对系统的功能和开发的可行性进行分析可行性分析可行性分析的任务是明确开发应用项目的必要性和可行性[4]在功能分析的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决可行性研究主要集中在以下三个方面:1.技术可行性(1)系统的体系结构方面:C/S(Client/Server)结构即大家熟知的客户机和服务器结构它建立在局域网上,面向相对固定的用户群,对信息安全的控制能力很强,一般高度机密的信息系统采用C/S 结构适宜B/S(Browser/Server)结构即浏览器和服务器结构它建立在广域网上,面向的是不可知的用户群,对安全的控制能力相对弱目前社会上已经存在许多较成熟的在线考试系统:C/S模式的有电子商务师考试系统;B/S 模式的有南京航空航天大学采用JSP技术建立的网络考试系统[5]这说明开发题库型考试自动组卷系统无论哪种模式都是可以实现的但是针对考试要杜绝学生之间相互抄袭的实际需求:如果系统开发采用B/S结构则安全性不好控制,学生进行在线考试时可以利用广域网互相传递答案;局域网的环境则相对封闭,采用建立在局域网上的C/S模式,与在客户端考试过程中为每位学生随机抽取不同的试题(难度可以控制在同一水平)相结合的方式,可以有效杜绝学生抄袭现象,考试就更能真实的反映学生的水平。

    因此,系统体系结构采用C/S模式更符合需求2)系统的开发环境方面:上面已经提到的南京航空航天大学的网络考试系统是采用JSP技术实现的,另外利用Visual Studio .NET平台也可以成功开发出在线考试系统:如长春大学的视障大学生语音考试系统就是利用Visual Studio 2005开发平台开发出的C/S模式系统[6],并已成功运行一年;太原理工大学的自动考试系统是采用.NET技术开发出的B/S 模式系统,并已成功运行一年[7]这说明开发题库型考试自动组卷系统采用JSP技术或者Visual Studio .NET开发平台都是可以实现的3)系统使用的数据库方面:目前流行的数据库有Oracle ,MS SQL Server和Access等,其中Access 多用于小型系统,MS SQL Server 多用于大中型系统,Oracle 多用于企业级大型系统下面以辽东学院作为研究对象,分析何种数据库能够支持题库型考试自动组卷系统的运行辽东学院下设16个二级学院,本科专业52个,高职专业44个,在校人数1.7万,每年录取新生5000人系统数据库中储存的基础数据如学院、专业、班级等信息可以忽略不计,数据库中数据量最大的就是学生信息和题库信息。

    假设一个专业共有专业课30门,那么96个专业估计开设2900门专业课程其中每门课程的题库都有5种题型,假设一张试卷需要单选题20个,多选题10个,填空题5个,判断题5个,问答题5个,按照题库中题量是试卷题量的10倍来计算,一门课程的试题记录大约需要450条,2900门专业课大约要储存试题记录1,300,000条在考试过程中,首先假设一个学生正在考试,系统需要从1,300,000条试题记录中抽取出45道题供学生作答,但是如果有15个班的450人同时进行考试,系统就需要为这450个学生每人抽取出45道试题,也就是450*45=20250条试题记录,并且学生每做一道题,提交一次答案,450个学生在考试过程中不断的提交答案访问数据库,数据库的负荷相当大,这就需要数据库拥有很强大的处理能力显然Acess数据库不足以支持本系统,大、中型数据库库才能保证系统的成功运行2.经济可行性经济可行性分析也叫投资/效益(支出/收益)分析,它是分析信息系统所需要的花费和项目开发成功之后所能带来的经济效益[8]1)系统开发的支出方面:第一,开发人员费用:系统为本人的毕业设计,由指导教师辅导本人独自完成,因此不涉及开发人员的费用,人工无支出。

    第二,硬件费用:系统运行在学校机房的局域网中,机房设备满足本系统的运行,无需多余开销,硬件费用无支出第三,软件费用:系统开发是为学校教学管理提供方便,并不会用于商业用途,因此可以采用微软提供的暂时免费的Visual Studio 2005 Express Edition与永久免费的SQL Server 2005 Express Edition(速成)版本Visual Studio 2005 Express Edition版本与收费版本相比缺少部分功能,如远程调试开发功能、与SQL Server的集成功能、支持移动设备等,但是本系统属于小规模系统,这些缺失功能并不影响本系统的开发SQL Server 2005 Express Edition免费版本与收费版本相比支持的内存比较小,同样不影响系统的开发本人可以网上申请使用免费版本的开发软件和数据库,软件费用无支出2)系统开发的收益方面:第一,有形收益:系统具有学生在线考试功能,较传统的纸质考试节省大量的纸张费用第二,无形收益:系统的试卷导出功能为教师人工出卷过程提供了便利,使教师从繁重的出卷工作中解脱出来,将更多的时间精力投入到教学中去,提高了学校考试管理工作的效率。

    3.社会可行性社会可行性研究是对系统投入使用后对社会可能带来的影响进行分析1)法律方面的可行性:系统为本人的毕业设计,由指导教师辅导本人独立完成,并不存在盗用他人系统的情况,不会侵犯他人的专利、版权系统的开发在法律方面是可行的2)使用方面的可行性:当今中国是高度信息化的社会,人们的生活已经离不开计算机高校学生几乎都要参加计算机等级考试,学生利用计算机进行考试并不会出现操作困难教师的工作娱乐也都离不开计算机,有一定的计算机操作经验和考试经验,利用计算机对试题库、考试等进行管理都不会造成太大困难因此只要系统的界面友好,操作简单,学生和教师都能够轻易熟悉系统并成功操作这样就保证了系统在使用方面的可行性综上所述,本系统的开发不论是从技术、经济、还是社会方面来考虑都是可行的 三、系统需求分析需求分析是系统开发的最重要阶段之一,在这里系统要决定“做什么”,也就是系统应该具有什么功能,是系统生存期中定义阶段的最后一个步骤,是作为整个系统开发的指南,软件开发人员必须根据需求分析上的功能要求进行开发[9]从这一阶段开始,通过面向对象分析方法对系统进行分析与设计,具体如下:(一)系统主要功能系统主要分为以下三个重点功能,题库管理、考试管理、自动组卷并导出试卷[10],其功能简要描述如下:第一,对试题库进行管理:利用计算机管理试题可以轻松查看每道试题的题目、答案、难度、所属章节等信息,其中难度与所属章节的状态设定为自动组卷的科学化奠定了基础;可以处理多种常见的考试题型,如单选题,多选题,填空题,判断题,问答题;能对不在考试过程的课程试题库进行添加、修改操作,以此保证不影响学生考试。

    第二,自动组卷并导出试卷:自动组卷功能应用在2个部分,分别是学生考试和试卷导出学生考试的自动组卷功能要保证为每个学生抽取出相同难度的不同试题,以此减少学生考试相互抄袭的现象;导出试卷的自动组卷功能分为2个步骤,先由系统自动生成试卷,然后教师对该试卷的试题做添加、删除操作,使最终生成的试卷更符合出卷人的意愿保存了的试卷无需排版、随时可以打印,以供传统纸质考试使用 第三,进行考试管理:可以对学生考试时间等进行控制;能提供简单的组织考试的方式:学生上机考试,上机练习;能批阅学生上机考试所做的答案并能查询成绩,满足实际考试的需求综上所述,为使考试工作更加高效,使教师从繁重的考试工作中解脱出来,将更多的时间精力投入到教学中去,本系统的主要功能详细描述如下:(1)题库管理功能:教师对题库中的未考试的课程试题进行添加、修改、删除操作,题型包括单选题,多选题,填空题,判断题,问答题2)试卷管理功能:包括试卷设置功能和试卷打印功能试卷设置功能:教师对所选课程的试卷信息进行设置,能够设置试卷的题型、题量、起始章节、结束章节、难中易题比重等,为随机自动组卷做准备;试卷打印功能:教师能够看到系统按照试卷设置信息随机抽取的试题题,并手动对试卷中的试题进行添加、删除操作(但并不是对试题库中的试题做删除操作,仅删除试卷中的试题),保存试卷,随时打印。

    3)考试管理功能:包括考试安排功能、考试纪事查询功能、教师评分功能考试安排功能:考试安排用于对客户端学生考试的控制,教师或管理员能对考试安排信息进行添加、修改操作,考试安排信息包括考试时长、考试类型、考试状态等;考试纪事功能:教师或管理员查看考试信息,包括学生在客户端考试的开始时间、结束时间等;教师评分功能:教师对学生在客户端所作答案进行批阅,评分后上缴试卷,将学生的分数保存4)考试功能:学生登录客户端可以进行在线测试、自由练习在线测试功能:系统按照服务器端设置的试卷信息随机生成试题,学生对试题进行作答系统保存学生的答案,教师在服务器端对该答案评分;系统保存学生考试的开始时间、结束时间、教师或管理员在服务器端查看学生考试纪事信息;上机练习功能:学生上机练习过程中可以查看标准答案 (5)查询管理功能:教师可以通过学号查询学生成绩 其他功能是管理员对基础数据的维护,包括学院信息、专业信息、班级信息、课程信息、学生信息、教师信息、班级选课信息,这里不做详细介绍二)系统用例分析UML是面向对象软件系统分析设计的标准建模语言[11],将UML语言与Microsoft visio 2003画图软件相结合对系统用例分析、进行需求描述能够非常清晰地表达本系统的需求。

    1.识别参与者通过对本系统的全面分析,本系统的用户主要分为:管理员、教师和学生,如图3.1所示图3.1 系统用户管理员:能对服务器端的基础数据进行维护,并能添加、修改考试安排信息、查看学生考试纪事信息教师:能操作服务器端的部分功能,主要包括题库管理、试卷管理、考试管理学生:登录客户端,进行考试、练习操作2.系统用例图通过以上分析并且为了便于后续章节研究,在这里先画出系统总体用例图,如图3.2所示图3.2 系统总体用例图下面对系统的重点题库管理、试卷管理、考试管理分用例进行描述,进一步确定系统的功能需求: (1)教师题库管理用例:图3.3 题库管理用例图题库管理功能的用例描述如下表3.1至3.6所示:表3.1 用例题库管理的描述用例名称:题库管理参与者:教师简要说明:教师用来对试题库进行维护的用例前置条件:教师成功登录服务器端并点击题库管理菜单项基本事件流:1. 选择试题类型2. 教师对单选题库进行添加、修改操作3. 教师对多选题库进行添加、修改操作4. 教师对填空题库进行添加、修改操作5. 教师对判断题库进行添加、修改操作6. 教师对问答题库进行添加、修改操作其他事件流:教师对题库进行添加、修改操作时,未点击保存按钮,可以随时关闭窗体,题库信息不改变异常事件流:无后置条件:教师对题库进行了维护表3.2 用例单选题管理的描述用例名称:单选题管理参与者:教师简要说明:教师对题库中的单选题进行添加、修改操作前置条件:教师成功登录服务器端点击题库管理菜单项,选择单选题基本事件流:1. 选择课程名称2. 添加单选题3. 修改单选题其他事件流:教师添加、修改单选题时,点击保存按钮之前,题库不改变异常事件流:无后置条件:教师对题库中的单选题进行了维护表3.3 用例多选题管理的描述用例名称:多选题管理参与者:教师简要说明:教师对题库中的多选题进行添加、修改操作前置条件:教师成功登录服务器端点击题库管理菜单项,选择多选题基本事件流:1. 选择课程名称2. 添加多选题3. 修改多选题其他事件流:教师添加、修改多选题时,点击保存按钮之前,题库不改变异常事件流:无后置条件:教师对题库中的多选题进行了维护表3.4 用例填空题管理的描述用例名称:填空题管理参与者:教师简要说明:教师对题库中的填空题进行添加、修改操作前置条件:教师成功登录服务器端点击题库管理菜单项,选择填空题基本事件流:1. 选择课程名称2. 添加填空题3.修改填空题其他事件流:教师添加、修改填空题时,点击保存按钮之前,题库不改变异常事件流:无后置条件:教师对题库中的填空题进行了维护 表3.5 用例判断题管理的描述用例名称:判断题管理参与者:教师简要说明:教师对题库中的判断题进行添加、修改操作前置条件:教师成功登录服务器端点击题库管理菜单项,选择判断题基本事件流:1. 选择课程名称2. 添加判断题3.修改判断题其他事件流:教师添加、修改判断题时,点击保存按钮之前,题库不改变异常事件流:无后置条件:教师对题库中的判断题进行了维护 表3.6 用例问答题管理的描述用例名称:问答题管理参与者:教师简要说明:教师对题库中的问答题进行添加、修改操作前置条件:教师成功登录服务器端点击题库管理菜单项,选择问答题基本事件流:1. 选择课程名称2. 添加问答题3.修改问答题其他事件流:教师添加、修改问答题时,点击保存按钮之前,题库不改变异常事件流:无后置条件:教师对题库中的问答题进行了维护 (2)教师试卷管理用例:图3.4 试卷管理用例图试卷管理功能的用例描述如下表3.7至3.9所示:表3.7 用例试卷管理的描述用例名称:试卷管理参与者:教师简要说明:教师用来对试卷进行操作,包括为系统的自动随机组卷做准备的试卷设置的用例;新建试卷、打印试卷、打印答案的试卷打印用例前置条件:教师成功登录服务器端并点击试卷管理菜单项基本事件流:1.添加、修改试卷设置信息2. 新建试卷,自动组卷,对保存的试卷试题做添加、删除操作3.预览试卷并打印、预览答案并打印其他事件流:无异常事件流:无后置条件:教师对试卷进行了维护表3.8 用例试卷设置的描述用例名称:试卷设置参与者:教师简要说明:教师用来对某一课程的试卷设置信息进行操作,为系统的自动随机组卷做准备的用例前置条件:教师成功登录服务器端并点击试卷设置菜单项基本事件流:1.教师选择课程名2.若该课程已有试卷设置信息,系统显示该课程保存了的试卷信息,包括题型、题量、起始章节、结束章节、难中易题比重、该题型总分数等3. 若该课程还没有试卷设置信息,则可对该课程的试卷设置信息做添加操作4.若需要对该课程的试卷设置信息做调整,点击编辑按钮,对该条记录进行修改 其他事件流:在点击保存按钮之前,教师可以随时关闭窗口,试卷设置信息不改变异常事件流:无后置条件:教师对试卷设置信息进行了维护表3.9 用例试卷打印的描述用例名称:试卷打印参与者:教师简要说明:教师新建试卷并保存,对已有试卷的试题进行添加、删除操作,预览试卷并打印,预览答案并打印前置条件:教师成功登录服务器端并点击试卷打印菜单项基本事件流:1. 教师新建试卷,输入试卷信息,保存时系统通过课程名找到对应试卷设置信息,根据试卷设置信息随即抽取试题生成试卷2. 查看保存的试卷试题3.对试卷试题添加、删除操作4.预览试卷并打印5.预览答案并打印其他事件流:无异常事件流:无后置条件:教师打印了试卷或答案 (3)管理员、教师考试管理用例:图3.5 考试管理用例图考试管理功能的用例描述如下表3.10至3.13所示:表3.10 用例考试管理的描述用例名称:考试管理参与者:管理员、教师简要说明:管理员、教师用来对客户端考试进行控制、查看学生考试时间与教师对客户端学生考试答案批阅的用例前置条件:教师成功登录服务器端并点击考试管理菜单项基本事件流:1. 教师、管理员添加、修改考试安排信息,用于对客户端学生考试进行控制2. 教师、管理员查看考试纪事信息,包括学生在客户端考试的开始时间、结束时间3. 教师对学生在客户端考试的答案进行批阅其他事件流:无异常事件流:无后置条件:教师、管理员对客户端学生考试进行控制表3.11 用例考试安排的描述用例名称:考试安排参与者:教师、管理员简要说明:教师或管理员对客户端的考试进行控制前置条件:教师成功登录服务器端点击考试管理菜单项基本事件流:1. 教师、管理员添加考试安排信息,包括课程、考试名、考试时长2. 教师、管理员修改考试安排信息其他事件流:无异常事件流:无后置条件:教师或管理员添加或修改了客户端考试的信息表3.12 用例教师评分的描述用例名称:教师评分参与者:教师简要说明:教师对客户端学生的答案进行批阅前置条件:教师成功登录服务器端点击试卷管理菜单项基本事件流:1. 教师选择要批阅的试卷2. 点击试题,显示试题、学生答案、标准答案、试题满分3. 教师输入学生的分数,保存分数4. 上缴试卷,提示一但上缴则不能再对该试卷批阅其他事件流:无异常事件流:无后置条件:教师对学生的答案进行批阅,成绩保存到数据库表3.13 用例考试纪事的描述用例名称:考试纪事参与者:教师、管理员简要说明:教师、管理员查看学生在客户端考试的开始时间和结束时间前置条件:教师成功登录服务器端点击试卷打印菜单项,选择已有试卷基本事件流:1. 教师、管理员查看所有学生的考试纪事信息2. 教师、管理员查看某一学生的所有次考试纪事信息其他事件流:无异常事件流:无后置条件:教师、管理员查看了学生考试开始时间、结束时间由于篇幅有限在这里不将分用例图一一描述,以上是系统服务器端需要实现的主要功能的用例图,下面介绍系统客户端主要功能的用例图:(4)学生考试用例图:图3.6 学生考试用例图学生考试功能的用例描述如下表3.14至3.15所示:表3.14 用例在线测试的描述用例名称:在线测试参与者:学生简要说明:学生在客户端进行考试前置条件:学生成功登录客户端选择考试类型后进入考试基本事件流:1.系统为学生按照考试类型所属的课程随机抽取试题2.学生点击查看试题3.学生对每道试题作答,提交答案保存答案4.学生点击答完的试题,修改自己的答案,提交并保存5.交卷,提示交卷成功的信息其他事件流:教师、管理员在考试安排控制客户端考试时长,在时间规定内学生未交卷,则时间到强制交卷异常事件流:无后置条件:学生在客户端进行考试表3.15 用例自由练习的描述用例名称:自由练习参与者:学生简要说明:学生在客户端进行练习,练习过程中查看试题的标准答案前置条件:学生成功登录客户端选择考试类型后进入练习基本事件流:1.系统为学生按照考试类型所属的课程随机抽取试题2.学生点击查看试题3.学生查看该试题的标准答案其他事件流:无异常事件流:无后置条件:学生在客户端进行了练习 四、系统设计 (一)系统功能模块设计在系统规划阶段已经简要说明了系统开发更适合采用C/S模式,其一般面向相对固定的用户群,对信息安全的控制能力很强。

    一般高度机密的信息系统采用C/S 结构更适宜通过以上采用面向对象方法对功能需求的分析,得到系统服务器端总体功能模块图如图4.1所示图4.1 系统服务器端总体功能模块图通过采用面向对象方法对系统的分析,得到系统客户端总体功能模块图如图4.2所示图4.2 系统客户端总体功能模块图(二)动态视图分析由于篇幅有限,这里只介绍主要功能的动态视图,并且时序图与协作图、状态图与活动图能够方便转化,那么这里只采用时序图与活动图进行说明:1.服务器端教师添加单选题时序图图4.3 教师添加单选题时序图教师使用自己的教师编号和密码登录系统,在登录时,登录模块会将教师的教师编号保存在系统的缓存中并提交给下一页面题库管理中每个题型的模块都只有教师身份才可以进入,所以登录这一模块同样会验证教师编号进入后提交“添加单选题”命令,判断该课程是否能够添加试题(即是否正在考试过程中,具体流程见下面的活动图),是则提示教师添加单选题,输入相应的单选题信息,提交给数据库,显示更新的试题库给教师2.服务器端教师编辑试卷设置信息时序图图4.4 教师编辑试卷设置信息时序图教师首先用自己的教师编号和密码登录系统在登录时,登录模块会将教师的教师编号保存在系统的缓存中并提交给下一页面。

    进入试卷设置模块,提交“编辑试卷设置信息”的命令,判断该课程的试卷设置信息是否能够修改,若可以修改要求教师编辑试卷设置信息录入完毕后提交信息并存入数据库,显示更新的试卷设置信息给教师试卷设置信息包括该课程试卷的每种题型、题量、起始章节、结束章节、难中易题数量等,设置好这些状态后,在试卷打印模块打印试卷之前系统根据该课程的试卷设置信息采用newid()算法自动生成符合要求的试卷3.服务器端教师新建试卷,系统自动生成试卷的时序图图4.5 教师新建试卷,系统自动生成试卷的时序图教师进入试卷打印管理模块,提交新建试卷命令,系统提示新建试卷信息,教师输入要新建试卷的课程名,保存试卷信息时,系统根据课程名找到对应的试卷设置信息,根据试卷设置信息抽取试题,将生成的试卷显示给教师(具体流程见活动图)4.客户端学生在线测试的时序图图4.6 学生在线测试的时序图学生输入学生编号和密码登录系统,进入在线测试模块,系统为学生通过试卷设置信息随机抽取试题,能保证每个学生抽取不同的试题,防止相互抄袭的现象学生提交查看试题、答题命令,系统显示试题信息,学生输入自己的答案答题完毕提交交卷请求,将学生的答案、学生考试开始时间、考试结束时间存入数据库,显示交卷成功的信息给学生。

    5.服务器端教师添加、修改试题活动图图4.7 教师添加、修改试题的活动图教师成功进入题库管理模块,选择试题类型包括5种题型:单选题、多选题、填空题、判断题、问答题,分别对每种题型的试题进行添加、修改操作如教师成功进入单选题管理页面,首先确定要添加试题的课程,系统判断该课程是否正在考试过程中(考试安排信息中的状态控制该课程是否正在考试),若课程在考试过程中则弹出提示,否则可以添加单选题,修改试题的操作相同完成对试题的操作则推出题库管理模块6.服务器端教师添加、修改试卷设置信息的活动图图4.8 教师添加、修改试卷设置信息的活动图教师成功进入试卷设置管理模块,选择要添加或修改的课程,判断其是否正在考试过程中,若不是则可以添加或修改试卷设置信息,要对输入的信息有相应的校验,保存跟新的试卷设置信息后,推出试卷设置管理模块7.服务器端教师试卷打印的活动图图4.9 教师试卷打印的活动图教师成功进入试卷打印窗体,可以同时进行两项操作:第一,新建考卷并保存,保存时系统根据课程的试卷设置信息将符合要求的试题从试题库中抽取出来存入试卷试题表中;第二,选择已保存的试卷之后查看试卷中的试题信息,对其进行添加、删除操作(添加操作从试题库中添加试题,删除的是试卷中保存的试题,并不影响试题库),预览试卷将保存的试卷中的试题以报表的形式预览,预览答案同样以报表形式,之后使用.NET提供的报表自带的纸张设置输出规格,将试卷打印成纸质试卷供传统考试用。

    8.服务器与客户端考试管理学生考试的活动图图4.10考试管理学生考试的活动图教师在服务器端对客户端的考试进行控制包括考试的课程、考试时长等学生在客户端选择考试类型,进入考试,作答,答题完毕交卷,推出客户端系统接收每个学生的答案、考试开始时间和考试结束时间,教师对学生的答案进行批阅,查看学生成绩,查看学生考试的纪事信息即开始时间、结束时间三)类图的设计类图的设计是体现一个系统逐渐成型的标志,也是系统设计中最核心的部分在类图中明确基本类以及它们相互之间的关系,将有助于开发者对实际系统的后续开发[12]通过以上对系统中主要功能用例及时序图、活动图的分析,分析系统中的类的设计如下所示1.系统的三层结构(1)常见的三层架构包括3部分:表示层(用户界面层)UI:主要实现和用户的交互,接收用户请求或返回用户请求的数据结果的展现 业务逻辑层 BLL(Business Logic Layer):业务逻辑层承上启下,用于对上下交互的数据进行逻辑处理,实现业务目标 数据访问层 DAL(Data Access Layer):用于实现与数据库的交互和访问,从数据库获取数据或保存数据到数据库 (2)系统采用的演变的三层架构包括5部分:表示层(用户界面层)UI:类库Win存放系统的所有窗体类,将各种数据以页面布局的形式显示出来,与用户进行交互操作。

    业务逻辑层 BLL:类库BLL存放与Model中相对应的业务逻辑类,在数据库访问类DAL和模型实体类Model之间调用数据,起到承上启下的作用模型层 Model:类库Model存放系统的实体类,将数据表里面的字段进行封装,方便其它层对数据字段的调用,方法为get()和set()数据库访问层DAL:存放与Model中相对应的数据库访问类,提供一些对数据库的增删改查的操作数据库访问辅助层CODE:CODE中的DbHelperSQL是数据库存取类,将读写数据封装起来,对外提供方法调用,作为DAL的辅助类2.系统中的实体类系统中的实体类共有10个,分别是banji班级类,Student学生类,Teacher教师类,College学院类,Professional专业类,Course课程类,Test试题类,UserAnswer学生答案类,Paper试卷类,ExamArrangement考试安排类,每个实体类的方法都是get()与set(),这里就不做说明,如图4.11至4.13所示 图4.11 实体类班级、学生、教师 图4.12 实体类学院、专业、课程 图4.13 实体类题库、成绩、试卷、考试安排(1)班级(banji)的属性有;班级号(id),班级所属专业号(professional_id),班级所在年级(year),班级名称(classname),班级所在层次(level)。

    2)学生(Student)的属性有:学生号(id),学生所在班级号(class_id),学生学号(studentno),学生姓名(name),学生登录密码(pwd)3)教师(Teacher)的属性有:教师号(id),教师所在学院(college_id),教师姓名(name),教师登录密码(pwd)4)学院(College)的属性有:学院号(id),学院名称(collegename)5)专业(Professional)的属性有:专业号(id),专业所在学院(college_id),专业姓名(professionalname)6)课程(Course)的属性有:课程号(id),课程名(name),专业号(profession_id),课程所在年份(year),课程所在学期(term)7)试题(Test)的属性有:试题号(id),试题的类型(Type),试题所属的课程号(course_id),试题的题目(Title),选项A的内容(AnswerA),选项B的内容(AnswerB),选项C的内容(AnswerC),选项D的内容(AnswerD),试题答案(Answer),试题所属的章节(Sszj),试题难度系数(Ndxs)。

    8)试卷(Paper)的属性有:试卷号(paperid),试卷名称(paperName)9)成绩(UserAnswer)的属性有:编号(id),学生学号(student_id),考试安排号(exam_id),试题编号(test_id),该试题满分(score),学生在客户端所作的答案(UserAnswer),教师批阅学生答案得分(ExamMark),考试开始时间(begintime),考试结束时间(endtime),试题批阅状态 (flag)10)考试安排(ExamArrangement)的属性有:编号(id),课程号(course_id),考试类型(kaoshileixing),考试状态(state)控制客户端的学生是否可以参加该次考试3.系统中的控制类业务逻辑层BLL中的每一个类在模型层Model和数据库访问层DAL中都有与之相对应的类,由于论文篇幅原因,下面以班级(banji)类为例简述系统中的控制类的调用关系图4.14 班级(banji)控制类图中BLL中的banji类是处理的各种业务逻辑方法的类,内部实例化了数据库访问层DAL中的banji类对象和模型层Model中的banji类,其每个方法的作用是调用Model中的banji类对象,将处理结果返回给DAL中banji类对象。

    同时在DAL的banji类方法中调用数据库访问辅助层CODE中DbHelperSQL.cs的内部方法进行数据库操作BLL中banji类方法作用:Exists( ):判断是否存在记录时传递对象Add( ):增加一条新记录时传递对象Update( ):更新一条纪录时传递对象Delete( ):删除一条记录时传递对象GetModel( ):得到一个对象实体时传递对象GetList( ):获取数据列表时传递对象(四)数据库的设计。

    点击阅读更多内容
    最新文档
    2025年作风建设学习教育开展情况的报告范文.docx
    在2025年民营企业座谈会上的主持讲话范文.docx
    在2025年全县教育领域群众身边不正之风和腐败问题集中整治调度会上的讲话范文.docx
    工委副书记在2025年机关DeepSeek应用专题辅导培训班开班仪式上的讲话范文.docx
    在2025年DeepSeek大模型政务应用培训会上的讲话范文.docx
    在青年干部培训结业典礼上的讲话文稿.docx
    2025年副书记防汛工作会议上的讲话范文.docx
    2025年主管商务部门党组书记在理论学习中心组会上研讨发言文稿.docx
    2025年国企党委关于干部职工思想政治工作情况的报告范文.docx
    在机关单位作风建设学习教育突出问题专项整治工作部署会议上的讲话范文.docx
    医院领导2025年党风廉政建设推进会上的讲话范文.docx
    2025年关于开展“以案促改”工作实施方案供参考.docx
    在2025年安全生产专项整治暨化工行业风险防控部署会上的讲话范文.docx
    领导干部在“十五五”发展规划编制启动会上的讲话文稿.docx
    2025年书记在慰问老干部暨情况通报会上的主持讲话提纲范文.docx
    2025年作风建设实施方案文稿.docx
    在2025年DeepSeek政务应用培训会上的讲话范文.docx
    2025年领导在DeepSeek政务应用培训会上的讲话参考范文.docx
    2025年国企党委关于干部职工思想政治工作情况的报告文稿.docx
    在青年干部培养工作座谈会上的讲话范文.docx
    卖家[上传人]:文库优质
    资质:实名认证
    相关文档
    正为您匹配相似的精品文档