学生网上自测互联网系统毕业论文.doc_第1页
学生网上自测互联网系统毕业论文.doc_第2页
学生网上自测互联网系统毕业论文.doc_第3页
学生网上自测互联网系统毕业论文.doc_第4页
学生网上自测互联网系统毕业论文.doc_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

学生网上自测互联网系统毕业论文目 录摘 要.IAbstract.II第1章 绪论11.1 课题的研究意义.11.2 相近研究课题的特点及优缺点分析1第2章 系统技术理论简介32.1 ASP技术介绍32.2 VBScript介绍.72.3 IIS 5.1 简介.82.3.1 IIS 5.1服务器特征.92.3.2 IIS 5.1的安装配置.92.4 课题要达到的设计目标10第3章 系统的需求分析.123.1可行性分析123.2 开发环境133.3 研究设计中要解决的问题13第4章 系统总体设计.154.1 网上考试系统设计实现的策略154.2 网上考试系统流程16第5章 系统详细设计.175.1 数据库设计175.2 数据库结构图175.2.1 数据库E-R图.175.2.2 数据库结构表.18第6章 程序模块实现.226.1 分模块详述系统各部分的实现方法226.2 系统的部分代码实现296.3 系统需要完善的地方30第7章 系统测试.317.1 测试目的317.2 测试过程317.3 测试结果33结论.34致谢.35参考文献.36附录A.37附录B.40第1章 绪论1.1 课题的研究意义计算机技术与网络技术飞速发展,传统的教育模式和考试模式受到了严重的挑战。很多国家和地区的大学和社会都开设了远程教育,通过计算机网络实现异地教育和培训。计算机硬件技术的发展已经达到了相当高的水平,但是远程教育软件的开发目前还处于起步阶段,于是就要求有更好、更完善的软件系统应用到远程教育当中去。远程教育包括很多环节,如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是网上考试系统,同时它也是最难实现的环节。以往组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。可以说传统的考试方式已经不能适应现代考试的需要。在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的网上考试系统可以使用户在网上学习过后及时检验自己的学习效果,发现自己的不足,使得学习效率得到很大提高。网上考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。1.2 相近研究课题的特点及优缺点分析网上考试系统的特点是实现了网上的无纸化考试,减轻了教师的工作量,自动判卷,网上查分,网上试题查询等功能。有些网上考试系统只面向一种学科,使用的范围比较狭窄。还有的网上考试系统功能比较单一,只能进行选择题的考试,或者只能实现判断题的考试。也有的网上考试系统只能实现网上考试,而不能对学生考试后的试卷进行保存,以待学生以后查询。总之,现在的网上考试系统产品很多,质量有好有坏,参差不齐。本考试系统是一套功能强大、操作简便而又实用的模拟考试管理软件,它可以被广泛用于各种类型的考试中。考试管理部分包括系统的用户信息管理、科目信息管理以及试题信息管理。学生考试部分实现提供考试试卷、控制考试时间和进行考试的分数统计等功能。第2章 系统技术理论简介2.1 ASP技术介绍 ASP (Active Server Pages)其实是一套微软开发的服务器端脚本环境,是创建动态网页的一个很好的工具,它起到一种编程语言的作用,可以利用它编写产生HTML的程序代码。只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML (Hyper Text Markup Language)代码,然后将它传递到用户浏览器并显示出网页。ASP含于IIS3.0和4.0之中,可以通过结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的Web服务器应用程序。有了ASP就不必担心客户的浏览器是否能运行所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。 ASP所独具的一些特点:(1)使用VBScript 、JavaScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。(2)无须编译,容易编写,可在服务器端直接执行。(3)使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。(4)与浏览器无关,用户端只要使用可执行HTML码的浏览器,即可浏览ASP所设计的网页内容。ASP所使用的脚本语言(VBScript 、JavaScript)均在Web服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。(5)ASP能与任何ActiveX Scripting语言相容。除了可使用VBScript或JavaScript语言来设计外,还通过Plug-in的方式,使用由第三方所提供的其他脚本语言,譬如REXX(Restructured Extended Executor Language)、PERL(Practical Extraction and Report Language)等。脚本引擎是处理脚本程序的COM(Component Object Model)物件。(6)ASP的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。(7)可使用服务器端的脚本来产生客户端的脚本。(8)物件导向(Object-oriented)。(9)ActiveX Server Components(ActiveX服务器元件)具有无限可扩充性。可以使用Visual Basic 、Java 、Visual C+等编程语言来编写你所需要的ActiveX Server Component。(10)另外,ASP技术的处理速度相当快,并且其安全性也很高。ASP最重要的优点是能够建立对诸如时间、地点、用户标志、以前的选择和活动等因素敏感的页面。换句话说,可针对每个用户的个别需求,用ASP定制网页。总之,ASP包含三方面含义:(1)Active:ASP使用了微软的ActiveX技术。ActiveX(COM)技术是现在Microsoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要在服务器上安装这些组件,通过访问组件,就可以快速、简易地建立自己的Web应用。(2)Server:ASP运行在服务器端。这样就不必担心浏览器是否支持ASP所使用的编程语言。ASP的编程语言可以是VBScript和JavaScript。VBScript是VB(Visual Basic)的一个简集,会VB的人可以很方便的快速上手。然而Netscape浏览器不支持客户端的VBScript,所以最好不要在客户端使用VBScript。而在服务器端,则无需考虑浏览器的支持问题。Netscape浏览器也可以正常显示ASP页面。(3)Pages:ASP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是ASP生成的HTML代码,而不是ASP程序代码。这样就可以防止别人抄袭程序。由此可以看出,ASP是在IIS下开发Web应用的一种简单、方便的编程工具。在了解了VBScript的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。 与一般的程序不同,ASP程序无须编译。ASP程序的控制部份,是使用VBScript、JavaScript等脚本语言来设计的,当执行ASP程序时,脚本程序将一整套命令发送给脚本解释器(即脚本引擎),由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同其他编程语言一样,ASP程序的编写也遵循一定的规则,如果想使用喜爱的脚本语言编写ASP程序,那么服务器上必须要有能解释这种脚本语言的脚本解释器。当安装ASP时,系统提供了两种脚本语言:VBScript和JavaScript,而VBScript则被作为系统默认的脚本语言。ASP程序其实是以扩展名为.asp的纯文本形式存在于Web服务器上的,可以用任何文本编辑器打开它,ASP程序中可以包含纯文本、HTML标记以及脚本命令。只需将.asp程序放在Web服务器的虚拟目录下(该目录必须要有可执行权限),就可以通过WWW的方式访问ASP程序了。要学好ASP程序的设计,必须掌握脚本的编写,那么究竟什么是脚本呢?其实脚本是由一系列的脚本命令所组成的,如同一般的程序,脚本可以将一个值赋给一个变量,可以命令Web服务器发送一个值到客户浏览器,还可以将一系列命令定义成一个过程。要编写脚本,必须要熟悉至少一门脚本语言,如VBScript。脚本语言是一种介于HTML和诸如Java、VB、C+等编程语言之间的一种特殊的语言,尽管它更接近后者,但它却不具有编程语言复杂、严谨的语法和规则。如前所述ASP所提供的脚本运行环境可支持多种脚本语言,譬如:JavaScript、REXX、PERL等等,这无疑给ASP程序设计者提供了广泛的发挥余地。ASP的出现使得广大Web设计者不必在为客户浏览器是否支持而担心,实际上就算在同一个.asp文件中使用不同的脚本语言,都无须为此担忧,因为所有的一切都将在服务器端进行,客户浏览器得到的只是一个程序执行的结果,只需在文件中声明使用不同的脚本语言即可1。ASP的对象和组件:(1)ASP有7个固有对象这7个固有对象分别是Request、Response、Server、Application、Session、ASP Error和Object Context。Request对象用来处理用户做出的请求,就是处理用户要求浏览器查看特定的网页或Web应用时做出的请求。此请求可以HTML的形式输入或仅以URL(Uniform Resource Location)的形式做出。Response对象用来处理从Web服务器向用户发送信息并对此信息进行控制。Server对象用来代表服务器自身。因此它提供几个与Web服务器可能要完成的任务相关的常用功能,诸如建立新对象和设置脚本的超时特性等。还有通过将不合法字符转化为合法字符,把字符串转换为URL和HTML正确的使用格式的方法。Application对象用来代表应用,可用它来管理诸如应用目录这一类的东西。Session对象用来代表用户会话,并存储该会话的信息。可利用Session对象来管理如Web服务器在用户“请求”之间等待的时间等。Object Context对象用来管理事务处理。它目前已经集成到Windows2000操作系统中了。它包含了所有ASP其他对象,可通过Object Context引用ASP的每个对象。ASP Error对象包含ASP脚本或asp.dll本身产生的任何错误的详细内容。(2)Microsoft Data Access ComponentsMDAC (Microsoft Data Access Components)作为操作系统的组成部分的组件,与ASP一起提供。此组件中包含一组称为ADO(ActiveX Data Object)的对象,他们对于查看不同平台上的各种数据(数据库、表单、文本文件)是必不可少的。ADO主要有3个对象,分别是Connection、Command和Record Set。Connection对象就是使ADO与数据库之间建立一个通道,也就是实现与数据库的连接。Command对象就是对数据库进行发号施令,比如建立新的索引,执行查询等,它可以通过标准的SQL (Structured Query Language)数据库操作语言得以实现。Record Set对象是一个数据记录集,它包含检索出来的记录数据,通过它可以直接对数据库进行修改。(3)活动服务器组件活动服务器组件是与ASP一起免费带来的组件或DLL(Dynamic Link library),他们有着广泛的用途。主要包括AD Rotator、Browser Capabilities、Content Link、Content Rotator、Counters、Logging Utility、My Info、Page Counter、Permission Checker、Tools等组件。由于本次设计用到的不多,在此就不详细介绍了(4)ASP脚本对象它们分别是Dictionary、File System Object和Text Stream由于本设计用到的也不多,在此就不详细介绍了。2.2 VBScript介绍Microsoft Visual Basic Scripting Edition是程序开发语言Visual Basic家族的最新成员,它将灵活的Script应用于更广泛的领域,包括Microsoft Internet Explorer中的 Web 客户机 Script 和 Microsoft Internet Information Server 中的 Web 服务器 Script。VBScript使用ActiveX Script与宿主应用程序对话。使用ActiveX Script,浏览器和其他宿主应用程序不再需要每个Script部件的特殊集成代码。ActiveX Script使宿主可以编译Script、获取和调用入口点及管理开发者可用的命名空间。通过ActiveX Script,语言厂商可以建立标准Script运行时语言。Microsoft将提供VBScript的运行时支持。Microsoft正在与多个Internet组一起定义ActiveX Script标准以使Script引擎可以互换。ActiveX Script可用在Microsoft Internet Explorer和Microsoft Internet Information Server中。VBScript只有一种数据类型,称为Variant。Variant 是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。因为Variant是VBScript中唯一的数据类型,所以它也是VBScript 中所有函数的返回值的数据类型。最简单的Variant可以包含数字或字符串信息。Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。这就是说,如果使用看起来象是数字的数据,则VBScript会假定其为数字并以适用于数字的方式处理。与此类似,如果使用的数据只可能是字符串,则VBScript将按字符串处理。当然,也可以将数字包含在引号()中使其成为字符串。除简单数字或字符串以外,Variant可以进一步区分数值信息的特定含义。例如使用数值信息表示日期或时间。此类数据在与其他日期或时间数据一起使用时,结果也总是表示为日期或时间。当然,从Boolean值到浮点数,数值信息是多种多样的。Variant包含的数值信息类型称为子类型。大多数情况下,可将所需的数据放进Variant中,而Variant也会按照最适用于其包含的数据的方式进行操作。声明变量的一种方式是使用Dim语句、Public语句和Private语句在Script中显式声明变量。另一种方式是通过直接在Script中使用变量名这一简单方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行Script时出现意外的结果。因此,最好使用Option Explicit语句显式声明所有变量。2.3 IIS 5.1 简介IIS(Internet Information Server),是微软公司主推的服务器,最新的版本是IIS 6.0,IIS与Windows NT(Network Termination) Server完全集成在一起,因而用户能够利用Windows NT Server和NTFS(NT File System)内置的安全特性,建立强大,灵活而安全的Internet站点。 IIS支持HTTP(Hypertext Transfer Protocol)、FTP(File Transfer Protocol)以及SMTP(Simple Mail Transfer Protocol)协议,通过使用CGI(Common Gateway Interface)和ISAPI(Internet Server Application Programming Interface),IIS可以得到高度的扩展。 IIS支持与语言无关的脚本编写和组件,通过IIS,开发人员就可以开发新一代动态的,富有魅力的Web站点。IIS不需要开发人员学习新的脚本语言或者编译应用程序,IIS完全支持VBScript,JavaScript开发软件以及Java,它也支持CGI和Win CGI,以及ISAPI扩展和过滤器。IIS支持服务器应用的Microsoft BackOffice系列,Microsoft BackOffice系列包括的内容: (1)Microsoft Exchange Server 客户/服务器通讯和群组软件; (2)Microsoft Proxy Server 代理服务器; (3)用于连接IBM企业网络的Microsoft SNA(Systems Network Architecture) Server; (4)用于集中管理分布式系统的Microsoft Systems Management Server; (5) MCIS(Microsoft Commercial Internet System)。 IIS的设计目的是建立一套集成的服务器服务,用以支持HTTP(Hyper Text Transfer Protocol),FTP(File Transfer Protocol)和SMTP(Supplemental Medium Term Policy),它能够提供快速且集成的现有产品,同时可扩展Internet服务器。 IIS相应性极高,系统资源的消耗也是最少,IIS的安装,管理和配置都相当简单,这是因为IIS与Windows NT Server网络操作系统紧密的集成在一起,另外,IIS还使用与Windows NT Server相同的SAM(Security Accounts Manager),对于管理员来说,IIS使用诸如Performance Monitor和SNMP(Simple Network Management Protocol)之类的NT已有管理工具。 2.3.1 IIS 5.1服务器特征IIS的一个重要特性是支持ASP,IIS 3.0版本以后引入了ASP,可以很容易的显示动态内容和开发基于Web的应用程序。对于诸如VBScript,JavaScript开发软件,或者由Visual Basic,Java,Visual C+开发系统,以及现有的CGI和Win CGI脚本开发的应用程序,IIS都提供强大的本地支持。IIS可以赋予一部主机电脑一组以上的IP地址,而且还可以有一个以上的域名作为Web网站,可以利用TCP/IP内容设置两组以上的IP地址给它,除了为网卡再加进一组IP地址之外,必须在负责这个点的DNS(Domain Name System)上为这组IP地址指定另一个域名,完成这些步骤以后,在Internet Service Manage中就会出现一个虚拟Web服务器,虚拟服务器(Virtual Server)必须有它自己的主目录(Home Directory),对于IIS来说,所有服务器都是它的虚拟服务器。 在互联网上,有很多网站需要多部服务器才能够应付来自用户端的请求,这就需要利用DNS所具有的功能,将一组以上的IP指定给同一个域名,每当这个网站接到服务要求,由DNS负责进行解析,它会指定域名的下一组IP地址给它,若要求采用这套做法,服务器的内容必须逐一复制到每一部服务器上。 为了存取后端数据库,IIS支持三种方式: IDC(Internet Data Connector)、ADO及ADC(Advanced Data Connector)。 这三种存储方式各有其特点,这里特别强调的是这三种数据库存取方式的后端数据库都必须提供ODBC(Open Database Connection)界面。2.3.2 IIS 5.1的安装配置IIS是构建ASP站点所必须的,IIS的安装及其配置步骤:(以Windows XP为例) (1) 打开“控制面板”;(2) 点击“添加/删除程序”;(3) 单击“添加/删除Windows组件”,打开添加/删除Windows组件对话框;(4) 从下拉的列表中选择“Internet 信息服务(IIS)”单击“下一步”;(5) 出现组件安装进度窗口,如弹出需要安装盘的话,放入Windows XP安装盘,按提示操作即可。直至最后安装完毕。 2.3.3 ADO简介ActiveX数据对象作为微软公司数据库接口的组成部分,其定义了一组 COM (通用对象模型)对象,用以操作不同的数据源的数据。ADO 为不同的数据类型提供了一个非常通用的接口,而你则不用也没必要去管这些接口究竟是在单机还是分布在网络中。因为,在 ADO 中使用的是 COM 对象,是它们很容易在众多的编程环境中使用,包括:VB,Visual C,甚至 Java Script 。本系统是采用 C 来实现的,而在 C 中使用 ADO 比在 Visual C 中使用 ADO 对象要简单的多。其中,使用 ADO 的执行操作过程:(1)连接到数据源。同时,可确定对数据源的所有更改是否已成功或没有发生。(2)指定访问数据源的命令,同时可带变量参数,或优化执行。(3)执行命令。(4)如果这个命令是数据按表中的行的形式返回,则将这些行存储在易于检查、操作或更改的缓存中。(5)适当情况下,可使用缓存行的更改内容来更新数据源。(6)提供常规方法检测错误(通常由建立连接或执行命令造成)。这些只是在典型情况下,编程模型中使用的步骤,由于 ADO 有很强的灵活性,所以在一般情况下,模型只需执行部分步骤。本系统的各个功能模型中使用数据库时,也只是执行部分操作。 2.4 课题要达到的设计目标网上考试系统要达到的目标是:(1)能够实现在网上的考试。(2)能够实现网上自动判卷,包括单选题的自动判卷,多选题的自动判卷,判断题的自动判卷,将结果存入数据库,并且要保证判卷的正确,准确无误。(3)学生选课。学生只有选择了课程之后才能够进行考试,不选择课程是无法进行考试的。(4)管理员登录。为了确保安全,网上考试系统提供了管理员登录功能。管理员必须通过管理员姓名和管理员密码认证后,如果正确才能够进入。如果不正确则管理员不能够进入。(5)科目管理。如果学生已经取得了这门课程的学分,或者是选择了错误的课程,就可以在此删除选择的课程。(6)学生注册。对新的学生进行注册,注册内容包括学生姓名,学生学号,学生密码。 (7)学生登录。为了确保安全,网上考试系统提供了学生登录功能。学生必须通过学生姓名和学生密码认证后,如果正确才能够进入。如果不正确则学生不能够进入。(8)查询分数。学生考完试后,可以通过考试学科名称,考试学科的编号,考试学科的日期,进行自己分数的查询。第3章 系统的需求分析3.1可行性分析可行性研究就是预开发软件系统的总体目标,给出它的功能、性能、可靠性以及其他方面的要求。其目的是用最小的代价在尽可能短的时间内确定问题是否能够解决、是否值得去解决。 从四个方面分析本系统的可行性:(1) 技术可行性本网站采用Microsoft Access 2003进行后台数据库的管理、操作和维护,用Macromedia DreamweaverMX2004 和HTML、ASP进行前台界面设计、与后台数据库的接口、数据的录入、查询、浏览等功能。根据ASP的特点与DreamweaverMX2004强大的方便快捷的开发工具,以及他们当前的广泛实际应用,充分说明本网站在技术方面可行。(2) 经济可行性经济可行性分析(能否赢利)是,从经济的角度分析网站系统的规划方案有无实现的可能和开发的价值;分析网站系统所带来的经济效益是否超过开发和维护网站所需要的费用。经济上的可行性是企业行为的基础。由于网上考试系统的开发设计是为完成毕业设计任务而进行的,所以不存在赢利问题。所以在此也就不讨论经济可行性问题。(3) 开发环境可行性网站开发需要的开发环境需要装有Windows98系统以上的电脑上运行,这样的配置在当今已经不能成为难题,而服务器方面,只需要一台安装了IIS服务的计算机即可。所以开发环境可行性是没有任何问题的。3.2 开发环境 系统开发环境:(1)硬件配置环境:CPU:P4 1.8A、内存:256MDDR、硬盘:60G。(2) 操作系统:: Windows98以上。 (3) Web服务器: IIS 5.1 是Windows XP中自带的Internet信息服务组件。(4) 数据库:开发过程中数据库工具采用了Access2003。因为IIS默认支持Access数据库,这样在变更编程所用的计算机时不用重新设置,且Access使用起来比较方便、符合Web服务器对数据库的要求。(5) 编码工具:采用Macromedia DreamweaverMX2004编写VBScript和JavaScript来实现ASP动态网页的编码,同时也用它来设计网页前台的框架。3.3 研究设计中要解决的问题任何一套系统的编辑和设计中都会遇到这样或者那样的问题。遇到了问题和困难,就要想办法去解决。可以翻阅参考资料书籍,请教教师同学,还可以在网上查找一些相应的材料。先要分析出现问题的原因,然后再寻找解决问题和困难的方法。要从多个角度思考问题。为了解决困难要多做一些实验性的工作,利用多种方法,多种函数,去攻克困难。在研究设计网上考试系统中要解决的问题有几个方面:(1)因为本系统要求是在网上的无纸化的考试,而不是单机的考试。这套系统要满足广大网络用户的要求,要实现在局域网上的应用。所以要解决这方面的问题。(2)既然是网上考试系统,对学生试卷的判卷功能是必须要有的。因为本网上考试系统可以对单选题,多选题,判断题,问答题进行网上考试,所以在系统中必须加入网上自动判卷,主要是对单选题,多选题,判断题这些客观题进行网上的自动判卷。 (3)学生如果希望进行一门或几门学科的考试,就必须在选课这一模块中进行课程的选择。学生只有选择了课程之后才能够进行考试,不选择课程是无法进行考试的。学生选择了课程之后,在相应的数据库表中就会有该学生选择课程的相关记录产生。(4)如果学生已经取得了这门课程,或者是选择了错误的课程,就要进行删除课程的工作,所以,网上考试系统中就要具备删除已经选择的课程的内容。(5)网上考试系统顾名思义是要在网络上进行的考试,最主要的目的就是考试,所以实现学生的网上考试是本系统中最最重要的一部分。学生可以选择课程名称,课程编号,考试时间,进行课程的网上考试。如何实现学生网上考试的这部分功能,是研究设计中重点要解决的问题。第4章 系统总体设计4.1 网上考试系统设计实现的策略在网上考试系统的设计和实现过程中,为了使系统便于管理和安全,在网上考试系统中编辑设计了管理员登录,管理员具有最高权限,他可以向网上考试系统增加和删除教师和学生。教师和学生要想使用网上考试系统必须先登录。教师登录后,可以修改自己的登录密码;为学生的考试出题,并且形成题库;为学生将要进行的考试在题库中抽题;对试题进行修改;对试题进行按要求的查询;将考试的试题生成word文件。学生登录后可以选择自己考试的课程;删除考过的课程;按照考试课程的名称,课程的编号和时间选择考试;查看自己的分数;查询学生考过课程的试卷。网上考试系统的设计思想把整个系统分成管理员登陆、教师登陆、学生登陆三个模块。具体结构如图4.1所示:图4.1 系统的结构图管理员登陆分为管理员密码修改、教师注册、学生注册。管理员密码修改可以修改管理员的基本信息,而教师注册和学生注册可以帮助其获得用户名和密码,进而登陆到各自的模块中。教师登陆分为教师出题、试题查询、试题修改、教师抽题、教师判卷、考后分析、整体分析、资源共享。教师出题可以支持老师出单选题、多选题、判断题、简答题。试题查询可以根据题目,题目的关键字,题号,题型,考试日期对试题进行快速准确的查询。试题修改可以对不符合要求题目进行删除和修改。教师抽题可以按照试题和老师进行题目的抽取。考后分析和整体可以对考试的成绩进行分析,从而对考题难度,考生的掌握程度以及教学成果进行分析和总结。资源共享增加了信息的透明度,可以对考题和成绩进行共享,可以让学生网上答题和查询成绩。学生登陆分为学生选课、开始考试、查询分数、查询试题。学生选课可以对科目进行选取,选择对应的科目试题。管理员可以将结业的科目和选错,以及近期不用的题目进行删除。开始考试是把所选科目的试题拿来进行网上的同步考试。查询分数是对老师判卷后的成绩进行查询。查询试题是对所考过的题目进行系统查询2。4.2网上考试系统流程首先,管理员部分需要身份认证,与考生登陆类似,还需管理员帐号维护。其次,管理部分还需添加考试的考生帐号和密码,为考生分配考试资格。网络在线考试管理部分主要内容是考试科目管理和考试试题管理。举行一场考试首先要确定一个科目,然后为该科目出考题。考试试题包含试题类型、试题内容、试题分数等。考生交卷后,考试系统可以立即批阅学生考卷,并马上给出考试结果。系统自动阅卷功能也要在管理部分实现。考生考试结束后,考试分数存储在系统中,对其中需要修改的分数可以进行修改或删除。 第5章 系统详细设计5.1 数据库设计现在,世界上绝大数的数据库都采用关系模型,至于关系模型的优点,以及概念、完整性约束等内容,由于本文不是专门研究数据库的,这里就不进行详细的讨论了,只需知道这里的数据库也是关系数据库。目前,主流的数据库系统主要有 Oracle ,Microsoft SQL Server 2000 ,Sybase ,Microsoft Access ,Informix ,IBM 的 DB2等。Microsoft SQL Server 2000 是一种专门的大型数据库系统,提供完全的数据库操作;Microsoft Access 只是 Microsoft Office 附属的,提供一般的数据库操作。而本系统所涉及的数据库所执行的工作也只是一般的增加、查询、删除和修改等操作,为了简单易行,所以选择了 Microsoft Access 来设计数据库3。5.2 数据库结构图5.2.1 数据库E-R图图5. 1 系统信息E-R图5.2.2 数据库结构表利用Microsoft Access 创建数据库,库文件名为WebTest.mdb根据系统数据项和数据结构及其ER图创建表。(1) 为了存储学生信息,实现学生登陆模块功能,建立学生信息表,如表5.1所示:表5.1 学生信息表字段名称数据类型字段大小学生学号文本8学生姓名文本10学生密码文本8(2) 为了存储学生信息,实现学生查询分数模块功能,建立学生课程信息表,如表5.2所示:表5.2学生课程信息表字段名称数据类型字段大小学生学号文本8学生姓名文本10学科编号文本8考试学科文本50考试时间日期长日期分数数字双精度型(3) 为了存储学生信息,实现学生选课模块功能,建立学生项目信息表,如表5.3所示:表5.3 学生项目信息表字段名称数据类型字段大小学生学号文本8课程编号文本8所学课程文本50(4) 为了存储学生信息,实现学生查询试题模块功能,建立考试信息表,如表5.4所示:表5.4 学生考试信息表字段名称数据类型字段大小学生学号文本8学生姓名文本10学科编号文本8考试学科文本50考试时间日期长日期题号数字长整型题型文本50答案备注分数数字双精度型(5) 为了存储管理员信息,实现管理员登陆模块功能,建立管理员信息表,如表5.5所示:表5.5 管理员信息表字段名称数据类型字段大小管理员姓名文本50密码文本50 (6)为了存储教师信息,实现教师试题查询、整体分析等模块功能,建立教师信息表,如表5.6所示:表5.6 教师信息表字段名称数据类型字段大小ID自动编号教师姓名文本10所讲学科文本50学科编号文本8所讲学科文本50教师密码文本8(7)为了存储考试信息,实现考试模块功能,建立考试信息表,如表5.7所示:表5.7 考试信息表字段名称数据类型字段大小学科编号文本8所讲学科文本50考试时间日期长日期题号数字长整型题型文本8章节文本8题目备注分数数字双精度型难度文本8正确的文本8A备注J备注(8)为了存储试题信息,实现试题查询、修改模块功能,建立试题信息表,如表5.8所示:表5.8 试题信息表 字段名称数据类型字段大小学科编号文本8所讲学科文本50出题时间日期长日期考试时间日期长日期题号数字长整型题型文本8章节文本8题目备注分数数字双精度型难度文本8正确的文本8A备注J备注第6章 程序模块实现6.1 分模块详述系统各部分的实现方法1、教师出题模块的实现方法教师登录后,选择进入教师出题界面(teacher_subject.asp),在这里教师可以为学生选择出单选题,多选题,判断题和问答题。这些都是通过超级链接的方式实现的。单选题和多选题出题的实现方法是,主要采用框架页面,左页面用于设置试题的一些参数,它们是章节,难度,分数,答案个数。右页面用于对试题的一些具体情况进行操作,它们是单选题和多选题试题的题目,A,B,CJ的选择题选择的答案。用SQL语句中的INSERT INTO插入语句将输入的数据插入到数据库中。示例图如6.1所示: 图6.1 教师出题模块图 问答题和判断题出题的实现方法是,在网页中分别设置了两个用单行文本框,用于输入试题的章节和分数;设置了一个多行文本框用于输入判断题的题目;一个多选按钮框用于输入判断题的对错。用SQL语句中的INSERT INTO插入语句将输入的数据插入到数据库中。示例图如6.2所示:图6.2教师出题模块图 2、试卷生成模块的实现方法试卷生成的实现方法是,在一个单独的页面中设置了三个下拉菜单,分别用于教师选择将要考试的学科编号,学科名称和考试时间;设置了一个确定按钮,一个重写按钮和一个信息查看按钮。选择信息后点击确定按钮程序利用Post提交表单的方法将数据提交到teacher_paper_word.asp网页,teacher_paper_word.asp网页利用代码将网页与Word文件形式保存显示出来。示例图6.3所示:图6.3 试卷生成模块图 3、教师判卷模块的实现方法教师判卷的实现方法是,同样采用了框架页面,左页面设置了四个下拉菜单,分别用于教师选择考试时间,学科编号,考试学科,学生学号;还设置了一个确定按钮。在右页面中用循环语句,以表格的形式将学生回答的问答题显示出来,每道的后面设置了一个单行文本框,用于教师为这道题打分。示例图6.4所示:图6.4 教师判卷模块图 4、学生选课模块的实现方法学生选课的实现方法是,利用SQL语句的Select命令查找出数据库表中所有不重复课程的名称。再利用ASP对象中的Record Set对象和循环语句将数据库中的课程在网页中显示出来,在每个课程名前加一个多选框,用于选择课程。示例图6.5所示:图6.5 学生选课模块图5、修改试题模块的实现方法修改试题的实现方法是,采用框架页面,左页面设置了一个下拉菜单,用于选择题型;设置了一个单行文本框,用于输入题号;设置了两个按钮,一个是确定按钮,一个是重写按钮。右页面用于试题的修改。主要采用循环语句将试题的各种信息用单行文本框显示出来,教师可以在单行文本框中对试题进行各种修改。用SQL语句中的update语句将修改后的数据更新到数据库中。示例图如6.6所示:图6.6 教师修改试题模块图6、教师抽题模块的实现方法教师抽题的实现方法是,也采用了框架页面,左页面设置了一个单行文本框,用于输入考试的时间;设置了四个单选按钮,用于选择题型;设置了一个确定按钮。右页面用于显示要抽的题目有关信息。每道题前设置了一个多选框,用于选择题目。示例图如6.7所示:图6.7 教师抽题模块图7、学生考试模块的实现方法学生考试的实现方法是,这是编辑和设计网上考试系统的重点。由于要求每个学生在考试的时候都要使用一份考试试题,而且每个学生抽的试题的题目的顺序都要求不一样,并且每个学生的选择题的A,B,C,D的顺序也要求不一样。所以在设计时采用了随机数的方法,由于随机函数在产生随机数的时候会有重复,所以在程序中编辑设计了一个使随机函数不产生重复数字的小函数来解决这个问题。示例图如6.8所示: 图 6.8 学生考试模块图 6.2 系统的部分代码实现学生信息管理模块部分代码:if request(“action”)=”add” thenif trem(request(“studentname”)=”or trem(request(“studentpassword”)=”thenresponse.write”错误!用户名或密码不能为空!返回” response.end end ifset rs=server.createobject(“adodb.recordset”) rs.open”select*from student where studentname=”&cstr(trim(request(“studentname”)&”,conn,1,1response.endend if6.3系统需要完善的地方(1)在表格的设计方面还有些不足,在数据多的时候,数据在表格中就会挤到一起,这是需要改进的。(2)在选择数据库后台方面还有些不足的地方,由于采用Access数据库,Access数据库只能应用于小型的数据量,所以这是需要改进的。(3)在网上考试系统的考试功能方面还有些不足的地方,现在只能进行单选题,多选题,判断题和问答题的考试。而不能进行填空题,画图题,连线题的一些考试,所以这是需要改进的。 第7章 系统测试 程序编写出来并不是软件开发的结束,因为,一个可

温馨提示

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

评论

0/150

提交评论