李金友,于江濤
(通化師范學院計算機學院,吉林通化 134002)
Petri網(Petri Net)是一種高效的建模和分析工具,近年來得到了快速的發展.但是Petri網是一種純理論工具,并不能適合所有領域的應用需求.很多學者針對不同領域的研究對象,提出了各種各樣改進的Petri網理論.如近年來得到普遍應用的隨機Petri網、著色 Petri網、模糊 Petri網、代數 Petri網、面向對象Petri網和面向對象代數Petri網模型等.
面向對象代數Petri網模型OOAPN(Object Oriented Petri Net)模型支持面向對象的概念,支持面向對象軟件系統分析和建模,把代數理論、Petri理論以及面向對象方法和技術結合在一起,為形式化和智能化軟件工程環境的建立提供了一種有效方法,可以提高并發系統動態建模和復雜系統的高級建模的能力,實現系統的動態建模和不確定建模,完善現有建模方法的不足.
OOAPN模型建模工具旨在為人們提供一套科學的工程化的軟件開發工具系統,有效的管理分析、設計、編碼和測試的全過程,生成高效、正確的代碼.集成化思想與建模工具緊密地結合在一起,形成了具有強有力的逆向代碼自動生成的可編程和測試的集成化建模工具.OOAPN建模工具主要作用有:一個具有專用資源和早期查錯功能的交互式開發環境、對軟件的開發和維護過程中的許多環節實現了自動化、通過一個強有力的圖形接口,實現了直觀的程序設計.
基于OOAPN模型的建模工具,提出了模型驅動模板MDT(Model Driven Template)設計模式.模型驅動模板MDT(Model Driven Template)設計模式主要包含兩個要素:模型和模板.而這兩個要素都是抽象的,即在實際開發中,可根據需要采用不同的模型和模板.在建模系統中,模型采用的是OOAPN模型,模板采用的是Cheetah Templates模板引擎,在中心信息庫CIL(Center Information Library)中,用逆向代碼生成器,利用自定義的模式,匹配出符合要求的格式數據,再經過逆向代碼生成器的加工轉換,使其轉變成符合nameSpace數據結構類型的數據,再由CIL加工廠還原成OOAPN模型.系統運行界面如圖1所示.

圖1 是系統運行的界面
逆向代碼的自動生成的主要構件是正則表達式,利用自定義的模式,匹配出符合要求的格式數據,再經過逆向代碼生成器的加工轉換,使其轉變成符合nameSpace數據結構類型的數據,再由CIL加工廠還原成OOAPN模型.其系統結構圖如圖2所示:
首先,構造自定義的正則模式,以便匹配出符合要求的代碼,進行下一步的轉換.如自定義的匹配函數(方法、事件)的正則模式:

其次,由逆向代碼生成器轉換成類型nameSpace數據結構類型的數據.如向一個已經匹配的接口添加函數(方法、事件):


再次,由中心信息庫CIL(Center Information Library)對nameSpace加工轉換成OOAPN模型.如向已經在畫布存在的接口圖形的一個函數添加參數模型:

最后,由中心信息庫CIL(Center Information Library)對nameSpace加工轉換成有 效的OOAPN模型.

圖2 逆向代碼自動生成過程
集成化思想與建模工具緊密地結合在一起,形成了具有強有力的逆向代碼自動生成的可編程和測試的集成化建模工具,有效的管理分析、設計、編碼和測試的全過程,生成高效、正確的模型.
:
[1]潘洪軍.面向對象代數 Petri網[J].吉林大學學報,2006(3).
[2]克萊普,等著.解析MDA[M].鮑志云,譯.人民郵電出版社,2004.
[3]袁崇義.Petri網原理與應用[M].北京:電子工業出版社,1998.
[4]賈立新,薛鈞義,茹峰.采用模糊Petri網的形式化推理算法及其應用[J].西安交通大學學報,2003(12).
[5]叢佩政,任愛華.基于面向對象Petri網的模型驅動開發方法的研究[J].微計算機信息,2006(28).