軟件測試面向系統建模的模型集成[3] 軟件測試工具
關鍵字:系統建模 模型集成
• 同一領域同一問題同一模型類的兩個模型實例的接合;
• 同一領域同一問題不同模型類的兩個模型實例的接合;
• 同一領域不同問題的不同模型類的兩個模型實例的接合;
• 不同領域的不同問題的不同模型類的兩個模型實例的接合;
其中類型( 1-3 )的集成由于涉及建模領域和問題的混雜屬于病態結構問題,只有當其他類型的集成討論清楚后才好深入討論。顯然, 4<5<6 和 7<8<9<10 ;這里 < 表示更容易研究。這樣的偏序關系用于指導研究投入的分配是很謹慎的,因為功能集成不必像縱深集成那樣協調不同的模型類或實例。它更適合處理更難研究的集成類型,所以功能集成比縱深集成更實際些。類型 (8-10) 可能沒有多少意義,因為多數基于模型的工作更多地關注模型的類。在這樣的前提下, Geoffrion 認為應當更關注類型 (4-7) 。如果類型 (4-5) 的研究沒有顯著的進展時,類型 (6) 的研究也是很難深入的。文 [14] 給出了各種類型的例子。
• 集成建模環境
自 1988 年以來集成建模環境 (integrated modeling environment) 就是夏威夷國際系統科學會議知識與決策支持系統主題中的一個分主題,討論包括模型管理方面所有的論題并圍繞決策支持建模有關的不同的理論與實踐問題。 IME 可加快模型集成的過程,主要用于模型集成的快速實現。在模型實現過程中需要考慮 4 個原則: ① 模型數據的獨立性; ② 模型求解器的獨立性; ③ 模型模板的獨立性; ④ 元表達和元推理。
電子數據表和計劃系統是很流行的模型實現工具;但它們不支持模型數據的獨立性,因為每個電子數據表模型是一個模型實例。這在理解、驗證和維護方面限制了模型的規模。不過電子數據表保證求解器的獨立。如這些工具中有優化模型、回歸模型,它們互有聯系。
此外建模語言及其支持環境也是一種 IME 。代數建模語言是一種提高建模效率的工具,較有名的有 GAMS [15] 和 AMPL [16] 。 GAMS 支持求解器獨立,但不支持模型數據或模板獨立。 AMPL 支持模型數據和求解器獨立,但不支持模板獨立。沒有一種代數建模語言支持元表達或推理。關系型建模語言則根據一些數學規劃模型擴展了數據庫中常用 SQL 語言。這種方式最顯著的優點是采用數據字典獲得一些元信息,以支持元推理。還有基于三種模型表達而發展的模型語言如結構建模語言有 SML ,邏輯建模語言 TEFA [17] 和圖建模語言 NETWORKS [8] 。它們的設計發展也努力遵循模型實現的四原則。
模型集成支持工具的發展緊隨技術進步,如軟件集成提高了支持模板集成的建模環境的可行程度,互聯網技術特別是分布式計算觸發了新一代的模板集成,還有軟件工程領域基于面向對象的分析與設計的統一建模語言 (unified modeling language –UML) 等等。
Agent 技術為系統建模和 IME 的發展提供了新的契機。馬里蘭大學開發的集成建模工具箱 (integrating modeling toolkit – IMT) 是一個功能全面可擴展的集成建模環境,其中可定義并能共同使用模型組件,建模者可創建由 IMT agent 組成的 IMT 世界,這些 agent 在建模過程中完成各自的任務。 IMT agent 的核心集合可以描述一般性的、模塊化的、分布式的模型組件,它們分別完成諸如簡單計算、仿真、優化、 GIS 分析和高級的統計分析,這些 agent 很容易與上一層的仿真粘合起來,從而集成了不同的模型模板和工具集 (http://ima.umces.edu/) 。這些巨大的進步反映了人們對模型集成視角的變化。國內也有一些基于 agent 技術的專用 IME [18] 。下面我們討論如何實現模型集成。
文章來源于領測軟件測試網 http://www.kjueaiud.com/