当前位置:首页 >> 其它课程 >>

上海建桥学院信息技术系毕业论文


本 科 毕 业 设 计(论 文)

题目基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

学生姓名 学 号

指导教师 学院(系)信息技术学院 专 业 计算机科学与技术 2012 年 5 月 20 日

交稿日期

上海建桥学院毕业设计(论文)学术诚信声明
本人

郑重声明:所呈交的毕业设计(论文) ,是本人在导师的指导下,独立进行研 究工作所取得的成果。除文中已经注明引用的内容外,本毕业设计(论文)不含任何其 他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集 体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。

作者签名:

日期: 2012 年 5 月 20 日

上海建桥学院毕业设计(论文)版权使用授权书
本毕业设计(论文)作者同意学校保留并向国家有关部门或机构送交论文的复印件 和电子版,允许论文被查阅和借阅。本人授权上海建桥学院可以将本毕业设计(论文) 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保 存和汇编本毕业设计(论文) 。

保密□,在 本论文属于 不保密□。 (请在以上方框内打“√”)

年解密后适用本授权书。

作者签名: 日期:2012 年 5 月 20 日

指导教师签名: 日期:2012 年 5 月 20 日

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

本科毕业设计(论文)
基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)





随着计算机的技术日益普及,素质教育不断的推广,计算机作为教学手段开始不断 进入我们的生活,这种教育方式给传统的教育模式带来有益的补充,而基于个人电脑的 考试软件也因为它的准确性、便捷性、可重复性不断受到人们的青睐,这也使其成为传 统教育考试发展的一种趋势。 本系统运行于单机模式,采用 Visual Studio 2010 作为开发平台,以 ACCESS 2003 作为后台数据库,使用的语言为 C#语言。该系统实现了显示考生姓名学号,随机生成 题目,判断对错,统计分数。该系统分为练习与考试部分,区别在于练习部分由答案提 示。该系统使用方便,操作简单,对于广大学生的高等数学的学习具有帮助作用。 文中首先阐述了个人考试系统发展背景与现状,简要介绍了.NET、ACCESS 、C# 等相关知识。接着详细介绍了系统的需求分析、可行性分析、技术分析、功能设计、结 构设计、数据库设计及系统功能的实现。最后描述了系统的细节制作,并对系统的开发 做出了全面的总结。

关键词:C#,Access,高等数学,考试练习系统

-I-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

Based On The Personal Computer Paperless Test System Software Design And Implementation ( Higher Mathematics )
ABSTRACT
With the spread of computer of computer science and quality education, computer have been become a teaching tool come into our lives,this teaching means is a goo supplement of traditional teaching,at the same time personal computer test software is popular with human because its accuracy、convenience 、repeatability , this is also become a trend of traditional teaching test. My software use singal computer pattern, Using Visual Studio 2010 as a development platform,in the ACCESS 2003 database as a background, Using the language of C # language.The system realizes the display name student ID, randomly generated questions, to judge right and wrong, statistical scores.The system is divided into training and test, difference is the practice in part by the answer prompt.The system is easy to use, simple operation, for the majority of students in the higher mathematics learning has helped. This article first elaborated the individual test system development background and current situation, introduced briefly . NET, ACCESS, C # and other related knowledge. Then introduces in detail the system requirements analysis, feasibility analysis, technical analysis, function design, structure design, the database design and the system function realization. Finally, describes the details of the system, and the development of the system to make a comprehensive summary

Key words: C#, Access, higher mathematics, # examination exercise system

- II -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)






言........................................................................................................................................................... 1

1. 系统概述 .............................................................................................................................................. 2 1.1 项目开发的目的和意义 ........................................................................................................... 2 1.2 无纸化考试软件的现状与分析 ............................................................................................. 3 1.3 计算机考试系统的发展趋势 .................................................................................................. 4 2. 系统分析 .............................................................................................................................................. 5 2.1 需求分析 ...................................................................................................................................... 5 2.1.1 课题欲解决的问题 ......................................................................................................... 5 2.1.2 解决方案 ........................................................................................................................... 6 2.3 技术可行性分析......................................................................................................................... 7 2.3.1 Visual Studio 2010 ........................................................................................................... 7 2.3.2 .NET C#程序设计 ........................................................................................................ 8 2.3.3 .ADO.NET 数据连接 ................................................................................................. 9 2.3.4 ACCEESS 数据库与 SQL 查询语言 ........................................................................ 10 3. 系统总体设计 ................................................................................................................................... 13 3.1 系统功能分析 ........................................................................................................................... 13 3.2 系统功能模块设计 .................................................................................................................. 13 3.3 数据库设计 ................................................................................................................................ 14 3.3.1 数据库需求分析 ........................................................................................................... 14 3.3.2 数据库概念设计 ........................................................................................................... 14 3.3.3 数据库逻辑结构设计 .................................................................................................. 15 3.4 环境配置 .................................................................................................................................... 16 4. 系统实现 ............................................................................................................................................ 17
- III -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

4.1 登陆界面实现 ........................................................................................................................... 17 4.2 使用说明界面实现 .................................................................................................................. 19 4.3 数据库连接实现....................................................................................................................... 20 4.4 判断题模块的实现 .................................................................................................................. 21 4.5 单选题模块的实现 .................................................................................................................. 24 4.6 多选题模块的实现 .................................................................................................................. 26 4.7 填空题模块的实现 .................................................................................................................. 28 4.8 显示分数模块的实现 ............................................................................................................. 29 4.9 管理使用者模块的实现 ......................................................................................................... 30 5. 测 试 ................................................................................................................................................. 32

5.1 测试环境与测试条件 ............................................................................................................. 32 5.2 测试过程 .................................................................................................................................... 32 5.3 测试结果与分析....................................................................................................................... 34 6. 总 结 ................................................................................................................................................. 35

参考文献 .................................................................................................................................................... 36 致 谢 ......................................................................................................................................................... 37

- IV -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)





