在线考试系统分析课程设计报.pdf
课程设计报告课程管理信息系统课题名称在线考试系统分析设计学生姓名学院信息工程学院专业班级指导老师时间201 年月日1 目录1 背景,2 2 系统设计,2 2.1 系统需求分析,2 2.2 数据库需求分析,3 2.3 系统可行性分析,3 2.4 数据库分析与设计,6 2.5 数据字典定义,8 2.6 系统结构,9 3 系统功能模块,10 3.1 系统功能模块划分,10 3.2 用户注册模块,10 3.3 用户登录模块,11 3.4 在线考试模块,12 3.5 留言板模块,12 3.6 在线交流模块,13 3.7 题库管理模块,14 3.8 试卷维护管理模块,14 3.9 学生信息管理模块,15 3.10 成绩管理模块,15 3.11 考试新闻发布模块,15 4 输入输出设计,15 5 系统界面设计,16 总结,17 2 1.背景随着社会的不断发展,对劳动者和技术人员的知识和能力水平的要求越来越高。考试作为衡量人的能力的重要手段之一,在现代生活中的地位进一步提高,并深入到社会的各个方面。各种各样的学历考试、资格证书考试层出不穷。同时,Internet 技术的发展使得考试的技术手段和载体发生了革命性的变化,使得考试突破了时间和空间的限制。各大学校已经开始采用课程的上机考核方式,传统的考试系统已经不能满足我们了,必须要改革,因此在线考试系统应运而生了。我们在保持原有绝大部分功能的前提下,不仅需发完善原有功能,加入许多新的功能,使得题目管理,上机考试,试卷评分,考试分析更加方便完善。2.系统设计2.1 系统需求分析传统考试要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷。这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。基于Web 的在线考试系统可以发挥网络的优势,建立大型、高效、共享的题库和实现随时随地的考试,降低考试成本,减少人为干扰,减轻教师负担,节约人力、物力和财力。根据考试管理的实际要求,结合试卷管理的工作流程,系统的用户可分为管理员和普通用户两类。本系统共分成两个界面:一个界面用于管理员登录,主要负责进行基本资料、题库、试卷、成绩的管理以及查询等;另外一个界面用于普通用户登录,主要负责在线考试、查询以往考试成绩、留言和在线交流等。对管理员来说,包括试卷管理、题库管理、成绩管理、学生管理。1、试卷管理:管理员可以从课程种类、各种题型类型和数量等方面对试卷提出一定的要求,然后生成试卷规则。同时,管理员还可以对库中已有的试卷进行修改和删除,添加新试卷等。2、题库管理:管理员可以对题库中的试题进行三种基本操作:添加新的考题、删除旧有考题、修改原有考题,其中试题类型包括判断题、填空题、选择题。对于每种类型的试题,教师可以设置题干、答案等属性。3、成绩管理:管理员可以查看考生的考试成绩,并针对不同的课程进行成绩统计,包括考试人数、最高分、最低分、平均分以及各分数段得分人数等。4、学生管理:管理员可以对用户的资料进行查询、删除,以及学生留言的回复和在线交流。对普通用户来说,包括在线考试、查询考试成绩、留言和在线交流等。1、在线考试:学生可以任选时间进行在线测试,考试结束后,系统会根据已有的标准答案进行在线批卷,考生可以立刻知道考试成绩和答案,并且可以下载试题和答案。3 2、查询以往考试成绩:学生可以在线查询以前参加过的每门课程考试的相关信息。3、留言板:学生提交对系统的留言信息,包括一些对该系统的建议。4、聊天室:学生相互交流学习心得和研究疑难问题,并且老师可以解答问题。2.2 数据库需求分析针对一般考试系统的需求,设计如下所示的数据项和数据结构:管理员信息:管理员姓名、密码等。普通用户信息:学号、用户名、密码、性别、班级等。试卷信息:填空题分值、填空题数量、判断题分值、判断题数量、选择题分值、选择题数量等。判断题信息:判断题编号、题干、正确答案等。填空题信息:填空题编号、题干、正确答案等。选择题信息:单选题编号、题干、正确答案、备选项(A、B、C、D)等。成绩信息:考试科目、考生学号、成绩、考试时间等。本系统应该建立一个稳定的后台数据库系统,通过该数据库管理整个考试系统所需的信息(用户信息、试题信息、试卷信息、考试信息等)。本系统还应该包括学生和教师的账号、后台数据库的安全机制、考试过程的控制机制。2.3 系统可行性分析2.3.1 要求与目标:系统的主要功能即学生管理、试卷管理、题库管理、成绩管理等数据库可并发访问并具有较大的吞吐量用户必须有登陆密码,具有较好的安全保密性系统界面具有一定的人性化和美观.开发成员各尽其责,有良好的合作精神分享开发环境软件及项目相关资料,节省项目成本并提高开发效率2.3.2 可行性研究方法在 学 生 和 老 师 里 使 用 问 卷 调 查 方 法,完 善 可 行 性 方 案。确 定 软 件 的 运 行 平 台:win98win7xpwin2000等。在运行时可以直观的浏览、查询和掌握学生的考试情况和成绩信息,解决了传统考试中的弊端:工作量大、错误率高等。2.3.3 决定可行性的主要因素资金充足、技术能力强、开发人员的恒心和决心、合作精神2.3.4 技术可行性软件方面,网络化考试需要的各种软件环境都已具备,数据库服务器方面则有SQL Server,均能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。其灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。2.3.5 经济可行性资金的流出,将来可以用带来的效益来平衡。2.3.6 法律方面的可行性本项目不涉及在社会上或政治上引起侵权、破坏或其他责任问题。设计本项目的一切活动都在国4 家法律允许范围以内。系统开发和运行与国家的政策法规不存在任何冲突和抵触之处。2.3.7 使用方面的可行性“在线考试系统”是针对企业内部要对员工考核的需求进行开发的一个在线系统。从企业的角度来看,纸质的考试不仅物质成本高,而且需要耗费大量的人力资源;此外,纸质的考试不够灵活,使得考试变得不够人性化,不能体现出企业考试的真实目的 促进员工提升自身的素质和能力,更好地为企业服务,这是有别于其他的升学考试的。2.3.8 传统考试系统分析考生考务人员考场准考证是否有效分发试卷未启用试卷考试中考试是否结束提交的试卷评阅试卷编写试题印刷试卷是是5 所建议的系统网络考试系统优点本系统可以不限制地域和时间只需要通过web 即可实现在线考试维护用户数据及试卷内容不需要人工输入和打印,大大节省了人力和物力实现自动判卷和数据的有效保存,真正实现了无纸考试、无纸办公。学生可以自由进行自我测试,有利于他们的学习界面的人性化和美观,给人带来舒适的视觉享受,缓解考试紧张心理可以创立电子题库,方便地实现试题的数字化管理。可以按照科学的策略智能组卷,从而提高出卷效率。可以具有操作性和交互性。使考试和判卷更具规范性和合理性。具有强大的数据统计分析功能。6 2.4 数据库的分析与设计本次开发的数据库包括3 方面。题库数据:包括了判断题、选择题和填空题 3 种类型题目。包括题目的题干、答案和加入日期信息。管理员、学生资料信息数据:包括姓名、密码、性别、班级和学号等基础数据。成绩资料表数据:包括学生学号、分数、考试日期和是否补考等基础数据。在线讨论:包括提问标题、问题内容、回答内容、提问时间等。本系统将使用SQL Server 2008 作为数据库管理系统。表1 test数据库包含的数据表及其功能数据表功能admin 存放管理员(教师)类用户基本信息student 存放学生类用户基本信息examination 存放学生考试成绩基本信息test 存放试卷基本信息rightorwrong 系统判断题题库selecting 系统选择题题库filling 系统填空题题库1管理员信息表 admin 表2 admin 字段名数据类型及长度说明备注admin nvarchar(10)管理员姓名主关键字adminpassword nvarchar(6)管理员密码不能为空2学生信息表student 表3 student 字段名数据类型及长度说明备注studentnumber nvarchar(8)学生学号主关键字studentname nvarchar(10)学生姓名不能为空studentpassword nvarchar(6)学生密码不能为空sex char(2)学生性别允许为空class nvarchar(30)学生班级允许为空registerdata smalldatetime 注册日期允许为空7 3考试成绩信息表examination 表4 examination 字段名数据类型及长度说明备注examinationid int 试卷编号不能为空studentnumber nvarchar(8)学生学号不能为空score int 学生成绩允许为空examinationdata smalldatetime 考试日期允许为空pass bit 是否补考允许为空makeup int 补考成绩允许为空makeupdata smalldatetime 补考日期允许为空4判断题信息表rightorwrong 表5 rightorwrong 字段名数据类型及长度说明备注rightorwrongid int 判断题编号不能为空question nvarchar(250)题目内容允许为空answer bit 正确答案允许为空setupdata smalldatetime 加入日期允许为空5选择题信息表selecting 表 6 selecting 字段名数据类型及长度说明备注selectid int 选择题编号不能为空question nvarchar(250)题目内容允许为空result1 nvarchar(100)选项 1 允许为空result2 nvarchar(100)选项 2 允许为空result3 nvarchar(100)选项 3 允许为空6填空题信息表filling 表 7 filling 字段名数据类型及长度说明备注fillingid int 填空题编号不能为空question nvarchar(250)题目内容允许为空answer nvarchar(250)正确答案允许为空setupdata smalldatetime 加入日期允许为空7.在线讨论discuss 8 表8 discuss 字段名数据类型及长度说明备注Id(关键字)自动编号不能为空Title nvarchar(250)提问标题允许为空Detail nvarchar(250)问题内容允许为空Answer nvarchar(250)回答内容允许为空Time_qry nvarchar(250)提问时间允许为空2.5 数据字典定义数据流定义表 2.5.1 考生登陆信息数据流名:考生登陆信息简述:考生进入考试系统中的身份组成:考生学号+考生姓名注释:考生参加考试只能登陆一次表 2.5.2 空白试卷数流流名:空白试卷组成:考生学号+姓名+(选择题)+(判断题)+(填空题)+考试时间注释:考生没有做题的试卷表 2.5.3 选择题数据流名:选择题组成:题名+题号+问题+选项 A+选项 B+选项 C+选项 D+答案+结果 注释:每一次生成的选择题都不一样,结果都为空表 2.5.4 判断题数据流名:判断题组成:题名+题号+问题+答案 A|答案 B+结果 注释:结果为空表 2.5.5 填空题数据流名:填空题组成:题名+题号+问题+答案+结果 9 注释:结果为空表 2.5.6 考试设置信息数据流名:考试设置信息组成:选择题数目+选择题分值+判断题数目+判断题分值+考试时间注释:是生试卷试题和考试的要求表 2.5.7 学生信息表文件名:学生信息表组成:学生姓名+学号+班级 组织:按班级排列表 2.5.8 学生成绩表文件名:学生成绩表组成:学号+成绩+考试状态 2.6 系统结构2.6.1 前台结构网上考试系统前台成绩查询试卷统计及分析学生注册考试题库管理考试论坛网上考试课程选择选择套题考试成绩提交试卷开始考试10 2.6.2后台结构3 系统功能模块3.1 系统功能模块划分图 3-1前后台系统功能模块划分网上考试系统后台学生信息管理退出系统题库管理考试成绩管理管理员信息管理试卷管理网上考试系统后台管学生管理成绩管理题库管理试卷管理网上考在线考试考试成绩查留言和在线11 3.2 用户注册模块此模块是添加新的用户,填写学生个人基本信息,包括姓名、性别、学号、班级,设定个人的原始密码,并添加到学生用户信息库中。3.3 用户登录模块如果用户要使用为注册用户提供的功能,那么在使用之前必须登录。用户只要输入用户名、密码就可以了。若用户输入的以上两项与数据库中保存的相符,则表明用户登录成功;如果不符,则登录失败。模块执行流程如图3-3 所示。Yes No No Yes 录入用户信息接收信息信息为空?提示用户已存在注册成功用户已存在吗图 3-2 用户登录模块执行流程提示:信息不能为空Yes Yes No No No 按照用户名查询No Yes 提示密码错误登录信息录入接收登录信息用户名、密码为空?提示用户不存在已登录用户已存在吗口令正确吗?图 3-3 用户登录模块执行流程提示用户名或密码不能为空12 3.4 在线考试模块在此模块中包含查询成绩、考试、自动判卷等模块。进入在线考试系统。在线测试是有时间限定的,学生要先登入自己的用户,用户可以查询成绩,再进行在线考试。一旦进入在线考试,系统就自动开始计时。时间到会自动交卷,然后进入判卷系统。考试过程中学生可以不按题目顺序答题。返回 No No Yes No 用户登录进入考场自动交卷时间结束?考试退出考场自动阅卷显示成绩交卷?交卷?图3-4 在线考试流程查询成绩13 3.5 留言板模块学生提出使用系统后对系统有许多良好的建议和意见,或者有一些疑难问题需要大家共同探讨的话,可以在此提出,以便更加完善系统。3.6 在线交流模块实时答疑:功能类似于聊天室,学生和老师可以同时登录到系统,进行实时交流。师生交流:功能类似于留言板,学生和老师有任何疑问,可以在此实现交流学生使用聊天室相互交流学习心得和研究疑难问题。重新输入图 3-6 在线交流模块执行流程Yes No No Yes 输入用户信息接收信息输入姓名为空?提示用户已存在登录用户已存在吗输入姓名不能为空聊天交流图 3-5 留言板模块执行流程Yes No No Yes 输入用户信息接收信息输入框为空?提示用户已存在提交用户已存在吗输入框不能为空查看留言14 3.7 题库管理模块题库管理包括判断题管理、填空题管理、选择题管理。管理员可以通过题库管理对各种类型的试题进行添加、删除、修改。题库管理功能模块图如图3-7 所示。3.8 试卷维护管理模块对于题库维护,教师要根据本课程情况进行增、删、改。要提供以下功能:批量试题导入,可过EXCEL 表整体导入教师可在线单个单个地进行试题维护进行人工或自动组卷。自动阅卷和成绩登录3.9 学生信息管理模块学生管理模块主要是对学生进行查询、删除,可以对学生的成绩情况进行查看。图 3-8 试卷管理功能模块图学 生 管 理查看成绩查询基本信息删除记录试 卷 管 理添 加 试 卷删 除 试 卷修 改 试 卷图 3-9 学生信息管理模块图 3-7 题库管理功能模块填空题管理选择题管理判断题管理题库管理添加选择题删除选择题修改选择题添加填空题删除填空题修改填空题添加判断题删除判断题修改判断题15 3.10 成绩管理模块学生成绩管理子模块通过对学生成绩的全面分析,总结学生对所学知识点的掌握程度和知识点被学生理解并掌握的程度。本模块共分为浏览学生成绩、查询学生成绩两个功能模块。3.11 考试新闻发布考试新闻具有实时性。这些内容可有各种形式,可将这些信息动态地送出,提高考试子系统的动态性。因此按类别及内容分类在网站上发布即可。教师可以通过公告功能发布各项通知,例如考试制度,包括每次考试的注意事项;考试日程安排。4 输入与输出设计输入输出设计是管理信息系统与用户的界面,对用户来说特别重要。接口设计4.1 外部接口4.1.1 用户界面在用户界面部分,根据需要一个用户友善界面。在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。外观上也要做到合理化,已决定使用.NET(C#)进行编程,在界面上可使用.NET 所提供的可视化组件,向 WINDOWS风格靠近,其中服务器程序界面要做到操作简单,易于管理。总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用。4.1.2 软件接口程序可使用.NET 提供的对SQL SERVER 的接口,进行对数据库的所有访问。程序上可使用SQL SERVER 的对数据库的备份命令,以做到对数据的保存。服务器上通过配置IIS 虚拟目录,以供客户浏览,并安装.NET FRAMEWORK 1.1 以供服务器对程序进行测试。在客户端使用IE 5.0 以上的浏览器进行浏览。成 绩 管 理浏览学生成绩查询学生成绩图 3-10 成绩管理模块图16 4.1.3 硬件接口在输入方面,对于键盘、鼠标的输入,可用.NET 的标准输入/输出,对输入进行处理。在输出方面,打印机的连接及使用,也可用.NET 的标准输入/输出对其进行处理。在客户浏览方面通过在浏览器中输入系统浏览地址即可。4.2 内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封闭了的数据,以参数传递或返回值的形式在各模块间传输。5 程序主要界面设计在线考试后台管理主窗口单击判断题管理、选择题管理、填空题管理、试卷管理等,实现对试题题库增加、修改或删除管理。单击成绩管理、学生管理、系统管理,实现对系统基本信息管理。判断题管理窗口可以对判断题题目进行编辑、删除和添加,同时也可以对判断题题目进行查找、分页及页面跳转功能,将在此处阐述,以后不再雷同介绍。单击“编辑”按钮,进入编辑界面。可以对判断题题目、答案进行修改,并单击“提交”按钮保存到数据库中。单击“添加新题”按钮,进入添加新题界面。可以对判断题题目进行添加,并单击“提交”按钮,保存到数据库中。选择题管理窗口可以对选择题进行编辑、删除和添加,同时也可以对选择题题目进行查找。填空题管理窗口可以对填空题进行编辑、删除和添加,同时也可以对填空题题目进行查找。试题管理窗口可以对设定考期试卷题型题目、分数进行修改。修改之后在修改复选框内用“”表示。单击“修改”按钮,保存修改后的考试题目与分数。单击“增加”按钮,进入试卷设置窗口。填写完毕,单击“增加”按钮,保存试卷设置。成绩统计管理窗口可以查询每个考试批次的学生成绩信息。可以按学生姓名查找学生成绩。单击下拉菜单,选择考试批次,下方显示考生姓名、分数。学生统计管理窗口显示学号、考生姓名、性别、班级信息,以及是否删除信息,可以按照考生姓名进行查询,单击“查找”按钮。系统管理窗口填写账号、密码,单击“修改账号”按钮,修改后台管理系统账号及密码。学员注册窗口在表格内,填写新学员注册信息,单击“提交”按钮保存学员注册信息。考试预备窗口17 显示当前考试基本考试题型及分数。单击“进入考试”链接,进入考试窗口界面。考试窗口对试卷进行相应的解答,解答完毕单击“提交”按钮,弹出考试在线判卷窗口,显示考试答案及成绩。系统开发总结在本次课程设计中我主要负责了系统结构、输入/输出设计、以及数据库设计的部分。其实一个系统的分析和设计还是一件比较繁琐的复杂的工作的,要设计出符合要求的系统,必须要反复的讨论、设计来不断的完善系统。我们做的是在线考试系统的分析和设计,先是总结了一下我们学校的在线考试系统的情况,然后又上网搜集了一些材料,才形成了现在的模型。通过这次的课程设计,让我讲书本上的知识和实际相联系起来,让理论上的系统分析设计不那么抽象,可能对考试也有一定的帮助。