■ 汪騰 王壽菊 李金剛 張彪/中國航發(fā)研究院
方法工具的信息化實現(xiàn)是將研發(fā)過程中使用的各種方法工具進行抽象、封裝與集成,提供統(tǒng)一的、可靈活調(diào)用且簡單易用的工具模板、文檔模板和集成軟件。
在航空發(fā)動機研制過程中,各單位積累了大量的研發(fā)方法工具,但都具有個性化強、非標(biāo)準(zhǔn)化、孤立程度高以及專業(yè)程度高等特點,主要表現(xiàn)在:方法工具信息化建設(shè)和應(yīng)用缺乏體系化的軟件開發(fā)原則、使用要求、封裝規(guī)范與指引;不同的方法工具存在數(shù)據(jù)孤立程度高、數(shù)據(jù)格式不統(tǒng)一、數(shù)據(jù)不貫通;商業(yè)軟件使用門檻高、使用人員培養(yǎng)困難、軟件應(yīng)用不便捷。因此亟需開展方法工具要素的信息化實現(xiàn)技術(shù)研究,對已積累的方法工具進行封裝,形成研發(fā)工具模板,加強研發(fā)工具的統(tǒng)一。
圖1 方法工具要素信息化實現(xiàn)技術(shù)架構(gòu)
方法工具信息化實現(xiàn)的運行邏輯是基于集成工作環(huán)境中的組件庫和圖形化的流程定制工具,進行研發(fā)工具的封裝。首先,結(jié)合方法工具信息化業(yè)務(wù)需求與現(xiàn)有的方法工具的功能和特點,在遵循模型、視圖和控制器(MVC)軟件設(shè)計模式和軟件使用要求的同時,制定方法工具信息化開發(fā)應(yīng)遵循的程序開發(fā)要求和圖形用戶界面(GUI)設(shè)計規(guī)范,使集成后的方法工具能滿足在國產(chǎn)化軟硬件環(huán)境中規(guī)范化、定制化和易遷移的組件模塊化高效部署需求;其次,通過組件技術(shù)、腳本技術(shù)和動態(tài)鏈接庫(DLL)等信息化技術(shù),根據(jù)具體研發(fā)活動所涉及的方法工具功能和特點,選擇相適應(yīng)的信息化技術(shù)進行封裝;最后,將實際業(yè)務(wù)需求與選取的信息化技術(shù)結(jié)合,進一步完善包括商業(yè)軟件封裝和自研程序在內(nèi)的方法工具的封裝,完成面向發(fā)動機總體、壓氣機、燃燒室、渦輪、傳動系統(tǒng)和控制系統(tǒng)等不同專業(yè)領(lǐng)域工具模板、文檔模板的封裝和研發(fā)軟件的集成。
方法工具集成工作環(huán)境包括組件庫和圖形化的流程定制工具。
工程設(shè)計過程中往往包含一系列的基礎(chǔ)性、普遍性操作,這些操作構(gòu)成了各種設(shè)計、分析工作的最小單元,即組件。以數(shù)據(jù)處理組件為例,對流程中數(shù)據(jù)相關(guān)的內(nèi)容進行集成封裝,支持從定義好的Word、Excel等文件中抽取結(jié)構(gòu)化的數(shù)據(jù)或?qū)⑵脚_數(shù)據(jù)寫入定義好的Word、Excel文件中。
圖形化的流程定制工具涉及控制流、數(shù)據(jù)流等內(nèi)容。控制流是指按一定的順序排列研發(fā)過程的方法工具,以此控制方法工具的執(zhí)行的順序,如圖2所示。數(shù)據(jù)流是指在定義了研發(fā)活動流程的節(jié)點上,方法工具之間的數(shù)據(jù)傳遞關(guān)系,如圖3所示。
圖2 控制流
圖3 數(shù)據(jù)流
航空發(fā)動機研發(fā)過程涉及大量的研發(fā)方法和工具,其封裝主要包括方法工具封裝規(guī)范、方法工具封裝技術(shù)和方法工具封裝設(shè)計。
為了保證方法工具有效地集成到工作環(huán)境中,其編寫、封裝和開發(fā)需要滿足一定的規(guī)范和要求。常用的規(guī)范和要求為MVC設(shè)計模式,即把軟件系統(tǒng)分為模型(M)、視圖(V)和控制器(C)3個基本部分,如圖4所示。MVC模式的目的是實現(xiàn)一種動態(tài)的研發(fā)方法工具設(shè)計,簡化后續(xù)對研發(fā)方法工具的修改和擴展,使研發(fā)方法工具程序某一部分的重復(fù)利用成為可能。
圖4 軟件MVC設(shè)計模式
一些方法工具專業(yè)軟件在研發(fā)過程中,使用商業(yè)軟件或在商業(yè)軟件基礎(chǔ)上進行二次開發(fā)時,應(yīng)遵循以下要求:當(dāng)采用商業(yè)軟件支持專業(yè)軟件開發(fā)時,須進行商業(yè)軟件的使用說明;所選擇的商業(yè)軟件的運行不能影響研發(fā)平臺和其他專業(yè)軟件的運行。
方法工具封裝技術(shù)涵蓋了航空發(fā)動機研制過程中使用的方法、工具和程序的封裝,其使用的技術(shù)包括組件技術(shù)、腳本技術(shù)和動態(tài)鏈接庫等。
組件是對方法、工具和數(shù)據(jù)的簡單封裝。組件技術(shù)是指將復(fù)雜的應(yīng)用軟件拆分成一系列軟件單元,即組件,這些組件具有通用性強、易于開發(fā)、理解和調(diào)整等特征,應(yīng)用程序則由可重用的組件來構(gòu)造。
腳本是使用一種特定的描述性語言,依據(jù)一定的格式編寫的可執(zhí)行文件,用來控制軟件應(yīng)用程序,腳本通常是以文本保存,只在被調(diào)用時進行解釋或者編譯。在開發(fā)工具模板的過程中,有時候會遇到用集成開發(fā)環(huán)境難以實現(xiàn)的功能,如動態(tài)解析、生成文件等,此時需要通過腳本文件來幫助實現(xiàn)。此外,在進行腳本文件編寫過程中需遵循腳本文件編寫規(guī)范。
動態(tài)鏈接庫是實現(xiàn)共享函數(shù)庫概念的一種方式。Windows系統(tǒng)中,DLL多數(shù)情況下是帶有“.dll”擴展名的文件,但也可能是“.ocx”或其他擴展名;Linux系統(tǒng)中常常是“.so”的文件。程序可根據(jù)DLL文件中的指令打開、啟用、查詢、禁用和關(guān)閉驅(qū)動程序。
航空發(fā)動機研發(fā)過程中的方法、工具、程序和軟件等通過有效的封裝和集成,可形成一系列標(biāo)準(zhǔn)化的、可重用的方法工具模板。通過組件技術(shù)對計算機輔助設(shè)計(CAD)功能進行封裝,可實現(xiàn)建模、替換、編輯、加載、裝配等功能。自研程序的封裝包括但不限于封裝基于Windows、DOS、Linux、Unix等系統(tǒng)環(huán)境的自研程序,同時還需支持國產(chǎn)化軟件工具,形成工程設(shè)計模板。
基于以上方法工具信息化實現(xiàn)架構(gòu)的研究,結(jié)合產(chǎn)品研發(fā)信息化平臺建設(shè)情況,以航空發(fā)動機研發(fā)過程中涉及的工具模板、文檔模板的封裝和研發(fā)軟件的集成進行方法工具封裝與集成的應(yīng)用驗證。
通過系統(tǒng)提供的配置功能,可以方便地把設(shè)計分析模板、設(shè)計分析流程配置成專業(yè)軟件包的功能模塊,以及配置專業(yè)軟件包的界面、菜單等,實現(xiàn)個性化的定制和面向?qū)I(yè)的集成應(yīng)用環(huán)境。
研發(fā)工具模板是按照航空發(fā)動機的類別管理發(fā)動機研發(fā)的工具模板,可以實現(xiàn)版本與權(quán)限管理,研發(fā)工具模板也可直接在任務(wù)中進行應(yīng)用和實例化,可以將研制過程中的方法、工具、經(jīng)驗封裝到工具模板中。研發(fā)工具模板庫可用于創(chuàng)建包括但不限于封裝總體、壓氣機、燃燒室、渦輪、傳動系統(tǒng)、控制系統(tǒng)等航空發(fā)動機各主要部件的研發(fā)工具模板。典型的基于UG組件的發(fā)動機設(shè)計如圖5所示。
圖5 基于UG組件的發(fā)動機設(shè)計
以航空發(fā)動機的系統(tǒng)設(shè)計為例,各專業(yè)所封裝的工具模板及對應(yīng)的工具軟件與模板類型清單見表1。
表1 按專業(yè)分類的工具模板封裝部分示例
方法工具信息化實現(xiàn)技術(shù)為航空發(fā)動機研發(fā)過程的信息化平臺建設(shè)提供了可行的、有效的支持,在一定程度上解決了不同方法工具所產(chǎn)生數(shù)據(jù)格式不統(tǒng)一、數(shù)據(jù)交互不暢的問題,降低了軟件使用難度,提高了研發(fā)人員的工作效率。