高校扩招后,我国高等教育步入了大众教育。高等教育的受众不再仅仅是绝少数的 精英,而是广大更加普通的学生。数学教育的难题在于既要满足数学发展越来越高的要 求,又要适应大众化教育的现状。根据调查,大部分高等院校的学生,高等数学的成绩 都不较为理想,这是由于最近几年的教育模式只注重了数学发展的要求,而没有注重大 众化教育的现状原因[1]。 现行的教学大纲,教学模式基本延续扩招以前的模式,教学时间同时较为下降,这 不仅增加了教师教学的困难,也造成了学生们学习的困难,基础较差的学生往往无法接 受所学知识,对学习失去信息,以至于旷课、早退、抄袭作业的现象普遍出现,考试及 格率也大幅下降,即使考题非常简单,不及格率也较高,而学习差的同学常常不及格, 甚至有连续补考不及格的同学。 而与此同时,计算机作为越来越普遍的电子设备,在人们日常生活中扮演了越来越 重要的角色,人们利用它进行休闲娱乐、办公学习,现在人们的日常生活往往离不开计 算机。同样在教育方面,随着素质教育的全面推广,计算机辅助教学是教育发展的趋势, 是一种新兴的学习方式。无纸化考试的引用,可以更好的帮助同学们考前训练,也可以 帮助老师们更好的教学。除此之外,无纸化考试增强了学生的动手能力,也提高了考试的 自动化和科学化。节约了考试的时间与与金钱的花费。 现在大部分大学生人均一台计算机,学生们普遍日常生活大量接触计算机,乐于使 用计算机。无纸化考试软件的引入,更好的体现了高等数学的教学目的,增强了学生的 动手能力,而且大大提高了考试的自动化和科学化。同学们练习或模拟考试的结果均可 以得到即实反馈,高效准确,这使得同学们的练习和测试具有更强的针对性。对于高等 数学的学习,我相信计算机考试软件可以很大程度上帮助到广大学生。

-1-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

1
1.1 项目开发的目的和意义

系统概述

对比与传统考试,需要大量时间精力去准备试题,组织学生考试,批改分数,分 析试卷,随着计算机技术的不断发展与进步,无纸化考试软件的出现就有了其必然 性。计算机考试凭着其操作简单,阅卷准确快捷,成绩分析科学直观的优点,不断受 到广大师生的欢迎与喜爱。 如何使考试变得更加方便、高效、公正、方便,是现代教育的一个重要课题,计算 机考试系统是传统考场的延伸,利用计算机技术可以方便地对学生进行考试,加上数据 库技术的利用,大大简化了传统考试的过程。因此计算机考试系统是现代教学不可缺少 的一个重要环节。有趋势表明,计算机考试已经成为考试的发展方向,现在国许多考 试认证,例如 GRE、CISCO,微软认证考试,计算机考试其出题、答卷以及评分都是 在计算机上完成的。无纸化的考试形式有着其科学、及时、准确、公平等优点,具有 传统考试形式无法替代和比拟的优势。 系统结合高等数学内容,为大学生提供可及时反馈的集练习与测验于一体的软件, 内容结合教学实际,符合大学生特点。考试系统智能化、自动化,节省了出卷阅卷时间, 体现了计算机技术的优越性。学生通过使用软件即时得到正确答案,在不断的练习中, 反思自己的对错与否,强化记忆,提高学生的自学能力。 考试系统配置极为简单,使得考试的过程大大简化。一个完整的考试系统可以使使 用者在学习过后及时检测自己的学习效果,发现自己的不足,从而提高学习效率。考试 系统中题目的生成、试卷的提交、成绩的评定等都可以自动完成。 这样一来,教师所要做的只是精心设计题目,而不是组织考试,这可以大大减轻了 教师与组织者的负担。考试系统具有智能化、科学化、自动化、高效化、等诸多优势, 具有较好的发展前景。 希望学生通过使用这个软件可以不断练习,在练习中总结错误,强化记忆,提高自 己的数学知识。帮助学生提高高等数学成绩。
-2-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

1.2 无纸化考试软件的现状与分析
计算机考试系统的实现,将教师从繁琐的出题、监考、阅卷、试卷分析和成绩统计 的传统考试中解脱出来,充分体现了准确、客观、公正、快速、简捷等特点。计算机考 试系统起源于 60 年代美国, 世纪 70 年代, 20 美国考试委员会着手进行计算机模拟考试 的研究工作,并于 1983 年编制出有效的模拟考试系统,当时的名称是计算机辅助考试 系统。1990 年 8 月,美国加利福尼亚、得克萨斯等十个州创建各州以及各高等院校相互 认可的学位证书以及相应的教学体系,从而正式拉开网络远程考试的序幕。著名的考试 机构有美国思而文学习系统有限公司。经过 40 多年来的发展,已经在全世界得到了广 泛应用。 国内也有许多考试采用了计算机考试系统。比方说托福考试、微软认证考试、cicso 认证考试、全国计算机等级考试、驾驶员理论考试等等,可以说计算机考试系统逐渐成 为了公证、效率的考试代名词。这都是由于计算机考试的出卷迅速,阅卷准确,统计成 绩快速,自动化科学化的特点决定的,采用计算机考试系统的考试最大程度上被人们所 信赖着。 计算机考试系统主要有两种模式,C/S 模式(客户端/服务器模式) ,B/S(浏览器/ 服务器模式) 通常 C/S 的客户端与服务器端分别与不同计算机中, 。 客户端是普通的 PC, 而服务器为专业的服务器。 C/S 模式可以分成两层模式和三层模式。两层模式 Client 和 Server 通过网络联结起来, 通常 Client 端和 Server 端分别运行在不同的计算机中, Client 端一般可以安装于普通计算机,而 Server 端一般安装在功能更加强大的服务器。在三 层 C/S 模式中, 则将业务逻辑独立出来放在中间服务器上, 数据逻辑在另一个服务器上。 而 B/S 模式是由网络技术不断发展而成长起来,它由 C/S 模式发展开来,而基于网页上 的一种应用,B/S 是基于网络浏览器和网络服务器而构成的。 C/S 模式 B/S 模式各有优缺点,C/S 模式安全性较高,数据处理能力较强,而 B/S 模式更加方便快捷,可以不受地点的限制。比方说如果 50 台机器安装一款软件,如果 采取 C/S 模式,那么 50 台机器都需要独立的下载安装,十分花费时间,而采取 B/S 模 式则不需要安装,只需要浏览就可以了。但是 C/S 模式可以提供的功能更加全面,更加

-3-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

强大。所以说应该看具体项目需求而采取哪一种的开发模式。

1.3 计算机考试系统的发展趋势
计算机考试系统的发展趋势趋势有以下几点。 (1) 向开放式的网络体系结构发展:使不同软硬件环境、不同网络协议的网络可以互相 连接,真正达到不受地域时间的限制、数据通信分布处理的目标。 (1) 向高性能发展:追求高速、高可靠和高安全性,加强考试系统的安全性,添加防火 墙,保护好系统数据。采用多媒体技术,提供文本、图像、声音、视频等综合性服务 (3) 向智能化发展:提高网络性能和提供网络综合的多功能服务,并更加合理地进行有 关考试的各种业务的管理,真正以分布和开放的形式向用户提供服务。

-4-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

2
2.1 需求分析

系统分析

