C++程序设计考试系统

上传人:痛*** 文档编号:171155036 上传时间:2022-11-24 格式:DOC 页数:31 大小:623KB
收藏 版权申诉 举报 下载
C++程序设计考试系统_第1页
第1页 / 共31页
C++程序设计考试系统_第2页
第2页 / 共31页
C++程序设计考试系统_第3页
第3页 / 共31页
资源描述:

《C++程序设计考试系统》由会员分享,可在线阅读,更多相关《C++程序设计考试系统(31页珍藏版)》请在装配图网上搜索。

1、C+程序设计考试系统摘 要本论文叙述了考试方式的历史、现状以及ASP语言和SQL SEVER2000数据库管理系统的概况。重点介绍了无纸化网络考试系统的实现过程:包括系统分析、系统调查、数据流程分析、功能设计、数据库设计、系统物理配置方案、系统实现、系统测试和调试。总结了本系统的特点:节约考试成本,提高考试工作的效率。本系统主要面向三类人员使用:普通学生、考务人员、领导,使用时他们拥有不同的权限。使用的过程是通过考试新闻的发布、试卷的制定、审核、生成、考试结果的公布与查询来实现无纸标准化考试,从而使考试可以方便地通过 Internet和局域网进行。关键词:无纸化网络考试系统,ASP,SQL S

2、ERVER2000 ABSTRACTThis thesis described the examination history, present condition and the ASP language with the SQL SEVER2000 the database manage systems general condition.I emphases introduced the process to realize the network examination without paper system:Include the system the analysis, syst

3、em to investigate, data process analysis, function design, database design, the system physics install the project, system to realize, the system test and debug.summarized the characteristics of this system:Economy examination cost, increase the examination works efficiency.This system primarily fac

4、e to three personnel usageses:Common student, test personnel, leader, they own the different legal power when use this system .The usages process of standardize examine without papers is an announcement for of examination establishment, examining, bornly, examination result and search of announce, t

5、hus make examination can expediently pass the Internetand intranetthe proceeding.Key words:no paper internet exam system, ASP, SQL SERVER 2000 目 录1 引言1.1 项目开发背景在上个世纪90年代中期以前,各个学校的各种类型的考试基本上都是靠手工进行,大体上要经历出卷、印刷、测试、阅卷、统计分数等过程。后来随着电脑的普及以及计算机软硬件的发展,市场上出现了一些随机出题软件并被一些学校采用,但仍然需要大量的人工参与考试过程之中。考试是一项极其繁琐的工作,通

6、过人手工计算容易出错,很多老师一谈到考试就头皮发麻。数据库技术是一门历史弥坚的学科,不像其它的计算机技术会随着时间的推移而变得越来越没有声息。考虑其原因,则是因为信息的爆炸对数据库技术的要求只增不减。在互联网日益发展、壮大的背景下,在因特网普及浪潮持续高涨的情况下,如何让原来在单机中使用的数据库可供多机使用,也成了必然的趋势。近几年,随着计算机技术的发展和互联网时代的到来和飞速发展,我们已经进入了信息时代,也有人称为数字化时代,在这数字化的时代里,学校传统的管理方法和办学水平都受到了极大的挑战。Internet技术持续迅猛的发展,也给传统的办学提出了新的模式。绝大部分大学和学院都已接入互联网并

7、建成校园网,各校的硬件设施已经比较完善。通过设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理、信息的发布与管理,从而方便管理者、老师和学生间信息发布、信息交流和信息共享。以现代计算技术、网络技术为基础的数字化教学主要是朝着信息化、网络化、现代化的目标迈进。与网络技术相结合的新型办学模式具有对于教育、教学过程来说极为宝贵的特性,可以为新型办学模式的建构提供理想的环境。现今,不管是国内还是国外的各大厂家,都在不断的推出一系列的考试、认证。如微软的MCSE、Cisco的CCNA等。我们国家的自考或是成考,以及各省市的各种考试,现在都在朝着信息化的道路前进在走。我们相信在今后这一系

