共享電子白板系統(tǒng)設計與實現(xiàn)分析
時間:2022-10-31 10:17:44
導語:共享電子白板系統(tǒng)設計與實現(xiàn)分析一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
隨著人類社會的不斷發(fā)展,分工與合作變成了提高工作效率的關鍵點,協(xié)同辦公變成現(xiàn)在比較流行的一個話題,CSCW(計算機支持協(xié)同工作)變成了計算機研究的重要方向,共享白板是具有代表性的的協(xié)同辦公應用,其組成了一個可以大家工作操作的一個交流環(huán)境,實現(xiàn)了實時同步一個人的修改操作到這個協(xié)同環(huán)境的其他計算機上。電子白主要應用于協(xié)同工作系統(tǒng),隨著信息網(wǎng)絡的高速發(fā)展,通過網(wǎng)絡等遠程通訊方式搭建出一個虛擬化的辦公或學習的區(qū)域,基于Internet的共享電子白板成為主流,但是網(wǎng)絡的不穩(wěn)定性容易導致用戶體驗的流暢性得不到保證,而且分布式的白板系統(tǒng),首先要需要在用戶數(shù)量上面支持多用戶,并且還要保證共享白板系統(tǒng)的操作和響應在一個可以接受的范圍??紤]到這些特點和因素,在實現(xiàn)共享電子白板系統(tǒng)上,更加注重解決保持數(shù)據(jù)的一致和用戶體驗這兩點。
1保持一致性
在白板系統(tǒng)通信的過程中,為了提升相互之間的響應速度,通常會把需要共享的數(shù)據(jù)信息(如:用戶輸入的文檔信息,一起畫的圖形信息)拷貝到共享用戶的物理計算機上,用戶之間通過消息的通信保證各個用戶之間信息的同步和一致性的目的,一個用戶的信息有變更后,發(fā)送消息給其他的用戶,其他用戶收到后,在本地執(zhí)行相同的指令信息,從而達到完全同步也就是共享的目的。這時候如果網(wǎng)絡速度跟不上,或者出現(xiàn)延遲,電子白板系統(tǒng)沒有收到相應的信息或者延遲收到操作信息,就會影響到用戶的體驗,和共享白板工作的順利進行。這時候就要用到并發(fā)控制方法,目前比較有用的控制方法如:鎖定控制法、事務控制機制、輪流控制機制、集中控制機制等。(1)鎖定控制法這是一種保證數(shù)據(jù)一致性的常用的手段,鎖定控制法指在一個操作(如:修改某一個文檔或者某個圖形)即將開始之前先將其上鎖,這樣在一個用戶操作的時候,其他的用戶就不可以對這個鎖定的對象進行操作。用戶首先需要對需要修改的圖形對象進行選中操作,被選中后該區(qū)域會展示輪廓和變色信息,獲取到這個鎖的對象之后,才可以對其進行操作。這樣就可以限制住一個文件在同一時間只能有一個用戶在操作,不會有沖突,但是響應時間比較長效率比較低,而且鎖的粒度很難把握,如果設置的太小,無疑會家中系統(tǒng)的負擔,但是如果設置的過大,就會嚴重影響到用戶并行的需求。(2)事務控制機制是在分布式的需求中使用的最常見的一種方式,在軟件設計中應用的也非常廣泛,主要是指在進行一系列事務操作之前,先把之前存在的數(shù)據(jù)保存,如果事務操作過程中不同的用戶同時操作了一個數(shù)據(jù),就把數(shù)據(jù)還原回去,就當作什么也沒發(fā)生過,當然這個機制顯然不適合咱們的共享電子白板系統(tǒng),事務的響應和效率很低,而且其執(zhí)行的時候是不被感知的,因此這個并不適合這個系統(tǒng)。(3)輪流控制機制。輪流控制機制顧名思義就是保證同一個時間只能有一個用戶進行操作,并不可以有并發(fā)的操作,所以如果用戶量比較大的情況下,是不適用的。(4)集中控制機制。建立一個集中控制管理的進程,用來做中心管理控制的功能,主要的作用相當于一個消息中心,接收來自各個用戶的操作信息,并以廣播的形式發(fā)送給共享白板的用戶,這樣可以保證操作的有序性,時效性和一致性,無論什么操作,首先需要把消息發(fā)送到管理中心,再由其進行分發(fā)。雖然可以保證系統(tǒng)的集中控制,但是這種集中控制有可能會成為系統(tǒng)的瓶頸。同時所有操作都由中心進程分發(fā),會影響效率。雖然可能會受到網(wǎng)絡信息的影響,但是目前是相對來說比較好的選擇。(5)檢測依賴。對于每一個用戶的修改都給出時間戳,之后可以查看時間戳之間是否有沖突來判斷是否可以執(zhí)行。這種方法使得沒有沖突的本地和異地的都可以執(zhí)行,但是一但出現(xiàn)了沖突,就需要使用者進行修改。以上對并發(fā)的各種控制機制進行比較后,共享電子白板系統(tǒng)可以采用時間戳和集中控制相結合的方式。
2應用之間信息共享技術傳輸格式設計
系統(tǒng)之間通信主要通過收發(fā)消息實現(xiàn)共享,如果其中一個用戶修改了信息,系統(tǒng)會把這個信息以指定的格式封裝起來,通過網(wǎng)絡傳輸?shù)狡渌c會用戶的計算機上,他們接收到數(shù)據(jù)之后,按照之前擬定好的協(xié)議把指定格式的數(shù)據(jù)進行解密,如果其他的用戶操作并修改了數(shù)據(jù),也是同樣的方式進行相互之間的傳輸。由于共享白板服務器既需要把信息發(fā)送廣播到其他用戶,而且還需要接收用戶的操作請求,這些信息的數(shù)據(jù)長度和內容比較難統(tǒng)一,所以為了簡單方便,把各種數(shù)據(jù)和命令序列化為二進制的流,優(yōu)點在于可以讓傳輸層的數(shù)據(jù)格式獨立于應用顯示層,使其適用的平臺更為廣泛,傳輸層不再需要關注傳輸?shù)膬热莺透袷?,只要知道?shù)據(jù)的長度就可以了,而其他的信息都交給應用層去設計。數(shù)據(jù)協(xié)議的類型主要分為四個類型:(1)圖形、文本的管理:新建或編輯的文本、圖形的繪制和修改(2)用戶信息的管理:用戶信息不同光標需要標注(3)同步信息的管理:協(xié)同不用用戶的不同需求(4)以鎖的方式控制并發(fā)操作:對不同的用戶標記為不同的鎖,來加以區(qū)分詳細使用方法如下:(1)文本數(shù)據(jù)協(xié)議:文本協(xié)議類型標識,如‘010’,需要傳輸?shù)奈谋净蛐畔?,還有發(fā)送信息人的IP地址信息,這樣就可以讓接受信息的人知道文本的發(fā)送人,修改文本的格式信息,x,y坐標標識在屏幕的位置,因為TCP在傳輸?shù)倪^程中有可能會重新組裝數(shù)據(jù),所以TCP協(xié)議有可能會把所有的重組信息接收完成,才一起發(fā)送,所以信息接收者通過在信息流的結尾使用換行符(0x0D),調節(jié)文本的輸出格式。(2)圖形數(shù)據(jù)協(xié)議:協(xié)議標識和文本標識的不同之處在于字體和字符串信息更換成了線形填充信息。通信信息格式協(xié)議:用戶的退出和加入會實時同步到共享白板服務器上,同時把這些消息發(fā)送到其他用戶那里。主要由序列號如‘020’,加上用戶的地址信息和名稱信息和結尾符。(3)新的用戶進入到系統(tǒng)中時,共享服務器會向所有客戶發(fā)送新用戶的信息,并且需要加上標識信息‘020’,然后把其他的信息更新給新的用戶,就完成的數(shù)據(jù)的同步工作。在用戶退出共享白板系統(tǒng)的時候,會發(fā)送以‘021’的標識加上退出用戶的信息給其他用戶,他們本地就會完成刪除工作。
3用戶相互感知方面
在人們在現(xiàn)實中開會的時候,很容易通過聽覺、觸覺和視覺領會到彼此之間的肢體動作和實際的語言,更通過兩種語言的互補,就可以更加準確的理解其目的,與會人員則可以更加簡單的理解其他人的意圖、動作和位置,可以說這種協(xié)同的效率是很高的。而我們的共享白板系統(tǒng)則是為與會人員創(chuàng)建了一個虛擬的會議空間,雖然可以使大家可以實現(xiàn)遠程的協(xié)作,但是虛擬空間必然沒有現(xiàn)實空間中感受的那么明顯,這時候需要關注到白板上能夠展示出來的信息,通常來說,解決這個效率低下問題的方法有如下幾種:(1)光標信息的可變性:用戶進行的操作有很多種,如圖形、文本、刪除等操作,想要更直觀的展示出來不同的操作類型,可以以特定的標記去標識出來操作類型,比如在刪除操作時候,光標顯示出橡皮擦;在對圖形進行操作時候,光標顯示圖形樣式。(2)用戶不同,使用不同顏色去標記:不同的用戶,首先系統(tǒng)自動分配給不同的顏色,這時候需要注意角色不要過多,顏色之間應該做到有辨識度,這樣在每個用戶進行操作的結束之后,對其操作的結果進行標記。(3)多個光標顯示用戶名信息:用戶在本地計算機上進行的操作,光標不僅在本地,而且也會在共享白板上顯示,同時其他的用戶也會這么展示。(4)縮略圖顯示:首先我們可以展示兩個頁面,一個展示的是用戶的工作環(huán)境,用戶可以對工作環(huán)境的頁面進行操作,而另一個頁面展示的是當前的縮略圖,這個縮略圖也會在其他共享的屏幕上展示,這樣用戶可以做到統(tǒng)觀全局,可以加強用戶對于當前系統(tǒng)的情況進行充分的了解。在現(xiàn)實情境中,因為網(wǎng)絡問題有限制,只需要關注操作的結果,所以只需要記錄并展示用戶操作的結果信就可以,顏色標記法限制用戶的顏色種類,使其應用變得很不自然。如果所有的共享白板客戶都修改了這些數(shù)據(jù),傳輸數(shù)據(jù)的時候就需要附加上IP地址信息(用戶在接收到這些信息之后,就可以通過IP地址查詢到發(fā)送人的詳細信息),而參加到共享白板的用戶,每個人都會有一個標識自己的光標,用來標識自己的有效性。如果有多個光標的情況,再用深度值去區(qū)分自己的和其他用戶的光標,深度值最高的永遠展示在最前面,當某一個用戶選擇了遠程的光標,這個光標就會出現(xiàn)在當前窗口的中間。
4總結
通過以上的討論可以確定系統(tǒng)的結構,對于在CSCW的應用的需求下,我們對于共享電子白板系統(tǒng)的設計首先需要有一個消息中心,負責管理會議的查詢、參加會議人員的信息和通信的顯示。而分布在各個地方的用戶可以通過網(wǎng)絡連接,系統(tǒng)把內部通信的詳細信息隱藏了,只展示給用戶簡單的頁面信息。對于在共享電子白板的設計與實現(xiàn)中,滿足了高并發(fā)且相互協(xié)作應用系統(tǒng)的需求,設計了以網(wǎng)絡進行通信的虛構空間,實現(xiàn)了基本的用戶操作實例,完成了應用之間通信的傳輸格式設計、多個用戶同時參與、協(xié)同共享的數(shù)據(jù)一致、用戶體驗流暢。
作者:姜世芬 單位:江門職業(yè)技術學院
- 上一篇:電力電子技術在開關電源的運用
- 下一篇:淺談衛(wèi)星電子偵察及干擾技術