面向Internet上的CSCW的共享白板的设计与实现
来源:wenku163.com 资料编号:WK1638261 资料等级:★★★★★ %E8%B5%84%E6%96%99%E7%BC%96%E5%8F%B7%EF%BC%9AWK1638261
资料介绍
面向Internet上的CSCW的共享白板的设计与实现
摘 要
随着Internet的迅速普及,计算机技术进入了以网络为中心的时代。在计算机网络的支持下。地理上分布的人们需要协同工作。因此计算机支持协同工作(CSCW)应运而生。人们希望借助协同工作环境以“你见即我见”的方式进行交互。而电子白板作为计算机支持协同工作(CSCW)中的一个重要的图形交互工具,使处于不同地点的用户通过计算机可以实时的进行图形交互,用户简单快速地实现协同工作,业务处理过程,迅速适应市场的变化,从而获得更好的经济效益。
本系统将CSCW与Java技术相结合,采用Java语言中的Socket网络编程技术,实现了客户端与服务器端之间网络底层的链接和信息的交换,用C/S计算机模型设计并实现了一个基于Java的电子白板系统,增加网上绘制图功能,弥补了纯文本非实时交流的不足,简化了网络中的技术细节,方便可行。
关键词:共享电子白板;CSCW;Java;Socket;Client/Server(C/S)
The Design and Implementation of Internet Oriented CSCW Shared Whiteboard
Abstract
Along with rapid popularity of Internet, computer techniques come into Network Centric Computing epoch. People who are in geographically distributed locations need to collaborate with each other, so the Computer Supported Cooperative Work (CSCW) springs up. People hope interacting with each other using the WYSIWIS(What You See Is What I See) mode in CSCW environment. The shared whiteboard is the most important tool of graphic interaction in CSCW, which helps people locating different areas to interact each other with graphics by computers. The customers carry out a work, deal with the process of business and adapt a series of variety of the market in a brief and quick way .Then a better and economic performance is acquired.
This system combines CSCW with Java technology and carries out the links of the low layer of the networks and switch of the information among the clients and severs using the socket programming technology with java. The design and implementation of the shared whiteboard system based on java adopting the C/S module of computer increases the online drawing function, makes up the shortage of pure text of the no real time and predigests the details of technology in network. So the system is very useful for us.
Key words: share whiteboard; CSCW; Java; Socket; Client/Server(C/S)
目 录
论文总页数:26页
1 引言 1
2 开发技术与相关控件 1
2.1 Internet简介 1
2.2 计算机支持协同工作(CSCW)概述 1
2.3 TCP/IP、端口和套接字的概况 2
3 共享电子白板的系统功能结构 2
3.1 共享电子白板的主要功能 2
3.2 共享电子白板的系统结构 3
4 共享电子白板的结构与设计流程 3
4.1 共享电子白板的系统结构 3
4.2 共享电子白板信息流设计 4
4.2.1 由客户端向服务器端传递的主要消息 5
4.2.2 由服务器端向客户端传递的主要消息 6
4.3 共享电子白板的设计流程 7
4.3.1 服务器端程序设计流程 7
4.3.2 客户端程序设计流程 7
5 共享电子白板的实现 8
5.1 实现共享电子白板的语言和环境 8
5.2 服务器端的实现及相关类和方法 9
5.2.1 服务器的实现 9
5.2.2 服务器实现的相关类和方法 11
5.3 客户端的实现及相关类和方法 15
5.3.1 客户端实现 15
5.3.2 客户端实现的相关类和方法 17
结 论 24
参考文献 24
致 谢 25
声 明 26
1 引言
随着Internet的迅速发展,在Email、WWW、FTP等传统的非实时应用日趋成熟的同时,广大网络用户对在线实时交流的需求不断扩大,如网上会议、远程教学、协同工作等。这方面的应用软件也日益丰富起来。该类软件主要分为两类,一种是以目前BBS和主页上的聊天室为代表的纯文字型的交流工具;另一种就是本文要介绍的电子白板类交流工具。电子白板除了具备聊天室的全部功能外,更重要的是,它还引入了绘画图形交流功能,使网上交流的形象性和直观性大大加强了,弥补了文字交流的不足。当分布在Internet不同位置的用户用白板进行交流时,一个人在自己的白板上绘制的图形可以马上在别人的白板上显示出来,好象大家都在同一块白板上绘画,彼此间的距离感大大缩短了。
电子白板技术最初是指多媒体视频会议系统中,与会者通过某个界面实时共享数据并协作的技术。任何与会者在电子白板上的操作,包括简单的图形绘制操作,文字输入操作等,都可以实时地与其他会者共享。更复杂的白板要支持窗口共享以及本地多媒体的链接与嵌入,并且可以将每一个图形实体作为对象保存到文件中。随着WWW的发展以及Browser/Server计算模式的日益流行,Client/Server计算模式也在发展,本人做的面向Internet上的CSCW的共享白板的设计与实现是用Client/Server计算模式做的。电子白板技术已经不仅仅局限于应用在多媒体视频会议系统中了。
2 开发技术与相关控件
2.1 Internet简介
Internet是在ARPAnet(高级研究计划署网络)的基础上发展起来的。ARPAnet始建于20世纪60年代末期,如今Internet已经深入到人们生活的各个方面,并带来了全新的通信方式,是人类通信方式的又一次革命。
Internet的飞速发展和广泛应用为人们的信息交流、传输带来了极大的便利。目前用户可以看到的Internet提供的服务有很多,主要有WWW服务、文件传输服务(FTP)、电子邮件服务(E-mail)和远程登录服务(Telnet)等。这些都是当今世上最流行的服务,也是人们经常要用到的服务。
2.2 计算机支持协同工作(CSCW)概述
通信技术、计算机技术以及网络技术的融合,产生的新的研究领域——计算机支持的协同工作(Computer Supported Cooperative Work,CSCW),简称计算机协同工作。1984年由美国MIt的IreneGreif和DEC的PaulCashman提出的。
CSCW是地域分散的一个群体,借助计算机及网络技术,共同协调与协作来完成一项任务。它包括群体工作方式研究和支持群体工作的相关技术研究、应用系统的开发等部分。通过建立协同工作的环境,改善人们进行信息交流的方式,消除或减少人们在时间和空间上的相互分隔的障碍,从而节省工作人员的时间和精力,提高群体工作质量和效率。
CSCW是在计算机支持的环境下(CS),特别是在网络环境下,一个群体协同完成一项共同的任务(CW),它的目标是设计出支持各样协同工作的工具、环境与应用系统。
CSCW是研究群体如何工作,探讨各种技术特别是计算机技术如何支持群体工作的一个新的研究领域。CSCW的研究涉及到计算机网络、多媒体、人工智能、面向对象技术、数据库、并行与分布式处理、自然语言处理以及认知科学、行为科学、艺术等诸多领域。CSCW研究的焦点应始终集中于人-人交互以及其中知识的表示与沟通。以面向对象为其基本方法论,以高速计算机网络为基础,以开放的分布式系统为支撑环境。
2.3 TCP/IP、端口和套接字的概况
TCP/IP(Transaction Control Protocol ,传输控制协议)实际上是一组协议的集合。当应用程序要求传输协议能提供可靠的数据传输时,可使用TCP协议,因为在TCP协议中验证数据在网络上是否以合适的序列正确地传输。TCP是一种可靠的、面向连接的协议。TCP提供的可靠性是利用一种被称为“重传肯定确认(Positive Acknowledgment with Retransmission ,PAR)”机制来实现的。端口(Port)是基本的连接单元。端口的作用是非常重要的,在使用TCP/IP协议在主机上建立服务之前,用户必须首先抒写监听的端口,指定端口号以表示其上运行的是何种服务。如果用户希望与主机通信并完成某种服务,必须抒写端口号。套接字(Socket)是一个IP地址和一个端口号的组合,一个套接字可以惟一地标识整个Internet中的一个网络进程。套接字和端口号作为术语有时是可以互相转换的,实际上,知名服务经常称为知名套接字。在本实验中,套接字是指IP地址和端口号的组合。一对套接字(一个用于接收主机,另一个用于发送主机)可以定义面向连接协议的一次连接。
3 共享电子白板的系统功能结构
3.1 共享电子白板的主要功能
本软件共享电子白板的功能主要有以下几点:
1)支持多用户对图形、文本等的绘制操作功能,如直线、圆、椭圆、填充圆、文本等。
2)支持多用户对同一内容进行讨论功能。有纯文字的讨论显示内容区和图形、文本讨论显示内容区。
3)支持用户自觉锁的功能。如果用户不是主讲者,也就是对图形、文本显示内容区的绘制者,就要自觉地锁定对图形、文本显示内容区的操作功能,只能对纯文字显示内容区内发表个人的意见。
3.2 共享电子白板的系统结构
电子白板由服务器端和客户端两部分组成,服务器端监听客户对某个特定端口的网络连接请求,并与之建立连接,这样,这个客户的数据就可以发送到服务器,再由服务器转发给其他客户。客户端的任务是将用户的输入数据发送给服务器,同时接收服务器转发的别的用户的输入数据。也就是说,每个客户端只与服务器进行通信,并不直接与其他客户建立连接。这个设计方案与另一方案,即在客户端之间直接建立网络连接相比较,其优点是客户端不需要管理和维护其他客户的信息,系统结构更清晰明了,系统效率也更高。
客户端运行时将立即向服务器的某个端口发送连接请求,待连接建立后则由用户的发送线程发送该用户的输入数据到服务器。服务器端的主线程负责监听某个端口,并为每个发出请求的用户建立用户空间线程,这个线程负责接收记录用户的信息,更新用户名单列表,接收用户的发送线程发出的数据,并交给服务器转发线程进行转发。服务器转发线程根据用户名单列表,逐一发送转发数据到每个用户的接收线程。在客户端,用户接收线程接收服务器转发的数据,由用户端主线程进行处理后显示。
客户端的输入数据类型分为两类:纯文本和图形对象。纯文本用于客户之间进行文字交谈,图形对象则包括直线、矩形、圆等图形的形式进行图形交谈。每一种数据类型都被包装成数据包(暂存在缓冲区里的形式)在网络上传送,客户端还要在接收到服务器转发同样的数据包后,进行解数据包,也就是对字符串进行分析后显示。
4 共享电子白板的结构与设计流程
4.1 共享电子白板的系统结构
本系统将采用Client/Server(C/S)体系结构,即客户机/服务器体系结构。C/S结构主要应用于构造数据库系统,它包括连接在一个网络中的多台计算机。处理应用程序并请求另一台计算机服务的计算机称为客户机,处理数据库的计算机成为服务器。其特点是客户端只装载应用软件,而把数据库放要服务器上,这样就可以使客户端不需要存储数据,从而简化客户端软件。 |