8、列的考试将会走向网络化考试的。这样才是符合信息发展的。所以我们考虑这是一个机会。我们要给不同的考试一个好的解决方案。 这个方案呢在技术上来讲我们是考虑 B/S模试。 在Windows平台上,使用IE浏览器,完成抽题、考试、交卷等考试任务。还可以通过多媒体手段来完成监考。各考点模块通过网络获取题库,考点模块按照题库中的抽题策略,自动给每个考生生成一份试卷,考生在线作答,考试结果数据通过网络回收,系统自动进行判分,生成考试成绩和统计数据。“网络考试系统”是集合现代考试理论、方法和现代信息技术手段的智能化网上考试系统,为学生个性化学习提供“灵活、方便、科学、公平”的“个别化考试服务”,是终结性评价系

9、统。学生可以随时、随地的进行课程结业考试。在此开发的无纸化网络考试系统,旨在探索一种以互联网为基础的考试模式。通过这种新的模式,为大学计算机系的考试创造一种新的考试环境,使考务管理突破时空限制,提高考试工作效率和标准化水平,使学校管理者、教师和学生可以在任何时候、任何地点通过网络进行考试。基于这些优点,在本次毕业设计之院,我作为一名计算机专业的毕业生,着手开发了计算机系“无纸化网络考试系统”。1.2 项目开发的目的现阶段,学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考

10、试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证!客观!更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。为了适应新形势的发展,在这次毕业设计之时,我选择了这一网上考试系统,使其尽快在各类考试中发挥高效、便捷的作用,把老师从繁重

11、的工作中解脱出来!1.3 项目开发的目标建立计算机系无纸化网络考试系统,进一步提高办学效益和现代化水平。帮助主管考试的人员提高工作效率,实现考试信息管理以及考试流程的系统化、规范化和自动化。通过使用本系统可以访问INTERNET轻松设置审批考试,不论主管考试的管理人员身在何方,考试结束后也不要传统的繁琐的阅卷过程,实现无纸化考试。1.4 项目提出的意义“无纸化网络考试系统”不仅适用于计算机系的进行考试,也可以用作其它专业或院系进行考试,在具体的考试过程中用网络实现考务人员、领导和学生进行考试工作的计算机化,同时也可作平时练习测试之用,基本上摆脱以前的人工操作模式。1.5论文的结构本文共有六章,

12、具体组织结构如下第一章通过分析,提出了开发C+程序设计系统的目的与意义,以及新系统应该具有的功能。第二章主要介绍了开发系统所采用的相关技术,包括VB,SQL SERVER等。第三章对系统进行了分析,在此基础上进行了系统的概要设计以及数据库的概要设计。第四章阐述了系统的详细设计。第五章介绍了系统的实现和系统的部分测试内容。第六章对全文进行了总结,以及系统需要改进的方面。2 技术背景2.1 B/S模式及其优势伴随着Internet的迅速发展,计算机技术正在由基于C/S(client)模式的应用系统转变为基于B/S(Browser/Server)模式的应用系统。过去,网络软件的开发都采用C/S(cl

13、ient)模式,在这种模式下,主要的业务逻辑都集中于客户端程序,因此,必然导致以下问题:系统安装、调试、维护和升级困难。由于客户端的硬件配置可能存在差异,软件环境也可能各不相同,因此,在安装时,必须对每一个客户端分别进行配置,同样,在软件升级时也要对客户端分别处理。在整个系统中,业务逻辑和用户界面都集中到了客户端,必然会增加安全隐患。正是由于以上C/S模式的客户端程序在部署和维护时面临的问题,人们逐渐接受了基于浏览器(Brower)/服务器(Server)结构的系统,即B/S模式。在此模式中,最核心的一点就是用通用的浏览器取代了原来的客户端程序。B/S模式虽然只对C/S模式做了少许变动,但带来

