搜索
您的当前位置:首页《广东交通职业技术学院在线考试系统》毕业论文

《广东交通职业技术学院在线考试系统》毕业论文

来源:飒榕旅游知识分享网


《广东交通职业技术学院在线考试系统》毕业论文

毕业设计(论文)

广东交通职业技术学院在线考试系统

(GDCPEOS)

开题日期:2009 年 11 月 08 日

设计期限:2009 年 11 月 08日起 2009年12月11 日起止 答辩日期:2009年12月11日

院 系:运算机工程学院软件技术 指导教师:王槐彬 学生姓名:严锦龙(组长)、李华平、陈晓红、陈永红、刘国新

广东交通职业技术学院毕业设计(论文)指导教师评语

指导教师评语: 指导教师 评定成绩: 指导教师签名 年 月 日

广东交通职业技术学院毕业设计(论文)答辩评语

答辩委员会评语: 答辩成绩: 答辩小组组长签名 年 月 日

摘要

本系统全称为广东交通职业技术学院在线考试系统。为了更好的为学校的教学、科研、治理服务,能够大规模的实行考试,实现考试的客观、公证性,自动化组卷、阅卷能够减轻教师的工作强度。传统考试一样要求老师打印试卷、安排考试、监考、收集试卷、评阅试卷等,这是一个专门复杂的过程,已不适应现代教学,在线考试则能够对这些改进。系统将随机生成试题,学生能够能够参加课任老师所指定的考试。本系统要紧是针对学院开发,比较适用于院校学生与老师

专用。

关于一所学校来说,如何利用运算机改变每次考试终止后老师们统计大量的学生成绩时的繁重任务?如何排除因时刻紧迫所产生的统计结果错误百出?如何能够更快捷,更准确地出一份质量高的试卷呢?设计出在线考试系统确实是一个专门好的解决方法。通过本系统,能关心教研人员利用运算机,快速方便的对本学科的章节和试卷进行治理、输入、输出、统计、查找的所需操作,使散乱的试题和试卷档案能够具体化,直观化、合理化。本系统适用于教育界,对教师的信息、学生的信息、学科的信息、章节、试题和试卷的信息能够随时输入、输出、查找、修改、编制等。

本系统在开发过程中,注意使其符合易于操作的要求,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。在开发方法的选择上,选择了生命周期法与原型法相结合的方法,遵循系统调查研究、系统分析、系统设计和系实施四个要紧时期进行设计,而在具体的设计上,采取了演化式原型法,随着用户的使用及对系统了解的不断加深,对某一部分或几部分进行重新分析、设计、实施。在开发工具的选择上,要紧利用 ASP.NET 编程语言进行开发,使用 MS SQL SERVER 数据库,从而保证了数据的完整性与一致性。

关键词:在线考试,EOS(ExamOnlineSystem)

名目

第一章 引言 ........................................................................................................................................ 5

1.1 开发平台 ............................................................................................................................... 6 1.2 开发技术 ............................................................................................................................... 6 1.3 在线考试系统的现状 ............................................................................................................ 6 1.4 开发学生在线考试系统的意义 ............................................................................................ 7

1.4.1 开发学生在线考试系统的缘故 ................................................................................. 7 1.4.2 学生在线考试系统的目标 ......................................................................................... 7 1.4.3 开发学生在线考试系统的目的 ................................................................................. 7

第二章 系统的分析和设计 ................................................................................................................. 8

2.1 治理系统需求分析 ................................................................................................................ 8

2.2 系统概要设计........................................................................................................................ 9

2.2.1 系统功能按角色分配如下描述 ................................................................................. 9 2.2.2功能描述.................................................................................................................... 10 2.2.3 系统的概要结构图 ................................................................................................... 10 2.2.4 对性能的规定 ........................................................................................................... 11 2.2.5 对输入输出的要求 ................................................................................................... 12 2.2.6 数据治理能力的要求 ............................................................................................... 12 2.2.7 故障处理要求 ........................................................................................................... 12 2.2.8 其他专门要求 ........................................................................................................... 12

第三章 数据描述 .............................................................................................................................. 12

3.1静态数据 .............................................................................................................................. 13 3.2动态数据 .............................................................................................................................. 13 3.3数据库介绍 .......................................................................................................................... 14 3.4数据词典 .............................................................................................................................. 19 第四章 系统架构与模式................................................................................................................... 26

4.1 系统架构 ............................................................................................................................. 26 4.2 模式设计 ............................................................................................................................. 28 4.3 辅助类的设计...................................................................................................................... 29 4.4 框架总结 ............................................................................................................................. 30 第五章 系统的实现和调试系统 ....................................................................................................... 30

5.1 系统的部分界面以及程序代码 .......................................................................................... 30 5.2 部分程序代码实现 .............................................................................................................. 32

5.2.1 学生端考试页面实现断线和系统崩溃时的考试修复的代码: ........................... 32 5.2.2 教师端针对每一位学生随机生成试卷代码: ....................................................... 36

总结 .................................................................................................................................................... 41 致 谢 .................................................................................................................................................. 42 参考文献 ............................................................................................................................................ 42

第一章 引言

