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