(计算机应用技术专业论文)基于NET平台的智能答疑系统的研究与实现(1).pdf_第1页
(计算机应用技术专业论文)基于NET平台的智能答疑系统的研究与实现(1).pdf_第2页
(计算机应用技术专业论文)基于NET平台的智能答疑系统的研究与实现(1).pdf_第3页
(计算机应用技术专业论文)基于NET平台的智能答疑系统的研究与实现(1).pdf_第4页
(计算机应用技术专业论文)基于NET平台的智能答疑系统的研究与实现(1).pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

江苏大学硕士学位论文摘要智能答疑系统作为网络教育体系不可缺少的一个子系统,它的发展和完善有待于多种技术的成熟和综合应用,本文研究并实现了一个基于n e t 平台的智能答疑系统。本文首先分析了国内外网上答疑系统的现状,从网络教育发展过程中提出的新需求出发,明确本论文的研究任务。在m i c r o s o r 的n e t 战略中,a sp n e t 是一项核心技术,应用a s p n e t 技术可以在服务器开发动态的可进行交互的功能强大的w e b 应用程序,论文分析了n e t 技术在开发智能答疑系统中的优势和技术手段。在对几种常用文本信息检索模型的分析及对全文检索模型性能评价的基础上,本文介绍了开源的全文检索搜索引擎d o t l u c e n e 的系统组织结构,分析了其中的关键数据流,提出在智能答疑系统中采用d o t l u c e n e 进行二次开发的方法来实现全文检索。在全文检索的基础上,本文提出一种受限领域自然语言处理新方法。该方法绕开自然语言分词困扰,采用关键词表中的关键词匹配自然语言文本,获得全文检索的关键词组合,实现对自然语言提问的解答。最后本文利用a s p n e t 及a d o n e t 技术构建了整个智能答疑系统框架,并实现了一个集浏览、搜索和自然语言提问等多种功能的智能答疑系统。结果表明,本文所用方法和技术是合理有效的,应用于网络课程答疑具有较好的效果。关键字:n e t 平台,智能答疑系统,中文全文检索,自然语言理解,网络教学基于n e t 平台的智能答疑系统的研究与实现a b s t r a c tw h i l et h ei n t e l l i g e mq i l e s t i o n - a n s w e r i n gs y s t c m ( i q a s ) h a sb e e nw i d e l ya c c e p t e da sas u b s f a f l t i a jp a r to fe e d u c a t i o n ,i t sc o r et e c h n o l o g yi sb y 陆n o tm a t u r e d o n g o i n gr e s e a r c he 娲n sh a v eb e e np u to nd e v e l o p i n gal o to ft e c h n o l o g i e si ni q a s t h i sp a p e rr e s e a r c h e sa i l di m p l e m e n t s 蛐i q a sb a do n n e t 妇n e w o r k t h i sp a p e rf i r s t l ya n a l y z e st h er e s e a r c hs t a t u so fi q a so nt h ei n t e m e ta tt h eh o m ea n da b r o a d b a s e do nt h ee m e 唱i n gd e m 柚d si nw e be d u c a t i o na s 、v e l la sm es t a t e o f a r td e v e l o p m e mo f r e l e v a n tt e c h n o l o g i e s ,d e f i n i t u d e st h et a s k so f t h i sp a p e li n 也es t r a t a g e mo fm i c r o s o f t ,n e t 丘a m e w o r k ,a s p n e ti sak e yt e c h o n o l o g y ,u s i n g 也et e c h o n o l o g yo fa sp n e tc a nd e v e l o pp o 、v e r 如1 趾dd y i l 锄i ca n dm 咖a lw e ba p p l i c a t i o ni nas e r v e ln l i sp a p e ra n a l y z e sm es u p e r 嘶t ya 1 1 di n s t r l l r n e n t a l i t yo f n e tt e c h o n l o g i e si nd e v e l o p i n gi q a s a f t e ra n a l y s i so fs o m ee x i s t i n gt e x tr e t r i e v a lm o d e l sa n dt h ee v a l u a t i o no ff u l lt e x tr e t r i e v a l ( f t r ) s y s t e mp e r f o n n a f l c e ,d l ep a p e ri n 们d u c e st h ea r c h i c e c t u r ea n dc e n t r a jd a t as t r e a mo fd o t l u c e n e ,w h i c hi so p e ns o u r c ef t re n g i n e ,a n dam e t h o db a s e do nd o t l u c e n eh a sb e e np u tf o r w a r dt oc h i r l e s e - b a s e df t re n g i n ei nd e v e l o pl o c a li q a st h e n ,m i sp a ”rb r i n g sf o n a r dan e wm e t l l o do fn a t i l r a l1 a n g u a g ep r o c e s s i n gi nl i m i t e d 矗e l do nt h eb a s i so ff u l lt e x tr e 打i v e l t h em e 山o dd e t o u r e sd i m c u j t i e so fw o r ds e g m e n t a t i o ni nt h cn a t l l r a ll a i l g u a g ep r o c e s s i n g ,a i l du s e st h ek e y w o r d si nt l l ek e y w o r dl i s tt om a t c h i n gt h en 越1 l r a ll a n g u a g et c x ti no r d e rt og e tt h ek e y w o r dc o m b i n a t i o n ,t or e a l i z ea n s w e r i n gt 1 1 eq u e s t i o nm a ti sa s k e d 讪mn a t u r a ll a n g u a g e l a s t l y ,t h ep a p e rc o n s t m c t st 1 1 e 丘锄e 、v o r ko fi q a sb yu s i n ga sp n e ta n da d o n e tt e c h n o l o g i e s ,a n di m p l e m e n t st h ei q a si m e g r a t i o nm ef h c t i o n so fb r o w s e ,s e a r c ha n da s kw n a m r e1 a n g u a g e a sar e s u l t ,t h em e t h o da i l dt e c h n 0 1 0 9 i e sp r e s e n t e di nt h i sp a p e ra r ep r o v e de f r e c t i v ea n dr c a s o n a b i e nm a k e sag o o dr c s u i ti nw e b - b a s e di q a s k e y w o r d s :n e t行咖e w o r k ,i n t e l i i g e mq u e s t i o n a n s w e r i n gs y s t e m ,c h i n e s e b a s e df u l l t e x tr e t r i e v a l ,n a t u r a ll a n g u a g ep f o c e s s i n 昏e e d u c a t j o ni i江苏大学硕士学位论文第l 章绪论1 1 智能答疑系统研究的目的随着数字化校园的建设和完善,涌现了大量基于网络的教学系统,对贯彻因材施教的教育原则,培养学生的科学精神和创新精神起到了巨大的作用。这种学习方式采用的是探索式学习它支持学生以他们自己的速度,按照个人的学习兴趣浏览一个相互联系的材料数据库。这样就克服了传统教学方式在教育资源( 师资,教材,实验和演示设备等) 和教学方法( 统一进度,集中式和固定时间等) 等方面的限制,实现了二者的不受时空限制。接受教育者可以根据自己的业务水平和时间自由地制定学习计划和安排学习进度,实现传统教育无法做到的的个性化教育。不管是在传统教育还是网络教育中,提问和答疑都是非常重要的交互形式。在传统教育中,学生如果有疑问,可以直接提问,教师可以立即回答,答疑过程简单,直接,效率高。而在网络教学中,学生一般无法与教师直接交流,因此设计好网络课程中的答疑系统,解决学生在学习过程中所产生的疑问,提高学习效率,是网络教学中要解决的一个重要问题。本课题通过对国内外研究概况的分析与相关技术的研究,构建并实现了一个基于n e t 平台的具有初步智能化的网络答疑系统。希望通过本课题的研究,能够为在网络教育系统中实现简洁高效的答疑功能提供可行性方案,使得教育者和学习者都从中获得更加优质的教育和服务。1 2 网上答疑系统的国内外研究概况目前,国内的网上答疑系统多是嵌套在教育网站中,作为一个子系统而存在,总体说来,国内的网络答疑系统的发展经历了从简单的聊天室式答疑系统,到有简单数据存储能力的答疑系统,再到有较强数据处理分析能力的答疑系统等多个阶段。从功能上来说,国内的网上答疑系统的功能较为丰富和全面,主要包括答疑、问题查询、浏览、用户信息和知识管理、问题统计等。但是国内的大部分的网络答疑系统还存在诸多不足,具体体现在以下几个方面:1 11 系统交互性差对于大多数系统,学生的提问一般得不到及时回答,有一个很长的滞后期,严重影响了学生的学习进度和使用系统进行自主学习的积极性。即使有自动答疑系统,基于n e t 平台的智能答疑系统的研究与实现提供给学生的结果也是盲目的无序的一大堆,同样需要学生自己去筛选,无法满足学习的需要,体现不到网络教育的优点。2 答疑方式单一现有答疑系统答疑方式比较单一,一般都只有一两种答疑方式,不能很好的体现网络教育的优越性。同步方式具有响应速度快的优点,而异步方式具有问题描述解答系统详细的优点。有些系统要么只有同步方式,如c h a rr o o m ,要么就只有异步方式,如电子公告板,没有很好的将两种方式有效地结合起来。3 不能很好地支持自然语言提问目前的自动答疑系统一般采取通过关键词或关键词的逻辑组合进行查询的方式,不能很好地支持学生的自然语言提问。一方面,学生要具备一定的抽词能力和逻辑组合能力,对部分学生的使用造成一定的困难;另一方面,由于系统缺乏评价学生提问的真正意图的必备信息,系统就无法优化或再加工系统的问题答案库材料,造成查询结果太多而且无序,无法适应应用的需要。随着网络教育人数的上升和层次的扩展,答疑系统中原有的人工答疑和简单的数据库查询式的答疑逐渐满足不了需求。因此,自动答疑成为答疑系统发展的必然,自动化和智能化成为答疑系统的新趋势。比较有代表性的有上海交通大学的基于w 曲的自动答疑系统a n s w e r w 曲s 【4 】,北京师范大学的网络自动答疑系统。其他如北京大学,东北大学等高等院校也从文本信息抽取,统计语义学,人工智能乃至自然语言理解的语义网络应用,如董振东先生为主开发的知网( h o w - n e t ) 等方向研究自动答疑过程,并都取得了一定进展。但由于汉语使用非常复杂,全面的自然语言理解尚处于理论研究阶段,在提高答疑系统的准确率方面有很多路要走。在国外,从词法,语法,语义多个方向对自动问答系统( q u e s t i o n a n s w e r s y s t e m )的研究同样一直没有停止过。普林斯顿大学负责的w o r d n e t 项目是一个里程碑式的成果。它通过创建结构化的关键字数据库和由语义关系联系的同义词库,结合开放性的接口,逐步形成一个完整的语义网络,因而w j r d n e t 成为众多问答系统依赖的基础。2 0 0 2 年的第十一届文本检索国际会议t r e c ( t e x tr e t r i e v a lc o n f e r c n c e ) 上,针对t r e c的课题:根据给定的英语材料,使用问答系统回答规定问题集,各国的研究人员都提出了新的思路和若干原型系统,其中l c c m a i n 2 0 0 2 ,e x a c t a j l s w e r 等几套问答系统分别正确回答了5 0 0 个问题中的4 1 5 和2 7 1 个,最高的准确率达到了8 3 ,已经有较高的可用性。2 0 0 2 年在日本举行的第三届搜索引擎评价国际会议n t c i r 州i tt e s t c o l l e c t i o n江苏大学硕士学位论文f o ri n f o r m a t i o nr e t r i e v a ls y s t e m s ) 上,研究机构对中r 韩等东方语言,阿拉伯语言的语句切分,索引建立,阻及在此基础之上建立的问答系统进行了较多的研究。1 5 】相比之下,由于东方语言在使用当中更为复杂和灵活,更难寻找到规律性,很多英语问答系统的研究成果难以直接应用到东方语言上,因此在中文自动问答系统的研究需要付出更大的努力。1 3 智能答疑系统研究的意义功能完善的基于网络的智能答疑系统相对于传统的教师面对面答疑有很大的优势,主要体现在:l 有利于提高教学质量。学生可以突破时间和空问的限制,通过网络答疑系统结合自己的实际情况晟快地获取与问题有关的信息加深对相关知识的理解和把握,提高学习成效。教师或以获取在学生中普照遍存在的问题并及时反映到教学活动中,帮助大部分学生理解并掌握这些问题和涉及的其它知识,提高教学质量。网络远程教育教师也可以根据学生反馈信息完善网络课程,提高网络教育质量。2 有利于减少教师工作量。很多有代表性的问题,涉及课程的重点和难点,往往会不止一个学生提出来,教师只需要详尽地回答一次并加入到问题解答库中,即可同时解决很多学生的疑惑3 有利于培养学生信息素养( i n f o r n l a t i o nl i t e r a c y ) ,提高自学能力,为其有效学习以及后续终身教育打下坚实基础。1 4 本论文所做的工作本论文在n e t 平台上构建了一个智能答疑系统,并完成了如下工作:1 构造一个基于限定领域( 比如说某一门课程) 的知识库,并提供导航功能,导引用户逐级找到自己想要的知识,同时提供多种形式的浏览方式。2 中英文全文检索系统的模型分析,参考全文检索技术最新研究成果,在中英文为主的应用环境下,扩充检索接口,使其具有针对答疑系统完成检索的能力。3 系统在没有人工干预的情况下对学生提出的问题进行答疑活动,并给出相关的答案。系统不仅仅对关键词或关键词的组合进行处理,同时对用自然语言提问的问题也同样具有处理能力。4 任何一个答疑系统的领域知识再全面,也不可能覆盖该领域的所有知识,更不基于n e t 平台的智能答疑系统的研究与实现可能包含用户潜在意图所涉及的所有问题的答案,所以系统应该是开放的,并且建立完各的知识库管理机制,系统用户可以方便的进行领域知识的增加、删除和修改来不断完善知识库。系统建立了一个动态的问题答案库,可以人工和自动扩充问题及其答案,使问题答案库随着应用时间的增加逐步得到丰富,同时为以后的答疑活动所利用。并且检索范围随新增问题的增加而自动扩大。5 用户找不到答案的问题一旦由人工给出解答,用户除了能在系统中检索到外还能收到相应的e m a j l 。1 5 本论文实现智畿答疑的途径我们主要从答疑方式、问题的表示、答案的表示以及网络的利用等几个方面一加以实现:1 答疑方式为了体现实时交互性和智能性,系统着重考虑无人参与的w w w 在线自动答疑的同步方式,使得用户能随时随地真正不受时间和空间的限制而自由地从系统中得到想要的答案,同时,未能及时作答的问题以电子邮件形式作为系统的重要补充,所以本系统的答疑方式是同步为主,异步为辅 3 】。2 问题的表示在线答疑的过程中,从输入问题的表示来看,用户可以输入关键词和关键词的逻辑组合来寻求问题的解答,还可以输入用自然语言提问的问题。这样使用户能更轻松地使用系统,并体现系统的智能性。3 答案的表示考虑到全文检索的应用,在现有的技术条件下,答案的表示主要是文本的。将来可以考虑过渡到使用多媒体检索技术,会得到更好的效果。4 网络的利用使用i m e m e t 交流信息是用户的最常见的方式,a s p n e t 技术将软件设计和w e b设计融为一个整体,保证了智能答疑系统采用b s 结构,用户只使用浏览器就可以直接查看并和系统动态交互。除了上面提到的几个方面外我们还考虑了其他方面,如系统的丌放性、可维护性等。1 6 本论文用到的关键技术智能答疑系统的发展和完善有待于多种技术的成熟和综合应用,如人工智能江苏大学硕士学位论文信息检索技术,自然语言处理和数据挖掘技术等。本论文主要研究并应用了以下关键技术:n e t 平台技术在m i c r o s o f t 的n e t 战略中,a s p n e t 是一项核心技术,它是m i c r o s o f 【的a c t i v es e r v e rp a g e s ( a s p ) 的最新版本,它给设计者一种全新的w e b 设计概念,应用a sp n e t技术可以在服务器开发动态的可进行交互的功能强大的w e b 应用程序,这是一项基于服务器的强大技术3 钔。本论文在网络应用程序开发环境n e l 平台和高效数掘库系统s q ls e r v e r2 0 0 0 的基础上,综合使用a s p n e t 技术、a d o n e t 技术和组件技术,使答疑系统的整体效率得到了较大的提高。全文检索技术全文检索技术在信息检索领域中担任着举足轻重的角色,成为众多文本信息检索应用的基础。全文检索( f u l l t c x tr e t r i e v a l ) 是指以全文本信息为主要检索对象,允许用户以自然语言根据资料内容而不是外在特征来实现检索的先进查询手段。全文检索技术的出现,导致了信息检索领域的一场革命;比起传统的标引检索来,全检索技术提供了全新的、强大的检索功能,是发现信息、分析和过滤信息、信息代理、信息安全控制等应用的主要技术基础。在本篇论文中我们在答疑系统引入了中文全文检索引擎d o t l u c e n e 内核实现问题库的全文检索。自然语言处理技术为了使网络答疑系统变得聪明起来,让计算机能够体会提问者的意思,从而帮助用户完成搜索过程获得最合适答案,在系统中需要引入人工智能的思想,将自然语言处理应用到答疑系统的检索过程。在研究前人在自然语言处理方面进展的基础上,本论文提出一种受限领域内自然语言理解的新方法:以受限领域内已加入到问题库的所有问题的关键词为词表,反向匹配用户的自然语言提问文本,使用户的自然语言提问文本转化成由关键词组合构成的用户提问核心,从而达到正确检索的目的,提升了答疑系统的智能性。此方法既采用了自然语言处理的思想,同时绕丌中文分词这一看似不可逾越的难题,紧密结合并充分发挥全文检索引擎的强大功能,具有创新性和可用性。1 7 论文内容安排本文从网络教育发展过程中提出的新需求出发,对中英文全文检索技术进行有基于n e t 平台的智能答疑系统的研究与实现关的分析、研究,并针对智能答疑环境建立模型,完成系统的设计和实现。第一章绪论主要介绍网络教育和网络答疑系统的现状,以及智能答疑系统研究的目的意义和本人所做的工作。第二章n e t 应用程序开发平台关键技术,介绍分布式多层应用软件体系结构和微软的n e t 解决方案和n e t 的数据访问技术。第三章全文检索技术与d o t l u c e n e 在智能答疑系统中的应用,介绍了全文检索技术及其主要评价指标,研究全文检索引擎,几种文本信息检索模型和全文检索系统的主要评价指标。介绍全文检索系统d o t l u c e n e 及其在智能答疑系统中的二次开发过程。第四章自然语言处理及其相关算法的设计,介绍了自然语言处理技术,分析自然语言理解实现中的技术特点和一般方法,分析智能答疑系统中自然语言提问的特点,给出本论文自然语言提问处理算法的设计。第五章系统实现,分析了n e t 技术在b s 结构的智能答疑系统中的应用。介绍智能答疑系统的总体设计和具体实现。第六章是全文总结和进一步展望。江苏大学硕士学位论文第2 章n e t 应用程序开发平台关键技术2 1n 盯应用程序开发平台关键技术2 1 1 使用分布式多层应用软件体系结构所谓分布式计算指的是在彼此连接着的多台计算机上分别执行不同的功能,而这些功能共同构成一个完整的程序总体,这种分布式概念使我们能够把数据放到最合理的地方去得到处理。【1 i i对于个应用软件来说,系统结构不仅会影响系统设计和开发的进度,还可能直接影响到系统的后续发展潜力,甚至会决定系统的成败。在多层应用结构( 包括三层) 中,客户层( 也称为表示层) 只提供应用的用户界面,它根据用户的操作调用相应的业务逻辑,而并不直接访问后台数据库。业务逻辑层是三层应用系统的关键所在,它负责处理所有用户的请求,并且把处理结果返回给表示层;服务器层仍然提供数据库支持,我们也可以用一些简单的存储过程来维护数据,我们通常把这一层叫做数据服务层。对于三层模型,由以f 部分组成:1 、数据服务层( d a t a a c c e s st i e r )数据服务层主要由表定义,表关系和组成数据库的数据项构成,并且还包括了以其自身的格式表示的用于从数据库中检索信息的代码。在s q ls e r v e r 数据库中,通常将s q l 语句放入存储过程中。2 、业务逻辑层( b u s i n e s sl o g i ct i e r )应用程序的业务逻辑层是大部分的特定功能驻留之处。通常,这些功能由调用多个命令或组件来实现,以便使表示层与应用程序所要实现的复杂业务规则分离。该层一般包括指向第三方系统的方法的链接。3 、表示层( p r e s e t a t i o nt i e r )应用程序的表示层是终端用户能看到的系统的唯一一个部分,它可能是一个w e b页的集合,如i n t e r n e te x p l o r e r 这样的应用程序的界面,也可能就是个传统的命令提示符界面。该层通过业务层,利用其功能进行许多工作但它并不直接访问数据库( 或是数据服务层的其它部分) 。在分布式构架的基础上,从整体上提供一个全面性的网络整合平台,主要有基于n e t 平台的智能答疑系统的研究与实现m i c r o s o n 的整合w i n d o w s 与因特网的平台w i n d o w sd n a 与s u n 公司引导提出的基于j a v a 2 平台由一系列中间件服务组合起来的j 2 e e ( j a v a 2e n t e r p r i s ee d i t i o n ) 体系结构。w i n d o w sd n a 的全名为w i n d o w sd i s t r i b u t ei n t e m e ta r c h i t e c t u r e ,即w i n d o w s 的分布式互联网体系结构,是微软整合了a c t i v e x 、w w w 技术( 如v b s c r i p t 、d h t m l 等)平台的总称。微软利用i i s 以及w w w 作为系统前端来处理用户互动界面,以c o m 架构作为中间层来处理企业程序,以s q ls e r v e r 作为后端储存数据的服务器,以实现三层式( t 1 1 r e e t i e r ) 或更多层系统的开发环境。因为整个系统是架构在网络上的,因此用户端只需有个普通的i e 浏览器就可以在任何地方存取到系统,以减少最为繁杂的用户管理工作。随着i t 产业发展步伐的加快,在w i n d o w sd n a 之后,微软便开始将研究重心转到一个新的计划一n g w s ( n c x tg e n e r a t i o nw i n d o w ss y s t e m ,新一代的w i n d o w s 系统) 。n g w s 的目的是整合新的设备和技术,希望带给用户一个全新的使用经验。n g w s 包括了w i n d o w sd n a 的新一代:w i n d o w sd n a2 0 0 0 ,a s p 的新代:a s p n e t ( 之前名为a s p + ) ,s t l a ls t u d i o6 o 的新一代:v i s u a ls t u d i o n e t7 o 以及将来的w i n d o w s n e t ( 代号为b 1 a c k c o m b ) ,这个n g w s 计划,就是现在微软所推出的n e t ,它成为m i c r o s o f l 平台的软件世界的转折点。m i c r o s o r n e t 是微软于2 0 0 0 年6 月发布的下一代软件和服务战略,利用网络协议和格式,协调众多的智能设备与网站,从而提供更简单,更为个性化更有效的互联网服务。为了更容易建立网络应用程序和网络服务,微软提出了m i c r o s o f c n e tf r a m e w o r k 框架。m i c r o s o n n e t 框架包含三个主要部分:公共语言运行环境、具有多层次结构的统一的类库集合和高级版“活动服务器页面”( 又名a s p n e t ) 。建立在操作系统上层的服务,是管理运行时代码需求的公共语言运行环境( c o m m o nl a n g u a g er u n t i m e ) 。这些代码可以用任何现代编程语言所写。r u n t i m e 提供了许多服务,这些服务有助于简化代码开发和应用程序的开发,同时也将提高应用程序的可靠性。n e tf r 姗e w o r k 包括一套可被开发者用于任何编程语言的类库。在此之上是许多应用程序模扳,这些模板特定地为开发网络站点和网络服务提供高级组件和服务。为了使受管代码使用c 0 m 组件所提供的服务,n e t 环境引入了r c w ( r u n t i m ec a l l a b l ew r a p p e r ) ,同样,把n e t 组件用作c o m 对象时,也能够创建与r c w 相对应江苏走学硕士学位论文的c c w ( c o mc a l l a b l ew m p p e r ,c o m 可调用封装器) 。这样通过使用c c w 和r c w等相关技术,使得n e t 组件能够和传统的c o m 组件互操作,从而大幅度地利用了现有的技术成果,节约了生产成本,并且在使用中也具有更大的灵活性。2 1 2 n e t 框架的原生语言c #c # 是微软公司专门为n e t 量身订做的编程语言,作为一种简单、先进、面向对象和类型安全的编程语言,它是由c 和c + + 派生而来,c 捍的目标是将v i s u a lb a s i c 的高效率和c 十+ 的强大功能相结合。c # 是第一个面向组件的编程语言,支持组件所需的属性( p r o p e n y ) 、方法( m e t h o d ) 、事件( e v e m ) 、设计时属性( d e s i g n e dt i m ea 札r i b u t e )与执行时属性( r u m i m ea t t r i b u t e ) 。c 具有面向对象编程语言所应具有的一切特性,如封装、继承和多态。在c # 的类型系统中,每种类型都可以看作对象。用c 带编写的代码具有更好的可读性,而且减少了发生命名冲突的可能性。作为n e t 的原生语言,它具有与n e t 框架相结合的特性。c # 本身并无类库( c l a s sl i b r a r y ) ,而是直接使用n e t 框架所提供的类库。除了c # 外,以n e t 平台c l r 为运行目标的语言还有v i s u a lb a s i c 、带受管扩展的c + + 、和脚本语言v b s c r i p t 和j s c r i p t 。m i c r o s o r n e t 平台定义了一个“通用语言子集”( c l s ) ,确保了c l s 语言和类库之间可以无缝地交互工作。对于c # 开发人员而言,这意味着尽管c # 是种新的语言,它完全可以使用熟悉的丌发工具v i s u a lb a s i c 和v i s u a lc 十+ 所使用的多个类库。另外,类型安全检查( t y p e s a f ev e r i f y ) 、自动垃圾回收( a u t o m a t i cg a r b a g ec o l l e c t i o n ) 、结构化异常处理( s t m c t u r e de x c e p t i o nh a n d l i n g ) 等也都是交由c l r 处理的,因此大大降低了开发的工作量。【1 2 】因此,c # 是最适合丌发t n e t 应用程序的编程语言。基于以上考虑,在智能答疑系统中,采用了c # 作为主要开发语言。2 1 3a s p n e t 技术m i c r o s o f t n e l 是微软推出的第三代面向互联网的技术平台。第三代i m e m e t 的特征将是“可编程w e b ( p r o g r a m m a b l ew e b ) ”,各个网站与各个系统之间能够更紧密地整合在一起。b 2 b ( b u s i n e s st ob u s j n e s s ) 、供应链( s u p p l yc h a i n ) 、a p p l i c a t i o ns e n ,i c ep r o v i d e r 等也将真正的落实,而且这些w e b 服务可以在各种不同的便携设备( 如手机、p d a 和信息家电等) 上执行,真正做到“信息无所不在,随手可得”的境界。w e b 开发是基于客户服务器的模型,在这种情况下,客户就是浏览器,服务器就是w e b 服务器。浏览器和w e b 服务器通过h t t p ( h y p e n e x tt r a n s f e rp m t o c 0 1 ) 交换基于n e t 平台的智能答疑系统的研究与实现信息。w e b 上的大多数交互均可看成请求和响应,即浏览器向w e b 服务器发出请求,w e b 服务器则向浏览器返回响应( 通常是一个h t m l 页面或图象等) 。以前的w 曲站点大都由一个或多个静态h t m l 页面组成。所谓“静态”是指页面内容不能够改变或者不能为每个浏览者订制。当浏览器通过h t t p 向服务器请求页面时,服务器只是将原来已经设计好的页面传送给浏览器。静态页面使用户只能被动地浏览制作者提供的信息,而且不易维护。为了不断更新内容,制作者必须不断地重复制作页面。这样随着站点内容和信息量的增加,工作量将非常的大。出于静态页面缺少交互性,因此动态内容的开发就成了越来越多的w 曲站点追求的目标。所谓动态网页是指用户按自己的要求通过浏览器发出请求,服务器运行一个脚本或程序来返回包含最新信息的页面供用户浏览。为了向用户提供大量有用的、动态的和可交互的信息,凡是能够以数据库存储的内容,应尽量以数据库的形式构成数据服务层,因为数据库形式的数据比其他形式的数据要容易更新与管理。基于服务器端的w 曲动态开发技术经历了c g i 、服务器a p i 、p h p 、a s p 现在己经发展到a s p n e t 。a s p n e t 虽然由a s p 发展而来,但它与a s p 有着本质的不同,在原有a s p 的基础上增加了许多新特性,并增强了原有的功能,主要有以下几点:【1 3 a s p 属于一种解释型的编程框架,它的核心是v b s c r i p t 和j a v a s c r i p t 。受这两种脚本语言的限制,决定了a s p 无法进行象传统编程语言那样的底层操作;a s p n e t 则是一种编译型编程框架,除了和a s p 一样可以采用,v b s c r i p t 和j a v a s c r i p t 作为编程语言以外,还可用v b n e t 、c # 和j s c r i p t n e t 甚至是c o b o l 等编译型语言来编写,这就决定了a s p n e t 功能的强大,它可以进行很多底层操作。由于a s p 程序是解释执行的,因而其执行效率相对较低;而a sp n e t 程序则是编译后执行,因而效率比a s p 高得多。a s p 代码不够结构化,其中混合了显示界面的h t m l 代码及客户端和服务器端的脚本代码。不仅程序很难维护,而且调试也是一个大问题。a sp n e t 使用事件驱动和数据绑定的开发方式,将程序代码和显示的内容分离,使a sp _ n e t 程序更简洁,也更具可读性。若a s p 程序中使用到c o m 组件,则程序的部署过程就会变得复杂起来,因为组件在使用之前得先注册,将组件的一些信息( 如组件文件的所在位置、线程模型和一些识别码等) 登录到系统中,在配置和维护时,d l l 陷阱( d l lh e l l ) 问题就会江苏大学硕士学位论文出现:在a s p n e t 中,不需要考虑组件注册问题,只要将相关的文件复制到目标机器就可以,简化了部署操作。a s p 不支持w 曲s e r v i c e ,而a s p n e t 则支持w 曲s e r v i c e 。总之,a s p n e t 是微软公司继a s p 之后推出的用于创建、管理和部暑w e b 应用程序的新的理想平台。2 1 4 n e t 的数据访问技术m i c r o s o f i 的每个新平台都会带来访问数据存储器的新方法。在n e t f r 锄e w o r k中,这个技术就是a d 0 n e t ,a d o n e t 是一种全新的数据访问技术,以a d o 为基础,但只是在名称上与之真正相关。相对于从前的数据访问技术而言,a d o n e t 支持各种类型的数据存储器,优化了单独的数据提供者,适用于远程数据,可以处理大量用户同时访问数据库的应用程序。之所以有这么多的改进,关键就在于使用了断开连接的数据,托管提供者和x m l 。l 、a d o n e t 体系结构a d 0 n e t 由一个对象集合组成,从数据库开始了解对象,可以知道这些对象是如何协同工作的和它们所执行的功能。通过c o r u l e c t i o n 对象,可以将所有指令发送到数据存储器,以及接收来自数据存储器的结果。用户可以指定连接哪个数据库,使用什么验证等。c o m m a n d 对象包含了指定将什么信息发送到数据库( 或从数据库中检索什么数据) 的指令。它还包含了到将要使用的连接的链接。d a t a r e a d e r 对象获取通过c o m m a n d 对象检索到的信息。这信息是只读的因此不能被编辑,每次只能读取一项数据。该对象提供了处理大量数据的有效方法:在某些情况下,它们被描述为提供了连接访问,因为只要使用d a t a r e a d e r ,那么必须保持对数据库的连接。d a t n d a p t e r 对象提供了一组命令和数据库连接,它是检索数据的另外一种方法。它对数据更新的支持也是只读的。即使这样,d a t a a d a p t e r 并不允许编辑数据源;它用数据的信息副本填充数据集,接着将对数据的改变写入数据库中。d a t a s e t 对象可以被看作数据存储器的部分数据的本地副本。可以读取、添加、修改和删除其中的数据。因为这些数据是本地缓存的,所以它与d a t a r e a d e r 的读取方式不同,可以以随机的方式读取它。在对数据作改变时,通过d a t a a d a p t e r 将它们发送回数据缓存器中,在这之前,d a t a s e t 都是与数据存储器断开的。基于n e t 平台的智能答疑系统的研究与实现2 、数据提供者a d o n e t 的主要特征之一就是它对各种数据存储器类型都是优化的。除了很常见的d a t a s e t 外,上一节列出的其它对象都有用于访问特定类型数据的特定版本。n e t数据提供者这个术语就是处理特定类型数据库的类“集”。m i c r o s o f t 的n e t f r 枷e 、o r k 带有了两个标准的数据提供者:s q l s e n ,e l n e t 数据提供者和o l ed b n e t 数据提供者。第一个数据提供者提供了连接到s q ls e r v e r7 o ( 或后续版本) 的数据库的方法,它所包含的类可以从s y s t e m d a t a s q l c l i e m 命名空间中找到。而第二个允许访问市场上的任何与o l ed b 兼容的数据存储器,实现了与s q l c l i e n t 数据提供者相似的功能,它驻留在s y s t e m d a t a o l e d b 命名空间中。随着一些数据库厂商的开发,会有越来越多的数据库提供者可以供开发者使用。w e b 开发技术正朝着良好的与用户的互动性、使用方便和功能强大高效的方向发展。w 曲应用程序所采用的分布式对象结构技术,比如c o r b a 、d c o m 以及最新推出的s o a p ,难是为了适应从传统本地化的编程模式向以可伸缩性、可靠性为目标的网络化编程模式转化的需要发展起来的。而微软所推出的x m l w 曲s e r v i c e 技术,将对传统的程序开发方式产生巨大影响,从而影响整个软件产业的发展模式。【1 3 12 2 n e t 技术在智能答疑系统开发中的应用为了得到一个更丰富的开发环境,可以使用v i s u a ls t u d i o n e t ,它是微软推出的集成化第三代互联网开发平台,提供了一个统一的、紧密集成的可视化编程环境,可以简化开发网络应用程序的过程。由于a sp n e t 和v i s u a ls t u d i o n e t 集成在一起,因此可以通过专门的窗口和工具箱进行高效的即见即所得的应用开发。w e bf o 咖s将代码和内容分开,我们将控件拖到设计网格中,便自动生成该控件相应的h t m l代码,通过属性窗口可以对控件有关属性加以设定,双击该控件来编写代码段。做到了设计方便,代码清晰。2 2 1n e t 开发智能答疑系统的优势1 、快速的网页浏览。a sp _ n e t 是基于通用语言运行环境( c o m m o nl a l l g u a g er u n t i m e ) 的,所有一般语言所具有的类库、消息和数据连接都能方便无缝地连接到网络上,这种多语言支持使得凡是可以编译成m s i l ( m i c r o s o ri n t e 咖e d i a t el a l l g u a g e ) 的程序语言都可成为制江苏大学硕士学位论文作网页的语言。为此,用户可以选择自己所熟悉的开发语言( 如c # s u a l b a s i c ,j a v a s 商p t等、。m s i l 是一种中介语言,介于高级程序语言和机器码之间,十分接近机器码。我们编写的程序先编译成m s i l ,再通过不同计算机的编译器即时的被编译成机器码,而达到了跨平台的特性。这种模式最大的特点是执行效率高,相对于a s p 的执行模式,a s p n e t 网页第一次被浏览时,会经过两次编译,速度慢于a s p ,但是第一次被浏览后,m s i l 会被存储下来,以后浏览时只需花费从m s i l 编译到机器码的时间,速度明显提高。教育网站的特点就是学习者希望在不同的网页间穿梭,反复的浏览和学习,据不精确统计,至少可提高2 5 的浏览速度。a s p n e t 的编译过程如图2 ,1 所示。区丘匡1 1 砸扣执行图2 1a sp _ n e t 的编译过程2 、网站中大量数据的处理。作为远程教育的站点,必然要有大量的数据,除一般站点所必须拥有的数据外,必然还会配备大量的习题和学习资料。为此我们更加关心对数据库的操作。a d o n e t就是专为n e t 平台上的数据库存取操作而重新建立的,是离线的数据集操作,因而可以减少与服务器往返沟通的次数,降低网络流量。另外,a d o n e t 采用x m l 来交换、更新数据,实现各种程序和数据源之间的无缝结合,并进行大规模的分布式处理。这种方式的执行效率会比在传统的a d o 上使用c o m 技术来包装数据然后进行传送的方式快得多。x m l 是简单的文字数据,只要接收端的应用程序拥有读取x m l 文件的能力,用户就可以使用a d 0 n e t 来交换数据,而不必考虑数据类型受限与转换的问题。3 、安全性问题。最后,安全性是我们普遍关心的又一问题,包括用户的身份认证和对资源访问权限的控制。a s p n e t 提供了更佳的安全机制,它为每个应用进行配置,确保用户的应用是安全可靠的。为所有的请求进行三种操作;鉴别,授权和扮演。身份认证需要提供包括用户名和密码的认证,一旦通过了身份鉴定,授权过程就要决定这个身份能否被给予对某一特定资源的访问权利。a s p n e t 和i i s 联合,向应用程序提供身基于n e t 平台的智能答疑系统的研究与实现份认证服务和授权服务。服务器应用程序的另一个重要特征是能够控制服务器程序代码是在哪个身份下运行的。当服务器应用程序以请求实体的身份执行代码时,称为扮演( i m p e

温馨提示

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

评论

0/150

提交评论