范文2毕业设计论文.docx
- 文档编号:7254415
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:50
- 大小:524.47KB
范文2毕业设计论文.docx
《范文2毕业设计论文.docx》由会员分享,可在线阅读,更多相关《范文2毕业设计论文.docx(50页珍藏版)》请在冰豆网上搜索。
范文2毕业设计论文
EasyExam学生在线考试系统
摘要
基于Internet的在线考试系统的开发是近年来非常热门的研究内容,因为它能使得教师和学生都能从原有的传统考试模式中解放出来,以可视化、多样化的方式通过Internet浏览器进行考试。
大大节省了考生的时间以及减轻教师的出卷阅卷工作。
但是从Web系统开发的角度来分析,目前的大部分在线考试系统都采用ASP(ActiveServerPages)开发,因为此技术本身的局限性,致使现有系统在安全性、性能等方面存在缺陷。
另外。
因为大部分在线考试系统开发时就采用“美工做个网站+程序员编写动态代码”的作坊式开发模式,系统在投入运行后维护非常困难。
本论文研究基于Microsoft的最新开发环境ASP.Net开发B/S结构的在线考试系统。
为了保证系统开发的成功和解决今后系统维护的困难,在开发时即采用引入了UML建模。
通过图型化的描述语言来描述系统需求和进行系统设计,方便了开发人员的相互交流和开发人员的理解。
论文对于UML建模用于B/S结构系统开发流程进行了探索。
在系统的实现部分,本论文研究采用C#程序设计语言,在ASP.Net环境下使用ADO.Net连接SQLServer2000数据库,借助InternetExplorer网络浏览器实现在线考试系统。
在论文的最后部分,对论文所研究的在线考试系统设计与实现的缺陷进行了剖析,以供相关技术的进一步研究参考。
关键词:
在线考试,UML建模,ASP.NET,B/S
EASYEXAMSTUDENTONLINETESTSYSTEM
ABSTRACT
Theresearchonthedevelopmentoftheonlinetestsystembasedoninternetisprettyhotinrecentyears.Thevisualanddiversemethodsfortestingthroughinternetexplorerenableteachersandstudentstogiveupthetraditionalwayoftesting,andalsohelptosavealotoftimeforstudentstodothetestandlessenteachers'workloadofmarkingthepapers.
However,whenanalyzingthetechnologydevelopmentofwebsystems,wefindthatmostofthecurrentonlinetestsystemsareusingASP(ActiveServerPages)diffusely.ThelimitationoftheASPlanguageitselfbringstheonlinetestsystemwithdeficienciesinsoftwaresafetyandefficiency.Inaddition,mostofthecurrentonlinetestsystemsarehardtomaintainafterrunningbecauseoftheworkshopdevelopmentmethodof"artdesigning+dynamicprogramming".
ThispaperdoesresearchonthedevelopmentofB/SarchitectureonlinetestsystembasedonMicrosoftASP.NETwhichisconsideredasthenewestdevelopingenvironmentofMicrosoft.Fortheguaranteeofsuccessfulsystemdevelopmentandsolutionstothedifficultiesofmaintenanceinthefuture,UMLmodelingisadoptedinthissystem'sdevelopment.Itiseasyforclientsanddeveloperstocommunicateandunderstandtousediagramstodescribetherequirementsanalyzeanddesignofthesystem.What'smore,thispaperdoessomeresearchonUMLmodelingforB/Sarchitecturesystems.
Forthepartofsystemrealization,thepaperdoesresearchontheimplementationofonlinetestsystem,inthedevelopingenvironmentofASP.NetwhichusetheADO.NettoconnectwithSQLServer2000database,withtheadoptionofC#languageandthehelpofInternetExplorer.
Inthefinalpartofthispaper,thedefectofonlinetestsystemdesignandimplementationisanalyzed,forthereferenceoffurtherresearchoninterrelatedtechnology.
Keywords:
Onlinetest,UMLModeling,ASP.NET,B/S
1绪论
1.1论文研究的背景
随着计算机应用的迅猛发展,网络应用不断扩大,使得在线考试成为网络研究与应用的热点之一。
基于Internet的在线考试己经成为现代考试方式的有力的补充和发展。
传统的考试模式的主要地点是教室,只要房间里面配备了桌椅,就可以成为考试的地方。
随着电子信息技术的发展,在线考试系统应运而生,它将突破传统考试模式的时间、空间限制。
随着计算机Internet技术的日渐成熟,使得原本处于理论研究阶段的在线考试逐渐成为可以实际应用的技术。
另外,我们也欣喜地看到,社会上许多考试也是在网上进行的,如(GRE)美国研究生入学考试、(GMAT)工商管理类研究生入学考试以及(CGFNS)全美护士国家委员会资格等。
1.2在线考试系统在国内外的发展现状
现阶段,学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。
显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。
为此在全国教育考试科研工作“十五”规划中,明确要求教育考试的科研工作要在教育评价体系中发挥重要作用,在考试研究领域创造出与我国教育事业蓬勃发展相适应的成果,以全面提高教育考试质量,推进考试事业的发展,为改革和完善教育考试制度工作服务。
国家在中小学教育中已经开展了建立题库的工作,大学英语四、六级考试(CET)都采用计算机抽题出卷的方式进行测验。
高等学校中生物学试题库建设是“九五”国家重点科技项目。
由最初的笔纸考试到计算机考试,这是未来发展的趋势。
随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。
当前的考试形式已冲破了传统的纸与笔的界限,越来越多的各类考试采用了计算机作为考试的工具,例如托福考试,全国计算机水平考试都已转为机考,国外很多知名IT公司的认证考试更是利用Internet把全球的考试中心联系在一起,让考生在考完试后第一时间知道自己的成绩,而总公司也可以根据成绩在最短时间内给考生的颁发成绩单和证书。
计算机在各类考试当中的应用不但节省了资源,还提高了评分的准确度,大大改善了考试工作的效率。
1.3基于.Net平台开发在线考试系统的研究意义
与传统的考试系统不一样,在线考试系统基于的是Internet这个开放平台以及Web浏览器。
它突破了时间和空间的局限性,并且可以借助于Internet的多元化表现形式,使考试的形式多样化,具有较强的现实使用意义。
此外,对于在教学内容不断更新的前提下,改进教学方法,利用Internet开辟在线考试系统使学生可以在网上对自己的知识进行测试,真正实现计算机教学方法和手段的现代化也有着理论研究意义。
虽然现在基于Internet的考试系统也不少,但是大部分基于微软的ASP(ActiveServerPages)环境开发,存在以下缺陷:
(1)基于微软的ASP技术开发的在线考试系统,安全性比较差,系统稳定性能不高;
(2)静态代码和后台代码的混合使用导致基于ASP的系统较难维护;
(3)ASP不适合于大规模的Web项目开发;
(4)在基于ASP的开发中,数据访问技术一般采用ADO(ActiveXDataObject),无法与微软现有的ADO.Net相媲美;
(5)对XML的支持不够。
2.NET技术研究
本章对阐述了.NET技术,并对ASP与ASP.NET和ADO与ADO.NET进行对比,分析微软的.NET技术的优势。
2.1.NET概述
.NET开发平台是从微软WindowsDNA(DistributedNetworkArchitecture)衍生而来的,DNA是微软前几年开发企业应用程序的平台。
随着三层/多层企业信息系统结构的发展和下一代分布式计算模型WEB服务的出现,企业应用中关于平台、框架、语言的竞争也愈演愈烈。
2000年6月微软公司宣布其NET战略,并开始对.NET这一全新概念进行宣传和相关产品进行研发。
一直以来,.NET给人的感觉比较抽象和笼统,无法给出明确的定义,也许引用微软首席执行官的说法容易让人理解:
“Microsoft.NET代表了一个集合、一个环境、一个可以作为平台支持下一代Internet的可编程结构。
”[1]
诚然,.NET是一个开发和运行软件的全新平台,便于开发基于Web的应用,拥有大量的运行库服务以支持用多种编程语言编写的组件,具有跨语言和跨平台的互操作能力。
.Net使高度分布式Internet环境下的应用程序开发得到了简化。
为XMLWeb服务和其他应用程序提供了一个高效的、安全的开发环境,并全面支持XML。
Microsoft的.NET战略意味着:
Microsoft以及在Microsoft平台上的开发者将来会重视制造服务,而不是制造软件。
Microsoft也陆续发布有关.NET的平台和工具,用于在Internet上开发Web服务:
2002年3月,微软在中国大陆发布了VisualStudio.NET。
一年后的5月份,微软在中国大陆发布VisualStudio.NET2003,这充分证明了微软的NET计划己经从战略逐渐变成现实。
2.2.Net框架结构
所有在.NET开发平台上创建的应用程序运行都需要运行两个核心块,即通用语言运行环境和.NetFramework类库。
图2-1.Net框架结构图
CommonLanguageRuntime(CLR)(通用语言运行环境),这是一个软件引擎,用来加载应用程序,确认它们可以没有错误地运行,进行相应的安全许可验证,执行应用程序,然后在完成后将它们清除。
[2]
CLR有两个主要的目标:
(1)提高应用程序的稳定性和安全性
(2)减少应用程序开发者所必须写的冗长而又易出错的底层代码的容量
.NETFramework类库,向程序员提供所需用来编写在CLR的控制下运行的代码的软件组件。
它们按照单一有序的分级组织提供了一个庞大的功能集——从文件系统到对XML功能的网络访问的每一样功能。
2.3ADO.NET介绍
随着.NET的出现,微软公司更新了其数据访问技术ActiveXDataObjects(ADO)并创建了现在的ADO.NET,ADO.NET是.NET框架中用于数据访问的组件。
ADO.Net把基于COM领域的ADO所具有的通用数据访问和易于编程的思想移植到.NET领域里。
ADO.Net和ADO在概念上很相似。
它们都是一种数据抽象层,用来消除不同数据提供者之间的差别,并且还包括预制对象和方法,用来方便数据的访问。
ADO.NET与原来的ADO结构相比有一些提高。
其对象模型与早期的ADO版本不同。
一方面,RecordSets(记录集)不再存在,Microsoft创建了支持断开数据连接和操作的DataAdapter和DataSet类,不必一直连接到数据库,允许更大的可缩放性,因此应用程序可以使用较少的资源。
另一方面通过ADO.NET的连接机制数据库直接可以被不同的应用程序使用。
因此,减少了连续连接到数据库和断开连接的需要,可以节省很多时间,提供了更好的协调工作能力与性能,是对以往以ActiveX技术为基础的ADO的一个革命性的改进。
[3]
2.3.1ADO.NET的对象模型
ADO.NET的类由两个部分组成:
数据提供程序(DataProvider)和数据集。
数据提供程序负责与物理数据源的连接,数据提供程序组件是数据源特有的。
.NET框架包含两种数据提供程序:
一种是SQLServer数据提供程序,另一种为一般的数据提供程序,它可以与任何一个OLEDB数据源通信。
数据集代表实际的数据。
这两个部分都可以和数据使用程序通信,如Web窗体和Windows窗体。
Connection对象负责与数据之间的物理连接。
若要访问数据库,都需要先建立到数据库的链接,它可以由我们自己生成也可以由其它对象自动生成,它的属性决定了数据提供程序、数据源所连接到的数据库和连接期间用到的字符串。
Connection对象的方法比较简单:
打开和关闭连接,以及改变数据库和管理事务。
Commmand对象代表在数据源上执行的一类SQL语句或一个存储过程。
当链接到数据库之后,可以使用Command对象对数据库进行操作。
DataReader是一种快速、低开销的对象,用于从数据源中获取仅转发的、只读的数据流。
DataReader不能用代码直接创建,只能够通过调用Command对象的ExecuteReader方法来创建。
DataAdapter是功能最复杂的对象,它是Connection对象和数据集之间的桥梁.它的主要作用是在数据源和DataSet对象之间传递数据,同时也可以对底层数据保存体进行数据的添加、删除或修改操作,它包含4个不同类型的Command:
SelectCommand,InsertCommand,UpdateCommand和DeleteCommand。
数据集是记录在内存中的数据,可以将其看成是一个缓冲区,它可以同时存储多张数据表,也可以将数据表之间的关联保存至本地端的主机,并加以浏览、编辑或是排版等。
DataSet是XML和ADO结合的产物,它的重要特点就是与数据库或SQL无关,只是简单地对数据表进行操作、交换数据或是将数据绑定到用户界面上。
2.3.2ADO.NET的数据库连接
对数据库进行操作,首先必须与数据库建立联系,接着通过SQL命令或存储过程(实际上也是SQL语句)告诉数据库打算进行什么样的操作,最后由数据库返回所需的数据记录。
整个结构图所示:
图2-2数据库操作结构图
使用对象连接数据库主要通过Connection对象来完成,使用Command对象操作数据库。
先定义command对象,再设置其属性来指定对数据库的操作。
将结果由数据库取回放置到DataSet对象中建立一个DataAdapter对象,输入一个Command对象当作参数,或者先不输入Command对象。
在稍后使用此对象的属性来建立。
然后显示执行结果,利用控件辅助ADO.NET输出结果。
2.3.3ADO.Net的优势
.NET中引入的ADO.NET的优势主要体现在:
(1)ADO.NET提供了对XML的强大支持
这也是ADO.NET的一个主要设计目标.在ADO.NET中通过XMLReader,XMLWriter,XMLNavigator,XMLDocument等可以方便地建立和使用XML数据,并且支持XSLT,DTD,XDR等标准。
ADO.NET对XML的支持也为XML成为.NET中数据交换的统一格式提供了基础。
(2)ADO.NET引入了DataSet的概念
DataSet是一个驻于内存的数据缓冲区,它提供了数据的关系型视图。
不管数据来源于关系型的数据库,或是来源于一个XML文档,我们都可以用一个统一的编程模型来创建和使用DataSet。
它替代了ADO的Recordset的对象,提高了程序的交互性和可扩展性,尤其适合于分布式的应用场合。
(3)ADO.NET中还引入了一些新的对象
ADO.Net中的新对象比如DataReader可以用来提高了数据读取的效率,产生一个只读的记录集等等。
2.4ASP.NET介绍
ASP.NET不仅仅是下一版本的ActiveServerPages(ASP),它是统一的Web开发平台,用来提供开发人员生成企业级Web应用程序所需的服务。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,用于生成更安全、可伸缩和稳定的应用程序。
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强该ASP应用程序的功能,ASP.NET可以无缝的与HTML编辑器和其他编程工具一起工作[4]。
当创建ASP.NET应用程序时,开发人员可以选择使用Web窗体或XMLWeb服务,或以自己认为合适的方式进行融合。
每个功能都能得到同一结构的支持,能够使用多种身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义。
接受客户端的数据请求:
在用户进行查询时。
当用户在客户端浏览器输入请求数据(如查询条件),然后进行提交时,用户的请求数据以HTTP请求字符串形式被发送回Web服务器。
在ASP.NET中,服务器端的Request对象负责处理请求字符串。
对象处理请求字符串的数据处理查询条件:
对于用户的输入的查询条件,通过Request,其方法与常规的定义方法后,可根据得到的数据,综合处理并生成相应的SQL查询字符串相同。
连接数据库进行数据操作井得到相应记录:
在ASP.NET中,对数据的访问主要是通过ADO.NET对象来实现的。
对ASP.NET访问处理过程主要分为两个步骤:
建立对数据库的连接和通过连接进行数据操作得到记录数据集。
将记录生成结果页面:
DataSet对象作为标准的记录数据集,支持标准的记录处理方法,比如求记录总数、得到记录字段值等.在得到查询记录后,通过这些方法可以将查询结果生成页面。
结果页面的生成与提交:
将查询结果写入结果页面后,Web服务器自动将页面发送回客户端浏览器。
同时,为了释放系统资源,应将创建的DataSet和Connection对象关闭并释放。
2.5C#语言介绍
C#是由Microsoft公司开发的一种新型程序设计语言。
由于它是从C和C++中派生出来的,因此具有C++的功能。
同时,它又像VisualBasic一样简单。
C#代表着程序设计语言演变的一个新阶段,它继承了C++和Java这两种世界上最重要的计算机语言的优点,并且还增加了指代、索引等创新性特点:
同时,C#语言利用了.NET作为其强大的平台,使得它在Windows图形用户界面、ASP.NETWeb应用、XMLWebService及ADO.NET数据库等方面有广泛的应用[5]。
程序设计语言C#的特点:
(1)与Web的紧密结合
C#程序能方便与Web程序进行集成。
利用ASP.NET的强大功能,C#能与Web标准,如HTML和XML相结合。
C#还能方便地开发Web服务。
紧密地结合SOAP(SimpleObjectAccessProtocol),使得C#开发大规模深层次的分布式应用成为可能。
(2)安全稳定
C#特有的机制是其安全性的保障,同时它去除了C++中易造成错误的指针,增加了自动内存管理等措施,保证了C#程序运行的可靠性。
内存瞥理中的垃圾收集机制减轻了开发人员对内存管理的负担,.NET平台提供的垃圾收集器(GarbageCollection,GC)将负责资源的释放与对象撤销时的内存清理工作。
同时,变量的初始化、类型检查、溢出检查等功能也充分保证了C#程序的安全稳定.
(3)具有丰富的类库
C#提供了大量的类,以满足网络化、多线程、面向对象系统的需要。
能用相应的类来实现从低级网络操作到高层网络应用。
语言包,提供的支持包括字符串处理、多线程处理、异常处理、数学函数处理等,可以用它简单地实现C#程序的运行平台。
实用程序包,提供的支持包括哈希表、堆栈、可变数组、时间和日期等。
输入输出包,用统一的“流”模型来实现所有格式的输入与输出,包括文件系统、网络、输入与输出设备等。
图形用户界面的功能强大,不仅能实现Windows窗口应用程序,而且可以实现Web窗体应用。
(4)灵活性和兼容性
在简化C++语法的同时,C#并没有推动灵活性。
C#允许与C风格的需要传递指针型参数的应用程序接口进行交互操作,动态链接库的任何入口点都可以在程序中进行访问。
C#遵守.NET的CLS,从而保证了C#组件与其他语言(如VisualBasicVisualC++,Jscript,J#等)的组件间的互操作性。
(5)支持多线程
C#中定义了一些用于建立、管理多线程的类和方法,使得开发具有多线程功能的程序变得简单、容易和有效。
3UML建模语言
本章介绍统一建模语言UML(UniversalModelingLanguage),重点分析UML的各种建模用图,为在线考试系统的分析、设计与实现奠定基础。
3.1UML概述
3.1.1UML的产生背景
从八十年代初面向对象技术逐渐兴起,到现在已占据了软件开发过程的主导地位。
其中,建模可视为面向对象分析(OOA)和面向对象设计(OOD)的核心,也是分析和设计过程中最基本和最关键的活动之一。
面向对象的分析和设计应该从建模开始,建模语言则一直是面向对象技术的研究重点。
面向对象分析与设计技术的发展在80年代末和90年代初出现了一个高潮,出现了多种用于系统建模的建模语言。
其中最具代表性并得到广泛应用的有DOSE,OMT和Booch。
它们各自都是一套完备的方法,并且具有某方面的优势。
在如此众多的建模语言中,并没有一种居于支配地位,且除了一些细微差别外,都共享一些公认的概念,从而为用户在应用中的选择造成了困难,使用户在采用面向对象建模方法时产生了犹豫。
因此,有必要在比较不同建模语言优缺点和总结面向对象技术应用实践的基础上统一建模语言。
UML正是在这种背景下诞生的。
3.1.2UML的发展及现状
UML的开发始于1994年10月,鉴于Booch和OM方法有很多相似之处,Rational公司的GradyBooch和JimRumbaugh共同合作把他们的工作统一起来,到1995年发行了统一方法(UnifiedMethod)的初版0.8版
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 范文2 毕业设计论文 范文 毕业设计 论文