需求分析是软件开发过程中开始的一环,也是重要的一环。就如房屋建造过程中打 造地基,如果地基打的不劳固,房屋也不会坚实。针对时下教学环境,本系统主要目标 是满足广大师生关于高等数学的考试需求。本系统需要操作简便,使用方法简单,如果 使用复杂,上手难,使用者使用就花费了较长时间,显然这是不受人欢迎的。系统需要 稳定,有一定的纠错能力,不能在使用过程中崩溃。 对比传统的考试方式,基于个人电脑的考试系统的特点在于无纸化、效率高,考试 时间短,无需批改,这样就可以从传动的选题、生成试卷、到批改试卷所需的大量时间, 节约到了只需使用者答题的时间。系统还可以在使用完毕即给出成绩,可以帮助学生了 解自己所掌握的知识多少。 基于上述情况,采用计算机考试系统实现考试将成为未来考试的一种重要的考试方 式。同时也是教育事业的一大发展,前景广阔。

2.1.1 课题欲解决的问题 在我国,现在绝大多数考试还是传统考试方式,这种考试方式需要大量时间老师准 备题目,组织考试,批阅书卷,统计数据,可以说是十分浪费时间与精力,已经不能满 足社会以及教育事业发展与进步,所以课题应该解决的问题在于提高考试的自动化、科 学化,提高效率与准确率,符合广大学生的需求。 本系统是一个提供给大学生考试的平台。通过这个考试系统考生可以方便快捷的 进行考试或练习,从而提高自己对于高等数学的掌握。需要注意的地方有,题目的内 容涉及高等数学的哪些方面?题目是以什么形式的方式出现?高等数学设计很多复杂 的符号,这些符号键盘很难输入,怎么答题和制作题目?题目从哪里收集而来。是寻 找题库还是网上找还是从书本上寻找。

-5-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

2.1.2 解决方案 本系统应该操作简单,上手性快,界面一目了然不需要很复杂的操作。其次要有提 示功能,最好完成答题后可以对题目进行正确答案的提示,可以增添练习模块。除了这 些系统要有稳定性,可以保证考试流程的正常进行,不会因为各种操作而导致系统的崩 溃不运行,对答题的正确性要有保证性。 本系统是运行于单机环境,采用 C#和 ACCESS 2000 数据库技术制作。系统制作的 平台是 VISUAL STUDIO 2010。该系统的功能模块为登陆模块、考试模块(单选题、判 断题、多选题、填空题) 、计分模块、显示答案模块、练习模块、测试模块、后台题库、 管理使用者信息模块。 本系统的题目是以路径方式存储在数据库表中。使用的数据库是 ACCESS,因为 ACCESS 方便操作,兼容性好,使用简单。题目因为很难由键盘输入,于是我决定题目 由图片格式出现, 然后以路径的方式存取在数据库中。 题目的类型涉及简答题、 多选题、 单选题、和判断题.涉及的高等数学单元有函数与极限、导数的概念、不定积分、定积 分、微分方程、多元函数微积分。选取这些单元,是因为这些单元基本涵括了高等数学 的重要内容。图 2.1 为普通用户系统登录用例图,图 2.2 为管理员登陆用例图。

图 2.1 普通用户系统登陆的用例图
-6-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

图 2.2 管理员登陆模块

2.3 技术可行性分析
本文主要采用的技术是 Visual studio 2010,Access,C#和数据库,这节论述了技术 上的可行性。 2.3.1 Visual Studio 2010 Visual Studio 是个是个十分方便好用的软件,它提供了很多使用的组件、控件,很 多时候你不用编写程序,只需要拖拖控件就可以完成复杂的命令,真是可以说是傻瓜式 的开发系统,当然如果你想钻研 VISUAL STUDIO,它也有很多复杂的功能,可以说它 是个既可以完成简单工作也可以完成专业复杂工作的好工具。 在 Visual Studio 2010 中,微软重建了编辑器,这为开发者提供了灵活、功能丰富的 开发环境,并支持多显示器——即开发者可以同时在多台显示器上查看代码、用户界面 设计器和数据库结构。 Visual Studio 2010 中具有大量可支持最新微软产品的新功能。对 Windows 7 多点触 控和“Ribbon”界面的支持有助于为终端用户提供令人赞叹的应用程序。SharePoint 开
-7-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

发者首次可以全面使用 Visual Studio 集成开发环境(IDE)中的 SharePoint 功能。借助 Windows Azure 开发套件, 开发人员将可在熟悉的 Visual Studio 环境中迅速轻松地开发、 调试、测试并部署云应用程序。对于 ASP.NET 模型视图控制器(MVC)的支持为开发人员 带来了更多的灵活性, 使他 们得以分别更换网络应用的外观和核心业务逻辑。 Windows Phone 7 的开发者也可以通过使用 Visual Studio 的集成手机设计界面开发出令人惊叹的 手机应用。

2.3.2 .NET C#程序设计 本系统是基于 VISUAL STUDIO 2010 的,所采用的语言就是 C#,C#面向对象,模 块化,可以继承、封装,节省了开发时间,这只是个小系统,如果是规模坏的大软件更 可以节省时间与精力,这充分说明了面向对象软件的优越性。C#语言与 C 语言区别不 是很大, C 语言的基础的人上手很快, 有 很多都不是语法的不同, 而是使用思想的不同。 而 C#(C Sharp)是微软(Microsoft)为.NET Framework 量身订做的程序语言,C#不仅拥有 C/C++的强大功能以及 Visual Basic 简易使用的特性,与当今计算机语言发展一致的是, 和 C++与 Java 一样亦为面向对象导向程序语言。 C#语言中定义主要是从 C 和 C++继承而来的,而且语言中的许多元素也反映了这 一点。C#在设计者从 C++继承的可选选项方面比 JAVA 要广泛一些(比如说 struts),它还 增加了自己新的特点(比方说源代码版本定义). C#是一种面向对象的编程语言。由于面向对象语言的优越性,它使得程序员可以快 速地编写各种基于.NET 平台的应用程序,.NET 提供了一系列的工具和组件来最大程度 地开发利用计算与通讯领域。 正是由于 C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是 高级的商业对象还是系统级的应用程序。使用简单的 C#语言结构,如 C#丰富多用的各 种租借,这些组件可以方便的转化为 XML 网络服务,从而使它们可以由任何语言在任 何操作系统上通过 INTERNET 进行调用。 最重要的是, C#使得 C++程序员可以高效的开发程序,而绝不损失 C/C++原有的强

-8-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

大的功能。因为这种继承关系,C#与 C/C++具有极大的相似性,对于熟悉类似语言的开 发者可以很快的转向 C#。 C#语言的优越性使开发过程节约了很多时间,比方说由于它的继承性,只要开发了 一个公共界面,然后相似的界面就可以继承它了,这样就节省了很多时间。还有就是 C#提供的各种控件, 通过这些控件我们可以完成各种各样的功能, 而且不需要编写代码, 只需要直接拖取控件,可以说是相当方便简单。比方说经常使用的 Button 按钮,这个控 件是提供按钮的功能,还有 picturebox 控件,使用这个控件显示图片。还有 Textbox 控 件 ,使用这个控件,可以显示文字。