14、了巨大的好处:应用程序在部署、升级、维护时,只需要在服务器端进行配置就可以了。所有的配置工作都集中在服务器端,提高了系统的安全性。虽然B/S模式带来了很大的好处,但由于在客户端能够利用的编程对象仅仅是浏览器,因此,原来在C/S模式下很容易实现的一些客户端功能,在B/S模式下,却变得很难实现甚至无法实现。尽管如此,B/S模式仍是目前很多应用系统的首选模式。B/S模式有以下优点:(1)开发成本及维护成本降低。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(B

15、rowser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。(2)良好的安全性能,防火墙技术可以保证后台数据库的安全性。所有客户端请求都是通过DBMS来访问数据库,从而大大减少了数据直接暴露的风险。因此系统的架构就采用了B/S设计模式。2.2 ASP简介ASP程序可以说是CGI程序的改进版,它跟随CGI程序一样是在WEB服务器端执行,但有以下优点1:CGI接口对象化:当我们在CGI程序中收集网页数据时,最麻烦的事情是解析浏览器上传来的数据,若使用ASP来收集网页数据,则ASP会代为解析,并且转换成对象供SCRIPT语言读取。可以使用ACTIVE X对象:除了ASP本身的提供的对象

16、外,凡是WINDOWS环境下的ACTIVE X对象也都是ASP网页制作中可以引用的系统资源。而由于ASP 程序可以使用WINDOWS环境的ACTIVE X 对象,因此也就能够引用 ADO ACTIVE X DATA DBJECT,存取WEB数据库的一个十分重要的对象,进而存取WEB 数据库。本系统采用的WEB数据库访问方法如下图所示2; 浏览器WEB服务器(IIS/PWS)使用了ADO对象的.asp文件 ODBC 驱动程序 数据库图2-1 WEB数据库访问方法本系统中用到的ASP对象表如下3:表2-1ASP对象表对象名称主要用途服务器可提供服务器的相关信息Application可用来记录不同网

17、页的共用消息Session可用来记录连接者的消息,而每一个连接者的消息,将由独立的Session对象来记录Request可用来读取浏览器的消息Response可用来传输资料到浏览器ObjectContext提供交易(Transaction)的功能2.3 SQL server 2000Microsoft SQL Server2000是由 Microsoft公司开发的,简称SQL Server,由一系列相互协作的组件构成,能满足最大的Web站点和企业数据处理系统存储和分析数据的需求4。Microsoft SQL Server 2000 的特性包括: (1)Internet 集成 SQL Serve

18、r 2000 数据库引擎提供完整的 XML 支持。它还具有构成最大的 Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,并且 SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在 Web 应用程序中包含了用户友好的查询和强大的搜索功能。(2)可伸缩性和可用性同一个数据库引擎可以在不同的平台上使用,从运行 Microsoft Windows 98 的便携式电脑,到运行 Microsoft Windows 2000 数据中心

19、版的大型多处理器服务器。SQL Server 2000 企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大 Web 站点所需的性能级别。 (3)企业级数据库功能SQL Server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复本,同时确保单独的数据复本保

20、持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。 (4)易于安装、部署和使用SQL Server 2000 中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用 SQL Server 的过程。SQL Server 2000 还支持基于标准的、与 Windows DNA 集成的程序设计模型,使 SQL Server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付 SQL Server 应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。 (5)数据仓库SQL Serve

21、r 2000 中包括析取和分析汇总数据以进行联机分析处理 (OLAP) 的工具。SQL Server 中还包括一些工具,可用来直观地设计数据库并通过 English Query 来分析数据。2.4 HTML语言简介5HTML(Hyper Text Markup Language)的中文名称为“超文本置标语言”,是一种专门用来设计网页的计算机语言,用HTML编写的超文本文档成为HTML文档,他能独立于各种操作系统平台(如UNIX或WINDOWS等).HTML对网页上的文字、图片等多媒体数据所出现的位置、形式、顺序及关系都使用标记(Tag)语法做定义,以及对网页间加注超链接关系,一般HTML的网页

22、文件都是以.htm或.htm为扩展名,浏览器会按照Tag语法做解释并加以处理.htm文件的内容,按照其指定方式将文字、图片等多媒体数据显示或播放出来。即使用HTML语言描述的文件,需要通过WWW浏览器显示出效果。3 系统分析3.1 系统需求分析传统的学校教学中,进行一场考试,要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这是一个繁杂的过程,需要大量人力、物力与时间的投入,已经越来越不适应学校信息化建设与现代教学的需要。尤其在远程网络教学中,学生分布广,不易统一集中安排考试,给校方和学生带来了众多的不便。而网络考试系统,正是信息化建设的产物,它是传统考场的延伸。

23、它可以利用互联网络和局域网,随时随地的对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程。因此网络考试是电子化教学的不可缺少的辅助手段。网络技术发展到今天,以前许多需要以其它方式 通过许多复杂的步骤来完成的事情都可以通过网络,利用计算机的处理来完成。“考试”就是其中的一种,而且是很典型的一种。利用计算机网络进行考试,可以大量采用标准化试题,使用计算机判卷;也可以利用计算机从试题库中随机抽取试题进行测试,避免了考试前的压题与考试中的作弊;还可以直接把程序送到数据库中,进行统计、排序等操作。所以,以前需要花费大量人力物力去做的出题、判卷、排名次和录取工作,现在可以轻松地进行自动处理。采

24、用网上考试或利用计算机进行考试将是以后考试发展的趋势。本系统客观题部分总体上可分为超级用户模块、普通用户模块和注册登录模块三大模块。其中超级用户模块中又包含两级子模块,第一级子模块中包含学生成绩管理、输入填空题、输入选择题和退出五大部分,其中学生成绩管理子模块中又包含修改学生信息、查询成绩、添加学生、删除成绩、删除学生这五个模块。在普通用户模块中,结构比较简单,只包含选择考试科目、参加考试、退出这三个字功能块。3.2系统概要设计本系统客观题部分总体上可分为超级用户模块、普通用户模块和注册登录模块三大模块。其中超级用户模块中又包含两级子模块,第一级子模块中包含学生成绩管理、输入填空题、输入选择题

25、和退出五大部分,其中学生成绩管理子模块中又包含修改学生信息、查询成绩、添加学生、删除成绩、删除学生这五个模块。在普通用户模块中,结构比较简单,只包含选择考试科目、参加考试、退出这三个字功能块11。本设计介绍的内容将包括随机的从数据库中抽取一些试题(包括选择题和填空题)组合成为一张试卷,对注册进来的学生进行考试;允许学生查询浏览自己的成绩;程序中还包括允许“超级用户”向试卷中添加试题和修改、添加或删除数据库中的学生信息、学生成绩的功能。当学生交卷以后,程序可以自动判卷,并把得出的分数存入数据库。3.3 数据库概要设计3.3.1数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这

26、就要求数据库结构能充分满足各种信息的输入和输出。收集基本的数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础6。针对C+程序设计考试系统的需求,设计如下所示的数据项和数据结构:学生信息:学生姓名、学生学号、班级教师信息:教师姓名、教师证号考生成绩表:学生学号、科目、成绩、教师证号、学生姓名考生试卷答案表:考生回答的问题、学生学号、问题编号试卷属性表:考试科目、教师证号、考试时间、考试号问题表:问题号、回答A、回答B、回答C、回答D、正确答案、科目、教师证号3.3.2数据库概念结构设计得到上面的数据结构以后,就可以设计出能够满足用户需求的各种实体,就可以设计出能够

27、满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑设计打下基础。这些实体包含各种具体信息,通过相互之间的形成数据的流动。(1) 分ER图:学生姓名学号班级图31学生实体E-R图老师教师姓名教师证号图3-2老师实体E-R图考试成绩学生姓名教师证号成绩科目学号图3-3考试成绩实体E-R图考生试卷答案问题编号学号学生回答的问题图3-4 考生试卷答案实体E-R图试卷属性试卷科目考试时间教师证号考试号图3-5 试卷属性实体E-R图问题号问题号回答A回答B回答C回答D正确答案科目教师证号 图36问题库属性实体E-R图(2) 总体E-R图学生查询考试成绩参加考试老师管理图3-8 总体E-R图4 系统详

28、细设计4.1 系统总体结构设计这个阶段的主要目标是将系统分析阶段所提出的反映了用户信息要求的系统逻辑方案转换成可以实施的基于计算机的物理方案7。系统设计阶段的主要活动包括:(1) 系统总体结构设计。其中包括:1)系统总体布局方案的确定。2)软件系统总体结构的设计。3)计算机硬件方案的选择和设计。4)数据存储的总体设计。5)功能结构图设计。6)信息系统流程图设计。(2) 详细设计。1)数据库设计。2)代码设计。3)输出设计。4)输入设计。5)处理过程设计。(3) 系统实施进度与计划的确定。(4) “系统设计说明书”的编写。本文择其重要环节进行阐述。4.1.1系统的总体布局方案 系统的总体布局是指

