共享電子白板系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)分析

時(shí)間:2022-10-31 10:17:44

導(dǎo)語(yǔ):共享電子白板系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)分析一文來(lái)源于網(wǎng)友上傳,不代表本站觀(guān)點(diǎn),若需要原創(chuàng)文章可咨詢(xún)客服老師,歡迎參考。

共享電子白板系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)分析

隨著人類(lèi)社會(huì)的不斷發(fā)展,分工與合作變成了提高工作效率的關(guān)鍵點(diǎn),協(xié)同辦公變成現(xiàn)在比較流行的一個(gè)話(huà)題,CSCW(計(jì)算機(jī)支持協(xié)同工作)變成了計(jì)算機(jī)研究的重要方向,共享白板是具有代表性的的協(xié)同辦公應(yīng)用,其組成了一個(gè)可以大家工作操作的一個(gè)交流環(huán)境,實(shí)現(xiàn)了實(shí)時(shí)同步一個(gè)人的修改操作到這個(gè)協(xié)同環(huán)境的其他計(jì)算機(jī)上。電子白主要應(yīng)用于協(xié)同工作系統(tǒng),隨著信息網(wǎng)絡(luò)的高速發(fā)展,通過(guò)網(wǎng)絡(luò)等遠(yuǎn)程通訊方式搭建出一個(gè)虛擬化的辦公或?qū)W習(xí)的區(qū)域,基于Internet的共享電子白板成為主流,但是網(wǎng)絡(luò)的不穩(wěn)定性容易導(dǎo)致用戶(hù)體驗(yàn)的流暢性得不到保證,而且分布式的白板系統(tǒng),首先要需要在用戶(hù)數(shù)量上面支持多用戶(hù),并且還要保證共享白板系統(tǒng)的操作和響應(yīng)在一個(gè)可以接受的范圍??紤]到這些特點(diǎn)和因素,在實(shí)現(xiàn)共享電子白板系統(tǒng)上,更加注重解決保持?jǐn)?shù)據(jù)的一致和用戶(hù)體驗(yàn)這兩點(diǎn)。

1保持一致性