当今时代的两个显著特点确实是世界经济一体化和以运算机为代表的信息技术的快速进展。一个组织要在猛烈的竞争中保持优势和不断进展,必须对迅速变化的环境灵敏地做出有效的反应。学生在线考试系统的应用能够提供这种有效的决策支持。学生在线考试系统运用了先进的、治理的、信息的处理技术来针对环境的挑战,它实际是随着运算机软件和网络技术不断地前进而前进,随着环境不断地变化而变化的。如此就有了新的解答——在线考试治理系统是逐步进展的过程,使之更好地适应社会的进展需求。目前校园网得到了专门快普及同时在学校的治理工作中扮演着专门重要的角色,通过那个模块能够实现试题和试卷的录入、

查询、修改和编制等功能,使校园网充分发挥服务师生的功能,同时也方便了教研人员对学生的考试治理工作。

1.1 开发平台

在现今信息时代,生活速度的加快,使得人们越来越向信息化、数字化进展,广东交通职业技术学院在线考试系统(GDCPEOS)是一个由人、运算机等组成的能进行学生信息、学科信息、章节信息、试题信息、试卷信息和学生成绩信息的收集、传递、储存、加工、爱护和使用的系统,必定能代替过去大量、纷杂的手工操作。 本系统是通过用 ASP.NET 动态网站开发的网页设计在线考试系统,利用软件工程原理,采纳生命周期方法学,依照 3NF 的关系模式设计数据库表,用模块化设计方式将系统的各个功能模块层层分解,设计出系统的模块化结构,并依照系统的具体要求和需要实现的功能,详细地定义了各个模块的具体功能。 开发要紧包括后台数据库的建立和爱护以及前端网页应用程序的开发两个方面,实现了学生在线考试信息的数据库的创建及教师信息、学科、章节、学生、试题、试卷、成绩的输入、扫瞄、爱护和统计,使得系统具有功能强大,界面友好的特点。

1.2 开发技术

C#、ASP.NET、MS SQL SERVER、HTML、Javascript、jQuery、Ajax。

1.3 在线考试系统的现状

信息化是当今世界经济和社会进展的大趋势,也是我国产业优化升级和实习工业化、现代化是重要战略。信息化实质上确实是不断扩大信息技术在各个领域、各个层次上的应用。以信息技术为代表的高新技术突飞猛进的进展和在传统产业上的广泛应用,必将为企业注入新的活力。信息技术、信息网络和信息资源的综合利用,形成了当代最先进的生产力,正往常所未有的速度为社会制造着大量的物质财宝和精神财宝。

在学校,专门是在各大高校,关于学生的考试治理是相当重要,而且也是相当苦恼的,它是学校治理中最差不多的一项常规性工作。而长期以来,考试治理

差不多上依靠人工来进行的,面对如此众多的学生考试信息,其工作量是相当相当庞大的。如此不仅仅白费了大量的人力物力,而且由于人工治理存在着大量的不可预知性,造成考试治理的一些不规范,使得信息治理陷入“事倍功半”的地步。而运算机开发的基于单机的学生考试治理系统又只能在特定的时刻,地点由特定的治理员才能进行治理,因此造成的治理上的不便性。因此急需要开发学生在线考试来改变这一现状。

1.4 开发学生在线考试系统的意义 1.4.1 开发学生在线考试系统的缘故

现在我国的大中专院校的学生考试治理的水平普遍不高,有的还停留在纸介质基础上,这种治理手段已不能适应时代的进展,因为它白费了许多的人力和物力。而且学生考试是一个专门繁琐与复杂的一项工作,一个缘故确实是工作量大,不行管。在现在那个信息化的时代,人们需要更快、更准确的查询,更便利、更全面的学生考试系统,如此不管是学生、授课老师,依旧其他教研人员都能够专门方便地去查询信息和进行各种信息治理,提高工作效率。在当今信息时代这种传统的治理方法必定被运算机为基础的信息治理系统所代替。假如本系统能被学校所采纳,将会改变往常靠手工治理学生考试的状况,能够树立良好的办学形象,提高工作效率。

1.4.2 学生在线考试系统的目标

建立学生在线考试系统,采纳运算机对学生考试进行治理,进一步提高办学效益和现代化水平。关心宽敞教师提高工作效率与准确性,实现学生考试的信息治理工作流程的系统化、规范化和自动化。

1.4.3 开发学生在线考试系统的目的

科学以人为本。随着 IT 行业的飞速进展,人民生活节奏的加快,运算机是现代人学习,工作不可缺少的一个好帮手。只有一台好的运算机是不够的,还需要一些好的系统软件去运行。但一些关于生活上细节的软件还需要去开发。我们

那个软件确实是依照学校的情形,把学生考试相关信息的输入,输出,查询都集在一起,便于老师的治理和总结。那个系统包括学生信息导入,学科信息,试题信息,试卷信息,在线批阅,随机出题,考试成绩和考试成绩统计导出等功能,这些都大大方便了学校工作的开展,他们能够在那个系统上了解到学生的情形,有利于学校工作的开展。

第二章 系统的分析和设计

建立智能化的考试系统和相应的数据库。实现考试差不多功能,确保系统运行的稳固性和安全性。在线考试系统全面提供我校师生使用。使用功能包括考生成绩查询、成绩统计、动态配置班级教师、随机抽题、设置章节、设置考试时刻等。

2.1 治理系统需求分析

