一種面向可適應(yīng)性的嵌入式設(shè)備HCI方案
3.2.2 類設(shè)計
依據(jù)模型定義如圖2所示的類對象。左邊所示是個基本的菜單節(jié)點類,除了模型中提到的幾個節(jié)點指針,還增加了幾個相關(guān)的屬性域,Id用來標識節(jié)點身份,displayValue用來存儲菜單的顯示標題,布爾成員editable指明當前節(jié)點是否可編輯,另外還增加一個ptr_function域,用來指向一個功能函數(shù),該函數(shù)完成節(jié)點在接受確定消息后要做的工作。本文引用地址:http://2s4d.com/article/150933.htm
在節(jié)點類中還定義了幾個成員方法,與私有屬性相關(guān)的命名符合OOP的命名規(guī)定,均使用Get—Set前綴規(guī)則。除針對幾個成員屬性的方法外,還引入了另外幾個成員方法,CoUp執(zhí)行向父節(jié)點的跳轉(zhuǎn),CoDown執(zhí)行向長子節(jié)點的跳轉(zhuǎn),CoLeft和GoRight負責向左右鄰居的跳轉(zhuǎn)。
從軟件設(shè)計獨立與資源來考慮,提出一個界面代理的概念,界面代理就是基于事件驅(qū)動,處在界面與環(huán)境之間一個中間對象。外界事件的消息均由代理來接收識別,并由它調(diào)用界面元素,對界面做出改變。圖2右邊上部所示的定義的是菜單代理類MenuManageAgent。該類對象用來作為菜單體系與外界交互的媒介物,它用來記錄菜單的頭指針,菜單體系的規(guī)模以及菜單的總體狀態(tài);初始化菜單結(jié)構(gòu),創(chuàng)建菜單系統(tǒng)并代表菜單接受外來的消息,并對消息加以識別和做出合理的響應(yīng)。圖2右下是對外部消息的定義。消息的列表可以依據(jù)實際情況擴展和修正。
4 嵌入式HCI的可適應(yīng)性實現(xiàn)
靜態(tài)可適應(yīng)的實現(xiàn)是基于用戶主觀意圖進行的。這個過程強調(diào)人機交互,因此用戶的工作內(nèi)容很重要,一般也作為靜態(tài)可適應(yīng)性實現(xiàn)的輸入?yún)?shù)。而實現(xiàn)的技術(shù)細節(jié)相對簡單。在算法設(shè)計上,該種可適應(yīng)性實現(xiàn)工作重點仍然放在用戶交互內(nèi)容的管理上,由用戶的“交互內(nèi)容”綜合系統(tǒng)功能可以得到界面的“變更差”,進而推導(dǎo)出系統(tǒng)HCI的具體參數(shù)集的變化。
如圖3所示,設(shè)備在使用環(huán)境中的動態(tài)可適應(yīng)以系統(tǒng)狀態(tài)檢測開始,這是一個周期性的行為,頻率依據(jù)系統(tǒng)在HCI上的實時性要求而定。系統(tǒng)狀態(tài)檢測應(yīng)該包含幾部分的工作:1)應(yīng)該有監(jiān)測環(huán)境參數(shù)的手段,比如傳感器、接入信號等;2)要依據(jù)特定的算法來測定這個矛盾,其中包括差異的獲取,尺度的制定。狀態(tài)檢測的結(jié)果是,是否有矛盾輸出,如果有矛盾出現(xiàn)的情況下,還需要做決策分析,其主要任務(wù)是基于系統(tǒng)現(xiàn)有條件是否可實現(xiàn)動態(tài)可適應(yīng),比如已經(jīng)達到了臨界狀態(tài)時,就喪失了這種可能性。所以這里涉及到對系統(tǒng)資源的管理調(diào)度。下一步就是在動態(tài)適應(yīng)的情況下,采用動態(tài)適應(yīng)策略對系統(tǒng)HCI給出合適的調(diào)整,從而達到普適環(huán)境下可動態(tài)適應(yīng)的目的。
評論