在白板系統(tǒng)通信的過(guò)程中,為了提升相互之間的響應(yīng)速度,通常會(huì)把需要共享的數(shù)據(jù)信息(如:用戶(hù)輸入的文檔信息,一起畫(huà)的圖形信息)拷貝到共享用戶(hù)的物理計(jì)算機(jī)上,用戶(hù)之間通過(guò)消息的通信保證各個(gè)用戶(hù)之間信息的同步和一致性的目的,一個(gè)用戶(hù)的信息有變更后,發(fā)送消息給其他的用戶(hù),其他用戶(hù)收到后,在本地執(zhí)行相同的指令信息,從而達(dá)到完全同步也就是共享的目的。這時(shí)候如果網(wǎng)絡(luò)速度跟不上,或者出現(xiàn)延遲,電子白板系統(tǒng)沒(méi)有收到相應(yīng)的信息或者延遲收到操作信息,就會(huì)影響到用戶(hù)的體驗(yàn),和共享白板工作的順利進(jìn)行。這時(shí)候就要用到并發(fā)控制方法,目前比較有用的控制方法如:鎖定控制法、事務(wù)控制機(jī)制、輪流控制機(jī)制、集中控制機(jī)制等。(1)鎖定控制法這是一種保證數(shù)據(jù)一致性的常用的手段,鎖定控制法指在一個(gè)操作(如:修改某一個(gè)文檔或者某個(gè)圖形)即將開(kāi)始之前先將其上鎖,這樣在一個(gè)用戶(hù)操作的時(shí)候,其他的用戶(hù)就不可以對(duì)這個(gè)鎖定的對(duì)象進(jìn)行操作。用戶(hù)首先需要對(duì)需要修改的圖形對(duì)象進(jìn)行選中操作,被選中后該區(qū)域會(huì)展示輪廓和變色信息,獲取到這個(gè)鎖的對(duì)象之后,才可以對(duì)其進(jìn)行操作。這樣就可以限制住一個(gè)文件在同一時(shí)間只能有一個(gè)用戶(hù)在操作,不會(huì)有沖突,但是響應(yīng)時(shí)間比較長(zhǎng)效率比較低,而且鎖的粒度很難把握,如果設(shè)置的太小,無(wú)疑會(huì)家中系統(tǒng)的負(fù)擔(dān),但是如果設(shè)置的過(guò)大,就會(huì)嚴(yán)重影響到用戶(hù)并行的需求。(2)事務(wù)控制機(jī)制是在分布式的需求中使用的最常見(jiàn)的一種方式,在軟件設(shè)計(jì)中應(yīng)用的也非常廣泛,主要是指在進(jìn)行一系列事務(wù)操作之前,先把之前存在的數(shù)據(jù)保存,如果事務(wù)操作過(guò)程中不同的用戶(hù)同時(shí)操作了一個(gè)數(shù)據(jù),就把數(shù)據(jù)還原回去,就當(dāng)作什么也沒(méi)發(fā)生過(guò),當(dāng)然這個(gè)機(jī)制顯然不適合咱們的共享電子白板系統(tǒng),事務(wù)的響應(yīng)和效率很低,而且其執(zhí)行的時(shí)候是不被感知的,因此這個(gè)并不適合這個(gè)系統(tǒng)。(3)輪流控制機(jī)制。輪流控制機(jī)制顧名思義就是保證同一個(gè)時(shí)間只能有一個(gè)用戶(hù)進(jìn)行操作,并不可以有并發(fā)的操作,所以如果用戶(hù)量比較大的情況下,是不適用的。(4)集中控制機(jī)制。建立一個(gè)集中控制管理的進(jìn)程,用來(lái)做中心管理控制的功能,主要的作用相當(dāng)于一個(gè)消息中心,接收來(lái)自各個(gè)用戶(hù)的操作信息,并以廣播的形式發(fā)送給共享白板的用戶(hù),這樣可以保證操作的有序性,時(shí)效性和一致性,無(wú)論什么操作,首先需要把消息發(fā)送到管理中心,再由其進(jìn)行分發(fā)。雖然可以保證系統(tǒng)的集中控制,但是這種集中控制有可能會(huì)成為系統(tǒng)的瓶頸。同時(shí)所有操作都由中心進(jìn)程分發(fā),會(huì)影響效率。雖然可能會(huì)受到網(wǎng)絡(luò)信息的影響,但是目前是相對(duì)來(lái)說(shuō)比較好的選擇。(5)檢測(cè)依賴(lài)。對(duì)于每一個(gè)用戶(hù)的修改都給出時(shí)間戳,之后可以查看時(shí)間戳之間是否有沖突來(lái)判斷是否可以執(zhí)行。這種方法使得沒(méi)有沖突的本地和異地的都可以執(zhí)行,但是一但出現(xiàn)了沖突,就需要使用者進(jìn)行修改。以上對(duì)并發(fā)的各種控制機(jī)制進(jìn)行比較后,共享電子白板系統(tǒng)可以采用時(shí)間戳和集中控制相結(jié)合的方式。

2應(yīng)用之間信息共享技術(shù)傳輸格式設(shè)計(jì)

