1、1绪 论1.1 开发背景近年来,计算机科学技术的发展迅猛异常,日新月异。网络技术、多媒体技术、面向对象的技术日趋成熟,为计算机的应用揭开了新篇章。为了适应计算机技术的发展,网上教育也以受众广、投入低、不受师资和校舍等办学基础设施等条件限制、容易开展高水平教学、教学质量相对容易保证等特点而受到教育界的广泛重视,网上教育促进了教育思想、教育方法、教育手段的更新。信息时代的未来教育,具有创造性、多样性、开发性和个性化的特点。未来教育发展层次的高低,与教育网络的建设与否息息相关。落后的教学手段与封闭的教学模式,再也不能适应未来教育的需求。在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着
2、变革和更新,而网络考试则是一个很重要的发展方向。基于Web技术的网络考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。试卷可以根据题库中的内容按条件组成,可避免考试前的压题;而且可以采用大量标准化试题,从而使用计算机判卷评分,大大提高阅卷的效率;还可以直接把成绩送到数据库中,进行统计分析、排序等操作。所以现在较好的考试方法是采用网络考试,试题内容放在服务器上,考生通用户名密码进行登录,登录后进行考试,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。因此,采用网络考试方式将是以后考试发展的趋势。网上考试是这个课
3、程建设其中的一部分,本文将重点介绍网上考试系统。1.2 系统的总体概述及其研究意义网络考试系统的实现技术有多种,可以采用传统的架构,即试题内容放在远程的服务器上,在考试机上安装考试应用程序和数据库客户机配置,因此每次考试时要对机器进行安装、配置,考务工作比较烦琐,而且考试程序放在客户机上,安全性也受到一定影响,因此本文讨论的网络考试系统采用Web 技术实现。Web技术采用了三层体系结构:用户界面层/事务层/数据库层,因此Web结构有着更好的安全性,在用户机上不需要安装任何的应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上,当然,事务层和数据库可以是同一台机器(如果条件
4、允许,还是应该把这两层分开在不同的计算机上)。本文讨论的系统中,先用管理员登陆,增加考试题目,生成试卷,并可管理用户(老师、学生)即向数据库中录入各类型的试题建立题库并进行维护。录入完毕后,可以按照一定的难度和要求组出多套符合条件的试卷,放入库内保存以便于考试时学生选择试卷。这些准备工作就绪后,学生可以参加考试,首先学生要注册,得到自己的用户名和密码(如果是一个班级同时参加考试,为了形式统一,也可以由管理员在考前按照学号将考生信息提前输入到学生管理表中,学生考试的时候便可直接登陆)然后由系统进行身份验证,验证通过后,选择相应科目试卷,此时系统开始计时,在此同时学生开始答卷,在规定的时间内答完试
5、卷提交,否则系统自动交卷,交卷后老师进入判卷评分模块,进行试卷评判,最后得出该生的卷面得分。分数而增强保密性。其次,迅速准确,公平公正。计算机考试系统可自动评分,迅速准确,无任何人为因素,从而避免人为误差及人情分等问题,保证考试的公平公正,避免三番两次得去找老师问分数。且老师可以不用手工批卷,省时省力。再次,便于组织大规模的异地实时考试。以网络技术为支撑的现代计算机应用,已经具备较大的规模并相当普及,利用计算机网络组织实施大规模的异地实时考试已成为现代考试中的一种重要的方式,计算机网上考试系统是其中最关键的一环。1.3 本考试系统的功能和特点本考试系统是由ASP.net+SQL Server数
6、据库开发的。主要具有如下功能:通过后台管理程序可以审核试卷和安排考试时间;考生注册和登陆;当有考生登陆后选择考卷;当考生答题完毕交卷后,自动给出得分,正误信息或者解答。本考试系统不仅美观大方,功能齐全,而且还有很好的安全策略:如果考生到考试规定时间未交卷系统会自动提交;已经交卷的考生不允许再次作答,这也是本考试系统最具特色的地方。考试流程如下:教师添加试题到题库系统自动生成试卷,通过后台管理程序的“试卷管理”页面,管理员审核所要生成的试卷,每套试卷题目数和分值,以及考试规定时间。第一次参加考试的考生需要先注册,并牢记用户名和密码。已注册过的考生登录后参加考试,按照要求作答,交卷。系统会自动把用
7、户提交的答案和标准答案比较,判断正误,并给出得分和相关提示信息,同时把考生成绩写入数据库,供老师评改查看。分析已有的考试系统,其设计思想如下:单选题放在一个表当中,可以看做是题库,存放着所有试题信息。考生考试时,由考试系统将生成的试卷给考生,只要考生登陆成功,由系统将试题发送给考生,考生按时作答提交。上述矛盾又有新的解决方法:限制登陆次数,例如只允许登陆三次,因为意外故障有一个概率问题,不会在一段时间内连续发生多次,但还是没有从根本上解决问题,一旦有意外故障发生,试题还是要更换。虽然网上考试系统有省时,高效等诸多优点,但毕竟还有不尽人意的地方,比如说:在线考试系统只能实现客观题目的自动评分,而
8、对于主观题目如:作文或者问答题还不能做到网上考试、评分。所以还有待于进一步的改进和完善。为了弥补以上不足,百尺竿头,更进一步,为了能把考试系统做的竟善竟美,我会继续努力的。2开发软件和开发环境 我这次开发程序所使用的开发工具是Microsoft Visual Studio 2005,数据库管理软件采用的是SQL Server 2000。2.1 开发软件Microsoft Visual Studio 2005是微软公司开发的服务器端的脚本编写环境,可以用它来创建动态WEB页或生成功能强大的WEB应用程序。使用ASP可以组合HTML页,脚本命令和ACTIVE X 组件来创建动态交互的WEB页和基于
9、WEB 的应用程序。严格说来ASP并不是一种语言,它只是提供一个环境来运行SCRIPT,我所用的语言仍然是C#。Microsoft Visual Studio 2005面向对象,有多种工具,大大简易了开发的难度。Visual Studio 是一套完整的开发工具集,用于生成 ASP.NET Web 应用程序、XML Web Services、桌面应用程序和移动应用程序。Visual Basic、Visual C+、Visual C# 和 Visual J# 全都使用相同的集成开发环境 (IDE),利用此 IDE 可以共享工具且有助于创建混合语言解决方案。另外,这些语言利用了 .NET Frame
10、work 的功能,通过此框架可使用简化 ASP Web 应用程序和 XML Web Services 开发的关键技术。211 公共语言运行库运行库实际上在组件的运行时和开发时操作中都起到很大的作用,尽管名称中没有体现这个意思。在组件运行时,运行库除了负责满足此组件在其他组件上可能具有的依赖项外,还负责管理内存分配、启动和停止线程和进程,以及强制执行安全策略。在开发时,运行库的作用稍有变化;由于做了大量的自动处理工作(如内存管理),运行库使开发人员的操作非常简单,尤其是与今天的 COM 相比。特别是反射等功能显著减少了开发人员为将业务逻辑转变为可重用组件而必须编写的代码量。 212 统一编程类该
11、框架为开发人员提供了统一的、面向对象的、分层的和可扩展的类库集 (API)。目前,C+ 开发人员使用 Microsoft 基础类,而 Java 开发人员使用 Windows 基础类。该框架统一了这些完全不同的模型,还为 Visual Basic 和 JScript 程序员提供了对类库的访问。通过创建跨所有编程语言的公共 API 集,公共语言运行库使得跨语言继承、错误处理和调试成为可能。从 JScript 到 C+ 的所有编程语言具有对框架的相似访问,开发人员可以自由选择它们要使用的语言。 213 ASP.NETASP.NET 建立在 .NET Framework 的编程类的基础上,为 Web
12、应用程序模型提供了一组可简化 Web 应用程序生成的控件和基础结构。ASP.NET 包括可用于封装通用 HTML 用户界面元素(如文本框、按钮和列表框)的一组控件。但这些控件在 Web 服务器上运行,并以 HTML 的形式将其用户界面呈现在浏览器中。在服务器上,这些控件公布面向对象的编程模型,该模型为 Web 开发人员提供面向对象编程的丰富功能。ASP.NET 还提供基础结构服务,如状态管理和进程回收,从而可以进一步减少开发人员必须编写的代码数量,并提高应用程序的可靠性。另外,ASP.NET 使用这些同样的概念使开发人员能够以服务的形式交付软件。使用 XML Web Services 功能,A
13、SP.NET 开发人员可以编写他们的业务逻辑,并使用 ASP.NET 基础结构通过 SOAP 交付该服务。有关更多信息,请参见使用托管代码进行 XML Web services 编程简介。2.1.4 系统与ASP.NET的运行环境的运行环境是.net framework 的开发环境是studio 2005,一般的开发环境安装程序中已经集合了运行环境。所以安装STUDIO 2005就行了,安装程序会让你自动安装.net framework 的!但开发环境不见得一定是使用STUDIO 2005的,有时只要记事本或一个文本编辑器就行了!运行环境必须安装。所以此时只安装 .net framework
14、就行了!Microsoft公司推出的支持ASP.NET的Web服务器有以下几个:Windows2000+IIS50(Internet Information Server即Internet信息服务管理器50)Windows XP +IIS50 (Internet Information Server即Internet信息服务管理器50)Windows 98 +PWS40(Personal Web Server 40即个人Web服务管理器)Windows NT 40 + Windows NT Option Pack目前的大型的站点大多数使用IIS作为服务器,而PWS是为一般的PC用户开发的。安装
15、服务器其中之一,成功之后就可运行ASP.NET程序。http:/localhost/temp.asphttp:/127.0.0.1/temp.asphttp:/您的计算机的名字/temp. asphttp:/您的计算机的IP地址/temp. asp注意:前三种方法指的是在自己的计算机上访问自己的ASP.NET文件,第四种方法指的是别人通过INTERNET访问你的ASP.NET文件,前提是你的计算机必须连入INTERNET且别人知道你的IP地址。3统需求分析首先,因为考试是面向特定的对象的,所以应试者进入系统应该进行身份认证。在线考试基于网络环境,能满足上述要求的试卷应该从服务器的数据库随机抽取
16、试题后动态生成的。另外,3 系应该对考试时间进行控制,时间到了会要求考试者交卷或强制停止考试。应试者提交试卷后,由计算机自动判卷,得出成绩。通过考试系统,管理员能够随时随地进行试卷的审核和发布,进行考生、考试成绩,新闻系统等的管理。3.1在线考试系统可行性分析可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。(1) 经济可行性:主要是对项目的经济效益进
17、行评价,本系统作为一个毕业设计,无需开发经费,对于我系在经济上是可以接受的,并且本系统实施后可以显著提高考试效率,有助于学院完全实现网络化管理。所以本系统在经济上是可行的。(2) 技术上的可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该管理系统采用了当前新兴的Client/Server 模式进行开发。结合了 Internet/Intranet 技术。数据库服务器选用微软公司的SQL Server 数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平
18、台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。3.2在线考试系统功能在本在线考试系统中,主要有“管理员模式”、“老师模式”、“学生模式”三部分。其中我负责“管理员模式”部分。在管理员模式下包括:试卷审核,考试安排,教师学生管理,课程班级管理,成绩查看,新闻发布,修改密码等功能。整个系统的用户主要有三类类:管理员、考生和教师。其中我负责的是“管理员”部分。这三类用户的相关信息都被存储在数据服务
19、器中,称之为合法用户。他们具有不同等级的权限,进入考试系统时,都必须经过系统的身份认证,只有其中的一种合法用户,才能进入系统,并对规定系统资源进行访问。以下管理员用例图。登录考试管理试卷管理考试安排数据管理教师管理学生管理课程管理班级管理新闻管理成绩管理修改密码图3-1 管理员登录用例图“在线考试系统”首先得体现出它是由计算机来代替人工完成考试中需要完成的一系列任务,达到考试智能化。必须能够自动生成试题,让考生在计算机上答题,“纸张化考试”中,每次考试教师均需花时间准备试卷。在“在线考试系统”中,试题可以在已建立的试题题库中随机自动生成减少人为因素的影响。必须能够自动批改每张试卷。“纸张化考试
20、”后教师的工作量大大增加,批改试卷,记录出错率较高的题目,统计学生成绩,最后写出考试小结报告。既然学生可以在计算机上答题,那计算机也就可以迅速地批改试卷。计算机统计出错率较高的题目和在基本问题上出错的考生记录,及时在程序中统计出考试单,大大提高教师分析试卷的效率。“在线考试系统”还要实现的一个重要功能是:让考生完全是自主的,从考试的申请到最后正式考试的结束完全是一个自主的过程,从根本上摆脱了传统考试模式的束缚。除此之外还能够智能控制考试的时间,也可以随时向广大考生开放,做到随到随考的功能,完全摆脱时间的束缚,这也是开放性要实现的一项重要功能。在线考试系统的主要目标是实现在线考试,围绕这一中心任
21、务,必须提供对在线考试的全面支持和其他考务辅助功能。包括自动出卷、自动评卷、成绩查询、用户信息管理、试题库管理、成绩管理等。3.3在线考试系统的性能 在线考试系统是基于网络的、可远程管理和操作方便的考试系统,为了使学生能够正常考试,既达到了传统考试的目的,又利用了网络的优势解决了传统考试不能实现的目标,为此,系统设计必须满足以下的要求:具有友好、简洁的界面,安全性要高,稳定性要强。(1)可靠性是指系统使用的软、硬件可靠性程度,是系统在运行中不发生或极少发生故障,在偶然事故及操作失误时,系统应具有较强自恢复能力,而不应造成系统死锁或信息丢失。(2)安全性要在非常情况下保证数据的丢失减少到最低限度
22、,在考生遇到特殊情况中断考试时,可以恢复考试。因此,在线考试系统应充分利用数据库的维护工具,便于数据备份、恢复,从而提高系统的安全性。(3)系统的简单易用性考试系统开发时要本着“简单易用”的原则。对于考生来说,只要掌握基本的计算机操作,便可完成整个考试过程,即使是没有操作过计算机的人来说,只需要进行简单的操作培训就可以达到熟练,使之能顺利的完成考试。3.4系统的物理架构基于B/S的网络考试模式,我们可设计出本系统的物理模型。一方面是管理员在一端通过局域网或Internet和服务器进行连接,另一方面是考生分别从不同的地方,也是通过局域网或Internet与考试服务器连接。见图4所示。后台数据库系
23、统服务器用户考试系统局域网或Internet 图3-2 系统的网络原理图4在线考试系统总体设计和详细设计在构造这个系统之前应该对此系统有个总体的思考,从程序实现的功能,程序目录框架结构,到编程当中可能遇到的问题以及该程序以后的扩展性有个总体的把握。在 线 考 试 系 统登 录管 理 员教 师学 生注 册考试管理数据管理新闻管理成绩管理修改密码管理题库管理制定试卷试卷列表成绩管理修改密码管理参加考试相看新闻查看记录管理信息修改密码管理图4-1 系统总设计框架4.1 在线考试系统4.1.1 管理员使用流程 管理使用图管理员登录考试管理数据管理新闻管理成绩管理编辑删除教师学生课程班级试卷管理考试安排
24、查看删除编辑/查看删除添加查看审核删除添加图4-2 在线考试系统管理员使用图为了更好更合理的开发这个系统,进行模块化设计是比较合适的。模块之间可以独立设计,以便设计可以同时进行,缩短开发时间。最后模块可进行独立测试,最终构成一个完整的系统。经过前期的分析,我将本系统管理员部分分为以下几大模块:登陆模块、用户管理模块、科目管理模块、试题管理模块、试卷管理模块和新闻管理模块。4.1.2 注册模块图4-3 注册页面4.2 各功能模块设计4.2.1 登陆模块登陆模块主要有两种功能:一、当有管理员登陆时,输入“用户名”和“密码”选择“管理员”选项,判断用户名和口令是否合法,如果不合法,则不允许进入系统,
25、并给出提示“用户名错误”或“密码错误”。图4-4 登陆模块用户名密码合法用户管理员登录管理员页面退出NY图4-5 管理员登录流程422 管理员登录首页模块图4-6 登录首页模块管理员登录首页模块主要功能有:(1)显示管理员的工具栏(左边)。(2)显示考试说明(右边)。423 考试管理模块图4-7 试卷管理模块图4-8 考试安排模块考试管理模块主要功能有:(1)可以查看从教师权限制定的试卷。如下图4-9(2)对试卷的审查。(3)制定考试时间,其中可以限定班级和能够考试的期限。如下图4-10。图4-9 审查试卷模块图4-10 安排考试模块424 数据管理模块图4-11 老师管理模块图4-12 学生
26、管理模块图4-13 课程管理模块图4-14 班级管理模块数据管理模块主要功能有:(1)管理教师(编辑、添加、删除),添加如下图4-15(2)管理学生(只有查看和删除)。查看如下图4-16(3)管理课程(只有删除)。(4)管理班级(只有删除)。图4-15 教师添加模块图4-16 查看信息模块425 新闻管理模块新闻管理模块主要功能有:(1)发布新闻(2)编辑新闻(3)删除新闻。图4-17 添加新闻模块图4-18 编辑新闻模块426 成绩管理模块图4-19 成绩管理模块成绩管理模块的主要功能有:(1)查看试卷的成绩和所对应的学生的信息,如下图4-20(2)将成绩导出EXCEL文件中,如下图4-21
27、。图4-20 成绩详情模块图4-21 导出成绩模块427 密码修改模块图4-22 密码修改模块4. 3 系统数据库设计在线考试系统是一个应用系统,所有的考生信息和试题信息都是保存在数据库中,在应用系统的开发过程中,数据库的结构设计是一个非常重要的问题。我们这里所说的数据库设计是指数据库中各个表结构的设计,包括信息保存在哪些表格中,各个表格的结构如何及各个表之间的关系。数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响,好的数据库结构设计会减少数据库的存储量,数据的完整性和一直性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等等。由于数据库设计的重要性,人们提出了
28、许多数据库结构设计的技术。但这些设计方法和设计者的工作经验有很大关系。因此要从基本上解决所有数据库结构设计的问题,就需要多进行实践,在实践中积累经验和教训。在进行了对试题结构的分析后,我在这个系统中设计的数据项和数据结构如下:表4-1试卷表表4-2测验表表4-3考试安排表表4-4分数表表4-5学生表表4-6教师表表4-7管理员表表4-8新闻表表4-9课程表表4-10班级表5系统连接在进行了整体详细的设计以后,就开始进行编码工作。也就是设计文件和把他们有机地组织在一起实现所有功能。5.1 ASP.NET连接数据库无论哪一种编程语言或编程工具,都必须先建立与数据库的联系才能访问数据库中的数据。AS
29、P.NET也不例外,要让ASP.NET能够访问数据库,最重要的环节就是设置访问数据库的接口。本系统中的所有程序采用的都是SQL Sever访问数据库。程序如下:6系统(管理员)测试及分析为了测试考试系统是否达到预期的目的,本系统先进行了各个模块的测试,经过修改和调整通过以后,再按以下步骤进行总体测试:(1) 输入题库中选择题3道。其中输入信息如下:题目,选项A,选项B,选项C,选项D,正确答案。然后分别对各类型试题做修改和删除测试,一切正常。测试用例编号测试用例用例覆盖的测试项1.1从题库中取题,重复出现了题号为(105)的题目。题目不重复但出现如下选项A.星型 B.树型 C.环型 D.树型。
30、生成的试卷符合系统的要求。(1)(2)(3)(4)1.2有两份或两份以上的试卷编号为(17)。在试卷编号为(15)的试卷中出现题号为(77)的两道题.试卷编号不重复但出现了两题或以上的题号为(105)的题目。(5)(6)(7)1.3用户第一次登录,抽取一份试卷,确定了试卷编号(18)。用户使用第一次登录的用户名和密码进行多次登录,试卷编号为(18).使用不同的用户名进行多次登录后,试卷的编号由(18)变为(19)。(8)(8)(9)(2)在对试卷管理进行测试时,管理员首先在试卷管理中输入信息。然后打开试卷管理表,可以看到生成的试卷信息。在本次测试中选用以下数据重新生成试卷:生成试卷数:20,每
31、套试卷中单选题题数:50,单选题每题分值:2。目 录第一章 项目的意义和必要性11.1 项目名称及承办单位11.2 项目编制的依据11.3 肺宁系列产品的国内外现状21.4产业关联度分析31.5项目的市场分析4第二章 项目前期的技术基础82.1成果来源及知识产权情况,已完成的研发工作82.3产品临床试验的安全性和有效性8第三章 建设方案233.1建设规模233.2 建设内容233.3产品工艺技术233.5产品质量标准293.6 土建工程373.7 主要技术经济指标39第四章 建设内容、地点414.1 建设内容及建设规模414.2 建设地点414.3外部配套情况44第五章 环境保护、消防、节能4
32、65.1 环境保护465.2消防495.3节能50第六章 原材料供应及外部配套条件落实情况526.1主要原辅材料、燃料、动力消耗指标526.2 公用工程54第七章 建设工期和进度安排567.1建设工期和进度安排567.2建设期管理56第八章 项目承担单位或项目法人所有制性质及概况578.1 项目承担单位概况578.2 企业财务经济状况588.3 项目负责人基本情况59第九章 投资估算与资金筹措629.1 项目计算期629.2 投资估算的编制依据及参数629.3 投资估算629.4 资金筹措649.5 贷款偿还64第十章 财务评价6510.1财务评价依据6510.2销售收入和销售税金及附加估算6510.3利润总额及分配6610.4盈利能力分析6610.5不确定分析6610.6财务评价结论68第十一章 项目风险分析,效益分析6911.1 风险分析6911.2 效益分析70