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

(计算机应用技术专业论文)实时答疑系统的研究与实现.pdf.pdf 免费下载

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

文档简介

工程硕上学位论文 摘要 在当前的远程教育发展过程中,网络教育是一个十分重要的发展方向。方便 有效的答疑系统是网上教学支撑平台的重要组成部分之一。本文在对现有几种答 疑系统的优缺点进行较为深入分析比较的基础上,结合传统课堂答疑的特点,提 出了实时答疑系统的一种设计方案。 该系统采用j 2 e e 架构,用纯j a v a 语言实现。系统功能结构划分为三层:核 心功能层,会务管理层和网络管理层。核心功能层包括用户完成答疑的各功能模 块和控制中心。会务管理层用于数据信息传输及课程和成员管理,该层将用户功 能界面与数据传输及课程和成员管理完全分开,使它们分别处于两个不同的层面 上,使得客户端只与会务管理层通信,不与其他客户端建立连接,也不管理和维 护其他客户端的信息。网络管理层完成系统对三种传输协议的管理。 在系统实现过程中,应用软件复用、工厂模式等软件工程知识对程序结构进 行重构,改善程序设计方案,提供了文本交互、语音交互和电子白板三个可重用 的程序构件。 该系统实现了文本交互、语音交互和电子白板交互三种答疑方式,设计了一 个用于老师在答疑过程中对学生文本交互、语音交互、电子白板交互和答疑资格 进行管理的控制中心,提供了s o c k e t 、h t t p 和l r m p 三种服务端与客户端的连接 方式,采用了能适应不同网络带宽要求的三种语音压缩格式,满足了远程教学中 实时答疑的需求。 最后,本文实现了一个基于w e b 并包含文本、语音和电子白板的实时交互、 协作式的多媒体答疑系统。 关键词:软件复用;工厂模式;d h v a ;实时;答疑系统;电子白板 a b s t r a c t i nt h ec u r r e n tr e m o t ee d u c a t i o nd e v e l o p i n gp r o c e s s ,t h ee l e a r n i n g i sa n e x t r e m e l yi m p o r t a n td e v e l o p m e n td i r e c t i o n c o n v e n i e n t l ya n de f f e c t i v e l ya n s w e r i n g t h e s t u d e n t s q u e s t i o n i so n eo ft h e i m p o r t a n tp a r t s o ft h e s u p p o r t sp l a t f o r m o f n e t w o r kt e a c h i n g ,w h i c hc a ns o l v ep r o b l e mf o rs t u d e n t si nt i m e b a s eo nat h o r o u g h a n a l y s i s a n d c o m p a r i s i o no fa d v a n t a g e s a n dd i s a d v a n t a g eo ft h es e v e r a l e x i s t i n g a n s w e r i n gs y s t e m s ,t h i sp a p e rp r o p o s e sa n e w d e s i g ns c h e m e - - a r e a lt i m ea n s w e r i n g s y s t e m ,w h i c hi si n t e g r a t e dw i t hs o m e t r a d i t i o n a lc l a s s r o o ma n s w e rc h a r a c t e r i s t i c s t h es y s t e mu s e st h ej 2 e ef r a m e w o r ka n dw i t ht h ep u r ej a v al a n g u a g e t h e f u n c t i o n a ls t r u c t u r eo fs y s t e mi sd i v i d e di n t ok e yf u n c t i o nl a y e r ,c o n f e r e n c ea f f a i r m a n a g e m e n tl a y e r a n dt h en e t w o r k m a n a g e m e n tl a y e r t h ek e y f u n c t i o n l a y e r i n c l u d e sv a r i o u a lf u n c t i o n a lm o d u l e sa n dt h ec o n t r o lc e n t e r t h en e t w o r k m a n a g e m e n tl a y e rp e r f o r m st h es y s t e mm a n a g e m e n to ft h r e ek i n d so ft r a n s m i s s i o n a g r e e m e n t s d a t am e s s a g e t r a n s m i s s i o na sw e l la s s u p e r v i s i o n o fc o u r s e sa n d m e m b e r sa r e a c c o m p o l i s h e db y t h ec o n f e r e n c ea f f a i r m a n a g e m e n tl a y e r ,w h i c h s e p a r e a t e st h eu s e rf u n c t i o nc o n t a c ts u r f a c ef r o mt h ed a t at r a n s m i s s i o n ,c o u r s e sa n d m e m b e r sc o m p l e t e l y ,s ot h a tt h e ya r ei nt w od i f f e r e n tl a y e rp l a n e sr e s p e c t i v e l y t h i s c a u s e st h ec l i e n te n d st oc o m m u n i c a t eo n l yw i t ht h ec o n f e r e n c ea f f a i rm a n a g e m e n t l a y e r ,b u tn o tt oc o n n e c tw i t ho t h e rc l i e n te n d sa n dt om a n a g ea n dt om a i n t a i nt h e i n f o r m a t i o no fo t h e rc l i e n te n d s i nt h ep r o c e s so f s y s t e mr e a l i z a t i o n ,s o f t w a r ee n g i n e e r i n gk n o w l e d g e ,s u c ha s , a p p l i c a t i o n s o f t w a r er e u s e da n d f a c t o r yp a t t e r n i sf u l lu s e dt or e c o n s t r u c tt h e p r o g r a ms t r u c t u r e ,s o a st of o r ma p e r f e c tp r o g r a m m i n gd e s i g np r o j e e t a n dt o p r o v i d e d t h r e er e u s e d p r o g r a mc o m p o n e n t s w h i c ha r et h ei n t e r a c t i v e t e x t ,t h e i n t e r a c t i v es o u n da n dt h ei n t e r a c t i v ew h i t e b o a r d t h es y s t e mh a sr e a l i z e da n s w e r i n gi nt h r e e w a y sw h i c ha r e t e x t i n t e r a c t i v e , s o u n di n t e r a c t i v e ,a n dw h i t e b o a r di n t e r a c t i v e ,a n dd e s i g n e dac o n t r o lc e n t e rw h i c h m a k et h et e a c h e r m a n a g e t h es t u d e n t s t e x t i n t e r a c t i v e ,s o u n d i n t e r a c t i v e , w h i t e b o a r di n t e r a c t i v ea n dt h e i ra n s w e r i n gr i g h t s i nt h es y s t e m ,t h es e r v i c ee n d so f s o c k e t ,h t t pa n dl r m pc a nb el i n k e dw i t ht h ec l i e n te n d s ,a n dt h r e es o u n d c o m p r e s s i o nw a y sc a nb eu s e dt om e e tt h ed i f f e r e n tn e t w o r kb a n d w i d t hr e q u i r e m e n t s t h es y s t e mh a ss a t i s f i e dt h ed e m a n do ft h er e a l t i m ea n s w e r i n gi nr e m o t ee d u c a t i o n f i n a l l y ,t h ep a p e rh a sr e a l i z e dam u l t i m e d i aa n s w e r i n gs y s t e mb a s e do nt h e t t 工程硕士学位论文 w e bw i t ht e x t ,s o u n d ,a n dw h i t e b o a r d k e y w o r d :s o f t w a r er e u s e ;f a c t o r yp a t t e r n ;j a v a ;r e a l - t i m e :a n s w e r i n gs y s t e m ; w h i t e b o a r d l i i 湖南大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取 得的研究成果。除了文中特别加以标注弓i 用的内容外,本论文不包含任何其 他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个 人和集体,均己在文中以明确方式标明。本人完全意识到本声明的法律后果 由本人承担。 作者签名:j t 艇豪; 日期:以曲年r 月,上口 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学 校保留并向国家有关部门或机构送交论文的复印件和电子版,允许沦文被查 阅和借阅。本人授权湖南大学可以将本学位论文的全部或部分内容编入有关 数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位 论文。 本学位论文属于 1 、保密口,在年解密后适用本授权书。 2 、不保密团。 ( 请在以上相应方框内打“”) 作者签名:;t 1 赵幕;曰期: 卯4 年r 月,上日 靳虢精后肛隰研年z 日 工程硕士学位沧文 1 1 实时答疑系统概述 第1 章绪论 随着2 1 世纪的来临,整个社会对知识,对人才的需求也不断增加。而我幽 目前的教育资源却严重不足,而且在将来,建立大批的高等学府从资金上无法满 足,师资上无法实现,而且教学质量也无法保证。有效的利用当前的教师资源, 借助现代通讯手段,让学生们用最少的时问获得最好的学习效果,已成为了社会 的一种需要。正是在这一背景下,现代远程教育应运而生,并正在成为一种全球 趋势。 远程教育意味着提供一个基于快速发展的i n t e r n e t 的现代教育,它打破时 间和地域的限制,充分共享大学的教学资源和设施。现代远程教育系统是建立在 in t e f n e t 高速信息公路上,具有丰富教学资源,结合多种接入方式,最终面向家 庭的多媒体远程教学系统。学生可以通过i n t e r n e t 进行学习、访问教学资源、 复习功课或进行答疑。 由于越来越多的学生进入到这些虚拟大学后,教学质量、学生学习情况和学 生学习效果怎样进行跟踪? 学生学习疑难的解答怎样实现? 当前的实际情况也 不能满足教学卜日益增长的需求;如何在有限的人力资源下高效、准确、规范地 解决这些问题也就成了现在远程教学的一项急需解决的矛盾。这就要求使用当 今先进的计算机技术,来对现今的远程教学模式进行改革。而且许多教育者已经 发现,真正有效的教学必需有学生之间的相互交流和师生之间的相互交流。学生 进入网上大学后,脱离了传统的面对面教学模式,学生可以随时随地进行学习, 但学生在学习过程中不可能没有疑问,怎样解决疑问? 在现有的远程教育系统中 有许多不同的答疑方式,大致可以分为四种: ( 1 ) e m a i l 方式学生通过e m a i l 向老师提问,老师通过阅读e m a i l ,然后 根据学生的问题进行回答,这种方式要求老师经常上网浏览e m a i l ,存在一定的 时间滞后,对学生而言,可能影响后续课程的学习。 ( 2 ) b b s 方式学生和老师通过b b s 进行交流,学生通过b b s 提出问题,然 后学生或老师对该学生的提问进行解答,或者老师对学生的解答进行完善,这种 方式也要求老师经常上网浏览b b s ,查看学生所有的回答,然后对不正确和不完 善的刚答进行补充和纠正或对没有回答的问题进行解答,并且存在一定的时间滞 后,对学生而言+ ,可能影响后续课程的学习。 ( 3 ) 自动答疑系统,它是基于网络数据库和词法分析的,当使用者利用浏 览器作为输入界面,提出问题或输入查询请求,浏览器将这些数据返回给服务器, 1 服务器对这些数据进行一些处理,根据用户的请求对数据进行相应的操作( 或是 将数据存入数据库,或者是对数据进行查询等) ,最后服务器将执行的结果再返 回给浏览器,通过w e b 页面显示出来5 。答案的显示取决于系统对问题的词法分 析和对数据库的检索技术,一般来说这种答疑系统存在解答不准确、答案不齐全 的缺点。 ( 4 ) 类似现在流行的0 i c q 聊天模式的实时答疑学生在客户端输入问题, 然后发送给服务器端:老师在服务器端接收到学生的问题后,把准确的答案发给 学生;学生再在客户端浏览老师的解答。 对于理工科学生来说,图形、图像有时是描述问题的最好方法,但上面的四 种答疑方式除e m a i 】和b b s 方式可以提供静态的图形、图像答疑方式外,其它的 只提供文本答疑方式。在答疑系统中提供电子白板就可以解决图形、图像的实时 输入和讲解,现有的电子白板系统大致可分为两类:一类是c s 模式的,另一类 是b s 模式的。两类系统各有特点”。 c s 模式的白板可以很好的解决交互性的问题,提供强大的功能,协作的用 户可以在异地同时操作白板,交流信息,并可给白板中的对象加锁,防止操作冲 突等。这样的系统存在的缺点是由于系统采用的是c s 模式,不仅服务器端需安 装系统软件,客户端也需要安装专用软件,这就极大地限制了系统的应用范围。 b s 模式可用在i n t e r n e t 上,系统的客户端不必安装专门的软件,仅需有浏 览器即可使用系统,十分方便。但它同样存在缺点,那就是系统的交互性较差, 白板功能相对较弱。一方面是由于浏览器对安全性的限制,使系统有很多功能无 法实现。另一方面是由于网络的传输能力有限,而对于多媒体信息又要求有很高 的带宽和合理的协议,所以现有的b s 模式的白板大多只传输文本、图形、图像 等信息,而不支持音视频信息的传输和再现。 通过对现有答疑系统的比较分析,结合传统的教师面对面课堂答疑的特点, 我们认为一个较完善的答疑系统应当包括以下答疑功能:文本交互式答疑、语音 交瓦式答疑和图形图像答疑;提供用户对答疑课程的选择功能,即学生和老师进 入哪门课程答疑;用户权限的识别功能,即系统自动识别登录的用户是教师还是 学生然后进入各自的答疑界面;同时应象传统的课堂答疑一样保证老师对答疑过 程的绝对控制权,在老师端提供课堂纪律维护功能,即控制功能。系统的业务流 程如图1 1 所示。在答疑过程中当文本答疑不能满足要求时,老师和学生可以启 动语音功能或电子白板来完成答疑,在系统中文本交互式答疑、语音交互式答疑 和电子白板答疑三种答疑功能可以同时启动或根据需要启动其中的一种交互答 疑功能来完成答疑。 在对系统的功能和业务流程确定后,怎样才能设计一个适应性广泛而又运行 稳定的系统呢? 设计并实现一个基于w e b 的实时答疑系统,采用b s 模式实现, 图i1 答疑系统业务流程图 使用户小必安装专门的客户端软件就可在i n t e r n e tj :运行,用户只要用浏 览器浏览到实时答疑系统所在的服务器,便可以使用系统完成实时答疑。j a v a 是 现在最流行的网络软件开发技术,因而系统采用j 2 e e 构架用纯j a v a 技术开发, 客户端通过浏览器启动a p p l e t 小程序来完成实时答疑,实现图形用户界面,操 作简单、方便,具有多媒体和超文本的特点,这里的多媒体不仅指文本、图形、 图像,还包括音频等时基媒体,从而增强了系统的交互性。 为了使系统具有较强的适应性,系统实现了j 种网络传输协议( b t t p , s o c k e t ,l r m p ) 以满足不同用户对网络传输的要求;系统对占主要网络带宽的语 一:塑竺墅型些堑篓坠一 音传输实现了三种压缩方式( 不压缩、g s m 、m p 3 ) 以满足不同网络用户对多媒体实 时传输和网络带宽的要求;系统采用会务建立的过程管理用户,使系统的会务管 理、数据传输和用户操作界面分离。 1 2 软件复用技术 软件开发长期以来被认为是一项富有创造性的活动。一个软件开发公司存接 到一个新的项目之后,通常遵循需求、获取、分析、设计、实现、集成和测试的 步骤,进行项目的开发。传统的开发方法并不强调软件复用,这样就必然导致大 量的重复劳动,给软件公司造成巨大的人力、物力和财力的浪费。对比一些成熟 的工程领域,复用是这些领域的一个基本特征,例如土木 程、化学工程、计算 机硬件工程等。通过大量复用经过实践检验的系统体系结构和标准化的构件,使 得对一般的设计问题都可以直接利用现成的解决方法,避免了系统开发时”不 断重复地发明车轮”,从而大幅度降低开发成本、提高生产效率和产品质量。系 统化的复用将为软件公司在竞争日益激烈的市场上赢得有利的地位,加快软件公 司新产品的开发,因此,对软件复用的研究和实践越来越引起学术界和产业界的 高度熏视”1 。 软件复用( s o f t w a r er e u s e ) ,又称软件重用或软件再用。早在1 9 6 8 年的k a t o 软件工程会议一h 就已经提出可复用库的思想。软件复用的定义很多,比较权威和 通用的一种是:软件复用是利用事先建立好的软部品创建新软件系统的过程“。 这个定义蕴含着软件复用所必须包含的两个方面: ( 1 ) 系统地开发可重用的软部品。这些软部品可以是代码,但不应该仪仅 局限在代码。我们必须从更广泛和更高层次来理解,这样才会带来更大的重用收 益。比如软部品还可以是:分析,设计,测试数据,原型,计划,文档,模板, 框架以及设计方法等等。 ( 2 ) 系统地使用这些软部品作为构建模块,来建立和构建新的系统1 。 软件复用对于提高开发效率和软件质量有着巨大的发展潜力,软件复用是当 前软件工程研究的重要课题。软件复用可以提高软件的质量和生产率,被认为是 解决“软件危机”的现实可靠的途径”1 。为达到软件复用可能产生的效果,有许 多问题需要研究,其中包括一些非技术问题,如软件开发过程中的人员组织、管 理模式、开发人员培训、知识产权等,以及一些技术问题,如对于软件复用的度 量、关于复用的成本收益、可复用的构件开发、如何复用等“。其中,如何正 确地识别和组织可复用信息,使得它们在软件开发过程中被复用,并且易于被复 用是一个重要的问题,也是软件复用的一个难点。 从软件开发过程的角度看,有关软件复用的问题可以分为两类,一类是关于 面向复用的开发( d e v e l o p m e n t o f r e u s e ) ,另一类是关于基于复用的开发 4 , 工程硕士学位论文 ( d c v 。lo 【) m e n tw i t hr e u s e ) 1 i ”3 。第一类问题主要是关于如何产生具有较高可 复用性的构件或生成过程,第二类问题包含三个方面,即:如何找到可复用构件, 如何判断可复用构件,如何判断可复用构件是否符合当前需要,以及如何对可复 用构件进行适应性修改= :。 1 3 设计模式 现在比较流行的软件开发方法是面向对象方法,面向对象技术是近三十年来 学术界和工业界研究和应用的一个热点。面向对象技术通过方法、消息、类、继 承、封装、和实例等机制构造软件系统,并为软件复用提供强有力的支持“。面 向对象方法已成为当今最有效、最先进的软件开发方法。设计面向对象软件比较 困难,而设计可复用的面向对象软件就更加困难。设计模式利用了对象的继承、 组合和代理,在较o o p ( o b j e e ro r ie n t e dp r o g r a m m i n g ) 高的层次上考虑问题”“。 尤其是使用代理来对任何不稳定或不确定的方面,如状态、对象的创建、应用平 台等等,进行封装,从而保证了源代码的重用和设计的稳定。实际上可以理解成 为是o o p 中虚函数、多态概念的延伸。即o o p 中的虚函数和多态实现的是方法、 对象行为上的多态,而设计模式则对创建、结构和高层次的行为进行了多态。 设计模式概念是由c h r is t o p h e ra 1e x a n d e r 提出:“每一个模式描述了个 在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,我们就 能 次又一次地使用该方案而不必做重复劳动l 。”上述是对设计模式的广义定 义。我们将其应用到面向对象软件的领域内,就形成了对设计模式的狭义定义。 软件设计模式来源于c h r is t o p h e ra l e x a n d e r 的建筑学模式和对象运动,根据 a l e x a n d e r 的观点,模式就是一个对于特定的系统的通用解决方案本身的重复。 对象运动关注j :将现实世界模化为软件内部的关系。 模式是在某种特定的场景( c o i l t e x t ) 下某个不断重复出现的问题的解决方 案。模式本身并没有任何的创新性,它仅仅是对于一些已经被证明为优秀的解决 方法的归类、总结,目的是为了重用该解决方案而又不用做重复的劳动。其中, “特定场景”和“重复”两个限定词非常关键,“特定场景”给出了什么时候以 及为什么使用一个模式,“重复”说明了模式的可重复性从而可以被重用。 我们可以简单的认为:设计模式就是解决某个特定的面向对象软件问题的特 定方法。但严格的来说上述的认识是不准确的。 因为模式是一种指导,在一个良好的指导下,有助于我们完成任务,有助于 我们形成一个优良的设计方案,达到事半功倍的效果,而且会得到解决问题的最 佳办法。 作为软件设计人员都知道良好程序的个基本标准:高聚合,低耦合。面向 对象语言比结构化语言要复杂得多,不良或者没有充分考虑的设计将会导致软件 实时答疑系统的研究与实现 重新设计和丌发。然而实际的设计过程中,设计人员更多的考虑如何解决业务问 题,剥于软件内部结构考虑较少;设计模式则补充了这个缺陷,它主要考虑如何 减少对象之i 8 j 的依赖性,降低耦合程度,使得系统更易于扩展,提高了对象可复 用性。、。 模式本身并1 i 仪仪简单是一些关系,它还具有深刻的内涵。它具有自身的意 图、动机、适用性以及核心解决方案等众多的内容。一旦我们确定使用了一个模 式,那么这个模式就为我们搭建了一个内容丰富的场景,这个场景可以非常有效 的指导我们进一步的工作,启发我们发现新的对象。这样,基于模式构建的系统 架构就变得抽象( 模式本身就是一些抽象的关系) 而不空泛并且具有很好的延伸 性。 模式也提供了一套公认非常有效的记录方法,可以把自已经过反复验证的解 决方案记录下来传授给其他人重用,即模式具有可传授性。这样,有经验的系统 架构师就可以把自己的些心得体会通过模式的方法记录下来,传授给其他人。 其实很多模式本身就是针对系统架构提出的,比如:m v c ( m o d e 卜一v i e w c o n t r o l l e r ) ,它是专门针对交互系统提出的,如果我们要构建一个交互系统, 那么我们就可以直接应用m v c 模式,然后在该模式所搭建的场景的启发下去发现 , m o d e l 、v je w 以及c o n t r o 1 e r ,在这个大的场景的指导下根据其它的需求( 模式) 构建 些小的场景对系统进行有效的分化”。其实模式和系统架构有很大的相似 性,都是处理一些抽象概念问的关系,但是二者还是有很大的不同的,模式与领 域无关的,它是解决一些抽象问题的,但是系统架构是针对我们要解决的实际问 题的,与领域相关的。我们可以通过对问题领域的分析、分解,找到和我们要解 决的问题匹配的模式,对该模式进行定制应用到我们的系统中来,把模式结合在 一起构建起整个系统架构”“。 匝向模式构建的系统架构在需求发生变化时还会使我们处于一个非常有利 的位置。模式是对一个反复出现的问题的优秀的解决方案,它的方法就是发现变 化、封装变化。它本身已经充分考虑了变化的情况。模式采用了一种不同的对待 变化的方法,它不是预先考虑会如何变化,而是考虑哪里可能会变化,然后隔离、 封装,所以当变化发生时我们就处于一个有利的位置上”3 ,。 通过对模式的应用,可以使系统架构和代码很大程度上适应了需求的变化, 使系统的开发变得容易,也使源代码变得更加规范和便于阅读,同时通过对模式 的应用和分析也可以大大提高了程序员的系统分析能力和代码开发水平。 1 4 关键技术 l 4 1 会务过程瓤成员管理 实时答疑是交互,协作的应用。在实对答疑过程中,要求每一门不同课程的 一6 答疑要相互独立,针对这种要求,我们发计了。层会务管理。即对每一门答疑课 程各自建立一个独立的会务管理,然后由会务管理统一管理参与该门课程答疑的 所有用户。当创建会务管理时先创立一个会议,然后其他人员加入这个会议才能 进行答疑。会议是有公共通信的一组用户的最基本的抽象,它支持任意数目用户 的连接且这些用户通过火量不同类型的网络进行全双工多点通信:它支持在会议 成员中共享二进制数据,它的土要功能是口j 以通过各种不同的发送方法,在一个 通信会话中发送数据给所有的( 或是其中的一部分) 成员。然后加入该门课程答 疑的所有用户都加入该会议,并在该会议中进行数据交互,这样各i 、j 课程之i 刈的 答疑就不会相互冲突。同时针对每一项答疑功能都生成一个客户和一个特定的通 道,完成该项答疑功能的数据传送和数据接收。通道上的每客户针对该通道生 成 个通道消费者,用来接收通道上的数据并转交给客j 。其会务管理连接如图 1 2 所示。每个会议有自己独克的成员管理,它是一种应用层控制j 信令协议, 用于创建、修改和结束会议中的一个或多个参与者的会话。系统在控制中心将成 员管理的部分功能进行了扩展,增加了许多老师对课章的控制功能,如:允许和 结束学生的发言等。 通道和通 道消费者 图1 2 会务管理连接图 在会务管理中,为了将系统的控制命令和答疑数据传输分开,分别设计控制 通道和数据通道。控制通道用来埘答疑过程中教师端控制中心控制命令的传送。 数据通道义分为文本通道、语音通道和电子白板通道,用来完成答疑过程中文本 答疑、语音答疑和图形图像答疑的实时数据传输。这样系统的信息传输、课程管 理和会议的成员管理都集中在会务管理中了,使系统的信息传输和管理与用户操 作彻底分开。 1 4 2 电子白板技术 计算机支持的协同工作c s c w ( c o m p u t e rs u p p o r t e dc o o p e r a t i v ew o r k ) 系 统是一种将人类合作行为模式与计算机支持技术融合为一体的新兴技术,其含义 为住计算机技术支持的环境下, 、个群体协同完成一项共同的任务。 c s c w 主要研究群体工作的过程和促进群体工作的技术两方面的内容。前者是 - 7 - 实时管疑系统的研究弓实现 对人类群体工作特性和方法的研究,后者是探讨如何利用现有的技术研究一个开 放的、多媒体交互的集操作系统和应用丌发工具于一体的集成应用系统,以提高 群体t 作的效率和质量”。 电子白板( w h i t e b o a r d ) 是一个虚拟公用区域,在c s c w 中参加协作的各个 成员的计算机j 二都有一个白板的视图,白板上的内容既可以是手绘的简单图形 ( 直线、曲线、矩形等) ,也可以是文字、图像、音频、视频。电子白板要使用 户的行为能对整个咖同工作产生影响,并以显示的方式体现在协同工作的成果 上。也即电了白板数据是共享数据,当一个用户修改了其中的数据之后,就要把 修改立即通知给其他用户,让所有在线用户及时更新自己的白板视图。其更新结 果应该立即反映在其他所有用户的视图上,即所谓的“你见即我见”( w y s i w i s , w h a ty o us e ei sw h a t is e e ) 1 。 为了满足远程协作的要求,电子白板必须具有让用户编辑画面,并实时转发 给其他用户的功能,同时它还应该具有接收其他用户的编辑记录并在本地重现的 功能。 电子白板的基本功能要求之一是绘图功能,它应支持图元的任意拖放、任意 缩放与旋转。同时为实现位于不同地域的用户能够协作画图,电子白板除了具有 编辑能力以外,还应该具有图形图像发送和图形图像重现的功能m ,。 根据老师答疑的要求,实时答疑系统只要求电子白板传输文本、图形、幽像 等信息,而不需要支持音视频信息的传输和再现。语音交互在实时答疑系统中有 专门模块完成。 1 5 本文所做工作 本文所研究和实现的实时答疑系统旨在充分发挥网络优势,提供一个实时的 嘲上辅导环境,为学生答疑在时间和空间上提供了更大的灵活性。 本文主要讨论了实时答疑系统的设计和实现,所做的主要工作如下: ( 1 ) 在对现有几种答疑系统的优缺点进行较为深入分析比较的基础上,结合 传统课堂答疑的特点,提出了一个基于w e b 并包含文本、语音和图形图像的实时 交互、协作式答疑系统的设计方案。 ( 2 ) 钊对答疑过程中课程和用户多的特点,设计了一层用于数据信息传输及 课程和成员管理的会务管理层。该层将用户界面与数据传输及课程和成员管理完 全分丌,使它们分别处于两个不同的层面上,保证系统的可复用性。 ( 3 ) 为了便于老师对答疑过程的管理,设计了一个控制中心并集成在教师端。 ( 4 ) 在系统实现过程中充分应用软件复用、工厂模式等软件工程知识,对程 序结构进行重构,形成了一个完善的程序设计方案,提供了文本交互、语音交互 和电子白板三个可重用的程序构件。 t 程坝十学位论文 f 5 ) 系统采用j 2 e e 架构,用纯j a v a 语者实现,且客户端采用a p p l e t 小程 序方式,只需浏览器支持就可进入答疑系统答疑,实现了一个图、文、声并茂的 多媒体实时答疑系统。 全文主要包括以下五章:第一章绪论主要对实时答疑系统的现状进行了分 析、提山了实时答疑系统的一个解决方案,以及方案中用到的关键技术,总结了 本义所做的主要:作;第二章详细介绍了实时答疑系统的系统设计;第三章介 绍了在实时答疑系统开发过程中对工厂模式的应用;第四章从设计模式的动机 和意图入手,说明了设计模式羽系统程序结构的改善:第五章详细介绍了实时 答疑系统各个功能模块的实现。 2 1 系统架构设计 第2 章实时答疑系统设计 答疑系统的基本架构采用的是b s 架构,分成服务器、客户端和数据库三个 部分。以j a y aa p p l ic a t i o n 为服务器端处理程序。在启动a p p l i c a t i o n 时设定 网络传输协议( h t t p 、s o c k e t 或l r m p ) 以及其它一些相关的设置参数;客户端采 用a p p le t 作为处理程序,客户端启动时只需浏览器,采用w w w 的w e b 页面的形 式实现。其过程如图2 1 所示。系统中的数据库用来存储用户注册信息、答疑课 程和时问以及文本答疑数据的实时存储。 用户输入信息上传 l 一 + 返同卉洵信息或其 返同商询的答疑文本信息 i 一 + 答疑文本信息实时存入 用户电脑他用户输入信息网络服务器 图2 1b s 架构工作原理 在实时答疑过程中,要求不同课程的答疑要相互独立,同时一个用户只能进 入1 门课程答疑。针对这种要求,我们设计了一层会务管理,对每一门课程建立 的一个会务管理,然后登录进入该门课程答疑的用户都加入该会务中,保证各门 课程之间的答疑不相互冲突。同时针对答疑系统的每一项特定功能都生成一个特 定的通道,使该项功能的信息在通道中传输,保证各种信息不互相混淆。整个系 统结构设计为三层结构:核心功能层,会务管理层和网络管理。其结构如图2 2 所示。 偿i 文器“幕互l 幂板i 攀心l 。 多之i之i l 厶 文本通道白扳通道语音通道 务 管 数据通道 控制通道 田 垲 丁了彳卞 刚 络 h t i p 、s 。k e t 和l r m p i 管 i n t e m e t 、i n t r a n e t 和其它网络j 理 图2 2 系统功能结构 - 1 0 - t 程顺士学位论文 系统的核心功能层包括文本交互模块、语音交互模块、电子白板模块和控制 中心。其中文本交互模块提供老师和学生答疑过程中的文本交流;语音交互模块 提供老师和学生答疑过程中的声音交流;电子白板提供老师和学生答疑过程中的 图形图像交流;控制中心完成老师对答疑过程中的纪律管理功能。在系统中将控 制中心的控制功能集成在教师端,教师端利用控制中心提供的控制功能来维护答 疑纪律,并且各种控制命令只能由教师端发出,学生端只能接收控制命令。 会务管理的功能由会议完成,会务管理包括成员管理及通道数据传送和接收 管理。通道分为数据通道和控制通道,其中数据通道完成答疑数据的传送和接收; 控制通道完成教师对答疑过程中纪律维护的控制命令的传送和接收。在系统中又 将数据通道分为文奉通道、电子白板通道和语音通道,分别完成文本交互、电子 白板和语音交互的数据传送和接收。 在会务管理创立时,先对会务注册并建立一个会议,接着创建备种信息传输 通道。然后客户借助于通道消费者从通道接收数据。一个客户端一次能加入多条 通道,但是必须为加入的每条通道创建一个客户和一个通道消费者。 客户加入会议后,它的管理和数据传输就由会议的通道来完成,客户端只需 发送数据到会议的通道,再由会议的通道转发给其他客户。客户端的任务是将用 户输入的数据发送给会议的通道,同时接收会议通道转发来的其他用户的输入数 据c 即每个客户端只与会议的通道进行通信,并不直接与其他客户建藏连接。这 样客户端就不需要管理和维护其他客户的信息,所有的用户信息都由会议来统一 管理r 系统结构更清晰明了,系统效率也更高。同时在客户的每个通道上都有一 个通道数据消费者,该通道消费者用来接收会议通道转发来的其他客户的数据信 息,并将这些信息转给该通道的客户。 在网络管理中给用户提供了三种连接方式( h t t p ,s o c k e t ,l r m p ) ,满足不 刚用,对网络数据传输的需求。 通过采用这种架构,实时答疑系统将用户界面和数据传输以及会务管理和成 员管理完全分开,使它们分别处于两个不同的层面上,保证系统的可复用一盹,t f f 为系统以后的升级提供了方便。 从系统架构设计和分析知道,系统的所有功能是相互独立的,它们之f h j 没有 必然的联系,为了保证系统的复用和团队的协同开发,开发过程中将整个系统按 模块化设计,然后统一模块的调用接口或函数,使每个模块的开发相互独立。下 面对会务管理和各个模块的设计作详细的说明。 2 2 会务管理 会务管理完成整个系统的成员管理和数据传送任务。系统设 j - a t 考虑增加会 务管理,主要是将系统的成员管理、数据传送和用户操作功能及界面相互独立, 实时答疑系统的酬究与实现 使系统的操作和数掘传送及管理彻底分开。 会务管理由服务器端和客户端两部分组成,系统启动时先启动服务器端,并 创建会务管理。建立会务时,先在服务端对会务进行注册,然后针对每一门课程 建立一个会议,再在会议中建立文本通道,语音通道,电子白板通道和控制通道。 当会议建立后,系统由会议监听客户端对某个特定端口的网络连接请求,并与之 建立连接,使客户端成为会议中通道的个客户成员。 当客户端会务创立时,客户端先加入指定的会议中,接着创建客户,并将客 户加入该会议,然后将客户加入指定的通道,最后针对客户创建通道消费者,并 将通道消费者指定到特定的通道上,以便从通道上接收数据并将数据传给客户, 这样一个完整的会务管理就建立了。 只要网络带宽允许,加入会议的客户和通道个数是没有限制的,并且每一个 客户对应唯一的通道,在每一个会议中通道的名称是唯一,并且每一个通道都拥 有自己唯一的通道消费者来接收数据。客户端可以拥有多个客户,每个客户都从 自己特定的通道接收数据,因而客户端同时对每多个通道中数据的接收不会出现 混淆。 会务管理中的每一部分功能和作用如下: 1 注册 服务端的每个应用程序都要为一个会务管理形成一个注册,该注册为每个 会务保存所有的信息。同时,注册是保存会务对象的一个资料库( 主要是会议和客 户对象) 和他们的名字。该注册可以在7 v m 虚拟机中用带参数的命令启动或使用 注册工厂类启动。缺省情况下,会务中对象使用端口4 5 6 1 ( 端口在服务端启动可 以用参数的方式设定) 该进行数据交流。该注册是个会务框架的服务器。注册 是会务开始的第一件事情,并且其余的会务功能都从这里开始建立。 2 会议 会议在会务管理中是最抽象的对象。它是包含所有能通过预定的通信路径交 换数据的有关系的客户的集合。它是管理客户和它们通道用途的关系管理器。另 外,在会务管理中会议、客户、通道和通道消费者都有唯一的名字。当客户端离 丌。个会议时,必须关闭会议对象以便会议自己能自动移去会议中客户和其它的 会务对象。尽管信息是从一个客户传送到另一个客户或所有的客户,但必须创建 一条通道并且经由该条通道传送数据。 3 客户 客户是客户端a p p l e t 之间互联的基础,也是系统核心功能层与会务管理层 进行数据交换的基础。客户能通过通道在点对点或多点之间进行数据的传输,即 客户的数据能点对点或多播。客户的主要的功能最终体现在会务框架中的a p p l e t 中,其它的a p p l e t 程序借助于它自己的客户通过通道发送数据到当前的a p p l e t 1 2 t 程顾士学位论文 程序,在系统运行时就是使用客户的名字作为标识完成数据传输功能的。客户类 是个接l _ | ,存客户类中提供g e t n a m e ( ) 和a u t h e n t i c a t e ( ) 两个方法函数。 在开始,用a u t h e n t ie a t e ( ) 进行认证1 i 是必需的,一般它被忽略,并被设置返 叫空。6 e t n a m e ( ) 函数为客j 、- 对象返回一个标识符以便它能被会务框架中注册 和其它的会务对象调用。 4 通道 通道是一个会议中两个或多个客户之间通信的唯一路径。在会议中,每个通 道有自己唯一的名字,以便会议能跟踪它们并且发送数据。当客户把自己加到一 条通道时,它们能接收所有客户或特定的客户顺着通道发送过来的数据。并且在 客户加入一条通道后,它们就能把数据传递给所有加入这条特定通道的客户或它 们之中的某个客户,通道中信息传输的过程如图2 3 所示。通道同其它的会务对 象样,能通过通道工厂来创建一条通道或加入一条已经存在的通道。在会议中, 客户不能发送数据到其它通道上,也不能从其它通道上接收数据。它有t 个发送 数据的方法: 客户客户客户 v e ( ) 会议 图2 3 客户信息在通道中传输示意图 ( 1 ) s e l d t o a 儿( s e r l d i n g c l ie n t ,d a t a )发送数据到所有在同一通道上的 用,、( 包括自己) ,其中参数s e n d i n g c l ie n t 是发送数据的客户名称,参数d a t a 是含发送数据和客户名称的数据组。 ( 2 ) s e n d t o a l l o t h e r s ( s e n d i n g c l i e n t ,d a t a ) 发送数据到所有在同通 道卜的用户,其中参数s e n d in g c l i e n t 是发送数据的客户名称,参数d a t a 是含 发送数据和客,o 名称的数据组。 ( 2 ) s e n d t o c l i e n t ( s e

温馨提示

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

评论

0/150

提交评论