2.3.3 .ADO.NET 数据连接 通过使用 ADO.这个对象类库,我们可以进行数据的连接,这是一个很重要的类库。
ADO.NET 的名称起源于 ADO(ActiveX Data Objects),这是一个广泛的类组,用于在以

往的 Microsoft 技术中访问数据.之所以使用 ADO.NET 名称,是因为 Microsoft 希望表明, 这是在.NET 编程环境中优先使用的数据访问接口 它提供了平台互用性和可伸缩的数据访问。ADO.NET 增强了对非连接编程模式的 支持,并支持 RICH XML。由于传送的数据都是 XML 格式的,因此任何能够读取 XML 格式的应用程序都可以进行数据处理。事实上,接受数据的组件不一定要是 ADO .NET 组件,它可以是基于一个 Microsoft Visual Studio 的解决方案,也可以是任何运行在其它平 台上的任何应用程序。 ADO.NET 是一组用于和数据源进行交互的面向对象类库。 通常情况下,数据源是数 据库,但它同样也能够是文本文件、Excel 表格或者 XML 文件。 ADO.NET 允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的 一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据 源必须采用相应的协议。 一些老式的数据源使用 ODBC 协议, 许多新的数据源使用 OleDb 协议,并且现在还不断出现更多的数据源,这些数据源都可以通过。NET 的 ADO .NET 类库来进行连接[9]。 ADO.NET 提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用
-9-

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

一组不同的类库。 这些类库称为 Data Providers, 并且通常是以与之交互的协议和数据源 的类型来命名的

2.3.4 ACCEESS 数据库与 SQL 查询语言 本系统定位于单机环境,ACCESS 属于 OFFICE 家族一员,普及率高,使用简单。 有好的页面交互模式, 通过使用 ACCESS 可以节约我熟悉操作开发软件的过程, 而着重 于具体设计数据库,具体设计数据的工作上面。我使用的 ACCESS 吧版本是 2003,因 为这个版本属于老版本而又不是被淘汰的版本,所以无论兼容性或者稳定都是值得信赖 的。 Access 是微软公司推出的基于 Windows 的桌面关系数据库管理系统(RDBMS,即 Relational Database Management System) 是 Office 系列应用软件之一。它提供了表、查 , 询、窗体、报表、页、宏、模块 7 种用来建立数据库系统的对象;提供了多种向导、生 成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功 能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大 部分数据管理的任务。 Access 能够存取 Access/Jet、 Microsoft SQL Server、Oracle(甲骨文软件公司),或者 任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用 软件,而一些不熟练的程序员和非程序员的"进阶用户"则能使用它来开发简单的应用 软件。虽然它支援部分面向对象(OOP)技术,但是未能成为一种完整的面向对象开发 工具。 ACCESS 最大的特点是使用简单,和 VISUAL SUIDIO 的结合度高,因为它的制作 是界面化的,就如同操作 EXCEL 一样,我们只需要先思考好表格设计成什么样,然后 就可以通过 ACCESS 直接编辑数据了。通过使用 ACCESS 数据库方便了我的操作,节 省了数据库开发时间,是个十分简单好用的软件。 查询数据库的语言主要是使用 SQL 语言,SQL 语言是数据库通用的语言,通过使
- 10 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

用 SQL 语言,我们可以完成对数据库的增、删、改、查的功能,比方说如果查询一个 命名为登陆的表,需要连接、建立数据集、使用 SQL 语句,建立适配器的一个过程。 (1)建立连接的代码 OleDbConnection kk = new OleDbConnection ("Provider=Microsoft.jet.oledb.4.0;Data source=" + Application.StartupPath + "\\d.mdb");

(2)建立数据集的代码 DataSet mydataset = new DataSet();

(3)输入 SQL 语句的代码 OleDbCommand myCom = kk.CreateCommand(); myCom.CommandText = "SELECT 地址 FROM " + biao + " where 编号=" + q + " ";

(4)建立适配器的代码 OleDbDataAdapter datDa = new OleDbDataAdapter("SELECT * FROM " + biao + " ", kk); datDa.Fill(mydataset, "" + biao + ""); SQL 全名是结构化查询语言,是用于数据库中的标准数据查询语言,IBM 公司最 早使用在其开发的数据库系统中。1986年10月,美国国家标准学会(ANSI) 对 SQL 进 行规范后, 以此作为关系式数据库管理系统的标准语言 (ANSI X3. 135-1986), 1987年得 到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都 对 SQL 规范作了某些编改和扩充。 所以, 实际上不同数据库系统之间的 SQL 不能完全 相互通用。 SQL 是高级的非过程化编程语言,它允许用户在高层数据结构上工作。它不要求 用户指定对数据的存放方法,也不需要用户了解其具体的数据存放方式。而它的界面, 能使具有底层结构完全不同的数据库系统和不同数据库之间,使用相同的 SQL 作为数 据的输入与管理。它以记录项目的合集作为操纵对象,所有 SQL 语句接受项集作为输 入, 回送出的项集作为输出, 这种项集特性允许一条 SQL 语句的输出作为另一条 SQL 语句的输入,所以 SQL 语句可以嵌套,这使它拥有极大的灵活性和强大的功能。在多

- 11 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

数情况下, 在其他编程语言中需要用一大段程序才可实践的一个单独事件, 而其在 SQL 上只需要一个语句就可以被表达出来。这也意味着用 SQL 可以写出非常复杂的语句。

- 12 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

3
3.1 系统功能分析

系统总体设计

本系统运行于单机环境,系统不连接网络,题库与系统都安装在个人电脑上面。缺 点是不能联网操作,优点是结构简单方便。系统设计本着稳定、完成答题、测试、算分 数的功能,系统运行过程中不应该出现崩溃,答案与题目不符的情况。

3.2 系统功能模块设计
根据前面的分析,系统分为登陆界面,介绍界面,测试界面,和练习界面,和管理 使用者信息界面。下面分别介绍如下。 (1)登陆界面要求输入姓名与学号,这是对于使用者的信息确认,而使用者的信息是 由我事先在数据库编辑好的,如果输入不正确则不能登陆,如果不输入也不能登陆,除 此之外,姓名与学号还能在后面测试和考试界面中状态栏中显示。 (2)使用说明界面,使用说明界面是对于系统介绍的一个界面,介绍了系统设计的高 等数学单元,与系统测设的题数与分数。除此之外通过说明界面,我们还可以分别进入 练习界面和测试界面。它们的主要区别为练习界面答题后有正确答案提示,而测试界面 则没有提示。 (3)答题界面:答题界面分为练习模式与测试模式,设计的提醒有单选题、判断题、 多选题、与填空题,答题过程中如果不答题则不能进行到下一题,练习模式中答题后还 可以看到正确答案。图 3.1 为答题功能结构图。

