河南财经政法大学在线考试系统分析与设计毕业论文.doc

上传人:仙人指路1688 文档编号:4075161 上传时间:2023-04-03 格式:DOC 页数:41 大小:2.25MB
返回 下载 相关 举报
河南财经政法大学在线考试系统分析与设计毕业论文.doc_第1页
第1页 / 共41页
河南财经政法大学在线考试系统分析与设计毕业论文.doc_第2页
第2页 / 共41页
河南财经政法大学在线考试系统分析与设计毕业论文.doc_第3页
第3页 / 共41页
河南财经政法大学在线考试系统分析与设计毕业论文.doc_第4页
第4页 / 共41页
河南财经政法大学在线考试系统分析与设计毕业论文.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《河南财经政法大学在线考试系统分析与设计毕业论文.doc》由会员分享,可在线阅读,更多相关《河南财经政法大学在线考试系统分析与设计毕业论文.doc(41页珍藏版)》请在三一办公上搜索。

1、 本科生毕业论文(设计)河南财经政法大学在线考试系统分析与设计姓名 学号专业指导教师2012年5月25日摘 要在计算机网络飞速发展的今天,互联网应用在人们政治、经济、生活等各个方面发挥着重要的作用,然而在教育方面却没有得到充分的利用。在追求效率与公平的时代,为了使学校、教师以及学生在考试过程减少时间、金钱的投入,因此设计开发了这个在线考试系统。本文论述了一个以Internet为网络平台、三层架构(B/S)的在线考试系统的设计原理、设计思想及具体的实现过程,对在设计过程中涉及到的关键算法及重要作业流程作了具体分析和介绍,并对各个模块的设计思想及设计过程作了详细阐述。本系统采用Jsp+Servle

2、t等技术,设法为学校创建一个便捷公平的在线考试平台。本论文阐述了系统所要实现的功能,其中包括学生考试,人员管理,题库管理等多个功能,对各功能模块的实现流程以及后台数据库的设计进行说明,并详细介绍了在线考试系统主要业务的实现方式。对于不同用户角色,本文将分别关于功能结构进行介绍,并对其逻辑和代码实现进行解释和说明。关键词:在线考试;Oracle数据库;Jsp;MVCAbstractAlong with the rapid development of information technique such as computer and network nowadays, in peoples d

3、aily life, especially in politics, economy and education etc, the Internet is playing an important role. However, in the education aspect, it has not been fully utilized. In order to pursuit higher efficiency and quality of the examination process, and also to reduce the cost of money and time, an o

4、n-line examination system is therefore necessary. This thesis proposes three architectures (B/S) of the online examination system design, and also introduces the design idea and the realization process of design. The process of the algorithm and the key important work flow is also analyzed and intro

5、duced. This system uses the Jsp + Servlet technology creates a convenient online examination platform. This thesis describes the system functions, including students test, personnel management and management etc. For different user roles, this thesis introduces the function respectively of structure

6、, including the logic and code realization to explanation and instructions.Key words: Online Examination, Oracle Database, JSP, MVC目 录1 引言11.1 课题的背景11.2 课题的目的和意义11.3 本文的内容安排22 开发工具及相关技术32.1 系统的B/S结构简述32.2 开发环境及开发工具32.2.1 Dreamweaver32.2.2 Eclipse42.2.3 Oracle 数据库42.2.4 Tomcat服务器42.3 相关技术52.3.1 CSS+D

7、IV52.3.2 JavaScript 和jQuery52.3.3 Servlet 和JSP52.3.4 MVC模式62.3.5 JDBC72.4 本章小结73 系统分析83.1 系统需求分析83.1.1 系统功能的需求83.1.2 系统性能的需求83.2 系统可行性分析93.2.1 经济可行性分析93.2.2 技术可行性分析93.3 系统流程分析93.3.1 业务流程分析103.3.2 数据流程分析103.4 本章小结114 系统设计124.1 系统总体规划124.2 数据库设计134.2.1 概念结构设计134.2.2 逻辑结构设计154.3 本章小结185 系统实施195.1 创建与数据

8、库的连接195.2 系统的登录页面205.3 学生主页面225.3.1 考试科目查询225.3.2 进行考试225.3.3 成绩查询265.4 教师主页面275.4.1 题库管理275.4.2 试卷管理275.4.3 考生成绩查询285.5 管理员主页面295.5.1 人员信息管理295.5.2 考试科目管理295.6 本章小结306 系统测试316.1 测试的目标与方法316.2 测试用例316.2.1 系统登录测试316.2.2 学生模块测试326.2.3 教师模块测试326.2.4 管理员模块测试336.3 本章小结337 结束语34参考文献35致谢36 1 引言1.1 课题的背景从计算