学生在线考试系统是为了适应新形式下更好的开展老师、学生工作而开发的一套治理系统。学生在线考试系统涉及学科、章节、班级、学生、成绩、试题、试卷等多种数据信息。

那个系统开发大大方便了教研人员对考试的治理和学生对多样性的考试的方便以及老师对学生学习了解的方便性等等,此系统解决了老师,学生,考试等繁琐的问题,对高校的考试治理起到促进的作用.在不断的开发中还会尽量发觉各种需求,按照实际情形进行添加和修改……

学生成绩治理系统的用户包括系统治理员、教师和学生。系统治理员负责对教师的添加和删除,教师的功能是是负责学生信息、学科信息、章节信息、试题信息、试卷信息的治理工作,学生的功能是负责对相应的学科考试和查看本人的成绩等。

2.2 系统概要设计

2.2.1 系统功能按角色分配如下描述

定义:

 主观题:填空题,简答题;

 客观题:单选题,多选题,判定题; 教师:

 教师用表格导入学生信息;  教师导出学生成绩;  教师统计学生成绩;

 教师查看学生客观题成绩和批阅主观题,并将所得的成绩和客观题的成绩

相加得到学生总成绩;若无主观题,则客观题的成绩为总成绩;  教师能够出题(添加试题,含文字,图片);  教师能够查看和修改学生信息;  教师能够修改个人信息密码; 学生:

 学生提交或系统自动提交试卷后显示客观题的成绩和储存主观题的答案;  学生依照不同的时刻进行考试; 治理员:

 治理员添加教师,删除教师;

系统:

 系统随机出题;

 考试期间定时储存学生答案和用时;  系统出错时可换机或重启;

 每个的学生试卷在考试前已随机生成;  按教师要求生成随机试卷(客观题选项不随机)  学生考过试之后不可再重考,则显示考试成绩;  到达考试开始时刻方可显示试卷;  考试时刻用完,系统自动交卷;

2.2.2功能描述

 考生答题时,主观题由考生手动输入答案,系统应该实现题目可加载自定

义图片,以更完善试卷系统

 试题试卷治理,教师出题时,可依照不同章节,不同题型的数量,随机抽

题完成出卷的功能。

 成绩治理,成绩统计时,能够导出Excel报表。分类统计,应该划分为

60分以下,61~70分,71~80分,81~90分,90~到100分。

2.2.3 系统的概要结构图

依照系统功能分析得出了在线考试系统是由三个角色组成,分别是学生、治理员和学生。在各个角色中也相应附加了详细的功能。

图2-2 系统的概要结构图

2.2.4 对性能的规定

精度:在精度需求上,依照使用的需要,在各项数据的输入,输出及除数过

程中,能够满足各种精度的需求。

时刻特性要求:在系统方面,响应时刻,更新处理时刻都比较快且迅速,完全满足用户要求。

灵活性:当用户需求,如操作方式、运行环境,结果精度,数据结构与其他其他软件借口等发生变化时,设计的软件要做适当调整,灵活性专门大。

2.2.5 对输入输出的要求

该软件给各项录入信息的类型都有进行了严谨的定义,确保信息的精确,用户在输入信息时候,系统会依照用户输入的信息进行判定,确保信息的精确性输入和输出。

2.2.6 数据治理能力的要求

该软件采纳Microsoft SQL Server 2005作为后台数据库,对用户数据进行有效的治理,确保数据的完整性和准确性。

2.2.7 故障处理要求

内部故障处理:在开发时期能够赶忙修改数据库里的相应内容。外部故障处理:通过适当的编程手段,即使处理发生故障的内容。

2.2.8 其他专门要求

保密性:本系统作为成绩治理辅助工具,规模比较小,能够限定一个程序中的某些区域的规约,给不同的模块分配不同的功能。

可使用性:在装载系统时,正常就运行,专门就停止;系统显现错误,将会产生不可预见的问题,重启。

可爱护性:本系统的要紧操作为 SQL 语句的增删查改,简单、直观又比较独立。因此该系统的可爱护性专门强。

第三章 数据描述

3.1静态数据

表3-1 静态数据

类型 安全操纵 数据名称 考生准考号 考生密码 定义 用于在线考试的帐户名 用于扫瞄的帐户密码 用于治理系统和治理试题的账户名 格式 类型 字符串 值域 “” 度量单位 字符串 “” 安全治理操纵 教师账号 教师治理账号 字符串 字符串 “” “” 3.2动态数据

数据输入:

表3-2 动态数据输入

类型 数据名称 定义 类型 集合 格式 考生学号+姓名 10个字符(可由教师自定义,少于10个字符组成) 二级学院+科目名称 科目名称+章节名称 yyyy-MM-dd HH:mm 由教师自定 出题者自定 学年度+科目+考试类型 值域 “” 度量单位 考生信息 信息集合 班级号 班别 Strng “” 科目 章节 时刻 分值 试题 学科 章节名称 考试时刻 试题分值 出题目 String String Datetime Int Text String “” “” yyyy-MM-dd HH:mm 0-100 “” “” 试卷名称 试卷名称 数据输出:

表3-3 动态数据输出