- 13 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

图 3.1 答题功能结构图 (4)为了体现系统的完整性,系统的管理员具有对系统的使用者进行添加和删除的功 能,从而起着一个限制使用者的功能,而系统的数据因为要受到保护,并不是谁都有一 个这个天价和删除的权限,只有管理员有着这个权限。对于本系统而言系统的管理员为 系统的开发者,只有系统的开发者才有权利进行这个操作。

3.3 数据库设计
3.3.1 数据库需求分析 针对个人电脑的高等数学考试系统的分析。总结出如下信息。数据库主要存放题 目,和答案。题目分为函数与极限、导数的概念、不定积分、定积分、微分方程、多 元函数微积分。 3.3.2 数据库概念设计 题目主要是以图片方式存储,数据库中存放的是图片路径,题目总共分为六个单 元,每个单元分为单选题、判断题、多选题、填空题。
- 14 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

3.3.3 数据库逻辑结构设计 对应需求,设立表是题目的编号,以及表示题目路径的地址,以及题目对应的答 案。本系统是在 ACCESS 2003 中设计表,因为 ACCESS 的易操作性与兼容性,方便设计 与开展工作。表 3.2 为题目与答案数据库表。 表 3.2 字段 编号 地址 答案 题目与答案数据库表 简要说明 本表主键 存放题目的图片路径 题目对应答案

字段类型 自动编号 字符串型 字符串型

编号字段:类型为自动编号,这是数据库 ACCESS2003 系自动生成一个唯一的整形 值。此字段作为本表的主键来。可以通过这个字段查找对应信息。 地址字段:本类型为字符串型,这里主要存放着题目的的相对路径信息,通过查找 这个信息,可以读取到题目。 答案字段:本类型为字符串型,这里存放着对应的题目对应的答案。系统读取表中 的此字段,可以判断使用者答题的准确性。 数据库中主要有两种表, 除了存放题目与答案的表之外, 就是存放登陆者信息的表, 如表 3.3 用户信息数据库表所示。

表 3.3 用户信息数据库表 字段 编号 姓名 学号 字段类型 自动编号 字符串型 字符串型 简要说明 本表主键 存放登陆的姓名 存放登陆的学号

编号字段:类型为自动编号,这是数据库 ACCESS2003 自动生成一个唯一的整形值。 此字段作为本表的主键。可以通过这个字段查找对应信息。

- 15 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

姓名字段:本类型为字符串型,这里主要存放登陆的姓名,从而判断使用者是否有 资格使用本系统。 学号字段: 本类型为字符串型, 这里主要存放登陆的学号, 如果不符后则不能登陆。

3.4 环境配置
本系统对于硬件环境要求不高,可广泛应用于普通 PC 机上,但因为是在 VS 2010 上开发,所以要求要安装.NET framework 4.0。 操作系统:win7 开发环境:.NET framework 4.0 ,Visual Studio 2010, 数据库:ACCESS 2003 内存:4GB CPU:奔腾酷睿双核 2.8GHZ

- 16 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

4
4.1 登陆界面实现

系统实现

图 4.1 登陆界面图 图 4.1 是系统的登陆界面,如果登陆的时候不输入姓名与学号,则会弹出对话框提 示输入,如果输入的话,本界面会隐藏,显示系统的介绍界面。除此之外,系统还会对 姓名与学号进行验证,数据库中有我输入的可以使用的账号与姓名,如果用户名与密码 不符合数据库表中数据,则不能登陆。以下为代码部分。 (1) 如果没输入姓名学号则提示输入 private void button1_Click(object sender, EventArgs e) { if (textBox1.Text == "" || textBox2.Text == "") MessageBox.Show("请输入姓名与学号"); (2)验证输入的姓名与学号,如果错误则不能登陆 else
- 17 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

{ s1 = textBox1.Text.Trim(); s2 = textBox2.Text.Trim(); OleDbCommand myCom = y.CreateCommand(); myCom.CommandText = "SELECT * FROM 登陆 WHERE 姓名='" + textBox1.Text.Trim() + "'"; if (y.State != ConnectionState.Open)//如果数据库当前状态为关闭 则打 开,避免了数据库连接重复打开的冲突 y.Open(); if (myCom.ExecuteScalar() == null) MessageBox.Show("用户名错误"); else { myCom.CommandText = "SELECT * FROM 登陆 WHERE 学号 ='" + textBox2.Text.Trim() + "'"; if (myCom.ExecuteScalar() == null) MessageBox.Show("学号错误"); else { y.Close(); 使用说明 A = new 使用说明(); A.Show(); this.Hide();

}

- 18 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

4.2 使用说明界面实现

图 4.2 使用说明界面 图 4.2 为使用说明界面,使用说明界面主要介绍了软件的测试单元,和进入练习模 块还是进入测试模块的部分。以下为部分代码 private void button1_Click(object sender, EventArgs e) { 练习窗口 B = new 练习窗口(); B.Show(); this.Close(); } private void button2_Click(object sender, EventArgs e) { 测试窗口 A = new 测试窗口(); A.Show(); this.Close(); }

- 19 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

4.3 数据库连接实现
本系统因为要和数据库连接所以一开始我就连接了数据库,连接数据库有几个过 程,建立连接,建立数据集,和建立适配器。建立连接是为了找到数据库,建立数据集 是建立本地脱机数据库,而适配器是传输数据用的。除此之外我们还要用到数据库命令 传输 SQL 语句 OLEDBCOMMAND.因为适配器代码是传输数据用的,所以我们一般在 写完 SQL 语句后使用适配器装在 SQL 语句。以下为部分代码 (1)建立连接的代码 OleDbConnection kk = new OleDbConnection ("Provider=Microsoft.jet.oledb.4.0;Data source=" + Application.StartupPath + "\\d.mdb"); (5)建立数据集的代码 DataSet mydataset = new DataSet(); (6)输入 SQL 语句的代码 OleDbCommand myCom = kk.CreateCommand(); myCom.CommandText = "SELECT 地址 FROM

" + biao + " where 编号=" + q + " ";

(7)建立适配器的代码 OleDbDataAdapter datDa = new OleDbDataAdapter("SELECT * FROM " + biao + " ", kk); datDa.Fill(mydataset, "" + biao + "");

- 20 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

4.4 判断题模块的实现

图 4.3 系统的判断题图 系统的题目分为判断题,选择题,多选题,填空题,各单元存放在 switch case 语 句中,当执行判断题的模块时候,显示此模块的各种控件,而隐藏其他模块的组建。 此模块与单选题模块的区别就是实现判断题的两个正确与错误的选项。当读取题目的 时候,题目是存放在当前路径下的,所以使用了读取当前路径的语句,然后加上从数 据库中读取的数据,然后使用 picturebox 读取。以下是部分代码。

(1)存放单元模块的 switch case 语句 switch (i) { case 0: biao = "函数与极限判断题"; break; case 1: biao = "函数与极限选择题"; break; case 2: biao = "函数与极限多选题"; break; case 3: biao = "函数与极限填空题"; break; case 4: biao = "导数的概念判断题"; break; case 5: biao = "导数的概念选择题"; break; case 6: biao = "导数的概念多选题"; break; case 7: biao = "导数的概念填空题"; break;
- 21 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

case 8: biao = "不定积分判断题"; break; case 9: biao = "不定积分选择题"; break; case 10: biao = "不定积分多选题"; break; case 11: biao = "不定积分填空题"; break; case 12: biao = "定积分判断题"; break; case 13: biao = "定积分选择题"; break; case 14: biao = "定积分多选题"; break; case 15: biao = "定积分填空题"; break; case 16: biao = "微分方程判断题"; break; case 17: biao = "微分方程选择题"; break; case 18: biao = "微分方程多选题"; break; case 19: biao = "微分方程填空题"; break; case 20: biao = "多元函数微积分判断题"; break; case 21: biao = "多元函数微积分选择题"; break; case 22: biao = "多元函数微积分多选题"; break; case 23: biao = "多元函数微积分填空题"; break; } (2)显示判断题组件,隐藏其他模块组件 if (i == 0 || i == 4 || i == 8 || i == 12 || i == 16 || i == 20) { rb1.Hide(); rb2.Hide(); rb3.Hide(); rb4.Hide(); checkBox1.Hide(); checkBox2.Hide(); checkBox3.Hide(); checkBox4.Hide(); textBox1.Hide(); //* button3.Hide(); rbf.Visible = true; rbt.Visible = true; (3)读取题目 myCom.CommandText = "SELECT 地址 FROM " + biao + " where 编号=" + q + " "; String n = Application.StartupPath; String m = Convert.ToString(myCom.ExecuteScalar()); String w = n + m; B1.Image = Image.FromFile(w);
- 22 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

(4)查找对比答案模块 public void findaser() //*查找答案部分,答案也存放在数据库中 { label3.Text = ("答对" + s + "题"); OleDbCommand myCom1 = kk.CreateCommand(); DataSet mydataset1 = new DataSet(); if (kk.State != ConnectionState.Open) kk.Open(); myCom1.CommandText = "SELECT 答案 FROM " + biao + " where 编号 =" + kl + " "; OleDbDataAdapter datDa1 = new OleDbDataAdapter("SELECT 答 案 FROM " + biao + " ", kk); datDa1.Fill(mydataset1, "" + biao + ""); string daan = Convert.ToString(myCom1.ExecuteScalar()); cv = daan; kk.Close(); } (5)判断题答题模块 public void panduan() //*判断题模块 { if (rbt.Checked == true) { findaser(); if (cv == "T") { label2.Text = ("恭喜你答对了,答案是" + cv); s = s+1; label3.Text = ("答对" + s + "题"); } else label2.Text = ("对不起你答错了,答案是" + cv); } if (rbf.Checked == true) { findaser(); if (cv == "F") {
- 23 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

label2.Text = ("恭喜你答对了,答案是" + cv); s = s+1; label3.Text = ("答对" + s + "题"); } else label2.Text = ("对不起你答错了,答案是" + cv); } }

