董慶超,喬勇軍,徐君明,司維超
(海軍航空大學,山東 煙臺 264001)
裝備保障,即軍隊為滿足作戰(zhàn)及其他任務的需要而在裝備調配、維修、經(jīng)費等方面組織實施的保障[1]。裝備保障信息系統(tǒng)是支持裝備保障業(yè)務的重要信息化平臺,是軍事電子信息系統(tǒng)以及指揮信息系統(tǒng)的重要組成部分。近年來隨著信息技術發(fā)展進步,裝備保障信息化建設也取得顯著成就,主要表現(xiàn)在全時間、全地域各型裝備保障信息系統(tǒng)在裝備保障業(yè)務中的廣泛應用,該系統(tǒng)已經(jīng)與裝備保障業(yè)務緊密結合,并成為日常裝備保障業(yè)務開展的支撐平臺。然而在各型裝備保障信息系統(tǒng)研發(fā)實踐中還存在以下問題有待解決:一是缺少領域知識共識,技術專家、用戶、系統(tǒng)研發(fā)方難以達成需求一致理解,從而給系統(tǒng)的后期建設帶來風險;二是前期的開發(fā)經(jīng)驗難以形成知識模型,從而給后期項目建設中領域知識的積累和復用帶來困難;三是保障知識中存在大量模糊信息,如保障效果的好與壞、保障速度的快與慢,對于這些信息缺少一種有效的知識建模表示手段。針對上述問題,該文提出一種基于模糊UML的裝備保障知識建模方法,該方法首先挖掘裝備保障領域存在的核心概念和知識,形成保障領域知識本體,通過該本體統(tǒng)一不同利益相關方對系統(tǒng)需求的本質認識,在此基礎上借助UML領域特定建模語言擴展技術[2],通過引入領域特定概念、模糊建模元素等手段,形成一種適用于裝備保障領域的領域特定建模語言[3]。借助該語言,一方面可以建模表示已有項目的成功知識經(jīng)驗便于后期知識復用;另一方面,在系統(tǒng)需求分析、系統(tǒng)設計階段可以作為技術專家、用戶、研發(fā)方的共同交流平臺,輔助三方對系統(tǒng)需求達成共識。
本體概念原屬于哲學范疇,后引入計算機研究領域。關于本體的定義很多,本領域較為經(jīng)典的本體定義為:“本體是共享概念化的明確的形式化規(guī)范”。通過構建本體可以捕捉指定領域內的共享概念、關系、公理,可以為領域內不同人員提供對領域知識的共同理解,消除因理解偏差而引發(fā)的歧義或誤差。此外,通過對本體的形式化表達,可以對本體即領域知識進行推理,通過推理可以由現(xiàn)有知識發(fā)現(xiàn)新的知識。本體通常是由概念、關系、函數(shù)、公理、實例五個元素組成。
概念是一類相同類型個體的集合。借鑒面向對象的思想,本體中的概念近似于面向對象技術中的類,具有名稱、屬性等特征。表示形式上概念可以采用框架表示結構,也可以采用面向對象技術由類建模表示,也可以由自然語言描述;
關系表明了領域內不同概念之間的聯(lián)系,形式化表示為n維笛卡爾集:R:C1×C2×…×Cn。類比面向對象技術,本體中的關系近似于面向對象中類之間的關系,如關聯(lián)關系、繼承關系等;
函數(shù)是一種特殊類型關系,它的笛卡爾集中前n-1個元素可以唯一確定第n個元素,即F:C1×C2×…×Cn-1→Cn;
公理為領域知識中的永真式;
實例即為概念的個體或實例,它類似于面向對象技術中的對象。
通過對本體的研究,根據(jù)它的語義抽象層次可以劃分為四類,即頂層本體、領域本體、任務本體和應用本體。
頂層本體由通用概念和關系組成,這些概念、關系與具體領域、語義環(huán)境、背景無關,如時間、空間、位置、環(huán)境等。它的語義較為抽象,領域本體、任務本體、應用本體均為它的實例;
領域本體由特定領域的概念、關系組成,是頂層本體在具體應用領域的實例化結果;
任務本體由與領域相關的任務概念和行為概念組成;
應用本體是領域本體、任務本體在具體場景、環(huán)境、時間、空間內的實例化結果。
對以上四類本體的劃分,可以有效輔助領域專家積累領域知識,形成領域知識庫,同時在新的應用環(huán)境中,通過對領域知識不斷的復用和創(chuàng)新,可以逐步豐富完善領域知識。
通過構建裝備保障本體可以明確本領域的核心概念、核心關系,統(tǒng)一不同技術人員對領域知識的理解和認識。關于裝備保障領域本體構建,相關專家做出了較多有益研究[4-7],借鑒以上研究成果,該文認為裝備保障領域本體由圖1所示模型組成,內含保障組織、保障設備、保障器材、保障信息、保障人員、保障效果等核心概念,這些概念也是裝備保障信息系統(tǒng)日常處理對象。
圖1 裝備保障領域本體建模
同時,上述概念之間存在內在聯(lián)系,如保障活動與保障目標之間存在實現(xiàn)關系、保障系統(tǒng)與保障活動之間存在完成關系,上述概念和關系構成了裝備保障領域的核心知識。通過明確裝備保障領域本體可以降低由于理解偏差而引發(fā)的系統(tǒng)建設風險,例如:在某裝備保障系統(tǒng)研發(fā)中出現(xiàn)紅外測距儀設備,如果缺少領域本體額外解釋,技術人員難以區(qū)分該設備究竟為保障對象還是保障器材。借助領域本體,在系統(tǒng)需求分析階段可以通過對紅外測距儀設備具體說明其所屬領域概念,如保障對象,進而統(tǒng)一需求共識降低系統(tǒng)建設風險。
結合本體分類可以發(fā)現(xiàn),該文提出的裝備保障領域本體對應于本體分類中的領域本體。具體裝備保障信息系統(tǒng)開發(fā)中需求分析師、系統(tǒng)設計師所提出的裝備保障信息系統(tǒng)需求分析模型、系統(tǒng)設計模型對應于本體分類中的應用本體。通過裝備保障信息系統(tǒng)建設中成功經(jīng)驗的不斷積累,領域知識庫將逐漸豐富,進而利用面向目標需求分析方法所提出的領域知識復用技術,可以有效引導新系統(tǒng)的需求開發(fā),復用以往成功經(jīng)驗,見圖2。從圖中可以發(fā)現(xiàn),利用頂層本體給出領域內的與需求相關的所有概念類的定義。在領域層建立的領域本體和任務本體都是頂層本體在具體領域的實例化。領域本體包含領域知識中靜態(tài)概念和關系,而任務本體則包括與完成系統(tǒng)任務相關的所有動態(tài)需求要素。因此領域本體與任務本體一起構成了可復用的裝備保障領域信息系統(tǒng)需求,由它們實例化而生成的應用本體即是應用層的新建系統(tǒng)需求,而這正是具體的裝備保障信息系統(tǒng)需要支持的需求。需求獲取與復用過程可分為四個階段:(1)領域專家在頂層本體語義引導下,結合領域知識特點建立領域本體和任務本體;(2)利用領域需求生成調查問卷,用戶提出應用層的信息系統(tǒng)需求,其實質是領域本體和任務本體在具體應用中的實例化;(3)需求分析人員根據(jù)應用本體建立應用需求模型;(4)由應用本體引導,結合用戶需求形成最終的新建裝備保障信息系統(tǒng)需求模型。
圖2 多本體需求獲取與復用框架
裝備保障領域本體較為抽象,它對應于UML所提出的M2層模型,其作用是定義本體中出現(xiàn)的基本概念和關系,從而統(tǒng)一不同利益相關方對上述概念和關系的基本認識。由于它的語義過于抽象,因此還是無法將該本體直接應用于具體裝備保障信息系統(tǒng)的需求建模分析,因此需要在裝備保障領域本體語義框架的約束下,通過擴展UML建模語言構建系統(tǒng)需求分析模型。具體擴展手段參見第三節(jié),通過這種對UML的語義改造,不僅可以化解上述概念偏差而帶來的系統(tǒng)需求分析風險,同時通過構建成功系統(tǒng)的需求模型,可以逐步形成本領域知識庫,如艦船維修保障知識[8]、裝備故障知識模型[9]等,在新系統(tǒng)研發(fā)時借助領域知識復用技術,有效引導新系統(tǒng)的研發(fā),降低開發(fā)風險縮短系統(tǒng)研發(fā)周期。
領域特定建模(domain-specific modeling,DSM)是軟件工程研究領域的一種工程方法。它是一種典型的模型驅動的軟件開發(fā)方法,通過該方法一方面可以提高系統(tǒng)開發(fā)速度,縮短研發(fā)周期;另一方面通過成熟模型的復用,可以有效降低系統(tǒng)研發(fā)風險。領域特定建模較通用語義建模,如UML技術,更加具有領域的針對性,可以通過領域特定的建模元素精準描述用戶需求。
領域特定建模語言具體實現(xiàn)途徑通常有兩類:一是依托形式化技術,精準描述領域知識,例如OWL語言[10]、謂詞邏輯系統(tǒng)[11]。形式化技術的好處是語義嚴謹,可以為計算機理解和處理,但是對用戶有較高應用背景要求;二是依托圖形化、半形式化技術,可視化建模表示領域知識,例如UML建模語言、IDEF語言[12]等。圖形化技術的特點是直觀易懂,便于用戶理解和交流,同時借助嚴謹?shù)恼Z法、語義約束,可以實現(xiàn)計算機對知識的理解和處理。這里該文采用第二種技術手段,采用UML對象建模語言,并對之改造進而形成裝備保障領域特定語言。
為擴展UML的特定領域建模能力,對象管理組織提出了“輕量級”和“重量級”兩種方法擴展UML構建領域特定建模語言[2]?!爸亓考墶睌U展旨在通過元對象設施擴展UML元模型,建立一種不同于UML的新的建模語言?!拜p量級”擴展即UML概要文件(UML Profile),提供了新的構造型、標簽值和模型約束,將UML中一些元素具體化同時引入新的限制條件,最大限度地遵循UML的元模型并保持類、關聯(lián)、屬性等建模元素的原始語義。兩種擴展方法各有優(yōu)缺點:“重量級”擴展形成的新的建模語言確保模型中只出現(xiàn)與特定應用領域相關的元模型,因而能更好地適應具體應用領域的概念和特性,但由于其不遵循UML語義,不能得到當前業(yè)界成熟的UML工具的支持;UML Profile能夠充分利用現(xiàn)有成熟UML工具技術的支持,但可能不能提供符合應用領域需要的全部建模元素,而且建模中UML元模型和用戶自定義元模型的混合使用可能導致“視圖污染”,增加理解難度。由于UML是一種在軟件工程和系統(tǒng)工程領域的通用建模語言,其語法和語義已經(jīng)為普通的技術人員所理解和使用,因此該方法首先采用UML Profile技術,擴展UML語義,形成領域特定概念的構造子,用于裝備保障需求建模分析。
裝備保障需求建模分為兩個階段:(1)領域知識建模階段。該階段領域專家采用該文提出的裝備保障領域特定建模語言建模領域知識。隨著業(yè)務的增加、領域知識的不斷積累,可以逐漸形成一個涵蓋裝備保障系統(tǒng)各種業(yè)務領域的領域知識庫;(2)應用需求建模階段。該階段系統(tǒng)分析師首先在領域知識庫中選擇相關領域知識,借助領域知識復用技術,由領域知識引導形成應用系統(tǒng)需求模型。具體裝備保障領域特定建模語言構建辦法如以下步驟開展:
步驟1:在UML Profile中為裝備保障領域本體的每個概念和關系添加構造型,如保障對象、保障效果等,這些構造型是對UML元模型中元類的擴展;
步驟2:利用標記值機制增加新的屬性到相應的構造型中,同時添加該屬性對應的屬性類型和初始值;
步驟3:采用OCL描述領域中約束規(guī)則,例如保障資源、保障設備的數(shù)量約束;
步驟4:如果有必要,可為新添加的構造型創(chuàng)建新的模型圖標。
通過以上對UML的擴展改造,可以有效化解不同人員對相同概念的理解偏差,例如前文所述的某系統(tǒng)研發(fā)中涉及的紅外測距儀設備,通過擴展后的UML可以將其表示為類,類名為紅外測距儀設備,構造型為保障對象,通過這種手段不同人員均可準確理解其背景概念。
模糊UML是在模糊集和概率論的基礎上對UML的一種擴展,同時兼有明確信息和模糊信息的表示能力[13]。它沿用了UML的基本構造子,并且在構造子原始語義的基礎上加入模糊概念和概率函數(shù),進而實現(xiàn)對模糊信息的建模。該方法規(guī)定模糊類具有三層模糊性:
(1)一個對象(實例)是否屬于某個領域類(概念)是不確定的。它的一階謂詞邏輯形式化語義為:?x.ClassA_FuzzyLevel1(x)→μClassA(x)??n(??包括≤,<,≥,>,0≤n≤1)。它的建模表示方法是在類的屬性欄中,增加隸屬度μ屬性項(0≤μ≤1),類為虛線框;
(2)類具有一個模糊屬性,即屬性的值域是一個模糊類。它的形式化語義為:?x.(ClassA_FuzzyLevel2(x)∧HasAttribute(x,y))→Class_Fuzzy(y)。它的建模表示方法是在模糊屬性前增加FUZZY關鍵字;
(3)第三層模糊性是指一個概念的父類或子類是模糊類,那么這個類是模糊類。它的形式化語義為:?x.ClassA_FuzzyLevel3(x)→FatherClass_Fuzzy(x)或?x.(ClassA_FuzzyLevel3(x)∧SubClass(x,y))→Class_Fuzzy(y)。它的建模表示方法是在模糊類之間構建繼承關系。
該方法中除需求信息中類具有模糊性外,類之間的關系同樣可能存在模糊性,即存在模糊關聯(lián)關系、模糊繼承關系和模糊聚合關系。
模糊關聯(lián)關系是在UML關聯(lián)關系原始語義基礎上規(guī)定[2],應用本體中不同應用對象之間存在的關聯(lián)關系是否屬于領域層相應關系,存在模糊性和不確定性。以模糊類A,B之間的模糊關聯(lián)關系R為例,其語義表示為:?r.R_FuzzyAssociation(r)→uR(r)??n(??包括≤,<,≥,>,0≤n≤1),其建模表示方法是將關聯(lián)關系實線轉換為虛線;
模糊繼承關系是在UML繼承關系原語義的基礎上規(guī)定[2],父類與子類之間的隸屬度u存在如下關系:?x.uclass(x)≤uFatherClass(x),即對象隸屬于子類的隸屬度必然小于等于隸屬于父類的隸屬度。模糊繼承關系只存在于模糊類與模糊類、模糊類與明確類之間,其建模表示方法是將繼承關系實線轉換為虛線;
模糊聚合關系在UML聚合關系語義的基礎上規(guī)定[2],整體類的隸屬度uwhole與成員類的隸屬度upart之間存在如下關系:[?x,y.(Aggregation(x,y)∧Whole(x)∧Part(y))→μWhole(x)≤μpart(y),即整體對象隸屬于整體類的隸屬度小于等于成員對象隸屬于成員類的隸屬度。模糊聚合關系存在于模糊類與模糊類、模糊類與明確類之間,其建模表示方法是將聚合關系實線轉換為虛線。
通過以上對UML的改進,使得改造后的UML具備建模明確和模糊信息的能力。例如在裝備保障信息系統(tǒng)建設中用戶提出對某型裝備“有力保障”、“快速維修”、“精準對接”等預期效果,均存在模糊性和不確定性。以快速維修為例,不同場景、條件、時空快慢的評價標準不盡相同,其中的模糊信息可以通過隸屬度屬性U加以表示,如正常氣象條件XX裝備快速維修隸屬度為0.9;復雜氣象環(huán)境下XX裝備快速維修隸屬度為0.7,見圖3。隸屬度數(shù)值的確定可以通過指標打分、專家指定等手段確定,這里不再做出具體研究。
圖3 基于模糊UML的裝備保障模糊信息建模
該方法為領域專家提供了一種可行的裝備保障信息系統(tǒng)需求建模語言,為了說明方法的優(yōu)勢,這里以一個彈藥化實驗業(yè)務概念分析模型(片段)說明方法特點,見圖4。彈藥化試驗業(yè)務主要是定期對現(xiàn)有彈藥藥效進行實驗分析確保彈藥有效性,該業(yè)務是軍械保障業(yè)務的重要環(huán)節(jié)。業(yè)務概念分析主要是分析該業(yè)務背后的保障對象、保障目標、保障資源、保障效果等系統(tǒng)業(yè)務核心要素的構成和關系。具體業(yè)務開展的活動流程、時序線索也是系統(tǒng)業(yè)務分析的重要組成內容,由于與本研究關系不大,這里不再討論。通過前期需求調研,彈藥化驗業(yè)務由X實驗室具體承擔,該業(yè)務的保障對象為X作戰(zhàn)分隊的X型彈藥。針對新一代裝備保障系統(tǒng)用戶提出建設預期,即改變傳統(tǒng)手工作業(yè)模式,通過引進自動化驗設備,依托專用網(wǎng)絡實現(xiàn)化驗過程自動化、網(wǎng)絡化,具體要求為:一是實驗計劃按需訂制;二是實驗過程自動(半自動)結果精準高效;三是實驗過程全程監(jiān)督,及時高效反饋實驗結果。上述業(yè)務需求中存在明確需求信息與模糊需求信息混雜的問題,其中保障組織X實驗室、保障活動彈藥化驗、保障對象X型彈藥含義較為明確,可以借助本方法建模為明確概念類;用戶所提出準確高效、及時反饋等預期效果概念較為模糊,不同時間、條件上述效果評價不同,因此可以通過該方法建模為模糊類,具體模糊程度值可以通過對隸屬度u賦值得以實現(xiàn)。
圖4 基于模糊UML的化試驗業(yè)務領域模型(片段)
通過以上案例分析的片段表明,該方法對業(yè)務需求建模分析中用戶所提出的需求信息較通用UML建模語言具有以下優(yōu)勢:一是新語言具有領域特定概念語義,便于各利益相關方對需求概念的一致理解。如模型中的X作戰(zhàn)分隊,缺少領域背景知識很難區(qū)分其究竟為保障實施單位還是被保障單位;二是新語言具有足夠的能力表示模糊需求概念及其模糊隸屬度值,為需求的準確捕捉、多方一致理解提供了可行技術手段。
裝備保障信息系統(tǒng)是軍事信息系統(tǒng)、指揮信息系統(tǒng)的重要組成環(huán)節(jié)。為了正確、完整地建模表示裝備保障信息系統(tǒng)業(yè)務需求信息,該文提出了一種基于模糊UML的裝備保障建模方法。首先根據(jù)裝備保障業(yè)務特點,定義了裝備保障領域本體,通過本體統(tǒng)一業(yè)務共識,在此基礎上,結合裝備保障領域本體和模糊建模元素,擴展了現(xiàn)有的UML建模語言,形成保障領域特定建模語言,從而為系統(tǒng)分析人員、用戶、系統(tǒng)研制方共同研討、理解需求提供一種公共平臺。后期研究中,將結合描述邏輯推理技術,解決裝備保障需求模型一致性、合理性驗證問題[14-15]。