类型 数据名称 定义 类型 格式 值域 度量单位 试卷 时刻 时刻 章节 时刻 分值 试题 考试总时刻 所剩时刻 章节名称 考试时刻 试题分值 Text Datetime Datetime String Datetime Int String Int 文本 dd-hh-mm-ss dd-hh-mm-ss 科目名称+章节名称 yyyy-MM-dd 由教师自定 学年度+科目+考试类型 “” dd-hh-mm-ss dd-hh-mm-ss “” yyyy-MM-dd 0-100 “” 0-100 试卷名称 试卷名称 分值 客观试题得分 3.3数据库介绍

数据表关系图:

科目学科号varchar(10)试卷号varchar(10)学科名称varchar(20)FK__REFERENCE_教师管理用户名密码身份学科号老师姓名varchar(20)varchar(20)varchar(5)varchar(10)varchar(10)试卷试卷号varchar(10)试卷名称varchar(30)学科号varchar(10)FK__REFERENCE_FK__REFERENCE_FK_SUBJECT_REFERENCE_EXAMFK__REFERENCE_章节章节号varchar(10)学科号varchar(10)章节名称varchar(20)FK__REFERENCE_主观试题库考生成绩准考号成绩试卷号主观题成绩客观题成绩varchar(20)floatvarchar(10)floatfloat题目编号章节号试题题目题目类型分值varchar(10)varchar(10)textvarchar(20)int题目编号章节号试题题目题目类型分值客观试题库varchar(10)varchar(10)textvarchar(20)intFK__REFERENCE_FK__REFERENCE_主观试题答案题目编号int答案内容textFK__REFERENCE_FK__REFERENCE_FK__REFERENCE_学生信息准考号班级号编号姓名密码varchar(20)varchar(10)varchar(20)varchar(20)varchar(20)客观试题答案题目编号varchar(10)答案内容text正确选项varchar(10)生成试卷FK__REFERENCE_准考号主观_题目编号客观_题目编号开始考试时间考试总时间答案内容答卷状态考生已用时间试题号客观题正确答案分值主观题目类型客观题目类型varchar(20)nvarchar(800)nvarchar(800)datetimedatetimetextvarchar(5)datetimevarchar(30)textnvarchar(400)nvarchar(400)nvarchar(400)FK__REFERENCE_班级信息班级号varchar(10)班级名称varchar(20) 图3-1 数据表关系图

数据表:

主观试题答案题目编号int答案内容text 图3-2主观试题答案表

图3-3 主观试题表

图3-4 生成试卷表

章节章节号varchar(10)学科号varchar(10)章节名称varchar(20) 图3-5 章节表

学生信息准考号班级号编号姓名密码varchar(20)varchar(10)varchar(20)varchar(20)varchar(20)图3- 学生信息表

客观试题库题目编号章节号试题题目题目类型varchar(10)varchar(10)textvarchar(20) 图3-6 客观试题表

客观试题答案题目编号varchar(10)答案内容text正确选项varchar(10)图3-7 客观试题答案表

教师管理用户名密码身份学科号老师姓名varchar(20)varchar(20)varchar(5)varchar(10)varchar(10)图3-8 教师信息表

班级信息班级号varchar(10)班级名称varchar(20)图3-9 班级信息表

考生成绩准考号成绩试卷号主观题成绩客观题成绩varchar(20)floatvarchar(10)floatfloat图3-10 考试成绩表

科目学科号varchar(10)学科名称varchar(20)图3-11 学科表

试卷试卷号varchar(10)试卷名称varchar(30)图3-12 试卷表

数据流图(DFD):

考生-客户端登陆信息试题信息在线考试系统试卷信息报告添加、修改试题,系统功能设置教师-管理端

图3-13 顶层图

登陆信息考生-客户端登陆系统1教师管理试题信息配置信息4学生信息查询信息试卷信息报告添加新教师在线考试2生成试卷验证信息出题目3添加、修改试题,系统功能设置教师-管理端 图3-14 0层图

图3-15 1.1细分图

图3-16 1.2细分图

图3-17 1.3细分图

3.4数据词典

1) 数据流条目

表3-4 数据流条目

数据流名:准考号+密码 别名:无 简述:考生在登陆考试系统时的验证信息 来源:考生 去向:系统审核身份 组成:班级号+学号 数据流量:不限 高峰值:不限 数据流名:教师治理账号 别名:无 简述:治理整个系统,拥有最高权限 来源:教师信息 去向:治理界面 组成:教师姓名(可加识别字) 数据流量:不限 高峰值:不限 数据流名:个人信息 别名:无 简述:个人信息能够更换(账号例外) 来源:治理界面 去向:修改完成返回当前页面 组成:教师治理表、学生信息表 数据流量:不限 高峰值:不限 数据流名:成绩治理 别名:无 简述:考生个人成绩查询 来源:客户端界面 去向:成绩查询 组成:考生成绩 数据流量:不限 高峰值:不限 数据流名:答卷 别名:无 简述:进入正式考试,填写答案 来源:客户端界面 去向:填写答案 组成:生成试卷表 数据流量:不限 高峰值:不限 数据流名:答卷信息 别名:无 简述:提交答案 来源:客户端答题界面 去向:记录答案,返回客观题答案 组成:生成试卷表 数据流量:不限 高峰值:不限 数据流名:配置教师信息 别名:无 简述:可对教师信息进行增、删、改、查等操作 来源:治理端界面 去向:增改信息,返回当前页面 组成:教师治理表 数据流量:不限 高峰值:不限 数据流名:配置考生信息 别名:无 简述:导入Excel数据表,可对学生信息进行增、删、改、查等操作 来源:治理端界面 去向:导入学生信息。增改信息,返回当前页面 组成:学生信息表 数据流量:不限 高峰值:不限 数据流名:试题信息 别名:无 简述:由教师进行编辑试题 来源:治理端界面 去向:编辑试题界面 组成:客观试题库表、主观试题库表 数据流量:不限 高峰值:不限 2) 数据储备条目