9、机网络的诞生至今天,计算机网络应用已进入人类社会的各个方面并发挥着越来越重要的作用,我们发现我们的生活、工作、学习等越来越离不开网络。在线考试系统是一款基于网络浏览器的适用于学校以及教育培训机构等的实用型系统,他一改传统的考试模式为我们的考试带来新的体验,是计算机网络应用的标准体现。众所周知,教育是治国之本,因此如何更好的做好教育工作是大家一直都很关注的问题。只有率先认识到网络技术在当今教育中的重要作用,用它解决教育中的问题,把它作为教育的基本工具,才能在全球教育竞争中立于不败之地。如今,越来越多的学校、教育培训机构等都将网络技术应用于教育,通过计算机网络实现在线教育或培训,网络教学便由此而生

10、。目前我国网络教学系统的开发和使用还处于发展阶段,各项功能的实现还不够完善。网络教学包括很多环节,例如选课系统、教学系统、问答系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。目前大多数学校和社会上的考试依然采用传统的考试模式,在此模式下,组织一次考试一般需要经过人工出题、复印试卷、考生考试、人工阅卷和成绩统计等五个环节。显然,教师和考务工作人员的工作量很大,效率也很低,并且难免会出现各种各样的错误,严重影响了教学的效率和质量,可以说传统的考试模式已经逐渐满足不了当今的考试需求。人们迫切需要一种自动化程度相当高的计算机系统来进行在线考试,并进行题库信息的管理。

11、在此背景下,我们需要开发一款在线考试系统。1.2 课题的目的和意义在线考试系统将使学校的考试管理工作更加规范化,自动化,简单化。一方面方便考生考试;另一方面减轻教师及考务人员的工作负担,提高工作效率。从而提高教学质量。基于网络技术的在线考试系统可借助校园局域网进行。将试题内容放在服务器上,考生通过帐号和密码进行登录参加考试,考试答案也存放在服务器上,这样考试的公平性、答案的安全性可以得到有效的保证。试题可以根据题库中的内容随机生成,可有效避免考试前的押题;同时每个人的考试题目都不会完全一样,这样可有效避免考试抄袭;而且可以采用大量标准格式化的试题,从而使用计算机判卷,大大提高阅卷效率;还可以直

12、接把成绩送到数据库中,进行统计、排名等操作,便于对考试结果进行分析。可见,采用在线考试模式将是未来考试发展的趋势。因此,结合我校教学考试现状,我设计并开发了河南财经政法大学在线考试系统。1.3 本文的内容安排在本论文中,首先论述了在线考试系统的研究背景及其意义;然后对要开发的河南财经政法大学在线考试系统进行了较为详细的分析(包括需求分析、流程分析、系统可行性分析等);对本系统所使用的开发语言、相关技术以及开发环境和开发工具进行了简单的介绍;对本系统进行了功能模块设计(包括考生考试模块、教师管理模块、管理员管理等);在对系统分析与设计的基础上,运用Jsp+Servlet和Oracle开发了河南财

13、经政法大学在线考试系统;最后对已经开发的系统进行了测试。本论文的内容安排如下:第一章、引言,其中介绍了课题研究的背景,课题的目的和意义。第二章、系统开发工具及相关技术介绍,其中包括对B/S结构、CSS+DIV网页布局、JSP、Servlet、Oracle等的简单介绍。第三章、系统分析,其中包括需求分析、系统流程分析、可行性分析等。第四章、系统设计,其中包括功能设计、数据库设计等。第五章、系统实施,对系统的各个模块的实现做详细的介绍。第六章、系统测试,其中包括对测试的目的和方法、简单的测试用例等。第七章、结束语,对在写整篇论文过程中的感受和收获进行总结。2 开发工具及相关技术河南财经政法大学在线

14、考试系统是基于B/S模式设计的,它选择的前台开发语言为Jsp,后台数据库管理工具为Oracle 10G,开发工具为Eclipse,其Web服务器为Tomcat 6.0及以上版本。2.1 系统的B/S结构简述B/S结构(Browser/Server,浏览器/服务器模式)是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。 客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Inf

