在线考试系统0421-格式 - 副本.doc_第1页
在线考试系统0421-格式 - 副本.doc_第2页
在线考试系统0421-格式 - 副本.doc_第3页
在线考试系统0421-格式 - 副本.doc_第4页
在线考试系统0421-格式 - 副本.doc_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

摘摘 要要 随着计算机网络技术和网络教育的不断发展 传统的基于纸笔的考试形式已不再适 应现在的发展需要 计算机在线考试正在逐步取代传统考试 在线考试系统利用网络实 现在线考试和评分等环节 现在教考分离 在一定程度上减少了形象考试的主观因素 同时减少了教师的工作量 在线考试系统的设计就是基于上述目的开发设计的 本系统主要包括考生考试 教师组卷给分 管理员管理三大模块 具有在线考试 成绩查询 试卷管理 组卷和评分 用户管理等功能 本系统利用了微软的 Net 平台和 SQL Server 2005 数据库进行开发 采用了工厂模式的三层架构 同时对系统的工作原理 需求分析和总体设计做了简要的概述 关键词 在线考试系统 C SQL Server 2005 I Abstract Along with the computer network technology and the development of network education the traditional on paper examination is no longer fit for the present situation the computer online test is gradually replacing the traditional examination Online examination system to use the network to realize on line examination and the score of the separation of teaching and examination now to a certain extent reduces the image examination of subjective factors at the same time reducing the workload of teachers Online examination system design is based on the above development design This system mainly includes the examinee examination teachers administrators group to the management of three major modules with the online examination achievement inquiry examination paper management test and score user management and other functions The system uses a Microsoft Net platform and SQL Server 2005 database development the factory model of the three layer architecture at the same time the working principle of the system the demand analysis and overall design to do a brief introduction Key words online examination system C SQL Server 2005 目 录 第 1 章项目分析 1 1 1 问题描述 1 1 2 技术分析 1 1 3 工程进度计划 2 第 2 章 系统分析与设计 3 2 1 系统分析 3 2 1 1 参与者 3 2 1 2 用例及用例规约 3 2 1 3 用例图 4 2 2 系统设计 5 2 2 1 时序图 5 2 2 2 类图 8 2 2 3 系统体系结构设计 10 2 3 数据库设计 10 2 3 1 E R 图 11 2 3 2 关系模式 12 2 3 3 表的设计 13 第 3 章 实现与测试 18 3 1 学生选择试卷 18 3 1 1 活动图 19 3 1 2 界面 19 3 1 3 代码 20 3 1 4 测试用例 22 3 2 学生进行考试 22 3 2 1 活动图 23 3 2 2 界面 23 3 2 3 代码 28 3 2 4 测试用例 31 第 4 章 结束语 32 附录 主要源程序 34 电子科技大学毕业论文 在线考试系统 0 第 1 章 项目分析 近年来 互联网和计算机的迅速发展 人们的生活 思维 工作 教育以及受教育 等方式都发生了改变 开发 应用能够整合教育测评理论 方法和现在信息技术手段的 在线考试系统 为学生个性化学习提供 灵活 方便 科学 公平 的 个别化学习测 评服务 已成为教育工作者所面临的一项重要任务 通过在线考试教师可对学生的学习 进行考核 了解学生的学习效果 为改进教学提供了依据 学生可通过网上自测了解自 己对教学内容的掌握情况 提高学习兴趣 题库的及时更新和维护 保证试题库中的试 题更好地适应教学要求 在线考试时就可以减少老师的阅卷工作量 提高老师的工作效 率 所以开发一个在线考试管理系统势在必行 它相对于纸介质考试而言具有省时 省 力 存储方便等优点 现在已经被越来越多地应用到各种层次和领域的考试当中 因此 在线考试系统的开发有着必要意义 1 1 问题描述 1 在线考试系统解决教师随机组卷和按章节组卷的问题 2 在线考试系统解决学生随机选择试卷 显示试卷 答卷 保存答案的问题 3 在线考试系统解决教师在计算机上手动判分的问题 4 在线考试系统能够对学生 教师 试题库等的管理 1 2 技术分析 已成为关系数据库的标准语言 基于工厂模式的三层架构可以很容易的用新的实现来代替原有层次的实现 降低层 与层之间的依赖 有利于标准化 利于各层之间的复用 电子科技大学毕业论文 在线考试系统 1 1 3 工程进度计划 2011 3 21 至 2011 4 3 需求分析阶段 2011 4 4 至 2011 4 17 设计界面阶段 2011 4 18 至 2011 5 1 编码阶段 2011 5 2 至 2011 5 13 测试阶段 电子科技大学毕业论文 在线考试系统 0 第 2 章 系统分析与设计 2 1 系统分析 在线考试系统在以后应用过程中越来越普遍的系统 本系统是基于 C S 的系统 在 在线考试中学生可以选择试卷 进行考试 查询成绩 教师可以组卷 批改卷子 添加 试题 管理员可以对用户进行管理 系统的界面设计也分为学生 教师 管理员三大块 2 1 1 参与者 学生 教师 管理员 2 1 2 用例及用例规约 用例模型通常由一组用例组成 其基本组成部件是用例 参与者和系统 1 登录的用例规约如表 2 1 所示 表 2 1 用户登录用例规约 用例名称 用户登录 用例 ID 01 关联角色 学生 教师 管理员 用例说明 系统验证用户身份合法性后进入系统 前置条件 无 基本事件流 1 用户请求系统登陆 2 系统弹出系统登陆页面 3 用户输入用户名信息 4 用户输入口令信息 5 用户选择登录角色信息 6 用户点击确认登录按钮 7 系统查询数据库获取用户信息赋予相应权限 根据用户权限在管理机 能页面上显示相应系统主界面 8 用例结束 其它事件流 1 用户名信息为空 2 系统提示用户名信息不能为空 3 用例结束 异常事件流 1 登陆失败 2 系统登陆时出现系统故障 例如网络故障或数据库服务器故障 弹出 异常界面 提示系统登陆失败 后置条件 用户登录成功 进入系统主界面 电子科技大学毕业论文 在线考试系统 1 2 学生考试端的用例规约如表 2 2 所示 表 2 2 学生考试端用例规约 用例名称 学生考试 用例 ID 02 关联角色 管理员 教师 用例说明 系统验证用户身份为学生后才能进入 前置条件 身份为学生 基本事件流 1 学生请求考试 2 系统随机选择试卷 3 显示随机试卷的基本信息 4 学生进入考试 5 学生保存答案 6 学生提交试卷 7 学生答卷过程中中途断电而未提交试卷 可重新登录进入考试试卷并 下载已答过的答案 并提交试卷 8 用例结束 其它事件流 1 学生信息查询 2 学生成绩查询 3 修改密码 4 用例结束 异常事件流 1 选择试卷失败 2 学生考试时出现系统故障 例如网络故障或数据库服务器故障 弹出 异常界面 考试失败 后置条件 选择试卷后 进入考试界面 2 1 3 用例图 用例图描述软件系统和外部参与者之间的交互 在线考试系统的学生端 教师端和 管理员端的用例图如下所示 1 学生端用例图如 2 1 所示 图 2 1 学生端用例图 电子科技大学毕业论文 在线考试系统 2 2 教师端用例图如 2 2 所示 就是把分析阶段产生分析模型转换为用适当手段表示的软件设计模型 2 2 1 时序图 时序图用来描述对象之间的动态交互 着重体现对象间消息传递的时间顺序 它以 垂直轴表示时间 水平轴表示不同的对象 对象用一个带有垂直虚线的矩形框表示 并 标有对象名和类名 垂直虚线是对象的生命线 用于表示在某段时间内对象是存在的 对象间的通信在对象的生命线间通过消息符号来表示 消息的箭头指明消息的类型 时 序图中的消息可以是信号或操作调用 消息可以用消息名及参数来标识 消息还可带有 条件表达式 表示分支或决定是否发送消息 如果用于表示分支 则每个分支是相互排 斥的 即在某一时刻仅可发送分支中的一个消息 在时序图的左边可以有说明信息 用 于说明消息发送的时刻 描述动作的执行情况以及约束信息等 1 学生个人信息查询 学生请求查看自己的个人信息 系统根据学生登录时的信息 在学生信息表中找到 符合条件的信息反馈给学生 查看学生个人信息时序图如 2 4 所示 电子科技大学毕业论文 在线考试系统 3 图 2 4 学生个人信息时序图 2 学生成绩查询 学生请求查看考试成绩 系统根据学生的基本信息 在学生成绩表中找到符合条件 的信息反馈给学生 查看学生成绩时序图如 2 5 所示 图 2 5 学生成绩查询时序图 3 学生修改密码 学生请求修改自己的密码 系统根据学生修改的信息 在学生信息表中插入修改的 信息并提示学生修改结果 查看学生修改密码的时序图如 2 6 所示 电子科技大学毕业论文 在线考试系统 4 图 2 6 学生修改密码时序图 4 学生考试 学生想考试系统请求考试 考试系统为学生查找该学生可以进行的考试科目和相对 应的试卷 并把试卷信息反馈给学生 学生进入考试状态开始答题 并保存试卷 考试 结束时 学生应提交试卷 学生考试时序图如 2 7 所示 图 2 7 学生考试时序图 2 2 2 类图 通过时序图基本的类已经出现 时序图中的消息其实对应的是类的方法 从用例规 约中可以抽取类的属性 通过不断地迭代可以得到设计类图 设计类在此处只将重要的 电子科技大学毕业论文 在线考试系统 5 相关类详细描述 1 学生类 学生类包含的属性主要是学生编号 学生姓名 密码 出生年月 年龄 性别 地 址 所在系部 所在班级 学生类的方法主要是一些增 删 改 查等基本操作 设计 类图如图 2 7 所示 图 2 8 学生类 2 学生试卷类 学生试卷类包括的属性有学生编号 试卷编号 开始时间 结束时间 剩余时间 学生试卷类主要的方法有随机选择试卷 设计学生试卷类如 2 8 所示 图 2 9 学生试卷类 3 学生答卷类 学生答卷类主要的属性有试卷编号 学生编号 题目编号 学生答案 学生得分 设计学生答卷类如图 2 9 所示 电子科技大学毕业论文 在线考试系统 6 图 2 10 学生答卷类 4 学生成绩类 学生成绩类主要属性包括试卷编号 学生编号 学生成绩 学生成绩类主要的方法 查看学生成绩 设计学生成绩类如图 2 10 所示 图 2 11 学生成绩类 5 学生端各个类之间的联系 学生根据自己要考试的科目随机选择试卷进行考试 学生保存并提交考试试卷 老 师评卷后 学生可以查看自己的考试成绩 如图 2 11 所示 图 2 12 各类联系 电子科技大学毕业论文 在线考试系统 7 2 2 3 系统体系结构设计 结构化体系结构是完成模块设计的基础 保证了程序的清晰 易读 逐步细化实现 程序的正确 可靠 在线考试系统的主要体系结构如图所示 在线考试系统 管理员教师学生 系 部 管 理 班 级 管 理 教 师 管 理 学 生 管 理 管 理 员 管 理 修 改 密 码 判 卷 题 型 管 理 题 库 管 理 课 程 管 理 章 节 管 理 查 看 学 生 成 绩 查 看 教 师 信 息 修 改 密 码 组 卷 查 看 学 生 信 息 查 看 个 人 成 绩 选 择 试 卷 修 改 密 码 答 卷 图 2 13 结构图 2 3 数据库设计 数据库 Database 是按照数据结构织 存储和管理数据的仓库 它产生于距今五 十年前 随着信息技术场的发展 特别是二十世纪九十年代以后 数据管理再仅仅是存 储和管理数据 而转变成用户所需要的各种数据管理的方式 数据库有很多种类型 从 最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方 面得到了广泛的应用 数据库设计 Database Design 是指对于一个给定的应用环境 构造最优的数据库模 式 建立数据库及其应用系统 使之能够有效地存储数据 满足各种用户的应用需求 信息要求和处理要求 数据库设计是建立数据库及其应用系统的技术 是信息系统开 发和建议中的核心技术 由于数据库应用系统的复杂性 为了支持相关程序运行 数据 库设计就变得异常复杂 因此最佳设计不可能一蹴而就 而只能是一种 反复探寻 逐 电子科技大学毕业论文 在线考试系统 8 步求精 的过程 也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系 的过程 2 3 1 E R 图 E R 图是用来描述现实世界的概念模型 构成 E R 图的基本要素是实体型 属性和联 系 其表示方法为 实体连接起来 同时在无向边旁标上联系的类型 1 1 1 n 或 m n 比如 老师给学生授课存在授课关系 学生选课存在选课关系 如果是弱实体的联系则在菱形 外面再套菱形 该系统的模型主要描述了学生 教师 管理员及实体的那些属性 还有他们之间的 关系 如图 2 14 所示 电子科技大学毕业论文 在线考试系统 9 教师 管理员 系部 管理 查看 管理 管理 学 生 用户名 密码 密码 出生日期 姓名 学号 用户 名 密码 职称 简介 家庭住址 专业 住址年龄 性别 系部号系部名 管理 班级 班级编号班级号 所属系 邮箱 班级 n m mn 1 m 判 试 卷 m n 组成 试 卷 1 n 管理 学 生 成 绩 m n m n m n 选择考试 试卷试卷 m m nn 单选题主观题 多选题判断题 m m m 图 2 14 在线考试系统 E R 图 2 3 2 关系模式 整个系统各实体可用以下关系来表示 其中主键已用下划线标识 管理员 管理员编号 管理员名字 管理员密码 教师 教师号 教师名 密码 教师职称 职务 电话 通讯地址 E mail 简介 电子科技大学毕业论文 在线考试系统 10 学生 学号 姓名 密码 出生日期 性别 年龄 家庭地址 主修专业 班级编 号 系部 系部编号 系部名称 班级 班级编号 班级名 系部号 课程 课程编号 教师编号 科目名称 试卷 试卷号 课程编号 开始时间 结束时间 试卷班级 试卷号 所属班级 成绩 试卷号 学生学号 成绩 分值 试卷号 题型 数量 分值 组卷 试卷号 试题序号 题型 试题号 答卷 编号 试卷号 学生学号 题型 试题号 学生答案 学生得分 教师反馈 试卷号 学生编号 教师号 反馈信息 题型 题型编号 题型名称 所属科目 章节 章节编号 章节名 课程编号 主观题 试题号 题型编号 试题题目 答案 章节编号 单选题 试题号 试题题目 A B C D 正确答案 章节编号 多选题 试题号 试题题目 A B C D 正确答案 章节编号 判断题 试题号 试题题目 正确答案 章节编号 试卷是否提交 学生编号 试卷编号 是否提交 教师职称 职称编号 教师职称 2 3 3 表的设计 表 2 3 学生信息表 序号列名字段说明数据类型长度主键允许空 1 stuid学生编号Varchar50是否 2 stuname学生姓名Varchar50否是 3 stupwd密码Varchar50否是 4 stubrith出生年月Varchar50否是 5 stusex性别Varchar4否是 6 stuage年龄Int否是 7 stuaddress家庭住址Varchar50否是 8 stumajor所属系部Varchar50否是 电子科技大学毕业论文 在线考试系统 11 9 classid所属班级Varchar50否是 电子科技大学毕业论文 在线考试系统 0 表 2 4 班级信息表 序号列名字段说明数据类型长度主 键 允许空 1classid班级编号Varchar50是否 2classname班级名称Varchar50否是 3depid系部编号Varchar50否是 2depname系部名称Varchar50否是 表 2 5 章节信息表 序号列名字段说明数据类型长度主 键 允许空 1chapterid章节编号Varchar50是否 2chaptername章节名称Varchar50否是 3 courserid科目编号Varchar50否是 表 2 6 判断题信息表 序号列名字段说明数据类型长度主 键 允许空 1 selectid判断题编号Varchar50是否 2 questiontitle判断题题目Varchar100否是 3 answer正确答案Varchar50否是 4 chapterid章节编号Varchar50否是 表 2 7 单选题信息表 序号列名字段说明数据类型长度主 键 允许空 1selectid单选题编号Varchar50是否 2questiontitle单选题题目Varchar100否是 3AA 答案Varchar50否是 4BB 答案Varchar50否是 5CC 答案Varchar50否是 6DD 答案Varchar50否是 7answer正确答案Varchar50否是 8chapterid章节编号Varchar50否是 表 2 8 多选题信息表 序号列名字段说明数据类型长度主 键 允许空 1 selectid多选题编号Varchar50是否 2 questiontitle多选题题目Varchar100否是 3 AA 答案Varchar50否是 4 BB 答案Varchar50否是 5 CC 答案Varchar50否是 6 DD 答案Varchar50否是 7 answer正确答案Varchar50否是 8 chapterid章节编号Varchar50否是 电子科技大学毕业论文 在线考试系统 0 表 2 9 客观题信息表 序号列名字段说明数据类型长度主键允许空 1 subid客观题编号Varchar50是否 2 typeid客观题题型编 号 Varchar50否是 3 questiontitle客观题题题目Varchar100否是 4 answer正确答案Varchar8000否是 5 chapterid章节编号Varchar50否是 表 2 10 题型管理信息表 序号列名字段说明数据类型长度主键允许空 1 typeid题型编号Varchar50是否 2 questiontypename题型名Varchar50否是 3 courseid所属科目编 号 Varchar50否是 表 2 11 试卷分值管理表 序号列名字段说明数据类型长度主键允许空 1 paperid试卷编号Varchar50是否 2 questiontypename题型名Varchar50否是 3 number出题个数Int 否是 4 value分值Iint否是 表 2 12 生成试卷表 表 2 13 试卷班级 2 14 学生试卷信息表 序号列名字段说明数据类型长度主键允许空 1 stuid学生编号Varchar50否是 2 paperid试卷编号Varchar50否是 3 startime开始时间datetime否是 4 endtime结束时间datetime否是 5 submit是否提交Varchar50否是 6 resulttime剩余时间int否是 序号列名字段说明数据类型长度主键允许空 1 paperid试卷编号Varchar50是否 2 questionsort顺序Varchar50否是 3 questiontypename题型名Int 否是 4 questionid试题编号Iint否是 序号列名字段说明数据类型长度主键允许空 1paperid试卷编号Varchar50否是 2classid班级编号Varchar50否是 电子科技大学毕业论文 在线考试系统 0 表 2 15 学生成绩信息表 序号列名字段说明数据类型长度主键允许空 1paperid试卷编号Varchar50否是 2stuid学生编号Varchar50否是 3score成绩int否是 表 2 16 教师反馈信息表 序号列名字段说明数据类型长度主键允许空 1 paperid试卷编号Varchar50否是 2 stuid学生编号Varchar50否是 3 teacherid教师编号Varchar50否是 4 back反馈意见Varchar40000否是 表 2 17 试卷信息表 表 2 18 学生答卷信息表 序号列名字段说明数据类型长度主键允许空 1id编号Varchar50是否 2paperid试卷编号Varchar50否是 3stuid学生编号Varchar50否是 4questiontypename题型名Varchar50否是 5questionid试题编号Varchar50否是 6stuanswer学生答案Varchar50否是 7stuscore学生得分Varchar50否是 序号列名字段说明数据类型长度主键允许空 1 paperid试卷编号Varchar50是否 2 courseid科目编号Varchar50否是 3 startime开始时间Datetime否是 4 endtime结束时间Datetime否是 电子科技大学毕业论文 在线考试系统 0 第 3 章 实现与测试 在线考试系统是一个为教师 学生提供一个在线考试的系统 该系统包含学生端 教师端 管理员端 该系统为学生考试提供了一个方便的平台 也为教师改卷提供了简 单的程序 同时也为管理员的管理提供了一个入口 会对学生作弊有一定的预防能力 教师批卷会大大提高其效率 也方便了管理员的管理 该课题不仅符合现在考试系统的 需求 同时还操作简单 易学 是教师 学生的有用的工具 3 1 学生选择试卷 在线考试系统是为了方便教师和学生所设计的系统 它不仅方便了教师每次出试卷 时不用四处寻找题型和考题和教师可以随时添加题型和考题 还使学生进行在线考试预 防考生作弊现象 在这里为大家介绍学生端在进行考试之前要进行选择试卷的功能 考生可以选择自 己所要考试的科目 系统根据考生登录时 判断考生所在系部和班级选择出该考生可以 考试的所有科目 再根据所有科目的考试时间和考生登录考试窗体的时间进行比较 判 断在该时间所能进行的考试科目 考生就可以根据所要考试的科目进行选择 然后系统 会随机为该考生抽出一份考卷 学生就进入考试界面中进行考试 在选择考试界面中 主要是考生选择所要的科目后 系统如何随机为考生抽出一份 试卷和系统自动判断考生在现在时间可以进行的考试科目的判断 3 1 1 活动图 电子科技大学毕业论文 在线考试系统 1 图 3 1 学生选择试卷活动图 3 1 2 界面 DataTable dt2 new BLL SelectTest Sgetpaper id string paperid dt2 Rows curr que num 1 0 ToString DataTable dt new BLL SelectTest SelectPaper paperid Model UpdatePwd paperid dt Rows 0 0 ToString DateTime dt1 DateTime Now if dt1 Hour DateTime dt Rows 0 3 Hour label3 Text 不能进行考试 button1 Enabled false else textBox1 Text 试卷号 dt Rows 0 0 ToString textBox1 Text r n textBox1 Text 考试科目 comboBox2 Text textBox1 Text r n textBox1 Text 开始时间 dt Rows 0 2 ToString Model UpdatePwd startime DateTime dt Rows 0 2 textBox1 Text r n textBox1 Text 结束时间 dt Rows 0 3 ToString Model UpdatePwd endtime DateTime dt Rows 0 3 电子科技大学毕业论文 在线考试系统 2 textBox1 Text r n if dt1 Hour DateTime dt Rows 0 2 Hour int a1 DateTime dt Rows 0 2 Minute int a2 dt1 Minute int a3 a2 a1 if a3 0 DataTable table new BLL SelectTest YesNo Model UpdatePwd userid Model UpdatePwd paperid if table Rows Count 0 label3 Text 可以进行考试 else label3 Text 你已考过此试卷 button1 Enabled true int hour Convert ToInt32 DateTime dt Rows 0 3 Hour Convert ToInt32 DateTime dt Rows 0 2 Hour int minute Convert ToInt32 DateTime dt Rows 0 3 Minute Convert ToInt32 DateTime dt Rows 0 2 Minute int alltime hour 60 minute ResultTime alltime a2 a1 Model UpdatePwd resulttime ResultTime textBox1 Text 考试总时间为 alltime ToString 分钟 else if a3 30 label3 Text 考试时间已过三十分钟 该生无权考试 else label3 Text 可以进行考试 button1 Enabled true int hour Convert ToInt32 DateTime dt Rows 0 3 Hour Convert ToInt32 DateTime dt Rows 0 2 Hour int minute Convert ToInt32 DateTime dt Rows 0 3 Minute Convert ToInt32 DateTime dt Rows 0 2 Minute int alltime hour 60 minute ResultTime alltime a3 Model UpdatePwd resulttime ResultTime textBox1 Text 考试总时间为 alltime ToString 分钟 else textBox1 Text 没有试卷 请选择试卷 label3 Text 没有试卷 请选择试卷 3 1 4 测试用例 学生选择试卷的测试用例 表 3 1 测试用例 01 项目名称在线考试系统 序号01 版本号1 0 说明 考生选择试卷界面各组件均能正确响应鼠标键盘单击事件 操作成功后能正确进入考试界面 模块登录模块优先级1 测试目的 验证 考生选择试卷界面各组件均能正确响应鼠标键盘单击 事件 初始条件学生登录成功后 单击选择试卷进入该界面 步骤1 用学生登录系统 进入学生端的主界面 电子科技大学毕业论文 在线考试系统 4 2 鼠标单击菜单上的进入考试系统或单击左边树中的选择试 卷 期望输出Lable 中输出可以进行考试的字样 实际输出正确输出 无误 测试状态成功通过测试 编制人张霄 编制时间2010 年 05 月 19 日 备注其他窗口界面中各组件对鼠标键盘相应测试参照本测试用例 3 2 学生进行考试 学生考试界面主要是在线考试系统中最主要的功能中的一个 该界面也是该系统中 难做的一部分 在考试界面中 考生要进行考试 在考试中考生可以随时保存自己已经 答过的问题 还可以做完题之后直接单击提交试卷按钮系统自动保存答案 在考试中 有时会遇见中途断电或电脑自动关机的现象 所以系统提供了下载已经保存的答案的功 能 所以考生只需要再次登录在线考试系统 系统就会自动跳到考试界面 考生单击下 载已经保存的答案的按钮就可以看到考生之前的答案了 继而可以继续考试 在考试时 间已到 而考生未提交试卷 系统会自动提交考试试卷 考生不能再作答 3 2 1 活动图 图 3 3 考生考试活动图 3 2 2 界面 在线考试系统中的考试界面大部分的控件都是自动生成的 它所有的题是在一个大 电子科技大学毕业论文 在线考试系统 5 的 图 3 5 判断题 3 在线考试系统中的单选题 把四个 RadionButtonn 放到一组 使仅仅四个形成互 电子科技大学毕业论文 在线考试系统 6 斥事件 如图 3 6 所示 图 3 6 单选题 4 在线考试系统中的多选题 把四个 CheckBox 放到一组 使仅仅四个形成互斥事 件 如图 3 7 所示 图 3 7 多选题 5 在线考试系统中的客观题 如图 3 8 所示 电子科技大学毕业论文 在线考试系统 7 图 3 8 客观题 考生可以保存提交答案 在保存考生答案时 对判断题而言 是循环每个 RadionButton 按钮 把考生的答案存在一个数组中并同 时把这题的编号也存在别一个数组中 然后遍历判断题中的题 找到与存放试题编号的 数组中一样的编号试题 然后根据试题编号数组找出学生答案数组中对应的学生答案 然后把学生答案插入到学生答卷表中 单选题与判断题的保存方式一样 对于多选题来说 首先要循环所有的 CheckBox 控件 以四个为一组进行大循环 在 大循环中再循环那四个 CheckBox 控件 小循环结束后把答案再输给多选题的学生答案数 组中 并把对应的题目编号输给多选题的试题编号的数组中 然后再遍历所有的多选题 找出与多选题试题编号的数组相对应的试题编号和与多选题学生答案的数组中的考生答 案 最后把考生答案插入到学生答卷表中 对于客观题来说 是循环每个 TextBox 控件 把考生的答案存在一个数组中并同时 把这题的编号也存在别一个数组中 然后遍历客观题中的题 找到与存放试题编号的数 组中一样的编号试题 然后根据试题编号数组找出学生答案数组中对应的学生答案 然 后把学生答案插入到学生答卷表中 在提交按钮中系统自动把学生的判断题 单选题 多选题的得分已经算出来了 并 且插入数据库 让老师讲不会再去判单选题 判断题 多选题了 6 在线考试系统中的保存的判断题 如图 3 9 所示 电子科技大学毕业论文 在线考试系统 8 图 3 9 判断题 7 在线考试系统中的保存的单选题 如图 3 10 所示 图 3 10 单选题 8 在线考试系统中的保存的多选题 如图 3 11 所示 电子科技大学毕业论文 在线考试系统 9 图 3 11 多选题 9 在线考试系统中的提交按钮 学生考完试后要进行提交 提交时会跳出一个文本 框问你是否要提交 单击 是 时 提交成功 否则没有提交试卷 如图 3 12 所示 图 3 12 提示框 10 提交成功 所有控件不能再用 如图 3 13 所示 图 3 13 提交后窗体 11 但学生没有提交时 中途断电或者是电脑自动关机时 考生可以再次登录系统 会自动进入上次的考试界面并且学生还可以下载上次已经答过的答案 如图 3 14 所示 图 3 14 提示框 电子科技大学毕业论文 在线考试系统 10 3 2 3 代码 自动生成判断题的代码 public void Jud int s 0 DataTable QuId new BLL Getpaper GetQuestionId 判断题 paperid for int j 0 j QuId Rows Count j int num QuId Rows Count group1 new Groupbox group1 Top 10 s num 100 group1 Size new Size ff 80 group1 Left 10 string questionid questionid QuId Rows j 0 ToString DataTable myJud new BLL Getpaper GetJud questionid lab new myLable group1 myquestionid QuId Rows j 0 ToString lab Text Convert ToString j 1 myJud Rows 0 1 ToString lab Ranswer myJud Rows 0 2 ToString lab Size new Size ff 20 lab Top 15 lab Left 25 radionbtn1 new myRadionBtn1 radionbtn1 Text 是 radionbtn1 questionid QuId Rows j 0 ToString radionbtn1 Left 40 radionbtn1 Top 50 group1 Controls Add radionbtn1 myRadionBtn1 myradionbtn1 Add radionbtn1 radionbtn1 new myRadionBtn1 radionbtn1 Text 否 radionbtn1 questionid QuId Rows j 0 ToString radionbtn1 Left 260 radionbtn1 Top 50 group1 Controls Add radionbtn1 myRadionBtn1 myradionbtn1 Add radionbtn1 myLable mylable Add lab group1 Controls Add lab Groupbox groupbox1 Add group1 电子科技大学毕业论文 在线考试系统 11 group Controls Add group1 s int hh QuId Rows Count 53 group Size new Size ff hh 2 Sizetop 0 hh 2 group Top 20 group Left 20 b 8 100 myGroupBox mygroupbox Add group panel1 Controls Add group 保存单选题代码 if myType Rows i 0 ToString 单选题 DataTable QuId new BLL Getpaper GetQuestionId 单选题 paperid 遍历单选题中所有的radtionbtn的控件记录学生正确答案 SelectSSanswer new string QuId Rows Count 2 SelectSQuestionid new string QuId Rows Count int SeleS 0 for int k 0 k myRadionBtn myradionbtn Count k if myRadionBtn myradionbtn k Checked true SelectSSanswer SeleS myRadionBtn myradionbtn k Id SelectSQuestionid SeleS myRadionBtn myradionbtn k questionid SeleS for int j 0 j SeleS j for int f 0 f QuId Rows Count f if QuId Rows f 0 ToString SelectSQuestionid j ToString string Sanswer SelectSSanswer j ToString string id QuId Rows f 0 ToString bool isscess new BLL InsertAnswer InserSelectS id Sanswer 电子科技大学毕业论文 在线考试系统 12 提交多选题代码 if myType Rows i 0 ToString 多选题 DataTable QuId new BLL Getpaper GetQuestionId 多选题 paperid DataTable SelectMScore new BLL InsertAnswer SelectMScore int value int Parse SelectMScore Rows 0 3 ToString SelectMSanswer new string QuId Rows Count 2 SelectMQuestionid new string QuId Rows Count SeleManswer for int j 0 j SeleM j for int f 0 f QuId Rows Count f if QuId Rows f 0 ToString SelectMQuestionid j ToString string id QuId Rows f 0 ToString DataTable mySelectM new BLL Getpaper GetSelectM id if mySelectM Rows 0 6 ToString SelectMSanswer j ToString bool isscess new BLL InsertAnswer InsertSelectMScore QuId Rows f 0 ToString value else int value1 0 bool isscess new BLL InsertAnswer InsertSelectMScore QuId Rows f 0 ToString value1 下载客观题代码 string mytypename myType Rows i 0 ToString DataTable dt new BLL InsertAnswer GetSubStuAnswer mytypename for int j 0 j dt Rows Count j for int k 0 k Groupbox2 groupbox2 Count k 电子科技大学毕业论文 在线考试系统 13 if Groupbox2 groupbox2 k TypeName mytypename for int f 0 f myTextBox mytextbox Count f if dt Rows j 4 ToString myTextBox mytextbox f QuestionId string Stuanswer dt Rows j 5 ToString myTextBox mytextbox f Text Stuanswer 3 2 4 测试用例 学生考试界面的测试用例 表 3 2 测试用例 02 项目名称在线考试系统 序号02 版本号1 0 说明 考生考试界面各组件均能正确响应鼠标键盘单击事件 操作 成功后能正确进入考试界面 模块登录模块优先级2 测试目的验证 考生考试界面各组件均能正确响应鼠标键盘单击事件 初始条件学生选择试卷成功后 进入考试界面 步骤 1 用学生登录系统 进入学生端的主界面 2 鼠标单击菜单上的进入考试系统或单击左边树中的选择试 卷 3 选择试卷后 单击进入考试 则进入考试界面 期望输出可以进行考试的文本框 实际输出正确输出 无误 测试状态成功通过测试 编制人张霄 编制时间2010 年 05 月 19 日 备注其他窗口界面中各组件对鼠标键盘相应测试参照本测试用例 电子科技大学毕业论文 在线考试系统 0 第 4 章 结束语 经过需求分析 设计 开发 测试 本系统已成型 其中主要使用了 NET SQL Server 2005 CSS 工厂模式的三层架构等相关技术 这些技术的实现 满足了系统的 需要 优化了系统的性能 使用模块化设计 有助于编程人员的维护和系统的再次开发 在线考试系统无论是在开发过程中 还是建成后的日常维护过程中 都要执行正确 的操作 以保证系统的正常运行 该系统的使用使学生考试 教师评卷变得更加轻松 快捷高效 用户感觉使用方便 界面友好 功能完善 该系统有一定的实用性 的 dropdownlist 属性的设置 为了保证某些属性用户只能选择不能输入 常常被我 们忽略 还有就是某些编号只是标识一下而没有实际意义 在呈现给用户时应该让其隐 藏 我们还可以控制 datagridView 的列宽 使界面看起来美观大方 我在这个系统中主 要是实现学生端的功能 其实学生端实现的功能不多 最主要是学生考试界面 在学生 界面中我们是随机抽取的试卷 所以不知道题型和题量 我只能自己开始写控件系统自 动生成控件来存放题目 在这当中我遇见了很多的问题 比如 如可存放控件 每个控 件的高度和位置 以及触发控件时的事件 如可保存学生答案 如可下载学生已经回答 的答案等等问题 开始时 我都不知所措 因为考试界面中除了三个 Button 按钮和一个 Panel 外什么都没有 后来 我通过询问同学和请教老师 渐渐的我感觉到了 其实写控 件不是很难的事 难的是如可放置自己所写的控件的位置 位置不对 那么控件就可能 电子科技大学毕业论文 在线考试系统 1 不显示或显示不全 在写控件位置的代码中 是考学生的思维能力和逻辑能力 在编写 保存答案和下载答案的代码时 最重要的自己的思路一定要清楚 是循环先每个控件来 记录学生答案 还是先循环每道试题来找到学生答案并记录学生答案 这是非常重要的 总之 此次毕业设计对我可谓影响深远 意义重大 可以说在毕业设计的过程中 是我整个大学生涯中过的最紧张的时期 但也是我自从上大学来感到最充实的时期 也 是我学的知识和经验最多的时期 在这个过程中我主要学会坚持 还要有耐心和恒心 在这个行业中 不仅锻炼人的思考方式 还锻炼着人的性格 我相信在老师的严格要求 下 在以后的社会实践中定能不断的提升自己 电子科技大学毕业论文 在线考试系统 0 参考文献 1 童爱红 Visual C NET 应用教程 M 北京 人民邮电出版社 2004 3 2 李兰友 杨晓光 Visu

温馨提示

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

评论

0/150

提交评论