表3-5 数据储备条目

文件名:主观试题答案表 别名:SUBJECTIVITY_ITEM_ANSWER 简述:存放库存主观试题答案信息 组成:题目编号+答案内容 组织方式:索引文件,以题目编号为关键字 查询要求: 文件名:主观试题库表 别名:SUBJECTIVITY_QUEATIONS 简述:存放库存主观试题信息 组成:题目编号+章节号+试题题目+题目类型 组织方式:索引文件,以题目编号为关键字 查询要求: 文件名:生成试卷表 别名:GENERATE_TEST 简述:存放库存生成试卷信息 组成:准考号+主观_题目编号+客观_题目编号+开始考试时刻+考试总时刻+答案内容+试题类型+答卷状态+考生已用时刻+试题名称 组织方式:索引文件,以准考号为关键字 查询要求: 文件名:章节表 别名:CHAPTERS 简述:存放库存章节信息 组成:章节号+学科号+章节名称 组织方式:索引文件,以章节号为关键字 查询要求: 文件名:学生信息表 别名:STUDENT_INFOMATION 简述:存放库存学生信息 组成:准考号+班级号+编号+姓名+密码 组织方式:索引文件,以准考号为关键字 查询要求: 文件名:客观试题库表 别名:IMPERSONAL_QUEATIONS 简述:存放库存客观试题库信息 组成:题目编号+章节号+试题题目+题目类型 组织方式:索引文件,以题目编号为关键字 查询要求: 文件名:客观试题答案表 别名:IMPERSONAL_ITEM_ANSWER 简述:存放库存客观试题答案信息 组成:题目编号+答案内容+正确选项 组织方式:索引文件,以题目编号为关键字 查询要求: 文件名:教师治理表 别名:TEACHER_MANAGEMENT 简述:存放库存教师治理信息 组成:用户名+密码+身份+学科号 组织方式:索引文件,以用户名为关键字 查询要求: 文件名:班级信息表 别名:CLASS_INFOMATION 简述:存放库存班级信息 组成:班级号+班级名称 组织方式:索引文件,以班级号为关键字 查询要求: 文件名:考生成绩表 别名:SUTDENT_RESULTS 简述:存放库存考生成绩信息 组成:准考号+学科号+成绩+试题号 组织方式:索引文件,以准考号为关键字 查询要求: 文件名:科目表 别名:SUBJECT 简述:存放库存科目信息 组成:学科号+学科名称 组织方式:索引文件,以学科号为关键字 查询要求: 文件名:主观题答案记录表 别名:SUBJECTIVITY_ANSWER 简述:存放库存主观题答案记录信息 组成:准考号+题目编号+答案内容+试题号 组织方式:索引文件,以准考号为关键字 查询要求: 文件名:试卷表 别名:EXAM 简述:存放库存试题信息 组成:试卷号+试卷名称 组织方式:索引文件,以试卷号为关键字 查询要求: 3) 数据项条目

表3-6 数据项条目

数据项名:准考号 别名:TEST_NO 简述:考生准考证编号 类型:nvarchar 长度:20 取值范畴及含义: 数据项名:题目编号 别名:ITEM_NO 简述:标识题目数据的编号 类型:int 长度:4 取值范畴及含义: 数据项名:章节号 别名:CHAPTER_ID 简述:标识各个章节的编号 类型:varchar 长度:10 取值范畴及含义: 数据项名:学科号 别名:SUBJECT_ID 简述:标识各个科目的编号 类型:varchar 长度:10 取值范畴及含义: 数据项名:班级号 别名:CLASS_ID 简述:标识各个班级的编号 类型:varchar 长度:10 取值范畴及含义: 数据项名:题目类型 别名:ITEM_TYPE 简述:标识题目的类型 类型:int 长度:4 取值范畴及含义: 数据项名:用户名 别名:USER_NAME 简述:教师治理的账号 类型:varchar 长度:20 取值范畴及含义: 数据项名:试卷号 别名:EXAM_NO 简述:标识每一份试卷的编号 类型:varchar 长度:10 取值范畴及含义: 4) 加工条目(加工逻辑说明)