15、ormix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据交互。B/S结构的优点:具有分布性特点,可以随时随地进行查询、浏览等业务处理;业务扩展简单方便,通过增加网页即可增加服务器功能;维护简单方便,只需要改变网页,即可实现所有用户的同步更新;开发简单,共享性强。2.2 开发环境及开发工具本系统开发环境选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企业在规划内部网络时,将微软平台作为首选方案;令一方面从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都是非常容易,而且性能优越。以下简单介绍本系统所使用的开发工具:2.2.1 Dr

16、eamweaverDreamweaver是美国MACROMEDIA公司开发(后被Adobe公司收购)的集网页制作和管理网站于一身的所见即所得网页编辑器。Dreamweaver可以用最快速的方式将Fireworks,FreeHand,或Photoshop等档案移至网页上。使用检色吸管工具选择荧幕上的颜色可设定最接近的网页安全色。对于选单,快捷键与格式控制,都只要一个简单步骤便可完成。Dreamweaver能与您喜爱的设计工具,如Playback Flash,Shockwave和外挂模组等搭配,不需离开Dreamweaver便可完成,整体运用流程自然顺畅。除此之外,只要单击便可使Dreamweav

17、er自动开启Firework或Photoshop来进行编辑与设定图档的最佳化。本系统采用Dreamweaver CS4版本,其特点是界面设计紧凑,使用方便。2.2.2 Eclipse Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。 虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。Eclipse还包括插件开发环境(Plug-

18、in Development Environment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。本系统采用的是Eclipse 3.5版本,其特点是性能稳定。2.2.3 Oracle 数据库Oracle Database,又名Oracle RDBMS,或简称Oracle。是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(

19、CLIENT/SERVER)或B/S体系结构的数据库之一。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。Oracle数据库具有数据的大量性、数据的保存的持久性、数据的共享性和数据的可靠性等特点。本系统采用的是Oracle 10G数据库。Oracle 10G数据库相对于以前版本关键提高有二:1降低管理开销,2提高性能。 Oracle 10G有对高可用性的增强、新的 Flashback 能力、支持回滚更新操作;对安全性的增强,便于管理大量的用户;BI

20、方面的增强,包括改进的SQL能力、分析功能、OLAP、数据挖掘的能力等;对非关系型数据存储的能力得到了改进;XML的能力;对开发能力支持的加强,对生物信息学( Bioinformatics)的支持。2.2.4 Tomcat服务器本系统运行环境为Tomcat 6.0。Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet 和JSP规范总是能在Tomcat中得到体现,Tomcat 5支持最新的Servlet 2.4和JS

21、P 2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。2.3 相关技术2.3.1 CSS+DIVCSS是层叠样式表(Cascading Style Sheets)的缩写,用于定义HTML元素的显示形式,是W3C推出的格式化网页内容的标准技术。CSS+DIV是网站标准设计中常用术语之一,是一种比较成熟的网页布局方法。可实现网页页面内容与表现相分离,即在不改变Html源代码的同时,能够根据CSS中对标签的的不同定义而显示出不同的页面效果。能够实现传统的表格(Table)布局定位方式所不能实现的效果

22、。当然,本人在使用中并没有完全摒弃表格(Table),而是DIV与之相结合使用,使页面灵活、工整、多层次的显示。2.3.2 JavaScript 和jQueryJavaScript是一种能让你的网页更加生动活泼的程式语言,也是目前网页中设计中最容易学又最方便的语言。你可以利用JavaScript轻易的做出亲切的欢迎讯息、漂亮的数字钟、有广告效果的跑马灯及简易的选举,还可以显示浏览器停留的时间。让这些特殊效果提高网页的可观性。本系统中主要使用JavaScript的表单验证功能以及对时间的控制。jQuery是一个优秀的Javascript框架。它是轻量级的js库(压缩后只有21k),它兼容CSS3

23、,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。在使用过程中本人发现jQuery与传统的JavaScript相比,优势之一在于JavaScript是单线程的,而jQuer

24、y可以实现多线程,即点击一个按钮可以同时触发多个事件,使用起来更加方便。2.3.3 Servlet 和JSPServlet是Java Servlet的简称,是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。JSP(Java Server Pag

25、es)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP是在Servlet技术基础上发展而来的,但在实际使用中功能又有很大的区别,JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记(Tag),从而形成JSP文件(*.jsp)。 另外用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。JSP技术不是Java Servlet技术的全部,它只是Java Servlet技术的一个成功应用。JSP技术屏蔽了Servlet对象创建的过程,使得Web程序设计者只须关心

26、JSP页面本身的结构、设计好各种标记。有效地分离页面的视图和数据处理等,不必再用println语句来输出每一行HTML代码。更重要的是,借助内容和外观的分离,页面制作中不同性质的任务可以方便地分开:比如,由页面设计者进行HTML设计,同时留出供Servlet程序员插入动态内容的空间。2.3.4 MVC模式MVC是三个单词的缩写,分别为:模型(Model),视图(View)和控制Controller)。MVC模式的目的就是实现Web系统的职能分工。Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。View层用于与用户的交互,通常用JSP来实现。Controller层是M