29、系统的硬软件资源以及数据资源在空间上的分布特征。结合我们计算机学院实际情况(我院使用环境具有典型性,代表了大多数计算机系的使用情况),采用以下总体布局方案:本系统的功能较多,并且规模较大,采用联机系统。从信息资源管理的集中程度来看,采用分布式b/s系统。从信息处理的方式来看,采用批处理系统。4.1.2软件系统总体结构设计软件系统总体结构设计的主要任务就是将整个系统合理的划分成各个功能模块,正确处理模块之间与模块内部的联系及它们之间的调用关系和数据联系,定义各模块的内部结构等,本系统的软件总体结构按分解协调的原则,信息隐蔽抽象的原则,自顶向下的原则,一致性原则,面向用户的原则进行设计。本设计要实

30、现的主要功能有:当有用户访问时,出现一个登陆注册主页,系统根据用户输入的信息来判断用户身份。如果是超级用户,就进入学生管理主页,超级用户在次可以进行一系列的管理工作;如果是普通学生,就进入历次考试成绩浏览主页,在此用户可以看到自己以前的考试成绩。如果用户想进行考试,就点击“考试”按钮,系统就会自动生成一套试卷,当用户提交试卷或者考试时间结束时,系统会自动返回到成绩浏览主页,与此同时,系统会自动判卷、打分,并把分数存到相应的记录中去。用户在成绩浏览主页中就可以看到自己本次考试的成绩。如果用户要退出系统,只需点击“退出”按钮。4.1.3硬件设备及操作系统服务器:Dell PwoerEdge 160

