基于bs模式的在线考试系统.doc_第1页
基于bs模式的在线考试系统.doc_第2页
基于bs模式的在线考试系统.doc_第3页
基于bs模式的在线考试系统.doc_第4页
基于bs模式的在线考试系统.doc_第5页
已阅读5页,还剩106页未读 继续免费阅读

下载本文档

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

文档简介

远程教育学院本科生毕业论文(设计)题 目 基于B/S的在线考试系统设计与实现 专 业 电气工程及其自动化 学习中心 福州学习中心 姓 名 学 号 指导教师 浙江大学远程教育学院本科生毕业论文(设计)诚信承诺书1.本人郑重地承诺所呈交的毕业论文(设计),是在指导教师的指导下严格按照学校和学院有关规定完成的。2.本人在毕业论文(设计)中引用他人的观点和参考资料均加以注释和说明。3.本人承诺在毕业论文(设计)选题和研究内容过程中没有抄袭他人研究成果和伪造相关数据等行为。4.在毕业论文(设计)中对侵犯任何方面知识产权的行为,由本人承担相应的法律责任。 毕业论文(设计)作者: 2015年 11 月 8 日论文版权使用授权书 本论文作者完全了解 浙江大学远程教育学院 有权保留并向国家有关部门或机构送交本论文的复印件和电子文档,允许论文被查阅和借阅。本人授权 浙江大学远程教育学院 可以将论文的全部或部分内容编入有关数据库进行检索和传播,可以采用影印、缩印或扫描等复制手段保存、汇编论文。毕业论文(设计)作者签名:2015年 11 月 8 日浙江大学远程教育学院本科毕业论文(设计) 摘要 摘要随着计算机技术的飞速发展,学校也已进入信息化时代。为了使高校在线自测更高效、更科学,决定开发在线自测系统。在线考试系统是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置很简单,使考试不受地域的限制,一个完备的在线考试系统可以使用户在网上学习过后及时的检测自己的学习效果,以发现自己的不足,使得学习效率大大提高。即只要形成一套完整的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心维护题库,而不必组织考试,从而大大减轻了教师的负担,这表明其经济性和实用性是相当可观的。在开发在线自测系统的过程中,使用.NET技术,后台数据库使用SQL2008,并选择了B/S结构,并采用了典型的三层架构模型,这其中包括了数据层。本系统的设计实施为在线自测系统的运行做基础,为在线自测系统的管理工作提供良好的条件。关键词:在线自测;系统;结构化分析II浙江大学远程教育学院本科毕业论文(设计) 目录 目录摘 要I第1章 引言11.1课题研究背景与意义11.2 国内外研究现状2第2章 课题采用的技术和系统环境配置要求32.1 课题设计基础介绍32.1.1.Net简介32.1.2 Microsoft Visual Studio 200872.2 ADO.NET82.3 系统开发模式92.4系统环境配置要求11第3章 需求分析123.1可行性分析及总体设计原则123.1.1 可行性分析123.1.2 总体设计原则133.2用户需求143.3功能需求14第4章 系统设计184.1 功能设计184.2 数据库设计184.3 系统操作流程21第5章 系统界面的设计与实现255.1 后台登录界面介绍255.2 账号管理模块265.2.1 添加账号信息265.2.2 账号管理265.3 学生信息管理模块265.3.1 添加学生信息界面275.3.2 管理学生界面275.4 教师信息管理模块285.4.1 添加教师信息界面285.4.2 教师管理界面285.5 考试章节管理模块285.5.1 添加考试章节信息界面285.5.2 考试章节管理界面29第6章 系统测试306.1 系统测试的定义306.2 系统测试的目的及意义306.3 系统测试的重要性306.4 测试测试常用的方法316.5 系统运行情况326.6 在线自测系统测试326.7 系统测试结果38第7章 本系统开发遇到问题和解决方案39结 论39参考文献39浙江大学远程教育学院本科毕业论文丁亮_713021202003第1章 引言1.1 课题研究背景 进入21世纪以来,随着信息技术的不断发展,数字化与自动化已成为信息时代的主流,通过网络,人与人之间联系的距离被无限放大,而隔空对话也成为现实。面对这样的发展,传统的考试方式已不能满足日渐增长的网络需求。首先我们需了解传统考试的弊端: (1)面对题海,教师需大量选题,同一科目的不同考试,教师需重复选题并输入排版,给教师带来大量的重复作业,使教师的工作效率大大降低,出错概率也大幅提高,单一选题的情况下还易发生选题范围过于狭窄的情况,不利于考核学生的综合水平与真实实力; (2)传统考试的考场安排和书面答题所带来的繁多试卷纸张容易造成考生作弊现象,监考老师很难顾全整场考试; (3)远距离考生无法及时到达考场,错过考试机会,造成成绩上的不公平,其次专程考试所用的路费住宿等费用巨大,是一种可避免的浪费;另一方面,学校安排的统一书面考试需携带大量的答题工具,不利于学生稳定答题。 (4)由于纸张的不稳定性会在一定程度上导致信息丢失,从而影响到考试分数的客观性;另一方面,众多的纸质试卷和答题卡的制作造成了物力财力的浪费,不利于环境的可持续发展。此次选题目的是让在线考试系统的出现能够有效的避免以上的弊端,实现考试系统的规范化,简便化,科学化,数字化。尤其是题库的出现,使得同一科目的不同出卷变得快捷方便,有效的实现了以考试选拔人才的客观性。我们可以预见在线考试系统有效减轻了教师的工作负担并提高工作效率和改卷质量。而且由于计算机自动组卷、阅卷,不仅能节省教师大量宝贵时间,而且能彻底消除出卷人的主观影响,考试工作更加规范化,更加客观、真实、全面的反映教学的实际效果,有助于促进教学质量的提高,有助于实现考、教分离,促使教师严格按照教学大纲的要求认真备课,认真组织教学内容,改进教学方法,对提高教学质量和整体教学水平有着非常重要的意义。选题的意义是能够简便考试流程,节省更多的时间和资源;提高考试系统的管理水平和质量;实现考试系统的公平性和保密性。1.2 国内外研究现状随着网络技术的发展,无纸化办公已经成为主流,而相对应的,基于WEB的在线考试也是大势所趋。而现阶段,在线考试系统的发展却远不如无纸化办公规范,业内对此的发展也远没有其他在线系统重视。目前,国内的在线考试系统主要用在远程考试,在线教育等方面,系统多为会员制。其体制已日趋完善,大多网站将在线考试与在线学习相结合,是学生能够从其中获取更多的知识,利于提高学生的自学能力和综合水平。但在实际操作中,其中也不乏用户操作繁琐,题库生成不合理导致的成绩不公等弊端。而在实际生活中,在线考试可以运用的领域很宽广,比如驾照考试,公司的人才录取,在线问卷调查等,而B/S架构能够很有效的解决客户端和服务器端的同步问题,所以,在线考试系统的完善与发展有很大的提升空间。ETS(美国教育考试服务中心)举办的GRE(美国研究生入学考试)的计算机网络化考试就是最有影响的案例,但是在线考试系统实现的功能差异很大,存在的问题也很多,考试系统研究开发仍任重而道远。第2 章 课题采用的技术和系统环境配置要求本章主要讲述的是开发本系统所涉及到的技术和工具,此外还有在设计系统初级阶段时对系统配置环境的认识和建议。2.1 课题设计基础介绍2.1.1.Net简介1.什么是ASP.NETASP.NET是M的一部分,ASP.net 是一种建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的Web应用程序。它提供了一个统一的 Web 开发模型,并为开发人员提供了创建企业级 Web 应用程序所需的各种服务。ASP.NET 是一个已编译的、基于 .NET 的环境,可以使用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C# 和就Jscript.)创作应用程序。另外,任何 ASP.NET 应用程序都可以完全使用.NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。2 .NET Framework概述.NET Framework 是支持生成和运行下一代应用程序和 XML Web services 的内部 Windows 组件。.NET Framework的几个主要组成部分:首先是整个开发框架的基础,即通用语言运行时以及它所提供的一组基础类库;在开发技术方面,.NET提供了全新的数据库访问技术ADO .NET,以及网络应用开发技术ASP .NET和Windows编程技术Win Forms;在开发语言方面,.NET提供了VB、VC+、C#、 Jscript等多种语言支持;而Visual Studio .NET则是全面支持.NET的开发工具。.NET Framework 主要实现下列目标: (1)提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。(2)提供一个将软件部署和版本控制冲突最小化的代码执行环境。(3)提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境。(4)提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。使开发人员的经验在面对类型大不相同的应用程序(如基于Windows 的应用程序和基于 Web 的应用程序)时保持一致。按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。.NET Framework 具有两个主要组件:公共语言运行库和 .NET Framework 类库。公共语言运行库是 .NET Framework 的基础。您可以将运行库看作一个在执行时管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。.NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于 ASP.NET 所提供的最新创新的应用程序(如 Web 窗体和 XML Web services)。.NET Framework 可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.NET Framework 不但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。3. ASP.NET的特点(1)ASP.NET的新性能ASP.NET提供了稳定的性能、优秀的升级性、更快速的开发、更简便的管理、全新的语言以及网络服务。贯穿整个ASP.NET的主题就是网站帮用户做了大部分不重要的琐碎的工作。(2)全新的构造新的ASP.NET引入受管代码(Managed Code)这样一个全新概念,横贯整个视窗开发平台。受管代码在NGWS Runtime下运行,而NGWS Runtime是一个时间运行环境,它管理代码的执行,使程序设计更为简便。(3)高效率对于一个程序来讲,速度是非常重要的。在ASP中为了尽可能精简程序代码,以至于不得不将代码移植到一个低性能的部件中。而ASP.NET则能妥善地解决这一问题。(4)易控制在ASP.NET里,你将会拥有一个“Data-Bounds” (数据约束),这意味着它会与数据源连接,并会自动装入数据,使控制工作简单易行。(5)语言支持ASP.NET支持多种语言,支持编译类语言,支持比如VB、VC+、C#等,它比这些编译类语言运行速度快,更适合编写大型应用。(6)更好的升级能力快速发展的分布式应用也需要更快速、更模块化、更易操作、更多平台支持和重复利用性更强的开发,需要一种新的技术来适应不同的网站,网络应用和网站需要提供一种更加强大的可升级的服务。ASP.NET能够适应上面的要求。4. C#C#是一种最新的、面向对象的编程语言,是微软在Microsoft .NET中推出的全新语言。这种全新的面向对象的语言使得开发者可以快速的构建从底层网站级到高层商业组件的不同应用。C#在保证了强大的功能和灵活性的同时,给C和C+带来了类似于VB的快速开发,并且它还针对.NET作了特别设计,比如C#允许XML数据直接映射为它的数据类型等等,这些特性结合起来使得C#成为优秀的下一代网络编程语言。C#(C sharp)是一种面向对象的编程语言,主要用于开发可以在.NET平台上运行的应用程序。C#是从C和C+派生出来的一种简单、现代、面向对象和类型安全的编程语言,其语言体系都构建在.NET框架上,并且能够与.NET框架完美结合。它语法简洁,不允许直接操作内存,去掉了指针操作。C#拥有比C,C+或者Java更广泛的数据类型.这些类型是bool, byte, short, ushort ,int ,long ,float ,double ,和decimal,像Java一样,所有这些类型都有一个固定的大小又像C和C+一样,每个数据类型都有有符号和无符号两种类型。C#有两个局限性:第一是C#不适用于编写时间紧迫或性能非常高的代码。第二是C#缺乏性能极高的应用程序所需要的关键功能,包括保证在代码的特定地方运行的内联函数和析构函数。但是这类应用程序非常少。5. ADO.NET对象操作数据库在Microsoft .NET中访问数据库的技术是ADO .NET。ADO .NET提供了一组用来连接到数据库,运行命令,返回记录集的类库,与从前的ADO(ActiveX Data Object)相比,Connection和Command对象很类似,而ADO .NET的革新主要体现在如下几个方面: 首先,ADO .NET提供了对XML的强大支持,这也是ADO .NET的一个主要设计目标。在ADO .NET中通过XML Reader,XML Writer, XML Navigator, XML Document等可以方便的创建和使用XML数据,并且支持W3C 的 XSLT、DTD、XDR等标准。ADO .NET对XML的支持也为XML成为Microsoft .NET中数据交换的统一格式提供了基础。 其次,ADO .NET引入了Dataset的概念,这是一个驻于内存的数据缓冲区,它提供了数据的关系型视图。不管数据来源于一个关系型的数据库,还是来源于一个XML文档,我们都可以用一个统一的编程模型来创建和使用它。它替代了原有的Record set的对象,提高了程序的交互性和可扩展性,尤其适合于分布式的应用场合。 另外,ADO .NET中还引入了一些新的对象,例如Data Reader可以用来高效率的读取数据,产生一个只读的记录集等等。简而言之,ADO .NET通过一系列新的对象和编程模型,并与XML紧密结合,使得在Microsoft .NET中的数据操作十分方便和高效。 ASP .NET是Microsoft .NET中的网络编程结构,它使得建造、运行和发布网络应用非常方便和高效。6. Microsoft Visual Studio.NETVisual Studio .NET作为微软的下一代开发工具,它和.NET 开发框架紧密结合,是构建下一代互联网应用的优秀工具。由于Visual Studio .NET通过提供一个统一的集成开发环境及工具,大大提高了开发者的效率;十分方便.NET程序的创建和调试,所以Visual Studio.NET是开发ASP.NET应用程序的常用工具。在Visual Studio.NET中用户可以直接使用它里面的组件来创建ASP.NET应用程序,同时它也是一个功能丰富的编程环境,集成了多种语言支持(如:C#、VC+、VB);简化了服务器端的开发;提供了高效地创建和使用网络服务的方法等等。当用Visual Studio.NET创建一个ASP.NET工程时,Visual Studio.NET会自动配置好IIS应用,用户直接应用即可。2.1.2 Microsoft Visual Studio 2008之所以选择Microsoft Visual Studio 2008作为本次题库系统设计的开发工具,是因为Visual Studio2008 是一套完整的开发工具集。它的主要功能包括开发Windows窗体应用程序、开发ASP.Net Web应用程序、开发移动应用程序等,并且它可以向开发的各个过程提供辅助工具,即提供了开发应用程序的工具集。另一方面,Visual Studio 2008提供了在设计、开发、调试和部署应用程序时所需的工具,Visual C#集成开发环境(IDE)是Visual Studio IDE中的一种。打开Visual Studio选择C#即可进入Visual C#集成开发环境,它里面有些工具是与其他 Visual Studio 语言共享的,还有一些工具(如C#编译器)是Visual C#特有的。此外,Visual Studio 2008可以与SQL Server 2008 解决方案开发。SQL Server 2008 将数据库对象的开发与调试集成到 Visual Studio 2008 开发环境中,从而使开发人员能够使用与其目前用于编写托管组件和应用程序相同的工具来生成和部署数据库对象。从开发人员的角度看,Visual Studio 2008 Team Developer Edition 为开发人员提供高级的静态分析、代码剖析、代码涵盖以及单元测试工具,使团队能够在整个生命周期中尽早、频繁地规划质量。SQL Server 2008的版本有SQL Server 2008企业版(Enterprise)、SQL Server 2008标准版(Standard) 和SQL Server 2008工作组版(Workgroup),从而可以更好地满足各个客户领域的需求。与竞争性解决方案相比较,SQL Server 2008 作为一种低成本主流数据库,将呈现前所未有的价值和功能。用户需要从中选择一个适合自己学习及应用的SQL Server数据库版本。下面是各个版本适用范围的介绍:SQL Server 2008 企业版达到了支持超大型企业进行联机事务处理 、高度复杂的数据分析、数据仓库系统和网站所需的性能水平。SQL Server 2008 标准版是适合中小型企业的数据管理和分析平台。SQL Server 2008 工作组版对于那些需要在大小和用户数量上没有限制的数据库的小型企业,SQL Server 2008 Workgroup Edition 是理想的数据管理解决方案。SQL Server 2008 Workgroup Edition 是理想的入门级数据库,具有可靠、功能强大且易于管理的特点。2.2 ADO.NETADO.NET是.NET应用程序的数据访问模型,它能用于访问关系型数据库系统。ADO.NET提供两个核心的组件:(1) .NET数据提供程序:负责数据访问。(2) DataSet:负责数据的操作。ADO.NET提供了两种访问数据库的方法:方法一:利用Connection、Command和DataReader对象只能从数据库读取数据,不能添加、修改和删除。方法二:利用Connection、Command、DataAdapter和DataSet对象可以对数据库进行查询操作,还可以进行增加、删除和修改等操作。总之,ADO.NET是与数据源交互的.NET技术。有许多的Data Providers,它将允许与不同的数据源交流取决于它们所使用的协议或者数据库。然而无论使用什么样的Data Provider,你将使用相似的对象与数据源进行交互。SqlConnection对象管理与数据源的连接。SqlCommand对象允许你与数据源交流并发送命令给它。为了对进行快速的只“向前”地读取数据,使用SqlDataReader。如果想使用断开数据,使用DataSet并实现能进行读取或者写入数据源的SqlDataAdapter。2.3 系统开发模式B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows 98/Windows 2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业规模和地理分布确定。企业内部通过防火墙接入Internet,再整个网络采TCP/IP协议。C/S 与 B/S 区别:Client/Server是建立在局域网的基础上的.Browser/Server是建立在广域网的基础上的。1硬件环境不同: C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务.B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例与电话上网, 租用设备. 信息自己管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行 2对安全要求不同 C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 可以通过B/S发布部分可公开信息.B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群. 3对程序架构不同 C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑.B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统. SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟. 4软件重用不同 C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子 5系统维护不同 系统维护是软件生存周期中,开销大, -重要C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.6处理问题不同 C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小. 7用户接口不同 C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本. 8信息流不同C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更像交易中心。2.4系统环境配置要求本课题主要开发工具为Visual Studio 2008和SQL Server2008,两个软件的压缩包文件总大小4G多。(1)硬件环境PC服务器一台CPU:至少为Pentium II 450MHz,推荐使用Pentium III 600MHz以上内存:2G,推荐安装2G内存硬盘:容量80GB以上的硬盘网卡:千兆网卡(2)软件环境可应用于Windows XP、Windows Vista、Windows7系统上。值得注意的是,Windows 7和Windows Vista系统在安装SQL Server 2008时候需要注意兼容问题,需要在官网下载并安装兼容包。除此之外,Windows XP系统需要安装专业版本,否则没有IIS支持将不能正常安装SQL Server 2008。9第3章 需求分析需求分析为软件的开发起到了决策的作用,提供了开发的方向,并指明开发的策略,在软件开发及维护中均起到了举足轻重的作用。本章将从用户需求和功能需求两方面进行阐述。3.1可行性分析及总体设计原则3.1.1 可行性分析可行性分析也称为可行性研究,是在调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、管理的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。技术可行性分析技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要等。(1)软件方面,网络化考试需要的各种软件环境都已具备,数据库服务器方面则有SQL Server,均能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。其灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。(2)硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。经济可行性分析经济可行性分析主要是对项目的经济效益进行评价。利用计算机来实现网上考试以成为适应当今教学管理的方式,开发一套能满足网上考试系统的软件是十分必要的,实现试卷管理和试卷生成自动化,在减少由于认为失误而早成损失的同时,也可以使教师减少工作量。本系统在经济上是可以接受的,并且本系统实施后可以显著提高考试效率,有助于学院完全实现网络化管理。所以本系统在经济上是可行的。操作可行性分析目前,大学的校园网路覆盖了教学区和学生去的主要建筑物,从而满足校内各学院,各职能部门,各直属单位的上网需求。学校良好的网络设施为开发使用无纸化网络考试系统提供了坚实的基础。3.1.2 总体设计原则本系统为了设计、实现和后期维护的方便,以及系统用户使用的便利,所以必须采取一定的设计原则。其主要设计原则有:简单性:在实现系统的功能的同时,尽量让系统操作简单易懂,这对于一个系统来说是非常重要的。针对性:本系统设计是针对在线自测的需求定向开发设计,所以具有专业突出和很强的针对性。实用性:要求本系统能够满足学校教师、学生的需要,因此具有良好的实用性。一致性:页面整体设计风格以及命名规则的一致性:整体页面布局和用图用色风格及变量、类名和其他元素的命名规则保持一致。功能一致性:完成同样的功能应该尽量使用同样的元素。 元素风格一致性:界面元素的美观风格、摆放位置在同一个界面和不同界面之间都应该是一致的。变量命名规则的一致性:变量应该用统一的规则进行命名,做到任意变量均能从上下文推断其义。先进性:本系统采用.NET技术、SQL Server2008等被广泛采用系统开发技术和数据库,因此本设计具有良好的先进性,具体表现在其具有良好的可扩展性,可开发性。3.2用户需求在线自测系统主要使用群体是在校学生、教师以及学校管理人员,因此本系统在设计上要达到界面简洁、易操作、功能全面的要求。3.3功能需求在线自测系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的系统。1、基于职能模块进行划分教师子系统( 1 )成绩管理教师可以添加学生成绩,修改学生成绩信息。( 2 试题管理教师可以通过添加试题信息。( 3 )系统管理教师可以修改登录密码。学生子系统( 1 )成绩管理学生可以查询成绩信息。( 2) 试题管理学生可以通过系统进行在线考试。( 3 )系统管理学生可以修改登录密码。管理员子系统( 1 )考试章节管理管理员可以管理考试章节信息。( 2 )系统管理管理员可以修改登录密码。(3)账号管理管理员登录系统后,可以添加管理员信息,修改管理员信息,删除管理员信息。(4)教师信息管理管理员登录本系统后,可以添加教师信息,修改教师信息,删除教师信息。(5)学生信息管理管理员登录本系统后,可以添加学生信息,修改学生信息,删除学生信息。2、基于系统角色进行划分基于系统角色可划分为学生、教师、管理员图3-1 系统用例图(管理员)图3-2 系统用例图(学生)图3-3 系统用例图(教师)第4章 系统设计在线自测系统由三部分组成:学生模块、教师模块和管理员模块,见图4-1。管理员模块又是本系统的重中之重,因此本文主要讲述管理员操作模块的设计,分别从功能设计、数据库设计和系统操作流程三个方面来给大家详解。4.1 功能设计图4-1 系统框架图4.2 数据库设计系统的数据库设计如图4-3所示:图4-3 数据库系统表整个数据库包括6个表,其结构如下表所示:表4-1 Admin管理员表字段名数据类型约束是否为空说明IDInt主键否编号usernamevarchar(50)否用户名UserPwdvarchar(50)否密码表4-2 teacher教师表字段名数据类型约束是否为空说明IDInt主键否编号usernamevarchar(50)否用户名UserPwdvarchar(50)否密码userEmalvarchar(50)否邮箱UserNubmervarchar(50)否职工号表4-3course课程表字段名数据类型约束是否为空说明IDInt主键否编号Namevarchar(50)否名称DsText否简介表4-4 paper作业表字段名数据类型约束是否为空说明PaperIDInt主键否编号CourseIDInt外键否课程编号PaperNamevarchar(50)否试卷题目UseridInt外键否学生编号表4-5 users学生表字段名数据类型约束是否为空说明IDInt主键否编号usernamevarchar(50)否用户名UserPwdvarchar(50)否密码UserNubmervarchar(50)否学号Emailvarchar(50)是邮箱XiNamevarchar(50)否姓名表4-6 score成绩表字段名数据类型约束是否为空说明IdInt主键否编号UseridInt外键否学生编号PaperIDInt外键否编号ScoreDecimal否成绩FullScorreFloat否满分ExamTimedatetime否添加时间4.3 系统操作流程在线自测系统的用户的操作流程,如图4-3所示:图4-3 管理员操作流程图图4-4 学生操作流程图图4-5 教师操作流程图第5章 系统界面的设计与实现5.1 后台登录界面介绍见图5-1,此模块主要功能是用于登录本系统,不同权限的用户登录本系统会进入不同的管理模块界面,因为在后台对该用户进行的判断,首先将从前台页面提交的用户名和密码进行接受,之后在后台进行处理,按照用户名在数据库中进行查询如果查到该用户则将该用户的权限和密码全都取出来分别赋给两个字符串变量,判断从数据库中读出的密码与登录时输入的密码是否配比上,若两个密码相同则根据权限的值进入相应的页面,否则输出密码错误。若用户未被管理员分配好权限那么也是无法登录本系统的。图5-1 系统后台登录界面5.2 账号管理模块5.2.1 添加账号信息管理员登录本系统后,可以添加账号信息。如图5-2所示:图5-2 账号管理界面5.2.2 账号管理管理员登陆系统后,可以管理账号信息。如图5-3所示:图5-3 账号管理界面5.3 学生信息管理模块登录本系统的管理员可以管理学生信息。5.3.1 添加学生信息界面添加学生信息界面,如图5-4所示:图5-4 添加学生信息界面5.3.2 管理学生界面管理学生界面,如图5-5所示:图5-5 管理学生界面5.4 教师信息管理模块5.4.1 添加教师信息界面添加教师信息界面,如图5-6所示:图5-6 添加教师信息界面5.4.2 教师管理界面教师管理界面,如图5-7所示:图5-7 教师管理界面5.5 考试章节管理模块5.5.1 添加考试章节信息界面添加考试章节信息界面,如图5-8所示:图5-8 添加考试章节界面5.5.2 考试章节管理界面考试章节管理界面,如图5-9所示:图5-9考试章节管理界面第6章 系统测试测试是开发时期最后一个阶段,是保证软件质量的重要手段。软件测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。软件测试过程中应该故意地去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。从本质上说,软件测试是探测。6.1 系统测试的定义软件测试是为了发现错误而执行程序的过程。它不仅是软件开发阶段的有机组成部分,而且在整个软件工程(即软件定义、设计和开发过程)中占据相当大的比重。软件测试是软件质量保证的关键环节,直接影响着软件的质量评估。软件测试不仅要讲究策略,更要讲究时效性。验收测试作为软件测试过程的最后一个环节,对软件质量、软件的可交付性和软件项目的实施周期起到一锤定音的作用。6.2 系统测试的目的及意义软件危机曾经是软件界甚至整个计算机界最热门的话题。为了解决这场危机,软件从业人员、专家和学者做出了大量的努力。现在人们已经逐步认识到所谓的软件危机实际上仅是一种状况,那就是软件中有错误,正是这些错误导致了软件开发在成本、进度和质量上的失控。有错是软件的属性,而且是无法改变的,因为软件是由人来完成的,所有由人做的工作都不会是完美无缺的。问题在于我们如何去避免错误的产生和消除已经产生的错误,使程序中的错误密度达到尽可能低的程度。6.3 系统测试的重要性软件测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。 事实上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量的40以上。而在软件开发的总成本中,用在测试上的开销要占30到50。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。6.4 测试测试常用的方法程序测试的主要方法分为两大类,白盒测试和黑盒测试。白盒测试:一种是以程序的内部逻辑结构为依据而设计测试用例的方法,因而又称结构测试或玻璃盒测试,将软件看成一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对软件的逻辑路径及过程进行测试,检查它与设计是否相符。白盒测试就是要选取足够的测试用例,对源代码实行比较充分的覆盖,以便尽可能多地发现程序中的错误。主要有两种方法:一种称为逻辑覆盖法,另一种称为路径覆盖法。黑盒测试:也称功能测试,数据驱动测试等,它将待测对象堪称是一个黑盒子,在完全不考虑程序的内部结构和特性的情况下,只依据规格说明书检查程序的功能是否能正常使用。黑盒测试主要是根据输入条件和输出条件的确定测试数据,来检查程序是否能产生正确的输出。进行黑盒测试主要有下面几种方法:等价分类法、边界值分析法、猜错法、因果图法。6.5 系统运行情况系统评价是指系统在正式运行了一段时间之后,对它在功能上、技术上和经济上所进行的审核评价。针对本系统的评价如下:(1)系统功能评价根据本系统开发前所订的目标,在系统完成后经过测试运行,该系统达到了预定的开发目标,在实际使用中的功能可以满足用户需求。(2)系统技术评价本系统设计合理,功能达到了预期目标,且系统运行后稳定可靠,安全性高,具有实用性,大大提高了信访学生请假效率。(3)系统经济评价在规定时间内,该系统完成了系统分析时所确定的系统开发目标,达到了设计要求,投入使用后为用户节省了大量人力物力财力,提高了科学管理水平。6.6在线自测系统测试具体测试方法及结果如下:添加/修改模块测试。测试方法:白盒测试测试用例1,管理员通过正确的用户名和密码成功进入系统之后,可以点击添加管理员、修改、删除,进行添加/修改修改与删除操作。(如表6.1)表6.1 添加/修改管理员测试用例测试方法期望结果测试结果1.测试人员在添加管理员表单中输入正确的管理员信息;2.测试人员在修改选项中以正确的方法输入新的管理员信息;3.测试人员点击某管理员删除选项;1. 返回主界面后,所添加的信息添加到数据库;2. 返回主界面后,信息界面中显示修改的结果;2. 返回主界面后,信息界面中显示删除的结果;测试结果与期望结果完全相同,测试成功测试结果与期望结果完全相同,测试成功测试结果与期望结果完全相同,测试成功管理员模块测试,白盒测试。图6-1-1添加管理员图6-1-2修改管理员 图6-1-3删除管理员测试用例2,管理员通过正确的用户名和密码成功进入系统之后,可以点击添加教师、修改、删除,进行添加/修改修改与删除操

温馨提示

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

评论

0/150

提交评论