基于ASPNET的网络考试系统的设计与实现_第1页
基于ASPNET的网络考试系统的设计与实现_第2页
基于ASPNET的网络考试系统的设计与实现_第3页
基于ASPNET的网络考试系统的设计与实现_第4页
基于ASPNET的网络考试系统的设计与实现_第5页
已阅读5页,还剩60页未读 继续免费阅读

基于ASPNET的网络考试系统的设计与实现.pdf 免费下载

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

文档简介

大连理工大学 硕士学位论文 基于ASP.NET的网络考试系统的设计与实现 姓名:王超 申请学位级别:硕士 专业:软件开发与测试 指导教师:孙伟峰 20090530 大连理工大学专业学位硕十学位论文 摘要 本文论述了网络考试系统的研究意义、应用前景和主要研究内容,并对系统中用到 的理论知识和相关技术进行了详细的阐述,重点介绍了网上考试系统的设计与实现,包 括可行性分析、系统分析、数据库设计、系统的实现、系统运行和调试等。 该系统由用户管理、题库管理、自动组卷、在线考试、自动阅卷、综合查询等功能 模块组成,具有5 个特点: ( 1 ) 实现题库数字化。利用数据库技术对试题库进行管理,便于实现试题的添加、 维护、分类、检索和制作试卷。 ( 2 ) 随机自动生成试卷。按照教师制定的组卷策略随机生成试卷,提高了出卷效率 和质量。同时避免考前的试题泄密,确保考试公正合理。 ( 3 ) 有效保存考试数据。考生的试卷、考试成绩都存储于数据库中,方便评阅试卷, 提高判卷的准确度,使考试过程规范化。 ( 4 ) 加强安全性控制。题库的编辑、修改,试卷的查询、考试成绩的查询,都需要 进行身份验证。同时增加了处理考试故障的恢复机制。 ( 5 ) 便利快捷。计算机考试系统提供了方便的考试环境,既节省了印刷试卷的成本, 又减轻了教师改卷的负担。 本文设计的在线考试系统具有通用性、良好的可扩展性和安全性、并易于维护等优 点,能满足目前的在线考试需求。 关键词:在线考试;考试恢复;系统安全 基于A S P N E T 的网络考试系统豹设计与实现 D e s i g na n dI m p l e m e n t a t i o no f N e t w o r kE x a m i n a t i o n S y s t e mB a s e d o nA S P N E T A b s t r a c t T h i sa r t i c l ed i s c u s s e st h es i g n i f i c a n c eo ft h ee x a m i n a t i o ns y s t e m ,a p p l i c a t i o na n d r e s e a r c h ,a n ds y s t e m su s e di nt h et h e o r yo fk n o w l e d g ea n dr e l a t e dt e c h n o l o g yi nd e t a i l , f o c u s i n go no n 1 i n ee x a m i n a t i o no ft h ed e s i g na n di m p l e m e n t a t i o no ft h es y s t e m ,i n c l u d i n g f e a s i b i l i 哆a n a l y s i s ,S y s t e m sa n a l y s i s ,d a t a b a s ed e s i g n ,s y s t e m ,a n ds y s t e md e b u g g i n g n l es y s t e mi sc o m p o s eo fu s e rm a n a g e m e n t ,b a n km a n a g e m e n t ,a u t o m a t i ct e s tp a p e r , o n l i n e e x a m i n a t i o n s ,a u t o m a t i cs c o r i n g ,c o m p r e h e n s i v ei n f o r m a t i o n ,s u c ha sf e a t u r e sa s s e s s m e n to f t h et e s tm o d u l e s ,w i t h5f e a t u r e s : ( 1 ) D i g i t a l i s eo fq u e s t i o n s 。T e c h n i c a lq u e s t i o n so nt h eu s eo ft h el i b r a r yd a t a b a s et o m a n a g e ,e a s yt oa d dt h ei t e mt oa c h i e v ea n dm a i n t a i n ,c l a s s i f i c a t i o n ,r e t r i e v a la n dp r o d u c t i o n o f p a p e r s ( 2 ) A u t o m a t i c a l l yg e n e r a t er a n d o mt e s t 。T e a c h e r si na c c o r d a n c ew i t ht h ed e v e l o p m e n to f t h et e s tp a p e rr a n d o m l yg e n e r a t e ds t r a t e g yp a p e r s ,t h ev o l u m ei n c r e a s e de f f i c i e n c ya n dq u a l i t y A tt h es a m et i m et oa v o i dat e s to ft h el e a kt e s tt oe n s u r eaf a i ra n dr a t i o n a le x a m i n a t i o n ( 3 ) T op r e s e r v ea ne f f e c t i v et e s td a t a C a n d i d a t e so ft h ep a p e r s ,e x a m i n a t i o nr e s u l t sa r e s t o r e di nt h ed a t a b a s et of a c i l i t a t et h em a r k i n gp a p e r s ,t oi m p r o v et h ea c c u r a c yo fg r a d i n g ,S O t h a tt h ep r o c e s so fs t a n d a r d i z e dt e s t s ( 4 ) E n h a n c es e c u r i t yc o n t r o l 。mp r o b l e m se d i t i n g ,r e v i s i o n ,t h ep a p e r Si n q u i r y ,t h e e x a m i n a t i o nr e s u l t so ft h ei n q u i r yw i l lr e q u i r ea u t h e n t i c a t i o n A tt h es a m et i m e ,a ni n c r e a s eo f e x a m i n a t i o nf a i l u r et od e a lw i 氆t h er e c o v e r ym e c h a n i s m 。 ( 5 ) T of a c i l i t a t ef a s t + E x a m i n a t i o no ft h ec o m p u t e rs y s t e mt of a c i l i t a t et h ee x a m i n a t i o no f t h ee n v i r o n m e n t ,n o to n l ys a v e st h ec o s to fp r i n t i n gp a p e r s ,b u ta l s ot Or e d u c et h eb u r d e no n t e a c h e r sp a p e r s 。 I nt h i sp a p e r ,t h ed e s i g no ft h eo n - l i n et e s ts y s t e m sa r ei n t e r - o p e r a b l e ,g o o ds c a l a b i l i t y a n ds e c u r i t y ,a n de a s yt om a i n t a i n ,e r e 。,t om e e tt h ec u r r e n td e m a n df o ro n 1 i n ee x a m i n a t i o n K e yW o r d s :O n l i n ee x a ms y s t e m ;E x a mr e c o v e r y ;S y s t e ms e c u r i t y I I 大连理工大学学位论文独创性声明 作者郑重声明:所呈交的学位论文,是本人在导师的指导下进行研究 工作所取得的成果。尽我所知,除文中已经注明引用内容和致谢的地方外, 本论文不包含其他个人或集体已经发表的研究成果,也不包含其他已申请 学位或其他用途使用过的成果。与我一同工作的同志对本研究所做的贡献 均已在论文中做了明确的说明并表示了谢意。 若有不实之处,本人愿意承担相关法律责任。 学位论文题目:基王墨望:盥里! 鲍圆络羞达丞统鲍遮让皇塞趣 作者签名:至丝日期_ 竺翌年三月丑鑫 大连理工大学专业学位硕十学位论文 大连理工大学学位论文版权使用授权书 本人完全了解学校有关学位论文知识产权的规定,在校攻读学位期间 论文工作的知识产权属于大连理工大学,允许论文被查阅和借阅。学校有 权保留论文并向国家有关部门或机构送交论文的复印件和电子版,可以将 本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印、或扫描等复制手段保存和汇编本学位论文。 作者签名:垂丝 导师签名: 日期:竺12 年上月三L 日 日期:巫牛年上月上 大连理工大学专业学能硕士学位论文 引言 考试与课堂教学一直是教学活动中两个最重要的环节。现在的各种考试大都采用传 统的考试方式,一次考试需要经过多个步骤,教师出题、印卷、考生考试、人工阅卷、 成绩评估和试卷分析等,消耗了大量人力物力,随着考试类型的不断增加及考试要求的 不断提高,教师的工作量将会越来越大,可以说传统的考试方式已经不能很好地满足现 代考试的需要。随着网络技术、远程教育的发展与普及,我们迫切要求用种新的方式 来进行考试,以减轻教师的工作负担、提高工作效率,提高考试质量,使考试更趋于客 观、合理和公证,更有利于教与学。 因此网络考试系统的软件开发是现阶段研究开发的一个热点。量前许多国际著名的 I T 公司所举办的各种认证考试绝大部分采用这种方式。它是建立在国际互联网上的应用 系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的网络考试系统 可以使用户在网上学习过后及时检验自己的学习效果,以发现自己的不足,使得学习效 率得到很大提高。在线考试系统中题网的生成、试卷的提交、成绩的批阅等都可以在网 络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所 要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担。 为了适应薪形势的发震,我进行了这一系统的初步设计工作,也可以说是徽一个初步的 探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出 来。 网络考试从根本上解决了传统考试过程中的工作量大、效率低、反馈周期长、反馈 能力弱、资源浪费等缺陷,成为现代教育技术发展与研究的方向。在我圈教育中,采用 网络考试系统对学生进行考试测评是学校教学改革的一个新的尝试。通过网络考试系统 有针对性的随机抽取试题库中的试题进行考试和评卷,可以客观、公正的评价学生的学 习效果,更容易测量趱学生的实际应用水平,对节省教学管理资源、提升教育评价的理 念水平具有定的实际研究价值和使用价值。 基于A S P N E T 的网络考试系统的设计与实现 1 绪论 1 1系统开发背景 目前,计算机和网络的应用己经普及到各行各业。尤其在大、中专院校,校园网的 建设已逐步完善,绝大多数学生已经具备了利用网络工具进行信息交流和辅助学习的能 力。然而,对于校园网作用的发挥,相当一部分学校只达到了I n t e r n e t 上网代理、对外 宣传、提供简单的文件共享与多媒体服务这样简单的应用层次。在学校教学环节中,仍 然过分依赖于传统的教学模式,对于网络的开发和应用程度还远远不够。即使是网络教 学系统,也大多为静态、无反馈信息的系统,很少提供在线练习与考试的功能。 国外率先成功采用远程网络考试系统主要有英语的T O E F L 、G R E 考试,及微软、 思科的水平认证考试,以及众多大学自行研制的课程学习测试系统。这些系统主要以选 择、判断等客观题的形式考核。国内较早进行考试系统研制的高校有西安交通大学、湖 南大学、重庆大学、西北大学等。起初,这些系统多采用C S 结构,如基于N O V E L L 网的考试系统的研制,全国计算机等级考试系统,四川省计算机等级考试系统等等。从 发展趋势看,教育不再是人一生中一个阶段内的事情,而是伴随终生的事情。现代人的 生存和发展需要不断的接受再教育,接受各种培训。不断增长的教育规模,导致考试认 证的规模也越来越大。这样的考试往往具有以下特点2 3 l : ( 1 ) 标准化程度高。考试往往有一个相对固定的考试内容范围,且试题类型相对稳定; 为便于自动化处理,在制定这些试题的时候考虑到了标准化问题,易于被计算机处理。 ( 2 ) 规模大、频率高。每一次考试的进行往往涉及几百人或几千人的规模,并且相同 的考试每年会举行多次,使得总体考生人数很大。采用计算机实现这些考试可以降低单 个平均成本。 ( 3 ) 要求处理速度快。频繁地举行这样的考试的同时,对后期处理的要求也越来越高, 用户希望在尽可能短的时间内得到最终结果。网络考试系统可以提高效率,满足这种需 要。采用C S 结构的考试系统,因需要对客户端计算机进行安装和维护,工作量大。还 有的采用混合结构,题库管理采用C S 结构,网上考试采用B S 结构,由于网络考试系 统多采用B S 结构,实现了客户端“零维护”,因此基于B S 结构的考试系统将是未来 网络考试系统发展的趋势眩1 。 大连理工大学专韭学徒硕士学健论文 。2 系统研究的意义 网络化考试是对传统考试的一种延伸与变革,它可以充分利用网络无限广润的空 闻,随时随地的对学生进行考试,不受时闻与空间酶隧鸯l ,大大地简化了考试的过程, 减轻了繁重的考试管理工作,避免了考试过程中的人为因素,提高了考试考核水平和管 理水平。与传统的考试耀泌,圈络仡考试系统的优势主要体现在如下几个方面w 1 : ( 1 ) 保密性强 在传统考试中,通常下发试卷等环节需要较长的时澜,接触的入员相对较多,给保 密带来一定的困难;丽在线网络考试系统则采焉试题库方式来提供试题来源,考前无任何 成套试卷;考试时考卷由计算机现场随机生成,各考生的试卷不完全相同,避免互相参看 导致作弊现象或不公平成绩等;试题麾可指定专人负责管理,麸丽增强傈密性。 ( 2 ) 客观性较强 采用传统考试时,出于患卷、印刷比较糜烦等蒙因,一般次考试所窜试卷套数较 少,试卷整体覆盖磷有限,容易形成小范围复习或猜题等倾向,影响了测试的客观性; 男方面也容易形成侔弊现象;藤在线考试系统采用隧机抽题组卷的方式,试题捆取面 穗对较大,并且同时生成多套试卷,试卷整体覆盖面大,可基本反映考生的实际水平, 防止突击复习或猜题、作弊得高分等现象,从丽保证考试的客观准确性。 0 遗速准确,公平公正 对于标准化试题而言,在线考试系统可自动评分,迅速准确,无任何人为因素,从 丽避免人为误羞及人情分等闷题,傈涯考试的公平公燕。 ( 4 ) 便予组织大规模的异地实时考试 以网终技术为支撑的现代计算枧应用己经具备较大的规模并相当普及,利用计算视 隧缀组织实施大规模的异地实时考试已成为现代考试中的一种重要的方式,在线嬲上考 试系统是其中最关键的一环。 5 ) 降低考试成本,提高考务管理效率 采用网络考试方式可以把教育者从繁重的考务管理工作中解放出来,而把精力重点 敖在试题库熬精心组织帮维护上,这方蘧可以有效酶提高测试水平,舞一方面也可以 节约入力、物力、财力从而降低考试成本。 网络考试从根本上解决了传统考试过程中的工作量大、效率低、反馈周期长、反馈 髓力弱、资源浪费等缺陷,成为现代教育技术发展与研究的方向博1 。在我国高等教育 中,采用网络考试系统对学生进行考试测评是学校教学改革的个新的尝试。通过网络 考试系统有钟对性的随机擒敬试题瘁中的试题避行考试翻评卷,可以客观、公正的评价 3 基予A S P N E T 的网络考试系统镌没计与实现 学生的学习效果,更容易测量出学生的实际应用水平,对节省教学管理资源、提升高校 教育评价的理念水平具有定的实际研究价值和使用价值珀1 。 3 现行系统调查 随着网络技术的发展,运行在单机上的考试系统基本上趋于淘汰趋势,主要原因是 单机运行的考试系统虽然没有网络需求,但缺乏数据共享、集中管理等功能,这样反而 给管理人员增加了较大的负担。目前,在一些硬件设施比较落后的地方,还有这样的系 统在使用;更多的是随着硬件设施的提高,选用这样系统自带的题库,完成自测工作。 美国是率先将计算机技术应用于教育测量的国家,目前己步入成熟应用阶段。许多 圈际著名的计算机和外语考试均采用基于网络的考试平台,这种通过计算机网络进行的 认证考试使我们不出国门就可以获得各种国际上通行的证书。例如微软的认证考试,考 试没有固定的时间,考生随时可以到各授权考试中心报名,在确定了考试时间后,提前 几天通知考试中心,就可以参加考试玎1 。 提供远程考试服务也已经成为一项颇有前景的产业,比如美国的思而文学习系统有 限公司就是一家专业从事教育和计算机化考试服务的公司,计算机辅助测试是该公司主 要经营的业务之一。该公司组织的C A T ,考题可通过网络传送到遍及世界的各个考场, 考试大多采用标准选择题,考生只需提前通过注册,便可以参加考试;考试结束后考生 马上就可以知道考试成绩,同时考生成绩也会立即通过网络传送到相应的授证机构。当 今大部分的授证机构( M i c r o s o f t 、C i s c o 、O r a c l e 等) 均委托思而文公司为其进行测试、评 估。 国内远程教育的发展也促成了一批远程在线考试系统或实现类似功能的系统,如上 海交通大学远程教育中心尝试开发了远程考试系统,北京杰佛软件技术开发有限公司开 发了杰佛通用考试系统,英时软件公司开发了P o w e r E x a m 通用网络考试系统,成都祥 和源科技发展有限公司开发了N e o e x a m 在线考试系统等等嗵1 。 目前较多的在线考试系统是采用c s ( 客户机服务器) 模式开发的,这种模式下的考 试系统要求在客户端单机和服务器上都安装考试应用软件。客户端软件主要包括考试和 窦动阅卷模块,负责显示考试界面、考试计时并提供自动评卷及与服务器进行联络的功 能;服务器端软件主要包括题库管理和考试管理模块,负责维护题库、生成试卷、考试 监控及考后必需的人工阅卷、成绩的收取、统计、汇总等工作。考生在单机上参加考试, 考试结果被系统收集到服务器指定的目录下。 大连理工大学专韭学髓硬士学位论文 比懿全国计算枫等级考试的一级、= 级V F 和V B 鳇上枧考试就是属于这种模式酶 考试系统。这种模式下的考试系统对客户端的软件有很大的依赖性,不易维护并且维护 成本较高,不适用于组缓大范嗣於考试。 近几年随着A S P 、J S P 等网页交互技术的出现,基于B S ( 溺J 览器H I 务器) 模式的在 线考试系统逐渐引入注舅。这种模式下的考试系统是一个基于数据库和W e b 技术豹远 程在线实时测试系统,这种系统的客户端除了测览器外,无需再安装其它任何应震软件, 而网样具有自动出题、自动评卷、保存和汇总成绩等功能,同时系统的维护和升级都非 常方便。考生通过I n t e r n e t 即可登录参加考试,不爵受地域稻时间薛限制。暮前基于这 种模式的网络考试面向的主甍是社会上的培训认证考试( 如微软的各种认证考试) 和远程 教育的考试。 这种方式适应了现代教育的需要,特别是在远程教育日趋成熟的今天,它代表了未 来考试系统的发展方怒。本论文的研究课题就是基于B S 模式的在线考试系统的设计。 众所周知,考试需要监考,那么随时随地可以进入的网络考试又如何实施瞩? 按照 目前的情况,针对网络考试的组织状况将其分为三种类型: ( 1 ) 完全开放型:这静类型适合融我认定牲质的考试,属于对所学知识进行检验酶 自我考核。它完全可以在互联网上公开进行,可在任何网络环境中进行,不需要监考, 饪何时闻、地点隧时考试。往往考试绪采立即可翘,非常方便,一般是不收取费耀的。 如网上公开的一些小型知识闯答。 ( 2 ) 半开放型:这种类型适用于社会上认诞性质的考试。它需要被试者个人枣请, 荠按要求在指定的考点上网参加考试。这些考点是由所认定的考试机构专门开设的,有 专人监考,一般是随机服务方式,随剥随考,考完立即知晓成绩,一般是要收取一定考 试费用嚣。知微软的各静认证考试。 ( 3 ) 组织型:这种类型适用于单位、学校及社会认证性质的考试。通过集体申请, 在认定的考试撬构专门牙设的大型考点上网参麴考试,也有专入监考,要定时定点,浚 不收费用由机构自定,如学校机房针对在校学生的网上考试。 以上这三种类型的网络考试都仅仅需要测览器就可以了,无须安装考试系统期题 疼,所有信意和考试结果都在服务器上。 本系统就是基于组织型的在线考试系统设计与实现。 。4 考试系统的功能和作用 在线考试系统为考生提供登录、注煺、在线考试等功能。是基予计算机网络的应用 系统。它可以使考试不受时间,地域的限铡,一方面极大地减轻了教耨感题、改卷的工 基于A S P N E T 的网络考试系统的设计与实现 作量,另一方面使学生能随时检验自己的学习效果,使学习效率得到很大提高。在线考 试系统中题目的生成、试卷的提交、成绩的批阅等都可在网络上自动完成,只要形成一 套成熟的题库即可实现真正的无纸化考试。 本系统在功能上特别注意以下几个方面: ( 1 ) 考试结束前的1 5 分钟、1 0 分钟、5 分钟时对考生进行提示 ( 2 ) 考试结束后若考生没有进行试卷提交则自动进行试卷保存处理。 ( 3 ) 系统要有防止考生无意中关闭系统或者提交试卷而导致考试无法继续时能够转 移考试计算机继续考试的机制。 ( 4 ) 系统对具体试卷的客观题自行判分,主观题则由老师判分。 ( 5 ) 要保证在同一次考试中系统生成的各份试卷难易度保持在同一个水平。 综合而言,本系统是利用A S P N E T 与S Q L 技术开发的在线考试系统。它使用方便, 操作简单,具有用户注册,多用户同时在线考试、自动判卷、题库管理、用户管理、成 绩管理等功能。希望本系统能够在考试中发挥高效、便捷的作用,为考试技术的改革起 到作用四1 。 1 5 本章小结 本章主要讨论了本课题的研究背景和研究意义,并通过对现行系统存在问题的分析 提出了本课题的研发目标,并对该研发目标进行了社会效益、技术基础、资源保障等全 方位的可行性分析,从而为进一步的开发指定一个明确的思路。 大连理下大学专业学位硕士学位论文 2 系统开发环境与相关技术 2 。1开发环境 微软开发的N E TF r a m e w o r k 是一种新的计算平台,它简化了在高度分布式I n t e r n e t 环境中的应用程序开发。N E TF r a m e w o r k 旨在实现下列目标:提供一个一致的谣向对 象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在I n t e m e t 上 分布,或者是在远程执行的。提供一个将软件部署和版本控制冲突最小化的代码执行环 境。提供一个保证代码( 包括由未知的或不完全受信任的第三方创建的代码) 安全执行的 代码执行环境。提供个可消除脚本环境或解释环境的性能问题的代码执行环境。使开 发人员的经验在面对类型大不相同的应用程序( 如基予W i n d o w s 的应用程序和基于 W e b 的应用程序) 时保持一致。按照工业标准生成所有通信,以确保基于N E TF r a m e w o r k 的代码可与任何其他代码集成。 N E TF r a m e w o r k 具有两个主要组件:公共语言运行库( C L R ) 和N E TF r a m e w o r k 类库 ( F C L ) 。公共语言运行库是。N E TF r a m e w o r k 的基础,可以将运行库看作一个在执行时管 理代码的代理,它提供核心服务( 如内存管理、线程管理和远程处理) ,而且还强制实施 严格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性。事实上,代码管 理的概念是运行库的基本原则。以运行库为露标的代码称为托管代码,褥不以运行库为 目标的代码称为非托管代码。N E TF r a m e w o r k 的另一个主要组件是类库,它是个综 合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包 括传统的命令行或图形用户界面( C U D 应用程序) ,也包括基于A S P N E T 所提供的最新 创新的应用程序( 如w e b 窗体和X M L w e b s e r v i c e s ) 。N E TF r a m e w o r k 可内非托管组件承 载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建 一个可以同时利用托管和非托管功能的软件环境。N E TF r a m e w o r k 不但提供若干个运 行库宿主,两且还支持第三方运行库宿主的开发“。 N E T 框架使开发人员更喜欢使用现在的( 而不是早期的) 开发平台技术。尤其是N E T 框架确实实现了代码重用、代码规范化、资源管理、多语言开发、安全、部署和管理。 新平台通过C L R 和F C L 提供了以下功能: 致的编程模型:现在的操作系统的某些功能是通过动态链接库访问的,另一些功 能则通过C O M 对象访问,丽C L R 和F C L 使所有的应用程序服务都是通过一个公用的 面向对象的编程模型访问的。 基于A S P N E T 的网络考试系统的设计与实现 简化编程模型:C L R 致力于简化W i n 3 2 和C O M 所需的基础结构。尤其是,C L R 使开发人员无需理解以下概念:注册表、全局唯一标示符等。C L R 使开发人员无需了解 这些概念,这些概念并不以C L R 的任何形式存在。当然,如果想编写一个与现有的 非N E T 框架交互的N E T 框架应用程序,则必须熟悉这些概念。 2 。1 。1 关于A S P N E T A S P N E T 是一种用于创建基于W e b 的应用程序的编程模型。从本质上来说,运行 时和N E TF r a m e w o r k 类库集可以用于创建动态W e b 页。它需要在W e b 服务器的环境中 运行,例如M i c r o s o f tI n t e m e tI n f o r m a t i o nS e r v e r ( M i c r o s o f t 互联网信息服务器,I I S ) ,并 且根据服务浏览器请求指示在服务器上执行程序。与直接由W e b 服务器提供的静态 H T M L 不同的是,A S P N E T 页面实际上是在服务器上执行以后再产生结果的。页面的 最后生成也是由许多不同的指令和数据源构造的。 A S P N E T 页面以。a s p x 扩展名存储。页面由程序员将文本、标记( 例如H T M L ) 以及 A S P N E T 特定服务器标记和脚本组合在一起,然后存储在W e b 服务器上。可以将存储 后的A S P N E T 页面看成是一套描述如何创建一个H T M L 页面的指令。当该页面被请求 浏览时,服务器端程序将会用纯标记来创建一个客户端浏览器可以读懂并能呈现( r e n d e r ) 的页面。因为呈现后的输出是纯标记,所以任何浏览器都能够读懂;所有的动态过程都 发生在W e b 服务器端。A S P N E T 特定服务器标记非常强大,例如,它可以对用户的动 作作出反应,连接至数据存储以及自动创建非常复杂的H T M L 结构川1 。 正像前面提到的那样,A S P N E T 只是N E TF r a m e w o r k 的一部分,所以A S P 。N E T 页面可以利用这个框架提供的所有服务,包括连网、数据访问、安全以及更多其他服务。 因为A S P N E T 可以使用所有这些服务,所以相比以前,能够创建更加丰富的W e b 应用 程序。只需花少量的时间来构建所有应用程序所需的构建块,而将大多数时间用在应用 程序独有的特殊逻辑上。 A S P N E T 还在W e b 编程中引入了一些独特的新技术,可以在典型的动态服务器页 面( A c t i v eS e r v e rP a g e s ,A S P ) 上极大地改善开发模式: 语言独立性因为A S P 。N E T 是N E TF r a m e w o r k 的一部分,所以可以使用您自己 选择的语言来构建A S P N E T 应用程序,例如C 群、V B 或J 撑。而典型的A S P 则仅限于J S c f i p t 或者V B S c r i p t 页面。 编译而不是解释与典型的A S P 在每一次页面请求时都解释编程结构不同, A S P N E T 在服务器端动态地将页面编译成可以运行得非常快的本机编程指令。可以很明 显地看到典型的A S P 页面的性能与相同A S P N E T 页面的性能之间相差的数量级别。 大连理工大学专业学位硕士学位论文 事件驱动编程模式在典型的A S P 中,页面总是以自项向下的线性方式执行, 并且H T M L 标记常常与程序指令混合在一起。任何个有一定A S P 经验的人都知道这 样会使得页两难以阅读,甚至更加难以维护。A S P 。N E T 孳| 入了事件驱动模型,这个模型 允许您将代码与标记内容分离,将代码并入处理专门任务的有意义的单元中,例如响应 客户端的按钮单击动作。这个类似V B 的事件模型极大地提高了页面的可读性和可维护 性。 服务器控件典型的A S P 需要动态地将H T M L 片断代码接合在一起呈现,这样 做的结果就是在应用程序中一遍又一遍地编写相同的代码f 您需要多少次才能从数据库 查询中构建一张表格) 。A S P N E T 带给W e b 编程的一个最大的好处就是能够将公拱的呈 现和行为封装成服务器控件( S e r v e rC o n t r 0 1 ) ,面以在应用程序中缀方便地重复使用。就 像H T M L 标记一样,服务器控件以声明的形式创建,但是表现为一个位于服务器端的 可编程对象,它可以与代码进行交互并输出定劁的动态H T M L 呈现。A S P N E T 包含了 大约8 0 多个服务器控件,这些控件封装了从标准表单元素到复杂控件( 如网格和菜单) 的所有内容。 控件设计时间的改善( 当使用V i s u a lW e bD e v e l o p e r 时卜开发人员通过使用设计 时间界面可以减少花赞在开发复杂页面上的时间,这些界面包括敏捷任务面板、标签级 导航栏和可以设置控件属性的向导。 A S P N E T 的第一个版本( 1 0 和1 1 ) 在2 0 0 1 年至2 0 0 3 年间迅速风靡了M i c r o s o f t 的 开发阵营。程序人员很快便感觉到他们通过使用强大和灵活的N E TF r a m e w o r k 可以大 大减少编码时间,而且C I O 们也看到当程序员花在解决客户代码的疑难问题上的时间减 少时,他们就可以将更多的资源投入到更高级的I T 结构的改善上。A S P N E T 确实是一 个里程碑式的版本,它简化了开发人员的工作。 但是,就在第一个版本发布之前,M i c r o s o f t 的A S P N E T 小组就已经在为开发 A S P 。N E T2 0 丽工作了。他们以下面雄心勃勃的目标来开始他们的工作: ( 1 ) 使创建一个典型的W e b 应用程序所需代码行数减少7 0 。 ( 2 ) 提供一套可扩展的应用程序服务,用来为通用应用程序任务提供构建块,例如 成员、角色、个人化以及导航等。 ( 3 ) 创建一系列基于任务的服务器控件,这些控件可以调节上述服务,交付完全、 可定制的用户接口娜1 ) ,以最小的代码量来展示这些服务。 ( 4 ) 当与N E TF r a m e w o r k 协同工作提供页面服务时,改善I I S 的性能。 ( 5 ) 提供管理功能,以便秀瑟强A S P 。N E T 服务器的部署、管理和运行。 基于A S P N E T 的网络考试系统的设计与实现 ( 6 ) 改善宿主公司所用的工具,以便可以支持多站点并能够将开发人员的项目迁移 至公共部署环境。 ( 7 ) 让A S P N E T 的几乎所有特性都能够方便地扩展或者用定制的高级任务的执行 替换。 基于以上的分析本系统采用A S P N E T 的架构实现。 2 1 2C # 语言概述 C 撑语言源于C 和C + + ,是微软专门为N E T 设计的语言。C 拌和N E TF r a m e w o r k 同 时出现和发展。由于C 撑出现较晚,吸取了许多其他语言的优点,解决了许多问题。简 单的看来,C 拌仅仅是N E T 开发的一种语言。但事实上C 拌是N E T 开发中最好的一门语 言,这是由C # 自身的设计决定的。作为专门为N E T 设计的语言,C 拌不但结合了C + + 强 大灵活和J a v a 语言简洁的特性,还吸取了D e l p h i 和V i s u a lB a s i c 所具有的易用性。因而 C 群是一种使用简单,功能强大,表达力丰富的全新语言。应用C 撑,可以进行W i n d o w s 应用程序、W i n d o w s 控件库、W e b 应用程序、W i n d o w s 服务、W e b 服务、报表应用程 序、O f f i c e 等开发。同时,C 群还具有大多数程序员所需要的特性:功能强大、语法简单、 文档齐全、支持良好。 相对于其他编程语音,J a v a 有一个无庸置疑的优点:用户以及编译器第一次不必了 解生成可执行代码的特定C P U 细节。J a v a 引入了一个编译代码中间层,叫做字节代码, 并使用一个虚拟抽象的机器,而不是一个真实的机器。当J a v a 编译器结束了一个源文件 的编译后,你所得到的不是可以立即在一个给定平台上运行的代码,而是可以在任何真 实的平台上运行的字节代码,唯一的条件就是这个平台要理解和支持J a v a 。这些发展包 含着一个文化的变革。作为一个开发人员,你只需要确定J a v a 虚拟机( J V M ) 提供的抽象 层,不同的O S 销售商负责执行代码层,从而将中立于平台的字节代码映射到主机平台 的机构中。在这种情况下,J a v a 似乎是统一分布式计算机世界的领袖候选人了。“编写 次,永远运行”( 并且无论在哪里) 一度成为J a v a 诱人但却真实的1 2 1 号。那么为什么说 J a v a 只是“似乎 是一个好东西呢? 跨平台理论的发展很好地证明了这一点。我们看到, 将J a v a 代码从一个平台移植到另一个平台_ J a V a 这个语言最重要和最受吹捧的特点一 并不像宣传的那样容易。任何J a v a 平台都有其自己的虚拟机,它可以理解通用的字节代 码,并且及时地将其编译为本地代码。矛盾由此产生,不同虚拟机的执行也很不相同, 这一点足以使代码的移植比预期耗费多得多的时间,而且基本上不是自动的。那么,J a v a 模型的好处在哪里呢? 首先,J a v a 是一种先进的、面向对象的语言,包含了预防常见错 误的内置功能,并在仅仅一两个对象中携带了许多经常需要用到的功能。与C + + 相比, 大连理T 大学专业学位硕士学位论文 J a v a 更易于读写,不容易出错,而且更加美观,但是它速度较慢也不太灵活。想实现在 任何软件和硬件平台上都可虚拟移植,J a v a 尽可能少地使用了公分母模型,也就是说放 弃了将每个平台开发到极限的能力。第二,虚拟机的概念本身就是可移棱和可共用的, 因此对于分布式环境来说是理想的。J a v a 对于为非W i n d o w s 平台开发代码是最好的语 言。那么对于W i n d o w s 平台来说,J a v a 又怎么样呢? 让J a v a 适应W i n d o w s 是不可能的, 这是由于S u n 的许可约束问题。但是J a v a 实在是太吸引入了,M i c r o s o f t 比谁都能更清 楚这一点。因此,M i c r o s o f t 又一次采取了“拿来主义 的手法,很好地利用了J a v a 的 众多特性,隆重推出了W i n d o w s 平台的新锐力量,它就是相当简单但十分强大的面向 对象的C 撑编程语言。C 拌超过了C + + ,它天生就包含了N E T 框架类库中的所有类,并使 语法简单化。可以说,J a v a 具备的优点,C 器都可以或者都将具备。 C 撑是N E T 的关键性语言,它是熬个N E T 平台的基础。与C 撑相比,N E T 所支持 的其它语言显然是配角身份。比如,V B N E T 的存在主要是对千万个V B 开发人员的负 责。对于J S c r i p t N E T 和M a n a g e dC + + 也同样可以这么说,后者只是增加了调用N E T 类的C 抖语言。C 撑是唯一没有在设计思路中加入了前辈语言某种遗传的新事物。N E T 平台将C 莓作为其固有语言,重湿了许多J a v a 的技术规剡。C 霉中也有一个虚拟枫,叫做 公用语言运行环境( C L R ) ,它的对象也具有同样的层次。但是C 拌的设计意图是要使用全 部的W i n 3 2A P I 甚至更多。由于C 毒与W i n d o w s 的体系结构相似,因此雠很容易被开 发人员所熟悉2 】。 J a v a 的躐的是要拯救分布式计算世界,C 撑则不同。C 嚣本质上是e + + 的进化产物, 使用了包括声明、表达式及操作符在内的许多C + + 特征,但是C i 还有更多的增强功能, 比如类型安全( t y p e S a f e ) 、事件处理、碎片帐集、代码安全性等。 鉴于C 雾强大的功能合易用性,本系统选择C 孬语言两不是J a v a ,V B 。n e t 等其他语言。 2 。2 面向对象的程序设计思想 要想使开发的考试系统具有良好的稳定性和可扩展性,使用面向对象的开发方法是 目前最好的选择。面向对象技术经过多年的研究实践,已经成为一种成熟有效的开发方 法。 面向对歙的方法是一种分析方法、设计方法和思维方法。面向对象方法学的出发点 和所追求的基本目标是使人们分析、设计与实现一个系统的方法尽可能接近人们认识一 个系统的方法。也就是使描述问题的问题空间和解决问题的方法空间在结构上尽可能一 致。其基本思想是:对闯题空闻进行自然分割,以更接近人类思维的方式建立闻题域模 型,以便对客观实体进行结构模拟和行为模拟,从而使设计出的软件尽可能直接地描述 基于A S P N E T 的网络考试系统的设计与实现 现实世界,构造出模块化的、可重用的、维护性好的软件,同时限制软件的复杂性和降 低开发维护费用。 面向对象程序设计将数据及对数据的操作融为一体,作为一个相互依存、不可分割 的整体来处理。它采用数据抽象和信息隐藏技术,将对象及对象的操作抽象成一种新的 数据类型,并且考虑到不同对象之间的联系和对象类的重用性。面向对象程序设计所追 求的目标是将现实世界的问题求解尽可能简单化,采用符合人类处理问题的思维方式。 它用“对象 表现事物,用“事件表示处理事物的动作,用“方法”表现处理事物的 过程,用“消息”传递对象与对象之间的相互联系。 面向对象程序设计时,不再是单纯地从代码的第一行一直编写到最后一行,而是考 虑如何创建对象,利用对象来简化程序设计,并提供代码的可重用性。同时面向对象程 序设计也吸取了结构化程序设计的优点。面向对象程序设计支持先进的软件开发策略: 编写可重用代码,编写可维护的代码,共享代码,优化己有的代码等。有了高质量的可 重用代码就能有效地降低软件的复杂性,提高软件开发效率。开发者在设计软件时可以 利用一些己经精心设计好并且经过测试的代码,这些可重用的代码被组织和存放在程序 设计环境的类库中,使以后程序设计过程变得更简单。 面向对象程序设计方法具有模块化、信息封装与隐藏、抽象性、继承性、多态性等 特点,它又解决了软件系统设计与管理中所需的软件可靠性、可重用性、可扩充性、可 维护性及提高开发效率等问题。 在本系统设计过程中使用了面向对象的程序设计方法,对系统进行分析与设计,利 用面向对象的特点对组卷逻辑、试题表等封装和集成,当需要添加新的组卷逻辑时候, 无需修改已有的程序,只要为新的组卷逻辑添加一个具体逻辑类。添加新的题型或题库, 也不需要大量改动现有的程序结构,只要添加相应的试题表类。 2 3 系统架构分析 2 3 1C S 结构分析 客户机服务器架构的特点是由客户机向服务器发出指令,而数据的存储和处理均在 服务器上进行。在服务器完成对数据的处理后,将运算结果返回给客户机,用户就可以 利用安装在客户机上的应用程序对结果进行二次处理。 但由于C S 架构主要是针对局域网的应用环境设计的,因此适合在企业内部的 I n t r a n e t 上使用,而无法在I n t e m e t 上得以高效应用,C S 结构的弱点主要表现在: 大连理T 大学专业学位硕士学往论文 ( 1 维护升级困难:由于客户端与服务器共同分担应用计算,这就要求在客户机上 安装相应的处理程序,这样容易造成管理混乱,维护升级非常不方便。当需

温馨提示

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

评论

0/150

提交评论