表3-7 加工条目 加工逻辑名:考生身份验证 编号:1.1 激活条件:输入考生身份验证信息 加工逻辑:{准考号+登陆密码} 执行频率: 加工逻辑名:成绩查询 编号:1.2 激活条件:考生选择查询条件 加工逻辑:根椐考生所选择的条件 执行频率: 加工逻辑名:修改密码 编号:1.3 激活条件:考生修改个人密码 加工逻辑:根椐考生的准考号,能够修改相应的密码 执行频率: 加工逻辑名:验证当前状态 编号:2.1 激活条件:考生进入考试 加工逻辑:根椐考生的进入的状态进行判定是否第一次进入 执行频率: 加工逻辑名:答卷 编号:2.2 激活条件:考生进入考试系统答卷 加工逻辑:考生进行答卷,系统自动对答卷记录答案信息 执行频率: 加工逻辑名:提交 编号:2.3 激活条件:考生提交答案触发 加工逻辑:{考生答案+时刻少于答卷规定时刻} 执行频率: 加工逻辑名:治理端验证信息 编号:3.1 激活条件:输入教师账号密码 加工逻辑:{治理账号+登陆密码} 执行频率: 加工逻辑名:编辑试题 编号:3.2 激活条件:教师增加试题触发 加工逻辑:根椐所选的科目和章节添加所对应的题目 执行频率: 加工逻辑名:配置考生信息 编号:3.3 激活条件:教师配置考生信息或导入Excel数据表触发 加工逻辑:根椐所选的班级导入或配置对应的考生信息 执行频率: 加工逻辑名:导出考试成绩 编号:3.4 激活条件:教师导出考试成绩触发 加工逻辑:根椐所选的班级和试卷名称 执行频率: 加工逻辑名:配置教师信息 编号:3.5 激活条件:高级治理员对教师信息进行编辑 加工逻辑:高级治理员添加新教师 执行频率:

第四章 系统架构与模式

4.1 系统架构

为了各个队员的分工合作和日后的便于爱护为目的,本系统采纳三层架构部署的框架来开发。

图 4-1 数据访问层

图 4-2 业务逻辑层

图 4-3 用户界面层

图 4-4 Model实体类设计

4.2 模式设计

为了增加系统的环境适应性和降低各层之间的耦合度,我们在DAL层和BLL层之间采纳了反射工厂模式的设计模式开发

图 4-5 反射工厂模式

在IDAL中,分别包含接口:

图 4-6 系统中所有的接口

在DALFactory中,DataAccess负责各个接口对象的创建:如下例子:

public sealed class DataAccess {

public static readonly string path ConfigurationManager.AppSettings[\"WebDAL\"].ToString();

public DataAccess() {

// }

public static IDAL.IGENERATE_TEST CreatGENERATE_TEST() {

string classname = path + \".GENERATE_TEST\"; return

(IDAL.IGENERATE_TEST)Assembly.Load(path).CreateInstance(classname);

} }

=

4.3 辅助类的设计

Account类是用于储备学生登录时储存其信息; ExcelWork类是用于辅助导入Excel表格;

PageClass类是用于学生在考试现场的所有操作的储存; Rules类是用于教师生成试卷时储存条件的;

4.4 框架总结

本系统是仿照PetShop4.0的设计框架开发的,采纳反射工厂模式的三层架构开发,针对静态的三层架构,我们设计了动态的三层架构理念,在DAL层中只是负责功能的传输和数据的返回,而真正的功能实现是在UI层,如此能够依照业务的需求而动态的更换。如此能够做到风险最低的成效。

第五章 系统的实现和调试系统

5.1 系统的部分界面以及程序代码

图 5-1 系统登录页

图 5-2 教师治理页

图 5-3 学生考试页

图 5-4 治理员治理页

5.2 部分程序代码实现

5.2.1 学生端考试页面实现断线和系统崩溃时的考试修复的代码:

原理:通过考生试卷表的状态判定考生当前是出于什么情形,0:未登录,1:已登录,2:已交卷;3,已批阅。然后依照不同的状态处理数据,如:考生当前状态为1(已登录),然而他的电脑突然死机,在次登录的时候,系统判定当前考试时刻,登录后系统会自动调用该学生的试卷并显示已答题的答案数据出来。最大限度的保证了学生的权益。

private StringBuilder Initialization() {

StringBuilder StringB = new StringBuilder();

string[] ImpersonalTypesArr = _ImpersonalTypes.Split('$'); string[] SubjectivityTypesArr = _SubjectivityTypes.Split('$'); string[] ImpersonalExemArr = _ImpersonalExem.Split('$'); string[] SubjectivityExemArr = _SubjectivityExem.Split('$'); string[] AnswerContentArr = _AnswerContent.Split('$'); string[] StudentValueArr = _StudentValue.Split('$');

string[] SubjectivityValueArr = _SubjectivityValue.Split('$');

StringB.Append(\"\"); //老师阅卷

if (_UserType == \"Marking\") {

StringB.Append(\"\"); }

//读取数据

Gen = GenManager.GetOnlyGENERATE_TEST(\"TEST_NO='\" + _TestNo + \"' and EXAM_NAME='\" + _ExamName + \"'\");

if (Gen == null || string.IsNullOrEmpty(Gen.ANSWER_CONTENT)) {

StringB.Append(\"\"); return StringB; }

//试卷状态

if (Gen.STATE == \"3\") {

ImageButton2.Visible = false; }

string[] ArrANSWER_CONTENT = Gen.ANSWER_CONTENT.Split('$');

StringB.Append(\"\"); return StringB; }

5.2.2 教师端针对每一位学生随机生成试卷代码:

原理:教师添加条件(不同的题型和不同的章节),调出教师选择的班级的学生名单为每位学生储存一份随机抽出的题目。按照单选,多选,判定,填空,简答的顺序排好,同时抽出答案储存(便于考生提交试卷是评出客观题成绩)

protected void Save_Click(object sender, EventArgs e) {

if (Session[\"Rules\"] != null) {

Rules[] rules = (Rules[])Session[\"Rules\"]; DataTable AllIPQIDT = new DataTable(); AllIPQIDT.Columns.Add(\"ITEM_NO\"); AllIPQIDT.Columns.Add(\"ITEM_TYPE\");

AllIPQIDT.Columns.Add(\"CORRECT_OPTION\"); AllIPQIDT.Columns.Add(\"TEST_VALUE\"); DataTable AllSJQIDT = new DataTable(); AllSJQIDT.Columns.Add(\"ITEM_NO\"); AllSJQIDT.Columns.Add(\"ITEM_TYPE\");

DataTable SIIDT = SIM.GetSTUDENT_INFOMATIONs(\"CLASS_ID = \" + ClassDropDownList.SelectedValue);

try {

for (int i = 0; i < SIIDT.Rows.Count; i++) {

GENERATE_TESTInfo GTI = new GENERATE_TESTInfo(); for (int r = 0; r < rules.Length; r++) {

if (rules[r].Category == null) {

continue;

} else {

switch (int.Parse(rules[r].CategoryValue)) {

case 1: case 2: case 3:

DataTable IPQIDT = IPQM.GetIMPERSONAL_QUEATIONSs(\"ITEM_NO in(SELECT TOP \" + rules[r].Count + \" ITEM_NO FROM [IMPERSONAL_QUEATIONS] WHERE CHAPTER_ID = \" + rules[r].ChapterVlaue + \"and ITEM_TYPE = \" + rules[r].CategoryValue + \" ORDER BY NEWID())\");

for (int j = 0; j < IPQIDT.Rows.Count; j++) {

DataRow AllIPQIDR = AllIPQIDT.NewRow(); AllIPQIDR[\"ITEM_NO\"] = IPQIDT.Rows[j][\"ITEM_NO\"].ToString();

AllIPQIDR[\"ITEM_TYPE\"] = IPQIDT.Rows[j][\"ITEM_TYPE\"].ToString();

AllIPQIDR[\"CORRECT_OPTION\"] = IPIAM.GetOnlyIMPERSONAL_ITEM_ANSWER(\"ITEM_NO = \" + IPQIDT.Rows[j][\"ITEM_NO\"].ToString()).CORRECT_OPTION;

AllIPQIDR[\"TEST_VALUE\"] = IPQIDT.Rows[j][\"TEST_VALUE\"].ToString();

AllIPQIDT.Rows.Add(AllIPQIDR);

AllIPQIDT.AcceptChanges(); }

break; case 4: case 5:

DataTable SJQIDT = SJQM.GetSUBJECTIVITY_QUEATIONSs(\"ITEM_NO

in(SELECT TOP \" + rules[r].Count + \" ITEM_NO FROM [SUBJECTIVITY_QUEATIONS] WHERE CHAPTER_ID = \" + rules[r].ChapterVlaue + \"and ITEM_TYPE = \" + rules[r].CategoryValue + \" ORDER BY NEWID())\");

for (int j = 0; j < SJQIDT.Rows.Count; j++) {

DataRow AllSJQIDR = AllSJQIDT.NewRow(); AllSJQIDR[\"ITEM_NO\"] = SJQIDT.Rows[j][\"ITEM_NO\"].ToString();

AllSJQIDR[\"ITEM_TYPE\"] = SJQIDT.Rows[j][\"ITEM_TYPE\"].ToString();

AllSJQIDT.Rows.Add(AllSJQIDR); AllSJQIDT.AcceptChanges(); }

break; default:

break; }

}

if (r == rules.Length - 1) {

string SQ_ITEM_NO = \"\"; // 主观题题号 string IMP_ITEM_NO = \"\"; // 客观题题号

string ANSWER_CONTENT_TRUE = \"\"; // 客观题正确答案 string TEST_VALUE = \"\"; // 客观题每题的分数 string SUBJECTIVITY_TYPE = \"\"; // 主观题题型 string IMPERSONAL_TYPE = \"\"; // 客观题题型 if (AllIPQIDT.Rows.Count > 0) {

AllIPQIDT.DefaultView.Sort = \"ITEM_TYPE ASC\"; DataTable DataTemp = AllIPQIDT.DefaultView.ToTable();

for (int j = 0; j < AllIPQIDT.Rows.Count; j++) {

IMP_ITEM_NO += DataTemp.Rows[j][\"ITEM_NO\"].ToString() + \"$\";

ANSWER_CONTENT_TRUE += DataTemp.Rows[j][\"CORRECT_OPTION\"].ToString() + \"$\";

IMPERSONAL_TYPE += DataTemp.Rows[j][\"ITEM_TYPE\"].ToString() + \"$\";

TEST_VALUE += DataTemp.Rows[j][\"TEST_VALUE\"].ToString() + \"$\"; }

AllIPQIDT.Rows.Clear(); IMP_ITEM_NO = IMP_ITEM_NO.Substring(0, IMP_ITEM_NO.Length - 1);

ANSWER_CONTENT_TRUE = ANSWER_CONTENT_TRUE.Substring(0,

ANSWER_CONTENT_TRUE.Length - 1);

IMPERSONAL_TYPE = IMPERSONAL_TYPE.Substring(0, IMPERSONAL_TYPE.Length - 1);

TEST_VALUE = TEST_VALUE.Substring(0, TEST_VALUE.Length - 1); }

if (AllSJQIDT.Rows.Count > 0) {

AllSJQIDT.DefaultView.Sort = \"ITEM_TYPE ASC\"; DataTable DataTemp = AllSJQIDT.DefaultView.ToTable();

for (int j = 0; j < DataTemp.Rows.Count; j++) {

SQ_ITEM_NO += DataTemp.Rows[j][\"ITEM_NO\"].ToString() + \"$\";

SUBJECTIVITY_TYPE += DataTemp.Rows[j][\"ITEM_TYPE\"].ToString() + \"$\"; }

AllSJQIDT.Rows.Clear(); SQ_ITEM_NO = SQ_ITEM_NO.Substring(0, SQ_ITEM_NO.Length - 1);

SUBJECTIVITY_TYPE = SUBJECTIVITY_TYPE.Substring(0, SUBJECTIVITY_TYPE.Length - 1); }

GTI.TEST_NO = SIIDT.Rows[i][\"TEST_NO\"].ToString(); GTI.SQ_ITEM_NO = SQ_ITEM_NO; GTI.IMP_ITEM_NO = IMP_ITEM_NO; GTI.BEGIN_TEST_TIME = DateTime.Parse(StartTime.Value);

GTI.TEST_ALL_TIME = int.Parse(AllTimeTextBox.Text.Trim()) * 60;

GTI.ANSWER_CONTENT = \"\"; GTI.STUDENT_VALUE = \"\"; GTI.STATE = \"0\";

GTI.USE_TIME = DateTime.Now;

GTI.EXAM_NAME = ExamDropDownList.SelectedItem.Text; GTI.ANSWER_CONTENT_TRUE = ANSWER_CONTENT_TRUE; GTI.TEST_VALUE = TEST_VALUE;

GTI.SUBJECTIVITY_TYPE = SUBJECTIVITY_TYPE; GTI.IMPERSONAL_TYPE = IMPERSONAL_TYPE; try {

GTM.AddOnlyGENERATE_TEST(GTI);

}

catch (SqlException ex) {

if (ex.Number == 2627) {

ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), \"\该班级的学生已添加了该份试卷!')\

return; } } } } }

} catch {

GTM.DeleteGENERATE_TEST(\"EXAM_NO = \" ExamDropDownList.SelectedValue); }

finally {

Session[\"Rules\"] = null;

ScriptManager.RegisterStartupScript(UpdatePanel1,

UpdatePanel1.GetType(), \"\添加成功!')\}

}

RuleDataBinder(); }

+

总结

据了解,学校往常的在线考试有专门多不足之处,针对现状的修改和以后进展的趋势,实现以学生为本,方便教师的准则,该系统做到教师端赶忙抽题,达到学生不能作弊的功能,学生端能够定时储存答案,达到学生在考试时不管发生什么事都能够最大限度的储存学生的考试成绩。该系统是从教师和学生双方的利益动身而开发。能够为一些有这方面需求的学校使用。

期间我们分工合作,发挥了各个队友间的特长。以达到最好的效益和质量。论文方面由组员陈晓红和陈永红负责,界面美工方面由组员刘国新负责,设计和代码实现由组员李华平和组长严锦龙负责。测试时期多亏了我们的指导老师王槐彬老师,是他指出了系统的不足之处和身为教师和用户的一方,给我们提了专门好的建议。

毕业设计是对我们大学三年来所学知识的一次总结和检测,我们认为只有通过如此的毕业设计,才能对毕业生的知识进行一次全面的检验,从而使我们认识到知识内容的不足和知识框架的缺陷之处,然后有的放矢地加以补偿。

致 谢

在本次毕业设计过程中,王槐彬老师从选题、构思、资料收集到最后定稿的各个环节给予我们小组细心指引与教诲,使我们对在线成绩治理系统有了深刻的认识,使我们得以最终完成毕业设计,在此表示衷心感谢。王老师严谨的治学态度、丰富渊博的知识、敏捷的学术思维、精益求精的工作态度、积极进取的科研精神以及诲人不倦的师者风范是我们终生学习的榜样。

同时,我们要感谢软件技术专业授课的各位老师,正是由于他们的传道、授业、解惑,让我们学到了专业知识,并从他们身上学到了如何求知治学、如何为人处事。我们也要感谢我们的母校广东交通职业技术学院,是她提供了良好的学习环境和生活环境,让我们的大学生活丰富多姿,为我们的人一辈子留下杰出的一笔。另外,感谢 07 软件班全体同学的关心和鼓舞。同窗之谊和手足之情,我们将终生难忘!感谢所有关心和关怀过我们的朋友们!

最后,我要向在百忙之中抽时刻对本文进行批阅、评议和参加论文答辩的各位师长表示感谢!

参考文献

[1]戴上平 丁士锋 等编著

完全自学手册

北京

机械工业出版社 等译

[2](美)Andrew Troelsen 著 朱晔 肖逵 张大磊 王少葵

C#与.NET 3.5 高级程序设计(第四版)

熟知Ajax

北京

人民邮电出版社

[3]冯曼菲 编著 北京 北京

人民邮电出版社 电子工业出版社

[4]勒华 编著 ASP.NET 3.5 宝典

因篇幅问题不能全部显示,请点此查看更多更全内容

Top