系統(tǒng)之間通信主要通過(guò)收發(fā)消息實(shí)現(xiàn)共享,如果其中一個(gè)用戶(hù)修改了信息,系統(tǒng)會(huì)把這個(gè)信息以指定的格式封裝起來(lái),通過(guò)網(wǎng)絡(luò)傳輸?shù)狡渌c會(huì)用戶(hù)的計(jì)算機(jī)上,他們接收到數(shù)據(jù)之后,按照之前擬定好的協(xié)議把指定格式的數(shù)據(jù)進(jìn)行解密,如果其他的用戶(hù)操作并修改了數(shù)據(jù),也是同樣的方式進(jìn)行相互之間的傳輸。由于共享白板服務(wù)器既需要把信息發(fā)送廣播到其他用戶(hù),而且還需要接收用戶(hù)的操作請(qǐng)求,這些信息的數(shù)據(jù)長(zhǎng)度和內(nèi)容比較難統(tǒng)一,所以為了簡(jiǎn)單方便,把各種數(shù)據(jù)和命令序列化為二進(jìn)制的流,優(yōu)點(diǎn)在于可以讓傳輸層的數(shù)據(jù)格式獨(dú)立于應(yīng)用顯示層,使其適用的平臺(tái)更為廣泛,傳輸層不再需要關(guān)注傳輸?shù)膬?nèi)容和格式,只要知道數(shù)據(jù)的長(zhǎng)度就可以了,而其他的信息都交給應(yīng)用層去設(shè)計(jì)。數(shù)據(jù)協(xié)議的類(lèi)型主要分為四個(gè)類(lèi)型:(1)圖形、文本的管理:新建或編輯的文本、圖形的繪制和修改(2)用戶(hù)信息的管理:用戶(hù)信息不同光標(biāo)需要標(biāo)注(3)同步信息的管理:協(xié)同不用用戶(hù)的不同需求(4)以鎖的方式控制并發(fā)操作:對(duì)不同的用戶(hù)標(biāo)記為不同的鎖,來(lái)加以區(qū)分詳細(xì)使用方法如下:(1)文本數(shù)據(jù)協(xié)議:文本協(xié)議類(lèi)型標(biāo)識(shí),如‘010’,需要傳輸?shù)奈谋净蛐畔ⅲ€有發(fā)送信息人的IP地址信息,這樣就可以讓接受信息的人知道文本的發(fā)送人,修改文本的格式信息,x,y坐標(biāo)標(biāo)識(shí)在屏幕的位置,因?yàn)門(mén)CP在傳輸?shù)倪^(guò)程中有可能會(huì)重新組裝數(shù)據(jù),所以TCP協(xié)議有可能會(huì)把所有的重組信息接收完成,才一起發(fā)送,所以信息接收者通過(guò)在信息流的結(jié)尾使用換行符(0x0D),調(diào)節(jié)文本的輸出格式。(2)圖形數(shù)據(jù)協(xié)議:協(xié)議標(biāo)識(shí)和文本標(biāo)識(shí)的不同之處在于字體和字符串信息更換成了線(xiàn)形填充信息。通信信息格式協(xié)議:用戶(hù)的退出和加入會(huì)實(shí)時(shí)同步到共享白板服務(wù)器上,同時(shí)把這些消息發(fā)送到其他用戶(hù)那里。主要由序列號(hào)如‘020’,加上用戶(hù)的地址信息和名稱(chēng)信息和結(jié)尾符。(3)新的用戶(hù)進(jìn)入到系統(tǒng)中時(shí),共享服務(wù)器會(huì)向所有客戶(hù)發(fā)送新用戶(hù)的信息,并且需要加上標(biāo)識(shí)信息‘020’,然后把其他的信息更新給新的用戶(hù),就完成的數(shù)據(jù)的同步工作。在用戶(hù)退出共享白板系統(tǒng)的時(shí)候,會(huì)發(fā)送以‘021’的標(biāo)識(shí)加上退出用戶(hù)的信息給其他用戶(hù),他們本地就會(huì)完成刪除工作。

3用戶(hù)相互感知方面