27、odel与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。使用MVC设计模式,应用程序将被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。本系统将使用第一种常见的MVC设计模式Jsp+Servlet+JavaBean进行开发,即通过创建一些Servlet对象,配合JSP页面来完成整个Web系统。其数据传递过程如图2-1所示:图2-1 MVC(Jsp+Servlet+JavaBean)设计模式原理图2.3.5 JDBCJDBC(Java Data Base Connectivity,java数据库连

28、接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序。 有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Oracle数据库专门写一个程序,为访问Sql Server数据库又专门写一个程序,或为访问Mysql数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语

29、言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。2.4 本章小结本章主要介绍了河南财经政法大学在线考试系统所用的开发环境、开发工具以及相关技术。对系统所运用的B/S结构进行了介绍,并结合本系统对将要使用的Eclipse、Oracle开发软件和JSP及MVC等相关技术进行了详细介绍。3 系统分析系统分析对于河南财经政法大学在线考试系统的设计至关重要,在本章中对河南财经政法大学在线考试系统进行了需求分析、系统流程分析、可行性分析。 3.1 系统需求分析系统需求分析是为了深入描述系统的功能和性能

30、,借助于当前系统的逻辑模型导出目标系统逻辑模型,解决目标系统“做什么”的问题。主要分为功能的需求和性能的需求。3.1.1 系统功能的需求河南财经政法大学在线考试系统的设计目的是方便考生及管理人员,所以其整体要求清晰实用、界面亲和、操作简单、运行流畅。系统应该具备以下的基本功能:用户类别:登录系统的身份定为三种,一是管理员,二是教师,三是学生,只有被授权的用户才可以使用本系统。权限管理:系统需要经过有效的身份验证可以登录。用户的身份不同,使用的系统资源也不同。考生只可以参加在线考试;普通教师可以管理题库,控制考试、成绩查询、添加试题、阅卷等。管理员可添加、修改学生、教师、考试科目等信息,可以查询

31、考生成绩。 在线考试功能:考生输入帐号和密码登陆系统后,选择考试科目可进行考试,科目有考试时间设置,未到考试时间或考试已结束将不能参加考试。答题中,有倒计时的功能,考试结束时还没提交就自动交卷,系统将自动对客观题进行评分。如果有主观题,能将主观题答案返回至该科目教师页面。 试卷管理:由管理员设置考试时间,教师设置题型并向题库中添加试题,试卷随机从题库中抽取试题组合而成。3.1.2 系统性能的需求河南财经政法大学在线考试系统的性能要求在稳定的基础上快速反应,操作系统以Windows XP或WIN7为标准,硬件配置以RAM:2.00GB为标准。基本信息的添加,修改部分反应时间应控制在3秒以内,查询

32、部分应控制在5秒以内,生成试卷的信息量较大,处理的流程较多响应时间会较慢,添加、修改部分的响应时间不应该太长。3.2 系统可行性分析可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、管理的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。3.2.1 经济可行性分析主要是对项目的经济效益进行评价,利用计算机来实现网上考试以成为适应当今教学管理的方式。开发一套能满足网上考试系统的软件是十分必要的,实现试卷管理

33、和试卷生成自动化,在减少由于认为失误而早成损失的同时,也可以使教师减少工作量。本系统在经济上是可以接受的,并且本系统实施后可以显著提高考试效率,有助于学院完全实现网络化管理。所以本系统在经济上是可行的。3.2.2 技术可行性分析技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要等。软件方面,网络化考试需要的各种软件环境都已具备,数据库方面我们选择的Oracle,能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。其灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。服务器方面服务器端:由于在线考试是多人同时操作,

34、对服务器的需求是必须考虑的问题。根据我校在校生人数,服务器要求能承受3000-5000人同时在线。300个并发操作响应时间不得超过5秒。由于单纯的Tomcat支持的并发量较小。因此在实际部署系统时服务器端可采用Apache+Tomcat*3的模式加大并发数。服务器端操作系统为Linux,硬件配置为8G内存,2.0GHz、8核CPU。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。3.3 系统流程分析河南财经政法大学在线考试系统流程简单,主要是教师向题库中添加试题,管理员设置考试科目信息,学生登录系统选择科目进行

35、考试。下面从业务流程和数据流程两方面对系统进行分析。3.3.1 业务流程分析业务流程分析,是对系统业务功能的进一步细化,从而得到业务流程图即TFD (Transaction Flow Diagram ),是一个反映系统业务处理过程的“流水帐本”。图3-1表示河南财经政法大学在线考试系统核心业务流程图。图3-1 系统业务流程图3.3.2 数据流程分析数据流程分析就是把数据在现行系统内部的流动情况抽象出来,舍去了具体组织机构、信息载体、处理工作等物理组成,单纯从数据流动过程来考察实际业务的数据处理模式。图3-2表示河南财经政法大学在线考试系统数据流程图。图3-2 系统数据流程图3.4 本章小结软件

36、开发过程中系统分析是很重要的一部分,为了开发出真正满足用户需求的软件产品,本章对系统进行了详细的分析,其中包括对系统的需求分析、可行性分析以及流程分析,从而能够更全面的掌握整个系统的设计流程并且判断系统是否可行。 4 系统设计对河南财经政法大学在线考试系统进行详细的系统分析之后,需要对其进行功能模块和数据库的设计。在本章中,我将会对即将开发的河南财经政法大学在线考试系统进行详细设计。4.1 系统总体规划河南财经政法大学在线考试系统按用户角色分为三大模块:管理员模块:实现教师信息,学生信息,考试科目信息的添加、修改、删除、查询等功能;教师模块:实现题库管理、试卷管理、学生成绩查询等;学生模块:包

37、括查询考试科目、开始考试、个人成绩查询等功能。对于河南财经政法大学在线考试统进行整体功能分析之后,可以设计出该系统的功能模块总体框架如图4-1所示:图4-1 系统总体规划图三种角色通过同一登录界面进入不同操作页面:其中管理员帐号和密码由系统后台添加。教师和学生帐号和密码由管理员添加,个人不能注册。1.管理员:(1)学生信息管理:管理每个学生的个人信息,包括学号、姓名、院系、专业、班级等。管理员可以对学生信息进行添加、修改、删除、查询等操作。并且可以查询所有考生的考试成绩。(2)教师信息管理:管理每个教师的个人信息,包括工号、院系、所教科目等。管理员可以对教师信息进行添加、修改、删除、查询等操作

38、。(3)考试信息管理:管理考试安排,包括考试科目、考试日期、考试开始时间、考试结束时间等。管理员可以对考试科目进行添加、修改、删除、查询等操作。2.教师:(1)题库管理:题型包括选择题、填空题、问答题。教师可以对各种题型进行增加、修改、删除、查询。添加试题时可以设置试题难度。教师只能对所教科目的题库进行操作。(2)试卷管理:可以设置考试题型,包括各种题型的数目和每道题的分值。如果出问答题,则可查询到学生的答案,进行手工批改,并提交成绩至数据库。(3)成绩查询:教师可以查看可以查询所教科目的学生成绩。3.学生:(1)考试科目:可以显示全部考试科目,考生也可以根据关键字搜索想要考试的科目。科目有时

39、间设置,未到考试时间或考试已结束将不能参加考试。(2)考试进行:从考试科目页面进入考试页面,考试页面按照教师所设置的考试题型以及题目的难度随机生成试卷并显示考试倒计时。(3)成绩查询:考生可以查询考试过的科目的成绩,包括各种题型的成绩以及总成绩。4.2 数据库设计4.2.1 概念结构设计概念结构设计的任务是在系统分析的基础上,按照特定的方法把它们抽象为一个不依赖于任何具体机器的数据模型,即概念模型。概念模型使设计者的注意力能够从复杂的实现细节中解脱出来,而只集中在最重要的信息的组织结构和处理模式上。概念数据模型,是结合将要开打的系统按照用户的观点来对数据和信息进行建模,利用实体关系图来实现.它

40、描述系统中的各个实体以及相关实体之间的关系,是系统特性的静态描述.概念结构设计的方法一般是先画出组织的局部E-R图,然后将其合并,在此基础进行优化和美化。在考试系统中,共分10个实体:分别为管理员信息、教师信息、学生信息、科目信息、题库信息(包括选择题信息、填空题信息、问答题信息)、试卷信息、答案信息、成绩信息,它们之间相互都有联系。由于实体数量较多,不一一画出实体属性E-R图,仅分别列举说明:管理员信息(管理员帐号、管理员密码、管理员姓名)教师信息(教职工号、教师姓名、教师密码、所在院系、所教科目)学生信息(学生学号、学生密码、学生姓名、学生性别、所在院系、所在专业、所在班级)科目信息(科目

41、号、科目名、所属院系、选择题数、填空题数、问答题数、考试日期、开始时间、结束时间)选择题信息(题目编号、题目名、选项A、选项B、选项C、选项D、正确答案、难度、科目号)填空题信息(题目编号、题目名、正确答案、难度、科目号)问答题信息(题目编号、题目名、参考答案、难度、科目号)考生试卷信息(学号、科目号、选择题编号、填空题编号、问答题编号)考生答案信息(学号、科目号、选择题答案、填空题答案、问答题答案)考生成绩信息(学号、科目号、选择题得分、填空题得分、问答题得分、总分)各个实体之间的关系如下:管理员与教师、学生、科目信息之间存在一个管理与被管理的关系,一个管理员可以管理多个教师、一个管理员可以

42、管理多个学生、一个管理员可以管理多个考试科目。教师与科目之间存在教授与被教授的关系,一个教师可以教授多个科目;一个科目可以由多个教师来教授。教师与试卷之间有管理与被管理的关系,一个教师可以管理多个试卷。教师与题库之间的关系也是管理与被管理的,一个教师可以管理多个题库,一个题库可以被多个教师管理。科目与学生之间存在考试与被考试的关系,一个学生可以考试多个科目,一个科目可以由多个学生来考试;科目与试卷之间存在属于与被属于关系,一个科目可以属于多份试卷,一份试卷只能属于一个科目。试卷与学生时间存在作答与被作答的关系,一个考生一次只能作答一份试卷,一份试卷也只能被一个考生作答。题库与试卷之间存在抽取与

43、被抽取的关系,一个题库可以抽取出多份试卷,一份试卷只能从一个题库中抽取。根据以上各个实体之间的关系,可以画出本系统的总体E-R图。图4-2表示在线考试系统总体E-R图:图4-2 在线考试系统总体E-R图4.2.2 逻辑结构设计数据库逻辑结构设计阶段的任务是将概念结构设计阶段所得到的概念模型转换为具体DBMS所能支持的数据模型(即逻辑结构),并对其进行优化。逻辑结构设计的主要任务是根据E-R图建立各种实体的数据库表。 数据表是关于数据信息的集合,也就是对数据流中包含的所有元素的定义的集合。任何表最主要的用途都是供人查阅对不了解的条目的解释,数据表的作用也正是在系统分析和设计的过程中给人提供关于数

44、据的描述信息。以下一一列出本系统所使用的各个数据库表:如表4-1所示,管理员信息表(tb_Admin)用于存储管理员信息。表 4-1 管理员信息表列名含义类别长度是否为空约束Adminid管理员帐号char6否主键Apassword密码varchar210否Aname姓名varchar220否如表4-2所示,教师信息表(tb_Teacher)用于存储教师信息。表 4-2 教师信息表列名含义类别长度是否为空约束Teacherid教职工号number6否主键Tpassword密码varchar210否Tname姓名varchar220否Depart院系varchar230否如表4-3所示,学生信息

45、表(tb_User)用于存储学生信息。表 4-3 学生信息表列名含义类别长度是否为空约束Userid学号number11否主键Upassword密码varchar211否Uname姓名varchar220否Usex性别char2否Depart院系varchar250否Major专业varchar250否Classid班级号number6否State状态number2否如表4-4所示,选择题信息表(tb_Select)用于存储选择题信息。表 4-4 选择题信息表列名含义类别长度是否为空约束Selectid题目编号number10否主键Stitle题目名varchar21000否SelectA选项

46、Avarchar21000否SelectB选项Bvarchar21000否SelectC选项Cvarchar21000否SelectD选项Dvarchar21000否Ranswer正确答案varchar24否Difficulty难度char4否Subjectid科目号number6否外键如表4-5所示,填空题信息表(tb_Blank)用于存储填空题信息。表 4-5 填空题信息表列名含义类别长度是否为空约束Blankid题目编号number10否主键Btitle题目名varchar21000否Ranswer正确答案varchar2100否Difficulty难度char4否Subjectid科目号number6否外键如表4-6所示,问答题信息表(tb_Question)用于存储问答题信息。表 4-6 问答题信息表列名含义类别长度是否为空约束Questionid题目编号number

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号