31、0sc 服务器,英特尔至强处理器2.4GHz,512M内存,36G SCSI硬盘,Intel pro/100MT Gigabit网卡(NIC)。要装有数据库软件sql server2000并配置好IIS。操作系统:Windows 2000server profession。客户端:机型:奔腾四代1.6G以上,硬盘:40G以上(至少需要250M自由空间,以运行操作系统和本系统) 软驱:3.5/1.44MB,内存:256M以上Windows98以上操作系统,安装Web浏览器。网络:服务器和客户端应有网络连通。配置TCP/IP协议。4.1.4 系统开发平台电脑配置:奔腾四代2.6C,硬盘:SATA

32、120G, 软驱:3.5/1.44MB,内存:DDR 2256M操作系统:Microsoft Windows XP SP1中文版数据库:Sql server20004.1.5系统总体功能结构设计通过对系统的数据流图进行分析,进一步进行功能分解,直到分解成含义明确,功能单一的功能模块,从而得到系统的功能模块结构图。如图41所示。注册主页 普 通 用 户 管 理 主 页是否超级用户?学生成绩管理输入填空题输入选择题输入判断题退出历次考试成绩浏览参 加考试退出修改学生信息查询成绩添加学生删除成绩删除学生图4-1系统功能模块图4.2 系统详细设计4.2.1数据库设计数据库(Database),是按照数

33、据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段,使用户易于编写有关数据库应用程序。特别是近年来推出的计算机关系数据库管理系统,操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强12。数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用

34、先进的数据库技术来保持系统数据的安全性、完整性和共享性。对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求8。一个真正的、完整的站点是离不开数据库的,因为少量的数据,如网页访问人数等完全可以存储在文本文件中,但实际应用中,需要保存的数据远不止这一点点,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便的查询和更新。可以说一个动态网站的建设是离不开一个设计最优的数据库的。我们现在可以使用的数据库有很多种,如:Fox数据库(.dbf)、Access数据库(.mdb)、DB2、Informix、Oracle和SQL Serve