在人們?cè)诂F(xiàn)實(shí)中開(kāi)會(huì)的時(shí)候,很容易通過(guò)聽(tīng)覺(jué)、觸覺(jué)和視覺(jué)領(lǐng)會(huì)到彼此之間的肢體動(dòng)作和實(shí)際的語(yǔ)言,更通過(guò)兩種語(yǔ)言的互補(bǔ),就可以更加準(zhǔn)確的理解其目的,與會(huì)人員則可以更加簡(jiǎn)單的理解其他人的意圖、動(dòng)作和位置,可以說(shuō)這種協(xié)同的效率是很高的。而我們的共享白板系統(tǒng)則是為與會(huì)人員創(chuàng)建了一個(gè)虛擬的會(huì)議空間,雖然可以使大家可以實(shí)現(xiàn)遠(yuǎn)程的協(xié)作,但是虛擬空間必然沒(méi)有現(xiàn)實(shí)空間中感受的那么明顯,這時(shí)候需要關(guān)注到白板上能夠展示出來(lái)的信息,通常來(lái)說(shuō),解決這個(gè)效率低下問(wèn)題的方法有如下幾種:(1)光標(biāo)信息的可變性:用戶(hù)進(jìn)行的操作有很多種,如圖形、文本、刪除等操作,想要更直觀(guān)的展示出來(lái)不同的操作類(lèi)型,可以以特定的標(biāo)記去標(biāo)識(shí)出來(lái)操作類(lèi)型,比如在刪除操作時(shí)候,光標(biāo)顯示出橡皮擦;在對(duì)圖形進(jìn)行操作時(shí)候,光標(biāo)顯示圖形樣式。(2)用戶(hù)不同,使用不同顏色去標(biāo)記:不同的用戶(hù),首先系統(tǒng)自動(dòng)分配給不同的顏色,這時(shí)候需要注意角色不要過(guò)多,顏色之間應(yīng)該做到有辨識(shí)度,這樣在每個(gè)用戶(hù)進(jìn)行操作的結(jié)束之后,對(duì)其操作的結(jié)果進(jìn)行標(biāo)記。(3)多個(gè)光標(biāo)顯示用戶(hù)名信息:用戶(hù)在本地計(jì)算機(jī)上進(jìn)行的操作,光標(biāo)不僅在本地,而且也會(huì)在共享白板上顯示,同時(shí)其他的用戶(hù)也會(huì)這么展示。(4)縮略圖顯示:首先我們可以展示兩個(gè)頁(yè)面,一個(gè)展示的是用戶(hù)的工作環(huán)境,用戶(hù)可以對(duì)工作環(huán)境的頁(yè)面進(jìn)行操作,而另一個(gè)頁(yè)面展示的是當(dāng)前的縮略圖,這個(gè)縮略圖也會(huì)在其他共享的屏幕上展示,這樣用戶(hù)可以做到統(tǒng)觀(guān)全局,可以加強(qiáng)用戶(hù)對(duì)于當(dāng)前系統(tǒng)的情況進(jìn)行充分的了解。在現(xiàn)實(shí)情境中,因?yàn)榫W(wǎng)絡(luò)問(wèn)題有限制,只需要關(guān)注操作的結(jié)果,所以只需要記錄并展示用戶(hù)操作的結(jié)果信就可以,顏色標(biāo)記法限制用戶(hù)的顏色種類(lèi),使其應(yīng)用變得很不自然。如果所有的共享白板客戶(hù)都修改了這些數(shù)據(jù),傳輸數(shù)據(jù)的時(shí)候就需要附加上IP地址信息(用戶(hù)在接收到這些信息之后,就可以通過(guò)IP地址查詢(xún)到發(fā)送人的詳細(xì)信息),而參加到共享白板的用戶(hù),每個(gè)人都會(huì)有一個(gè)標(biāo)識(shí)自己的光標(biāo),用來(lái)標(biāo)識(shí)自己的有效性。如果有多個(gè)光標(biāo)的情況,再用深度值去區(qū)分自己的和其他用戶(hù)的光標(biāo),深度值最高的永遠(yuǎn)展示在最前面,當(dāng)某一個(gè)用戶(hù)選擇了遠(yuǎn)程的光標(biāo),這個(gè)光標(biāo)就會(huì)出現(xiàn)在當(dāng)前窗口的中間。

4總結(jié)

通過(guò)以上的討論可以確定系統(tǒng)的結(jié)構(gòu),對(duì)于在CSCW的應(yīng)用的需求下,我們對(duì)于共享電子白板系統(tǒng)的設(shè)計(jì)首先需要有一個(gè)消息中心,負(fù)責(zé)管理會(huì)議的查詢(xún)、參加會(huì)議人員的信息和通信的顯示。而分布在各個(gè)地方的用戶(hù)可以通過(guò)網(wǎng)絡(luò)連接,系統(tǒng)把內(nèi)部通信的詳細(xì)信息隱藏了,只展示給用戶(hù)簡(jiǎn)單的頁(yè)面信息。對(duì)于在共享電子白板的設(shè)計(jì)與實(shí)現(xiàn)中,滿(mǎn)足了高并發(fā)且相互協(xié)作應(yīng)用系統(tǒng)的需求,設(shè)計(jì)了以網(wǎng)絡(luò)進(jìn)行通信的虛構(gòu)空間,實(shí)現(xiàn)了基本的用戶(hù)操作實(shí)例,完成了應(yīng)用之間通信的傳輸格式設(shè)計(jì)、多個(gè)用戶(hù)同時(shí)參與、協(xié)同共享的數(shù)據(jù)一致、用戶(hù)體驗(yàn)流暢。

作者:姜世芬 單位:江門(mén)職業(yè)技術(shù)學(xué)院