4.5 单选题模块的实现

图 4.4 系统的单选题图 单选题与判断题代码实现部分没有太大的区别,区别在于但轮到单选题模块。用 于判断题、多选、填空的按钮会隐藏,而用于单选题的按钮显示出来。除此之外对比 答案的模块也稍有不同。 (1)显示单选题组件 else if (i == 1 || i == 5 || i == 9 || i == 13 || i == 17 || i == 21) {
- 24 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

rb1.Visible = true; rb2.Visible = true; rb3.Visible = true; rb4.Visible = true; checkBox1.Hide(); checkBox2.Hide(); checkBox3.Hide(); checkBox4.Hide(); //* button3.Visible = true; textBox1.Hide(); rbf.Hide(); rbt.Hide(); }

(2)单选题答题模块 public void danxuan() { if (rb1.Checked == true) om = "A"; if (rb2.Checked == true) om = "B"; if (rb3.Checked == true) om = "C"; if (rb4.Checked == true) om = "D"; findaser(); if (cv == om) { label2.Text = ("恭喜你答对了,答案是" + cv); s = s+1; label3.Text = ("答对" + s + "题"); } else label2.Text = ("对不起你答错了,答案是" + cv); }

- 25 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

4.6 多选题模块的实现

图 4.5 系统多选题图 多选题的模块与其它模块区别在于,多选题使用了 checkbox 的控件,显示多选题 模块的代码不一样,还有就是判断答案的模块不一样。部分代码如下。 (1)显示多选题模块控件 else { rb1.Hide(); rb2.Hide(); rb3.Hide(); rb4.Hide(); rbf.Hide(); rbt.Hide(); textBox1.Hide(); checkBox1.Visible = true; checkBox2.Visible = true; checkBox3.Visible = true; checkBox4.Visible = true; } ;
- 26 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

(2)多选题答题模块 public void duoxuan() { if (checkBox1.Checked == true) om1 = "A"; if (checkBox2.Checked == true) om2 = "B"; if (checkBox3.Checked == true) om3 = "C"; if (checkBox4.Checked == true) om4 = "D"; findaser(); String yu = om1 + om2 + om3 + om4; if (cv == yu) { label2.Text = ("恭喜你答对了,答案是" + cv); s = s + 1; label3.Text = ("答对" + s + "题"); } else label2.Text = ("对不起你答错了,答案是" + cv); }

- 27 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

4.7 填空题模块的实现

图 4.6 系统填空题模块图 填空题模块与其它模块不同的区别使用了一个 TEXTBOX 作为输入, 还有就是答题 模块不同,还有隐藏了一些其它模块的控件。部分代码如下。 (1)显示填空题模块控件 else if(i == 3 || i == 7 || i == 11 || i == 15 || i ==19 || i == 23) { rb1.Hide(); rb2.Hide(); rb3.Hide(); rb4.Hide(); rbf.Hide(); rbt.Hide(); checkBox1.Hide(); checkBox2.Hide(); checkBox3.Hide(); checkBox4.Hide(); textBox1.Visible = true; }
- 28 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

(2)填空题答题部分 public void tiankong() { findaser(); if (textBox1.Text.Trim() == cv) { label2.Text = ("恭喜你答对了,答案是" + cv); s = s + 1; label3.Text = ("答对" + s + "题"); } else label2.Text = ("对不起你答错了,答案是" + cv); }

4.8

显示分数模块的实现

图 4.9 显示分数模块实现图
显示分数模块为单独一界面,它可以显示使用者完成答题后的分数,正确率。 使用者的信息是从登陆界面输入的信息所传递过来的,题目总共有 120 题,分为单 选、多选、判断、填空,每题一分所以总共有 120 分。通过这个模块,使用者可以清晰 的了解当次的答题成绩。以下为部分代码。

namespace 高等数学 { public partial class 显示分数 1 : Form { public int fm; public 显示分数 1() { InitializeComponent(); fm = 练习窗口.fv; label1.Text = ("恭喜使用者" + 主窗口.s1 + "完成答题,满分 120 分,你获 得的分数是" + fm + "分;正确率为" + (double)fm / 120 * 100 + "%"); } }
- 29 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

}

4.9 管理使用者模块的实现

图 4.10 管理使用者模块图
为了对使用者进行进行一个限制功能,所以我们有一个管理使用者的功能,在这里 可以添加删除,使用者姓名与学号从而达成限制登陆的功能。显示数据表的功能我是使 用 datagridview 空间来连接数据库,从而显示数据库表,然后通过点击按钮实现 sql 语 句的 insert 或者 delete 功能来进行一个添加或者删除的功能。为了保护数据,也不是所 有人都有权力对用户登录的数据操作,只有管理员有权进行操作。对于本系统而言管理 与就是开发者本身,所以这里能进行一个数据添加或者删除的权力操作的只有作者本
- 30 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

身。以下为部分代码。 (1)限制非管理员外使用本项功能 if (主窗口.s1 == "") { this.Close(); 管理员窗口 mmvx = new 管理员窗口(); mmvx.Show();

} (2)添加删除使用信息 private void 管理员窗口_Load(object sender, EventArgs e) { // TODO: 这行代码将数据加载到表“dDataSet.登陆”中。 您可以根据需要移 动或删除它。 this.登陆 TableAdapter.Fill(this.dDataSet.登陆); } private void button1_Click(object sender, EventArgs e) { mp.Open(); OleDbCommand myCom = mp.CreateCommand(); myCom.CommandText = "insert into 登 陆 ( 姓 名 , 学 号 ) values('" + textBox2.Text + "','" + textBox1.Text + "')"; myCom.ExecuteNonQuery(); MessageBox.Show("添加成功"); this.登陆 TableAdapter.Fill(this.dDataSet.登陆); mp.Close(); } private void button2_Click(object sender, EventArgs e) { mp.Open(); OleDbCommand myCom = mp.CreateCommand(); myCom.CommandText = "delete from 登 陆 textBox2.Text + "'"; myCom.ExecuteNonQuery(); MessageBox.Show("删除成功"); this.登陆 TableAdapter.Fill(this.dDataSet.登陆); mp.Close(); }
- 31 -

where 用 户 名 ='" +

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

}

5
5.1 测试环境与测试条件





软件系统的开发由于各种原因肯定存在着种种缺陷,缺陷有大有小,严重的甚至 可能影响到软件的使用。所以这时候就需要软件测试。通过软件测试,我们可以发现 软件错误,从而完善软件系统。 测试环境为普通 PC 机,所安装的系统为 WIN7,系统使用的开发软件为 VISUAL STUDIO 2010.数据库为 ACCESS 2003.

5.2 测试过程
本系统软件开发过程中的测试方法主要采用静态测试与动态测试相结合的方法。 静态测试是指不运行被测程序本身, 仅通过分析或检查源程序的语法、 结构、 过程、 接口等来检查程序的正确性。 对需求规格说明书、 软件设计说明书、 源程序做结构分析、 流程图分析、符号执行来找错。静态方法通过程序静态特性的分析,找出欠缺和可疑之 处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变 量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并为测试用例 选取提供指导。 动态测试是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效 率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输
- 32 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

出结果。 我在软件开发过程中不断检查程序的语法、结构过程,从中也发现不少逻辑错误, 语法错误。VISUAL STUDIO 是个很智能的平台,对于一般的语法错误,它会跟你进行 提示,至于逻辑错误,这是我重点注意的错误,这是属于静态测试。而对于动态测试测 试则是我对于软件操作中不断发现功能,以下是正对于动态测试设计的一些模块。

(1)界面测试 界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。界 面测试较为简单,只需对界面不断核对就行。 这个过程中我对于界面的位置排版,字体使用的大小,各种控件的排放位置一一进 行了检查。对于不同的界面,标上界面的名称,方便使用者不混淆界面。 (2)功能测试 功能测试则对于本软件的各项功能进行了测试,看其是否能满足设计需求。 ①登陆功能:验证是否软件不进行登陆就可以直接登陆,验证发现不可以,必须输 入姓名学号。验证是否判断姓名学号输入错误能否给提示,并拒绝登陆。 ②答题功能:本模块要看是否能正确按照要求,读取题目,使用者回答题目后,能 给与正确的反应,而且题目的数目应该达到 120 道,选择了题目是否可以再进行选择, 是否可以进行计算答题分数与题号,是否可以对答案进行正确的判断,是否练习部分可 以给予答题的正确提示。 ③添加删除使用者功能:这个模块主要看是否能顺利添加删除使用者,是否只有管 理员才有权利进行添加删除,添加删除以后,新添加的用户是否能顺利的登陆系统。 ④稳定性测试 稳定性测试主要注重于测试软件的稳定性,测试软件在使用过程中是否会崩溃,是 否能达到预期的效果

- 33 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

5.3 测试结果与分析
软件的开发有错误是难免的, 所以需要软件测试。 只要不断的发现错误, 完善软件。 肯定可以成为一款优秀的软件。通过测试,发现了不少问题。 (1)首先控件排列位置不太美观,比方说原先系统运行的时候,窗口开始的位置 处于左上角, 后来我安排在正中心, 这样更加符合使用者的习惯。 还有窗口中一些字体, 原先较小看不清楚,我放大了字体并且更改了字体,使其更加方便观看,还有一些其他 的界面布置,我一一进行了优化设置,使其更加方便与使用。 (2)其次对于一些系统功能进行了修正,比如一开始选择了题目就不能取消重新 选择题目,这在实际运用中肯定不方便操作,因为我们可能要重新选择了题目。原先因 为我只有一下题的按钮,这个按钮会锁定题目,后来我添加了一个确定按钮,在点击确 定按钮之前都可以重新选择题目。 (3)还有系统登录界面,原先系统登录界面只是输入姓名与学号,并不会进行验 证,只是起到一个在其后的界面显示姓名与学号的功能,后来通过老师的指出,这很不 符合软件系统开发的惯例,登录界面大多要起着一个验证的作用,如果只是起着一个传 输数据的功能,那么这个界面太空洞了。于是乎我在数据库中添加了用户信息表项,并 在代码中添加了验证 (4)还有设计的功能与任务书有出入,在软件开发过程中往往会遇到些困难或者 改变开发思路,有时候就会和项目开始时候预定目标有了出入,我的系统原先和任务书 对比缺少了多选题的模块,后来经过指导老师的指出进行了修正,添加了功能模块,同 时我也明白了项目开发一定要按照任务书走,切不可以更改任务需求。 总体来说,该系统是比较稳定和可靠的,系统的稳定性和功能性得到保障。系统的 设计和实现已达到了预期要求。

- 34 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

6





经过四个月的时间的辛勤努力,我的毕业设计业圆满完成了。从开始时候的茫然, 到最后进入状态,再逐渐确定思路,最后完成毕业设计及论文。这是一个付出辛勤与汗 水的过程,这其中有老师的指导与建议,也有自己的查找资料,最有一步一个脚印终于 独立完成了。 计算机基础无纸化考试系统是一项帮助教学的很好的应用。我们采用信息技术手 段,实现高效、准确的高等数学的测试与练习,这不仅增强了学生的学习兴趣,还节约 了教学成本与时间,更是符合环保的概念。同学们使用本系统时候可以及时得到使用反 馈,高效准确,非常具有针对性。 系统制作过程中, 我也在一边实习, 只能白天上班, 晚上回到宿舍抓紧时间写代码, 这其中的压力与艰辛是只有应届生才能体会的。比方说本系统题库的制作,由于高等数 学牵涉到很多复杂的符号,于是我决定使用图片形式的数据库存储。题库都是我一点一 点制作出来,首先选定题目,然后在打到 word 里面,然后进行截图。当题库搭建完成 时候,我也有很大的成就感。 除此之外我还遇到很多问题,不过通过和我的指导老师甘家宝老师及时的沟通,我 的思路逐渐清晰起来,比方说开发过程中我遇到题库存放位置的问题,甘老师指出可以 使用当前路径。像这样的问题还有很多。 通过这次独立完成这个系统,不仅锻炼了我的编程开发能力,还培养了我独自钻研 问题的能力,锻炼了我的不怕困难不怕艰辛的精神,可以说收获多多。最后感谢所有老
- 35 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)