35、r等等,在本次设计中,选择了SQL Server作为后台数据库工具,因为它功能远比其它数据库强大,并提供了许多标准的关系数据库管理功能的支持。设计原则如下:(1)进行规范化设计,尽可能地减少数据冗余和重复合理的数据库表的设计应该是在满足需求的前提下,使数据的重复量最小,就尽量按照关系数据库系统理论方法去设计一个数据库,减少数据的冗余。(2)结构设计与操作设计相结合在设计数据库结构时,有时为了编程实现的简捷和思路的清晰,往往故意增加一些冗余数据。这虽然有悖于传统的关系数据库理论,但是考虑到选择的机器型号和档次等因素,如果增加的冗余不会明显增加存储空间和降低处理效率,并且对编程实现有很大帮助,往往

36、可以采用这种方法。(3)数据结构具有相对的稳定性数据结构的相对稳定性,可以作为新、旧系统转换的依据。无论采用何种方法或手段去处理日常事务,都应该能完成相应的功能,决不会因为采用了计算机而丢失了必要的功能,或彻底改变了原有的工作流程和模式。计算机系统的建成是建立在原系统充分调研的基础上的,它既不能脱离原系统的大框架,也不是简单的重复和替代。所以数据库表结构设计应保证数据的相对稳定,这样才能考虑在新的数据结构下的业务处理方式。基于以上三条设计原则,本系统中关于数据库表结构设计如下:在服务器上用SQL Sever2000建立名为exam的数据库。其中包括以下表下面将具体介绍数据库中各个表的结构。表4

