【摘?要】首先,介紹了IFS模型(信息模型、狀態(tài)模型和功能模型),提出了基于IFS模型、數(shù)據(jù)驅(qū)動技術(shù)和四層軟件開發(fā)技術(shù)等構(gòu)建管理信息系統(tǒng)(MIS)及其界面原理。然后,詳細描述了狀態(tài)模型(用戶界面)的抽象和從狀態(tài)模型到用戶界面生成的機理。
【關(guān)鍵詞】IFS模型;用戶界面;狀態(tài)模型
隨著計算機技術(shù)的發(fā)展,特別是面向?qū)ο筌浖こ淘O(shè)計方法的出現(xiàn),許多界面工程設(shè)計和生成的模型和方法被提了出來,總體來說,界面模型大致分為概念模型和陳述模型兩種。其中,概念模型著重描述了界面構(gòu)成以及界面元素間的邏輯控制關(guān)系,為抽象界面模型到實際界面的轉(zhuǎn)換提供了良好的理論基礎(chǔ);陳述模型是從捕捉需求開始,通過交互式任務(wù)的分解,試圖最終通過對界面的構(gòu)成描述,以解決界面設(shè)計的所有問題。但前者屬于概念的,其應(yīng)用依賴于設(shè)計者的認識和實現(xiàn),而后者又難以滿足用戶界面復(fù)雜性和個性化的需求,同時也都不能解決應(yīng)用系統(tǒng)的靈活性不足問題。
本文提出了基于IFS模型的用戶界面研究。IFS模型構(gòu)建系統(tǒng)用戶界面時,利用功能模型(F)和信息模型(I)獲取界面相關(guān)的功能和數(shù)據(jù)信息及系統(tǒng)的邏輯結(jié)構(gòu),用狀態(tài)模型(S)規(guī)劃和描述系統(tǒng)界面,用參數(shù)表控制這些模型(IFS模型),使系統(tǒng)可復(fù)用性更強,更靈活,克服了概念模型和陳述模型出現(xiàn)的不足。
1、IFS模型
我們通過對管理信息系統(tǒng)作為研究對象進行抽象,抽象出其系統(tǒng)模型,描述管理信息系統(tǒng)的信息結(jié)構(gòu)、界面等,并能夠滿足各類信息處理的應(yīng)用需求(系統(tǒng)功能)。我們將這些系統(tǒng)模型分為信息模型(Information Model)、功能模型(Function Model)、狀態(tài)模型(Status Model)三類,即IFS模型。在構(gòu)建管理信息系統(tǒng)時,利用功能模型(F)和信息模型(I)獲取界面相關(guān)的功能和數(shù)據(jù)信息及系統(tǒng)的邏輯結(jié)構(gòu),狀態(tài)模型就是用來描述應(yīng)用系統(tǒng)展現(xiàn)給用戶的界面。
狀態(tài)模型就是用戶對用戶界面的抽象模型,是管理信息系統(tǒng)的界面與人機交互的基礎(chǔ),主要用于描述系統(tǒng)的人機交互的界面,包括兩個方面功能:a)將系統(tǒng)的數(shù)據(jù)信息在人機界面上顯示;b)在人機界面上提供對數(shù)據(jù)實施處理的事件。狀態(tài)模型是應(yīng)用系統(tǒng)展現(xiàn)給用戶的界面的模型。
2、數(shù)據(jù)驅(qū)動技術(shù)
對于管理信息系統(tǒng)來說,對數(shù)據(jù)的操作是最基本的功能,如對數(shù)據(jù)表中記錄的增加、刪除、替換、查找等這些操作的功能都是不變的,變化的是操作的對象——數(shù)據(jù)表不同。通過編程可以實現(xiàn)系統(tǒng)對數(shù)據(jù)庫的基本操作,在這些基本操作的基礎(chǔ)上,通過抽象將這些基本操作中不變的部分作為可復(fù)用的對象提取出來,作為固定的代碼寫到程序中,我們定義這些基本操作為元操作。將變化的部分,即操作的對象——數(shù)據(jù)表的名稱作為變量放到一個控制數(shù)據(jù)表中,在實際編程中調(diào)用這些操作時就不需要修改程序代碼,只需修改數(shù)據(jù)表中的相關(guān)參數(shù)就可以實現(xiàn)變化了,這樣就實現(xiàn)了用數(shù)據(jù)來控制操作功能。即為數(shù)據(jù)驅(qū)動。
我們在傳統(tǒng)軟件開發(fā)的二層開發(fā)模式(程序語言+數(shù)據(jù)庫MIS管理信息系統(tǒng))上,增加了元操作部分和模型部分,提出四層開發(fā)模式。采用四層開發(fā)模式開發(fā)出的應(yīng)用系統(tǒng)以數(shù)據(jù)驅(qū)動為基礎(chǔ),用數(shù)據(jù)驅(qū)動的方法建立起許多個模型,通過將不同的模型組合起來就可以構(gòu)造出具有較好靈活性的管理信息系統(tǒng)。數(shù)據(jù)驅(qū)動技術(shù)是貫穿著通用性管理信息系統(tǒng)軟件開發(fā)的每一個階段。
3、狀態(tài)模型(Status Model)的抽象
狀態(tài)模型的獲得就是對應(yīng)用系統(tǒng)的界面進行抽象,就是將系統(tǒng)界面基本的、固定不變的部分和不穩(wěn)定的、易變化的部分分別抽象出來,系統(tǒng)界面上的基本的、固定不可變化的部分是界面框架,系統(tǒng)界面上的不穩(wěn)定的、可變化的部分則是數(shù)據(jù)和數(shù)據(jù)處理功能等。
在軟件開發(fā)的時候,我們通過設(shè)定輸入初始參數(shù),調(diào)整控制參數(shù)表,實現(xiàn)系統(tǒng)功能;軟件開發(fā)完成后,當系統(tǒng)需求發(fā)生變化的時候,通過調(diào)整參數(shù)控制表中的相關(guān)參數(shù),從而改變系統(tǒng)功能界面。
構(gòu)建通用性應(yīng)用系統(tǒng)界面關(guān)鍵的一步就是通過對系統(tǒng)界面的特征及功能抽象歸納出系統(tǒng)界面的各種狀態(tài)模型。我們認為,狀態(tài)模型的抽象必須遵守以下幾個原則:
1)狀態(tài)模型必須能夠表現(xiàn)數(shù)據(jù)模型的特征。系統(tǒng)界面通常需要對一些數(shù)據(jù)(信息)進行顯示,其顯示的數(shù)據(jù)應(yīng)以信息模型為依據(jù);
2)狀態(tài)模型必須提供對數(shù)據(jù)處理(和功能模型有關(guān))的觸發(fā)器。通常界面上都有一些命令按鈕,所以狀態(tài)模型需要提供數(shù)據(jù)處理功能的入口;
3)狀態(tài)模型的可變性、靈活性。狀態(tài)模型的可變性、靈活性,才能使系統(tǒng)的界面(狀態(tài)模型)即可以在開發(fā)MIS管理信息系統(tǒng)中做到復(fù)用,也可以在開發(fā)新的系統(tǒng)復(fù)用。通過對參數(shù)的控制(數(shù)據(jù)驅(qū)動)實現(xiàn)狀態(tài)模型的可變性、靈活性的。
4、界面生成機理研究
狀態(tài)模型的框架(基礎(chǔ)結(jié)構(gòu))是穩(wěn)定的不變的,可以通過程序代碼構(gòu)造;狀態(tài)模型(系統(tǒng)界面)上數(shù)據(jù)顯示和數(shù)據(jù)處理功能等是可變的不穩(wěn)定的——作為控制參數(shù),通過訪問控制參數(shù)對獲得系統(tǒng)界面,這樣構(gòu)成的系統(tǒng)界面是靈活的可復(fù)用的。
軟件開發(fā)的四層模式中元操作——狀態(tài)模型——系統(tǒng)界面的系統(tǒng)結(jié)構(gòu),元操作庫是構(gòu)建模型的基礎(chǔ),是管理信息系統(tǒng)軟件中最基本的操作。狀態(tài)模型通過訪問控制參數(shù)表,獲得界面顯示信息和功能信息,將應(yīng)用系統(tǒng)界面顯示在屏幕上。
至此,我們完成了我們從狀態(tài)模型向用戶界面生成的機理過程。
5、總結(jié)
狀態(tài)模型的抽象獲取是通過對用戶界面的抽象過程,而用戶界面則是多種多樣的,變化萬千的,因此狀態(tài)模型庫的構(gòu)建則是一個長期積累過程。實際程序開發(fā)中,界面通常是利用已有的狀態(tài)模型構(gòu)建不同的界面需求,但當發(fā)現(xiàn)已有的狀態(tài)模型不能適應(yīng)新的界面需求時,則需要構(gòu)建新的狀態(tài)模型適應(yīng)需求,并加入到狀態(tài)模型庫中。
作者簡介:
劉麗,1981年10月出生,云南昆明市人,講師,碩士,主要研究方向為信息管理和網(wǎng)絡(luò)信息技術(shù)。
(作者單位:遼寧裝備制造職業(yè)技術(shù)學院)