师。

参考文献
[1]王军红,冯永明 现代信息技术下对高等数学课教育的思考 科技创新导报 2008 [2]潘丽芳 Mathematica 软件在大学数学教学中的应用 电脑知识与技 术 2010.8 [3]张云艳 论现代教育技术在《高等数学》教学中的作用 毕节学院学 报 2010 [4]刘美红,金茂忠,晏海华 一种基于 Visual Studio 的 C# 构件模型研究 计算机工程与应用 2003 [5]丁虹, 王吟, 李美蓉. 关于对高等数学教学改革的若干思考与建议 合肥师范学院学报 2010 [6] 王飞 基于三层结构的 NET 程序设计 信息化制造行业应用 2011 [7]黄晶晶 浅谈.NET 教学中对 ADO.NET 常用对象的讲解 科教文 汇 2011.2 [8]汪毅 彭江平 Vistual Studio.NET 下自定义控件开发与使用 计算机系统 应用 2003 [9]张建成,李春青 基于.NET 环境下 ADO.NET 访问数据库技术的研究 电脑知识与技术 2009-10 [10]王晓鹏, 张新成 Visual studio. Net 平台上事件处理的委托及其实现 开封大 学学报 2007 [11]Andrew D. Birrell An Introduction to Programming with C# Threads Microsoft Research Technical Report 2005