37、1 学生信息表(studentinfo)名称字段名称数据类型学生姓名Stname(50)nvarchar学生学号Stid(50)nvarchar班级班级(50)nvarchar表42 教师信息表(teacherinfo)名称字段名称数据类型教师姓名Teachname(50)nvarchar教师证号Teachid(50)nvarchar表43考生成绩表(score)名称字段名称数据类型学生学号Stid(50)nvarchar科目Sub(50)nvarchar成绩Score(4)real教师证号Teachid(50)nvarchar学生姓名Stname(8)Varchar表44 考生试卷答案表(t

38、banswer)名称字段名称数据类型考生回答的答案Answer(50)Nvarchar学生学号Stid(50)Nvarchar问题编号Questioned(4)int表45试卷属性表(subinfo)名称字段名称数据类型考试科目sub(50)nvarchar教师证号Teachid(50)nvarchar考试时间Testtime(4)Int考试号Testnum(4)int表46 问题表(question)名称字段名称数据类型问题号Questioned(4)int问题Question(16)Ntext回答AA(1000Nvarchar回答BB(100)Nvarchar回答CC(100)Nvarch

39、ar回答DD(100)Nvarchar正确答案Answer(50)Nvarchar科目Sub(50)nvarchar教师证号Teachid(50)nvarchar4.2.2 数据库的完整性和安全性数据库的完整性数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。本系统中定义了表与表之间的联系有助于实现完整性规则,一般在程序中实现具体的完整性控制。数据库的安全性数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的

40、数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。本系统包括数据库的安全和服务器的安全。采用管理员表示和鉴定的方法实现数据库的安全,此安全管理措施并不在前台开发工具中实现,而是在后台数据库中实现。在登录数据库时,系统让管理员户表示自己的身份,不同的管理员权限不同,系统进行核实,鉴别此管理员是否为合法用户,若是,系统进一步核实用户,通常要求用户输入口令,系统和对用户口令以鉴别用户身份。服务器的安全也是通过用户在登录服务器时输入合法的用户名和密码来实现的。这是一种简单可行的方法,实现起来比较方便。没有采用更加复杂的系统

41、安全管理措施是因为本管理系统一般是应用在校园网中,采用安全管理措施主要是为了防止没有修改权限的用户无意间修改了数据,因此采用用户标识和鉴定的安全管理措施就能够保障数据库的安全性。4.2.3创作数据库在编写一个有关网络数据库的应用程序之前,必须首先创建应用程序用到的数据库。“建库”的阶段是制作实例的一个很关键的步骤。在本设计中采用的是 SQL SERVER 数据库,库文件名是exam 。建库分以下几个步骤11:步骤一,创建试题库数据表。要进行考试,必须有试题。在计算机考试中,试题是存储在数据库中的。为了能够进行计算机判卷,试题必须是标准化的,比如填空题、选择题。填空题的数据表中,包含题目的内容、

42、题目有几个空需要填、每个空的答案。这也是作为一个题库所必须有的内容。当然,也还可以包括这个题目的分数,甚至每个空的分数等更为具体的信息。由于每一道填空题的“空”的数量不一定相等,所以不好指定填空题的答案。本设计采用的方法是,利用字符来分隔不同的空。比如一道填空题有三个空,答案分别是“主同步”、“次同步”和“主活动令牌”,当然,在利用程序判卷的时候,要跟据这个约定,把字段中的答案部分抽出来。步骤二,创建学生档案的数据表studentinfo。这张表用来存储学生的学号、姓名、班级等数据和信息的。这张表的字段类型和说明如图4-2所示:图4-2学生表要注意的是,这张表的主关键字是 stid字段,也就是

43、学生的学号。所以任何两个学生的学号是不能相同的,否则存入数据库的时候就会出错。步骤三,创建学生的成绩档案数据表 chengji 。它用来存储每一个学生历次考试的成绩数据。由于一个学生很可能不只一个成绩,所以这里还要保存这个学生的每次考试时间。它字段类型和说明如图4-3所示。最后要说明的是,这些数据表中除了 xuesheng 表没有”自动编号“的主索引字段外,其它表都使用了一个”自动编号“类型的字段做主索引。这是为了在程序中可以方便地唯一来区分每一条记录。由于学生的学号不能重复,所以 xuesheng 表用学生的学号作为主索引的。一般来说,一个数据库中的数据表最好都有一个主索引字段,这样可以方便

44、地来区分每一条记录。图4-3学生成绩档案数据表4.2.4制作网页在创建完数据库后,就要开始制作本系统中的每一幅主页文件了。本系统一共包括18个 .asp 文件。作为一个完整的应用程序,除了要实现基本的功能外,一些辅助的功能也是必要的。比如,本系统除了可以进行考试外,还包括允许“超级用户”向题库中输入试题的功能、管理学生和成绩的功能等。步骤一、制做学生登录和教师登录的主页studentlogin.asp和teacherlogin.asp步骤二、制作学生选择考试科目的主页stselectsub.asp。步骤三、制作学生考试主页screatefrm1.asp,它包含左右两个帧。左边是显示考试时间等信

45、息的帧smessage.asp和右边的用于显示考试试题及给学生输入答案的帧页面stestmain.asp,步骤四、制作教师管理主页tcreatefrm2.asp,其也包含左右2个帧页面。左面是用于选择管理功能的帧tleft.asp右边的帧工具用户在左边的帧中所做的选择来显示不同的页面。步骤五、制作查看学生成绩的主页tselcourse.asp步骤六、制作编辑学生信息主页taddstudent.asp步骤七、制作新开/更改考试课程主页taddsub.asp步骤八、制作添加和修改试题内容主页tselectsub.asp4.2.5系统部分注释及详解1 如何控制考试时间众所周知一张考卷不可能无限地答下

46、五。每次考试都有一个考试时间期限,本系统的考试时间限制在5分钟。限制考试时间是通过主页中插入的ActiveX控件Time Object 和客户端的VBScript程序代码来实现的,当时间每过30秒,考试信息页面就刷新一次,知道考试时间截止时间,窗体元素被提交时为止。在本系统中这种功能是由smessage.asp程序实现的。其中语句指定了网页使用的是自动刷新方法,content指定了自动刷新的时间,单位是秒。2 数据库中添加或删除记录9向数据表中添加或删除记录就是利用recordset对象的ADDNEW方法。下面详细介绍他的使用方法。程序文件stestmain.aso中的一段代码如下:首先创建一

47、个recordset对象mrs,利用recordset对象来连接数据库。其连接步骤为:利用set mrs=server.createobject(“adodb.recordset”)语句创建recordset对象,其中mrs为新创建的对象名,可以自己设定。用mrs.activeconnection=”dsn=testsys”语句为recordset对象设置活动连接,此处设置连接到系统的名为testsys的DSN,在实际运用时也可以将其设置为connection对象名。用mrs.source=”select *from tbanswer”语句设置recordset对象的数据源,也可以在此用其他的

48、SQL语句。用mrs.open,1,3语句打开与数据库的连接。recordset对象的open方法的格式为:recordset.open source,activeconnection,cursortype,locktype,options如本系统中了解数据库的完整语句应该是:mrs.open”select *from tbanswer”,”dsn=testsys”,1,3然后用recordset对象的addnew方法添加一条新的空记录并存入数据库,再给新插入的记录更新各个字段的值,最后用update方法保存对当前记录所做的修改。其格式为:recordset 对象.addnewrecordse

49、t 对象(“字段名1”)=值recordset 对象(”字段名2”)=值recordset 对象.update与recordset对象相关的操作有:addnew 向记录集中添加一条新记录。cancelbatch(当记录集处在批量更新模式时)取消对一批记录集所做的更新。Cancelupdate(在调用Update之前)取消对当前记录所做的所有修改。delete 从记录集中删除一条记录。update保存对当前记录所做的修改。Updatebatch(当前集处于批量更新模式时)保存对一个或多个记录所做的修改。5 系统的实现与测试5.1 系统测试的目的在任何软件系统的开发过程中,尤其是在进行大型软件系统

50、的开发中,任何一个编程人员都不可避免地会产生错误。为了尽可能地发现并改正系统设计中的错误,减少错误造成的损失,保证系统开发的质量,需要进行系统的测试。5.2 系统测试的目标与方法软件测试是软件开发过程的重要组成部分,是保证项目实施进度和实施质量的重要手段,是系统开发后期的一个重要过程。测试的目标是发现错误,测试的方法是执行程序。我采用黑盒测试方法对学生作业管理系统进行测试,黑河测试也称为功能测试,它将被测系统看作一个封闭的黑盒子,测试者在测试的过程中不能使用与被测系统内部结构相关的知识或经验。黑盒测试通常更适合于对系统的功能和表现进行测试10。黑盒测试是基于用户的角度进行测试,这里以界面,教师

51、模块和学生模块的相关主要功能加以介绍。5.3系统测试在本系统中的调试过程中,采用的是自底向上的测试方案。从与数据库联系紧密的模块开始测试。在个模块测试通过后再将这个模块连接起来总体测试。最后在网络环境下进行多机联网测试。在网络中设置一台服务器,安装IIS WS,将所有系统文件复制到IIS的主页面的TEST子目录下(需自己创建)并在IIS中设置该目录的虚拟目录名为TEST。设置该服务器的ODBC数据库,设置系统数据源为连接SQL SERVER数据库的TEST数据库,系统DSN为testsys。启动IIS或PWS服务11。在该局域网中的其他计算机上,打开IE浏览器,在地址栏输入URL如下:服务器的

52、IP地址/test/studentlogon.asp进入学生登录界面。以下都将服务器的IP地址以210.35.68.58代替。学生登录。学生登录程序文件slogon.asp如下12:学生登录考试系统学生登录考试系统Font color=crimson face=隶书 size=6网络考试学生姓名学号由学生输入姓名和学号后,若正确无误则允许其进入考场,其系统显示如下5-2所示。若有误,则显示“学生姓名与学号输入错误!“的提示信息。图5-1进入考场界面学生选择相应的考试科目后,单击确定进入考场。系统显示画面如下:图5-2填空题界面程序文件stselectsub.asp如下:%if Request.

53、Form(selsub) then如果选择了考科目,则进入考试界面marray=split(Request.Form(selsub),)保存考试科目的教师编号session(teachid)=trim(marray(0)保存考试科目名称session(subname)=trim(marray(1)保存考题数量session(testnum)=trim(marray(2)保存考试时间session(testtime)=trim(marray(3)保存开始时间session(starttime)=now()进入考试界面Response.Redirect screatefrm1.aspend if%

54、你已经进入网络考场,必须遵守考场规则,注意考试时间 选择考试科目 科目 任课老师考试时间%创建两个数据库连接对象conn和conn2set conn=server.CreateObject(adodb.connection)set conn2=server.CreateObject(adodb.connection)conn2.ConnectionString=dsn=testsys;uid=sa;pwd=conn.ConnectionString=dsn=testsys;uid=sa;pwd=conn.Open conn2.Open strsql=select subinfo.sub,subinfo.teachid,subin

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!