首页 理论教育 电子白板模块的设计与实现

电子白板模块的设计与实现

时间:2022-02-12 理论教育 版权反馈
【摘要】:多用户窗口滚动条是单用户窗口滚动条功能的扩展,用于指示其他会议成员正在观看的电子白板窗口区域。电子白板内部实体指位于电子白板内部的可观看的对象。包括作为整个电子白板的最底层背景的地图、作为整个电子白板的次下层背景的图片、用于标注和示意的随笔手写。电子白板模块的结构如图2-5所示,系统中有一个服务器,起着会议管理的作用,负责管理会议的注册、查询、与会者参与情况的显示等。

2.4.1 一致性的保持

现在常见、实用的并发控制方法有事务机制、轮流法、锁定法、集中控制等。事务机制在分布式数据库系统领域内,是一种被广泛采用和深入研究的并发控制方法,但其响应和告知性能低,事务的执行过程不可见,因此不适合用于实时CSCW系统中的并发控制。轮流法保证同时只有一位用户拥有令牌,从而能够编辑共享文档,因此不会发生不一致问题。但其不支持并发编辑,不适用于那些以多用户并发活动流为协同特性的应用环境。锁定法使一个对象(如一个单词、一种文字、一个图形)在改动前首先被锁定,使得在同时仅有一个用户能够改动此对象,但这并不能完全解决不一致问题,并且响应时间比较长。集中控制使用一个集中控制进程,管理所有对共享数据的操作,它接受用户的数据操作请求,并将其广播给所有用户,从而使操作有序,确保了数据的一致性。虽然操作的传送也会延长系统的响应时间,但由于系统主要应用于宽带网络,该延时在可接受的范围内。

通过对以上并发控制方法的比较,上海交通大学(袁稹等,2001年)采用集中管理的并发控制方法,其结构如图2-4所示。因为参与协作的计算机上运行的协作工具可能不只有电子白板,还有闲聊器或其他的协作工具,系统中加入了会话管理部分,各协作工具的操作请求都通过它传递给服务器,从而避免了各个协作工具各自分离。系统中加入电子白板服务器、闲聊服务器等多个服务器,提高了系统的通用性。

图2-4 结构图

2.4.2 用户间的感知

用户间感知是指一个用户的操作能被其他用户了解的能力。由于电子白板是分布在不同区域的各个用户在同一块工作空间进行操作,用户间不能通过话语、手势交流,其用户间感知问题就相当重要。如果用户间缺乏足够的相互感知能力,一个用户的工作就可被另一用户忽视甚至破坏。上海交通大学(袁稹等,2001年)提供的用户间感知服务有:

(1)远程指针服务:远程指针指其他会议成员的鼠标在本地屏幕上的显示,用于感知其他成员正在进行操作的位置。

(2)多用户窗口滚动条服务:窗口滚动条能控制电子白板窗口内的显示区域。多用户窗口滚动条是单用户窗口滚动条功能的扩展,用于指示其他会议成员正在观看的电子白板窗口区域。

(3)缩略图服务:提供两个窗口来显示共享工作空间。其中一个窗口是工作窗口,用户在这个窗口上进行各种操作;另一个窗口是当前工作空间的缩略图,当前工作空间中的所有共享对象在其中缩小显示。缩略图服务能加强用户对全局情况的了解。

通过上述服务,可以了解其他用户的操作区域、正在进行的操作和全局分布情况。这样,小到其他用户的一举一动,大到全局的总体概况,使用者都能掌控。

2.4.3 模块的具体设计和实现

2.4.3.1 实现途径

具体实现是基于Tcl/Tk8.0语言,借助于Group Kit 5.0工具包进行多站点操作的同步协同,在SGI 02工作站实现的。实现途径具有下列特点:

(1)由于Tcl/Tk是跨Unix、Windows、Mac OS的语言,Group Kit 5.0工具包亦支持这些操作系统,因此所开发的程序可直接运行在这些操作系统上。

(2)Group Kit是University of Calgary开发的一套群件工具箱。Group Kit是Tcl/Tk语言的扩展,使用Tcl内置的Socket命令作为其底层网络通信,提供了一个能够处理大多数建立群件所需细节的应用框架,使应用软件开发商能将大部分精力花在应用需求本身上,更加方便开发群件应用。

从电子白板模块的开发过程和效果来看,这种实现途径是可行的。

2.4.3.2 电子白板内部实体

电子白板内部实体指位于电子白板内部的可观看的对象。电子白板内部所包含的实体分为可操作实体、背景实体和文字3类。

(1)可操作实体:在电子白板中所能操作的实体。包括线段、矩形、圆和用于表示与实际世界相关联的物体(人员、车辆等)的可移动单元

(2)背景实体:在电子白板中的背景实体。包括作为整个电子白板的最底层背景的地图、作为整个电子白板的次下层背景的图片、用于标注和示意的随笔手写。

(3)文字:在电子白板中,文字指用键盘输入的一段字符串,一般用于对实体的标注、用语言来对某一实体或现象进行解释。

2.4.3.3 模块的结构

电子白板模块的结构如图2-5所示,系统中有一个服务器,起着会议管理的作用,负责管理会议的注册、查询、与会者参与情况的显示等。分布在各处的工作站通过宽带网络相联,系统对开发者隐藏了底层通信的细节,各节点间的互操作通过远程过程调用(RPC)实现。系统在进行远程过程调用时,可指明是所有节点(除本机外的其他节点),还是某一特定节点,从而提高应用的灵活性。

图2-5 电子白板模块的结构图

为此,基于协作系统的应用需求,制定了以共享的虚拟工作空间为思想的应用模型,设计了用户互操作的流程规范,实现了无中心点的分布式电子白板中的互操作控制、用户间感知、多参与者同步、共享空间一致性保持、本地和远程响应速度并感觉不到明显时延的设计目标。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