- 36 -

基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)





值此毕业设计完成之际,首先要向我的指导老师老师致以最诚挚的谢意。在整个毕 业设计期间和论文撰写的过程中,一直得到老师的悉心指导和极大的支持。通过及时有 效的沟通,老师及时给与我有效的指导,不厌其烦的帮助我对论文进行改进。 另外要感谢我的父母,是他们的日夜辛劳,我才得以有机会在大学里深造,是他们 的鼓励我才能克服一个一个困难。 最后, 我也由衷的感谢上海建桥学院信息技术系的各位领导和老师, 是你们的关心、 教导和培养督促着我们不断地在成长。在此向各位辛勤工作的老师们致以最诚挚的谢 意!

- 37 -


相关文章:
上海建桥学院信息技术系毕业论文
(系)信息技术学院 专业 计算机科学与技术 2012 年 5 月 20 日 交稿日期 上海建桥学院毕业设计(论文)学术诚信声明本人郑重声明:所呈交的毕业设计(论文) ,是...
5-上海建桥学院毕业设计(论文)正文
5-上海建桥学院毕业设计(论文)正文_教学计划_教学研究_教育专区。煤炭企业的人力...上海建桥学院信息技术系... 43页 7下载券 大学毕业论文格式模板 免... 17页...
上海建桥学院毕业论文格式范文最新标准
客户信息管理系统设计与实现 Design and implement of Customers Resource Management System of the SME 学专 院: 上海建桥学院*学院 业: 计算机科学与技术 张青...
上海建桥学院毕业生自我鉴定范文最新原创
有效避免雷同==上海建桥学院 四年的大学生活转瞬即逝,转眼之间,作为×××专业(改成自 己在上海建桥学院专业)的我即将告别大学生活,告别亲爱的同学 和敬爱的...
1-上海建桥学院毕业设计(论文)封面
本科毕业设计(论文) 题目 学生姓名 学号 指导教师 系专别业 交稿日期 上海建桥学院毕业设计(论文)学术诚信声明本人郑重声明:所呈交的毕业设计(论文) ,是本人在...
上海建桥学院计算机系开题报告(附外文翻译)
上海建桥学院计算机系开题报告(附外文翻译)_院校资料_高等教育_教育专区。本科毕业...本科毕业设计(论文)开题报告 学生姓名 学号 信息技术学院 计算机科学与技术 指导...
5毕业项目论文正文
5-上海建桥学院毕业设计(论... 9页 1财富值 5、天大自考毕业设计(论文......感谢计算机 应用技术系的所有老师们,更要感谢张杰老师在我论文的编写过程中所做...
本科毕业设计(论文)正文格式(非常全面的介绍)
本科毕业设计(论文)题目___ 学生姓名 学号 指导教师...本人授权上海建桥学院可以将本毕业设计(论文) 的全部...各个模块技术 2.5.1 热释电红外线模块 2.5.2 ...
上海建桥学院09本科毕业设计任务书模板
上海建桥学院信息技术系... 43页 7下载券 本科毕业论文格式 52页 1下载券 英语...(论文)各阶段内容 时间安排 备注 课题信息: (请在□内打“√”) 课题性质:...
更多相关标签:
上海建桥学院毕业证 | 建桥毕业论文 | 建桥学院毕业论文 | 上海开放大学毕业论文 | 上海交通大学毕业论文 | 上海大学毕业论文 | 上海财经大学毕业论文 | 上海交大优秀毕业论文 |