MBSE建模語言:基于OPM的概念建模語言研究
關鍵詞: 對象過程方法(object-process methodology); 對象過程語言(object-process language); 事物(thing); 信息( information); 概念模型(conceptual model); 構造型(stereotype)
引 言
對象過程方法(Object-Process Methodology, OPM) 是Dov Dori提出的一種概念建模方法. OPM既是一種方法論, 又是一種建模語言. 作為方法論, OPM與面向對象方法等方法論相對應; 作為建模語言, OPM與統一建模語言(Unified Modeling Language, UML) 及系統建模語言(Systems Modeling Language, SysML) 等建模語言相對應. 不同建模語言依據各自的方法論定義語言的數據結構和元模型語義. OPM已經被認定為國際標準“自動化系統與集成-對象過程方法” (ISO/PAS 19450: 2015) . 據ESML網站(https://esml.technion.ac.il/research-areas/) 發布的消息, 該標準將修訂換版為ISO/PAS 19450: 202x, 這次修訂將主要增加計算功能. 在ISO/PAS 19450: 2015 基礎上闡述語義方面的相關改進問題, 主要針對現有語言無法區分影響鏈接的方向、無法區分變換過程和觀測過程、欠缺計算功能等問題. 關于計算功能, 與ISO/PAS 19450: 202x針對的問題相似, 但對語言的改進方案不同. ISO/PAS 19450: 202x在2015版基礎上增加計算功能(模型示例見圖1), 但沒有更改基礎語法, 仍然用手段鏈接表示輸入(自變量), 用生成鏈接表示輸 出(因變量), 這使其局限于只能描述顯式函數. 將關聯算子過程與一般性關聯關系結合, 不僅能描述顯式函數, 也能描述隱式函數, 還能描述邏輯關系、復雜映射等一般性的定量關系.
圖 1 ISO/PAS 19450: 202x的計算功能示例
為了論述方便, 將OPM涉及的工程語言稱為“對象過程語言”(Object-Process Language, OPL). 除特別說明外, 所有模型元素符號及其語義定義符合ISO/PAS 19450: 2015. 涉及的符號及其語義見圖2.
圖 2 OPL部分語義及其符號
OPM將對象、過程和關系稱為最小通用本體(minimal universal ontology), 以此為基礎構建形式化語義體系. 最小通用本體的語義錨定物理世界而不是形而上學 , 最小通用本體不同于純粹概念推論的哲學本 體論(Ontology) , 最小通用本體實際上是事物的基礎抽象特征. 相關論述將最小通用本體作為論證對象和論證基礎. 通過建模實例識別建模語言方面的問題, 并分析其原理, 提出對OPL的擴展方案.
2 觀測過程和描述關系
2.1 描述觀測過程的語言障礙
用電水壺燒水是生活中常見的場景. 用OPL語言對電水壺燒水案例作概念建模如圖3, 這個模型能代表影響鏈接相關事物及其關系的典型框架. OPM模型圖文雙模式且圖文等價 , 可視化模型與形式化文本相對應, 且兩者內容完全相同. 所采用的保留字和標準句式是自然語言的形式化精煉子集.
圖 3 電水壺燒水概念模型
6) 測溫需要水溫.
OPL是自然語言的形式化精煉子集. 形式化讓OPL描述的內容具備數學嚴謹性; 作為自然語言的子集, 用OPL描述的內容能按照自然語言( 即母語) 理解. 在擴展OPL語言時, OPL的上述雙重特征提供了驗證語言擴展方案合理性的方法: 當模型內容用OPL展示為自然語言文本時, 如果內容充分、準確、無歧義, 則證 明OPL語言本身是合理的; 反之, 如果某些認識難以用OPL表達, 或表達結果有歧義, 則可以認為OPL本身需要完善. 利用典型模型的OPT描述作為工具, 識別OPL的局限性, 并驗證OPL擴展方案的合理性. 分析對應圖3中手段鏈接的三處文本, “加熱需要電水壺”和“測溫需要溫度計”是準確的描述, 但是“測溫需要水溫”卻令人費解. 實際上測溫過程并不需要水溫. 即使沒有水溫, 測溫過程仍會進行, 只不過測溫結果反映的是環境溫度而不是水的溫度. 假如“測溫”過程與“水溫”對象之間不用手段鏈接, 改為用影響鏈接(見圖4) 表示測溫過程所指向的客體事物, 則對應的文本將變為“測溫影響水溫”. 但是, 影響水溫的是“加熱”過程而不是“測溫”過程, “測溫”過程 僅僅獲取對水溫的描述信息即“溫度值”, 并不影響水溫. 圖3所述語義僅僅是不準確, 而圖4所述語義則是完全錯誤的, 它混淆了“加熱”和“測溫”兩種過程的效果.
圖 4 觀測過程的語義矛盾
為了描述測溫過程與水溫對象之間的關系, 按照當前版本的OPL語言, 沒有更準確的建模方式.
2.2 描述觀測過程的語義邏輯
在OPM中, 將過程定義為“過程是變換對象的事物”, 并進一步定義: 變換是指一個對象的創造(建立、產生) 、消耗(消除、銷毀) 或是現有對象的影響(狀態變化). 對于圖3示例, 加熱過程確實符合OPM對過程的定義, 因為加熱過程改變了水的溫度. 但是就測溫過程與水溫的關系來說并不符合過程的定義. 測溫過程并不變換水溫, 測溫過程只是獲取關于水溫的信息. 而且測溫過程不是只涉及一個對象, 而是同時涉及兩個對象, 一個是水溫, 另一個是描述水溫的溫度值. 可見, 有必要擴展對“過程”的定義, 除了“變換過程”以外, 需要增加“過程”的構造型(Stereotype) , 以描 述“測溫”這類過程. “測溫”過程可泛化為一般性的“觀測”過程.
2.3 描述觀測過程的語言優化方案
將過程分為“變換過程”和“觀測過程”兩種構造型(如圖5) 可以解決該問題. 變換過程涉及被變換的對象, 觀測過程則至少涉及被觀測的對象和觀測所獲取的信息對象.
圖 5 觀測過程作為過程的構造型
3) 觀測過程生成描述特征的信息.
因為觀測過程同時涉及“事物的特征”與“描述特征的信息”這兩種對象, 為了在模型中顯性體現觀測過程、事物的特征與描述事物特征的信息這三種模型元素之間的關聯關系, 至少需要增加一個符號. 備選方 案一, 增加一個符號從“觀測過程”指向被觀測的“事物的特征”; 備選方案二, 增加一個符號連接“事物的特 征”和“描述特征的信息”. 因為“事物的特征”和“描述特征的信息”是一一對應的, 如果定義了兩者之間的對應關系, 就同步隱性描述了“觀測過程”與其指向的被觀測的“事物的特征”. 故采用方案二是比較合理的. 增 加一個“描述鏈接”符號, 連接“事物的特征”和“描述事物特征的信息”(如圖6), 對應的OPT為“描述特征的信息描述事物的特征”, 實例如“溫度值描述水溫”, 語言的保留字為“描述”.
圖 6 描述鏈接與觀測過程之間的邏輯關系
2.4 對“描述鏈接”語義作用的驗證
按照該方案將圖3更改為圖7所示模型, OPT內容由“測溫需要水溫”改為“溫度值描述水溫”, 其他內容不變.
圖 7 描述鏈接模型示例
6) 測溫需要溫度計.
對照圖7與相應的OPT文本可見, 增加“觀測”過程構造型和“描述”鏈接關系后, 概念模型能更準確地描述相關事物之間的邏輯關系.
2.5 關于描述鏈接的理論分析
只要某個對象是“描述特征的信息”, 而且某個過程通過生成鏈接符號指向該對象(該對象作為相應過 程的生成結果), 則意味著該對象是觀測結果, 相應的過程是觀測過程. 觀測過程是過程的構造型(類型, 或 稱為“版型”, stereotype). 過程是變換對象的事物, 變換是指一個對象的創造(建立、產生)、消耗(消除、銷 毀)或是現有對象的影響(狀態變化). 而觀測過程是一種特殊的“產生過程”, 其特殊性在于所產生的事物是 信息, 而不是物質或能量. 增加一個構造型將讓語義更細致, 能更準確地表達人的認識. 當然, 細致與簡潔是矛盾的. 簡潔是OPL的突出優點之一, 在擴展OPL時仍然要繼承這個優點, 除非絕對必要則不增加構造型.描述鏈接關系是物理域與信息域的分水嶺, 被描述的對象可以是物理事物或信息, 但描述的結果只能是 信息, 而不能是物理事物. 事物特征與信息之間的描述鏈接關系讓物理事物特征與描述該特征的信息能同時體現在模型中, 而不是必須選擇描述一個并忽視另一個.在對系統作概念建模時, 通常總是從描述物理事物及其相互關系開始, 然后識別并描述物理事物的特征, 再通過觀測過程獲取描述物理事物特征的信息. 這樣的模型層次結構使模型始終錨定物理世界, 盡量避免與物理世界不符合的主觀認識影響模型的客觀性.在用OPL作概念建模時, “認識”是一種特殊的觀測過程, “ 認識”過程所觀測的對象是描述事物特征的信息, 所獲取的結果是對事物特征之間相關性的認識及描述(圖8, 圖中左半部分是OPL 模型) . 知識(特指經驗知識 而非先驗知識) 是對事物之間或事物特征之間的關系有依據的認識. 遞歸地運用認識過程, 獲取的知識的抽象層級將逐級遞增.
圖 8 事物的層級
按照信息主導論, 信息包括信號、知識、定勢和符號四種形態 . 信號是被生命體接收及識別的、暴露了物理事物特征的能量形式, 是信息的物理形態, 也是信息的基礎形態. 知識是人對事物之間或事物特征之間關系的有依據的認識結果. 定勢是對知識的應用方法. 符號是對信息作編碼描述并支持信息交換的工 具. 由此可見, 觀測過程所獲取的信息是信號, 信號暴露事物的特征, 信號是各類信息的源頭. 在概念模型中, 信號發揮著銜接物理域和信息域的橋梁作用. 信息的抽象層級按照信號、知識和定勢逐級遞增.物理事物、物理事物的特征、對事物特征的描述(信號) 、知識和定勢依次遞進并相互銜接, 共同構成概念模型的整體框架, 符號則作為描述模型內容的編碼工具. 需要說明的是語言就是某種符號體系(語義) 及其使用規則(語法).
3 關聯算子
3.1 描述定量關系的語言障礙
仍以燒水為例, 燒水時, 水的升溫速度主要由加熱功率、水的質量和水的比熱共同決定. 對于概念建模, 這個規律(知識) 是需要描述的重要內容. 按照OPL當前版本(ISO/PAS 19450: 2015) 對這個規律建模如圖9.
圖 9 描述定量關系的局限性
與“速度值v”相關的單向關聯關系對應的OPT為: “速度值v關聯著功率值p、溫度值t、質量值m和比熱比k”. 可見在建模時只能對速度值v、功率值p、溫度值t、質量值m和比熱比k之間的關系作定性描述, 不 能作細地定量描述.
3.2 描述定量關系的語義邏輯
OPL當前版本不能對事物特征之間客觀關系作定量描述, 是因為語言中缺乏描述這類關系的元模型. 假如用圖9所示單向關聯關系(或雙向關聯關系)對多個對象之間的關系建模, 只能描述相關對象之間有某種關系, 卻不能嚴謹地描述是什么關系. 如果對關聯關系用自定義文字作輔助描述, 這種描述也不是形式化的, 仍然容易產生歧義.
3.3 描述定量關系的語言優化方案
在語言中增加“關聯算子”過程構造型, 利用“關聯算子”過程描述事物特征之間的關聯關系. 關聯算子所涉及的事物特征參數可以是任何類型, 如數值型、字符型、枚舉型等. 這將使關聯算子不僅能描述事物特 征之間的定性關系, 還能描述事物特征之間的定量關系.
3.4 對“關聯算子過程”的驗證
利用”關聯算子”過程更改圖9所示模型, 得到圖10所示模型. 在“關聯算子”過程中可以細化定量描述各參數之間的關系: v = p/(km), 0℃≤ t ≤100℃
圖 10 用關聯算子描述數值關系
用關聯算子過程不僅能描述數值型對象之間的關系, 還可以描述其他類型(如字符型等) 對象之間的各 種關系, 如映射關系(見圖11) .
圖 11 用關聯算子描述映射關系
3.5 關于關聯算子過程的理論分析
知識是人對事物之間或事物特征之間關系的有依據的認識結果, 可見關聯算子就是對知識的定量描述形式. 關聯算子支持用數學工具定量描述知識, 使概念建模的形式化描述手段更豐富. 其實所謂“形式化”本質就是用嚴謹的數學語言描述內容.進一步考察圖10所示模型, 將發現用關聯算子可以描述接口或端口. 例如按照圖10所示模型結構定義傳感器和計算機, 傳感器獲取的信號作為計算機的輸入, 將構成完整的信息 采集及處理系統模型, 如圖12.
圖 12 用關聯算子描述接口
4 限定影響鏈接的方向性
4.1 區分兩種影響的語言障礙
通常用電水壺燒水不是絕熱加熱過程, 環境溫度會影響加熱速度. 當考慮環境事物的影響時, 需要在模型中補充相關定義, 如圖13, 希望表達的語義是“加熱影響水溫, 環境溫度影響加熱”. 實際上按照OPL語言的語法, 圖13所示模型對應的OPT是: “加熱影響水溫, 加熱影響環境溫度” . 這顯然與所要表達的本意不符合.
圖 13 影響鏈接的語義混淆
4.2 區分兩種影響的語義邏輯
在當前版本的OPL語言中, “影響鏈接”只能描述過程對對象的影響, 而不能描述對象對過程的影響, 所使用的雙向空心箭頭符號不能限定影響鏈接的方向.
4.3 區分兩種影響的語言優化方案
限定影響鏈接的方向, 將影響鏈接劃分為兩個類型, 一個類型是從過程指向對象, 另一個類型是從對象指向過程. 因為單向空心箭頭已經用于描述“消耗/生成”鏈接, 為了避免符號多義, 本文將影響鏈接的兩個類 型用單向實心箭頭表示.
4.4 對兩種影響語義的驗證
用圖14所示模型驗證改進方案, 圖14對應的OPT與所要表達的建模意圖是一致的.
圖 14 單向影響
4) 環境溫度影響加熱.
4.5 對語言改進方案的綜合驗證
綜合運用上述對OPL的擴展方案, 對圖10所示模型更改如圖15.
圖 15 對OPL改進方案的綜合驗證
11) 功率值p、速度值v、溫度值t、質量值m 和比熱比k 通過關聯算子f(p, v, t, m, k)關聯.
對OPL當前版本所作的擴展主要是細分模型元素的構造型, 并未在更細層級上增加基本語義. 通過建模 實驗驗證了所述更改不會破壞OPL簡潔性優點, 同時使所要表達的邏輯關系更加清晰. 在對復雜的航空電子 系統進行概念建模時, 也同樣驗證了對OPL語言擴展定義的必要性、可行性和有效性.
4.6 對語言改進方案的綜合理論分析
對象影響過程, 通常意味著所要表達的是對象直接影響過程的特征, 而不是直接影響與該過程相關的其 他對象. 如圖13所示模型中“環境溫度影響加熱”, 是指直接影響“升溫速度”. 如果需要進一步明確描述, 則可以用關聯關系算子描述“環境溫度”與“升溫速度”之間的關系.
5 對語言的整體運用
主體鏈接、手段鏈接、影響鏈接和生成/消耗鏈接主要用于區分與某個過程相關事物針對該過程的角色(圖16), 與人的主觀認識和主觀愿望相關; 事物、事物的特征、描述事物特征的信息與關聯算子過程依次銜接起來, 用于揭示事物之間的客觀性關聯關系(圖17). 這兩個方面結合起來, 既包括人的主觀認識及愿望, 又包括事物之間客觀關系, 在整體上覆蓋了人造系統概念模型所需要描述的全部內容. 擴展后的對象過程 語言能為概念模型內容的充分性、準確性和細致性提供更有力地支持.
圖 16 多種角色
圖 17 事物之間的客觀性關系
將多個關聯算子通過某些特征值彼此連接, 重點考察這些關聯算子之間的關系, 模型將體現面向過程方法(結構化方法) 建模的特點 . 圖8和圖17集中體現了擴展后的OPL相對ISO/PAS 19450: 2015的改進.
6 總結
建模語言是基于模型的系統工程(MBSE)的基石. 在保持對象過程語言(ISO/PAS 19450: 2015) 特色和優點前提下, 增加觀測過程構造型和關聯算子過程構造型, 限定影響鏈接關系的方向, 讓對象過程語言所能表達的內容更充分、準確、細致. 為闡述問題并證明改進方案的有效性, 利用典型案例開展驗證工作. 案例雖然簡單, 但揭示了語言的底層邏輯, 具有代表性, 可作為一般性應用參考.僅僅開展語言方面的研究和改進, 其局限性是顯而易見的. 對建模語言的改進需要體現在建模軟件工具中, 并與建模方法共同促進MBSE實踐 . 面向對象方法是應對系統復雜性的有效建模方法. 但當前OPL尚不支持封裝, 這限制了它按照面向對象方法建模. 論文未涉及該問題, 這將是研究和進一步改進OPL值得探索的方向.
當前版本的對象過程語言(ISO/PAS 19450:2015)已經非常強大,足以支持我們做很多工作,比如作為MBSE核心的架構定義及架構建模等工作。繼續完善對象過程語言,將更充分地發揮它的巨大潛力,更有力地推動MBSE向前發展。
另外,永遠不要忘記領域知識不可替代的重要作用。假如缺乏必要的領域知識,語言、方法和工具都無法發揮任何作用。
文章來源:對象過程方法
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















