王 璐, 史志釗, 史兆明
(1.光電控制技術(shù)重點(diǎn)實(shí)驗(yàn)室,河南 洛陽 471000; 2.中國航空工業(yè)集團(tuán)公司洛陽電光設(shè)備研究所,河南 洛陽 471000)
懸掛物管理系統(tǒng)(SMS)是管理和控制載機(jī)所攜帶的武器及其他懸掛物(吊艙、副油箱等)的復(fù)雜系統(tǒng)[1]。在懸掛物管理系統(tǒng)的開發(fā)過程中,目前多采用文檔驅(qū)動(dòng)的傳統(tǒng)設(shè)計(jì)方法[2],從系統(tǒng)需求分析、產(chǎn)品設(shè)計(jì)與研制再到系統(tǒng)驗(yàn)收,每個(gè)環(huán)節(jié)只將本環(huán)節(jié)的交付物傳遞給下一環(huán)節(jié),便宣告本環(huán)節(jié)任務(wù)的完成。由于缺少全生命周期內(nèi)的動(dòng)態(tài)跟蹤與迭代,很容易導(dǎo)致設(shè)計(jì)與需求的脫節(jié),并且很大可能直到系統(tǒng)聯(lián)試或者綜合驗(yàn)收階段才能夠發(fā)現(xiàn),會(huì)造成巨大的浪費(fèi)[3]。而且在驗(yàn)證
環(huán)節(jié),傳統(tǒng)方法驗(yàn)證手段單一,驗(yàn)證過程重復(fù)、覆蓋率低,存在著無法充分驗(yàn)證等問題[4]。
因此,如何更快、更好地滿足用戶需求以完成懸掛物管理系統(tǒng)的設(shè)計(jì)和集成工作,同時(shí)又能使系統(tǒng)具有良好的可驗(yàn)證性和對需求的覆蓋性是擺在系統(tǒng)設(shè)計(jì)人員面前的一大難題[5]。
基于模型的系統(tǒng)工程(MBSE)是目前復(fù)雜系統(tǒng)開發(fā)領(lǐng)域正在廣泛推廣和應(yīng)用的現(xiàn)代系統(tǒng)開發(fā)流程[6]。該方法將各個(gè)級(jí)別的需求與相應(yīng)的系統(tǒng)方案元素建立鏈接,并以圖形化的方式展示出來。MBSE最顯著的特點(diǎn)在于系統(tǒng)設(shè)計(jì)開發(fā)過程中的所有信息均是以模型來表示,具有知識(shí)表達(dá)無二義性、便于交流與傳播、易于復(fù)用等特點(diǎn)[7]。可執(zhí)行的功能模型使得在系統(tǒng)設(shè)計(jì)的各個(gè)階段都能分析系統(tǒng)設(shè)計(jì)對需求的符合性,并驗(yàn)證系統(tǒng)需求是否滿足利益相關(guān)方的原始需求[8]。
本文在對基于模型的系統(tǒng)工程方法進(jìn)行回顧的基礎(chǔ)上,創(chuàng)新性地對懸掛物管理系統(tǒng)中MBSE方法的應(yīng)用進(jìn)行了初步研究,并介紹了具體使用的Harmony最佳工程實(shí)踐方法,結(jié)合DOORS和Rhapsody工具的使用,對Harmony方法的具體應(yīng)用進(jìn)行了詳細(xì)說明,然后通過執(zhí)行模型對功能進(jìn)行了驗(yàn)證,展示了基于模型的系統(tǒng)工程方法在懸掛物管理系統(tǒng)設(shè)計(jì)中的應(yīng)用。
基于模型的系統(tǒng)工程方法使用標(biāo)準(zhǔn)化系統(tǒng)建模語言SysML進(jìn)行系統(tǒng)分析、系統(tǒng)設(shè)計(jì)和系統(tǒng)綜合,分別創(chuàng)建需求模型、功能用例模型、物理架構(gòu)模型,從而完成需求、功能到架構(gòu)的連接與設(shè)計(jì),通過模型的執(zhí)行來完成系統(tǒng)需求到業(yè)務(wù)功能的“確認(rèn)”和“驗(yàn)證”,是雙“V”研制模式的核心機(jī)理,貫穿了整個(gè)產(chǎn)品研發(fā)全生命周期的各個(gè)階段[9]。目前基于模型的系統(tǒng)工程方法已經(jīng)在航空領(lǐng)域得到廣泛應(yīng)用,空客、波音、洛克希德·馬丁公司以及國內(nèi)一些研究機(jī)構(gòu)都已經(jīng)成功應(yīng)用了此方法[10-11]。
本文所采用的流程是系統(tǒng)工程Harmony方法,該方法是由模型來進(jìn)行驅(qū)動(dòng),對系統(tǒng)進(jìn)行分析與建模,所對應(yīng)的關(guān)鍵目標(biāo)是:分析和導(dǎo)出所需要的系統(tǒng)功能;識(shí)別出系統(tǒng)相關(guān)的狀態(tài)和模式;將已得到的系統(tǒng)功能和狀態(tài)/模式分配到創(chuàng)建的系統(tǒng)架構(gòu)中去[12]。
圖1中描述了系統(tǒng)工程Harmony方法的整個(gè)開發(fā)過程,其中,每個(gè)階段、每個(gè)環(huán)節(jié)都采用多次迭代使得相鄰環(huán)節(jié)能夠在相關(guān)內(nèi)容上保持延續(xù)與一致,在系統(tǒng)設(shè)計(jì)的前期階段就盡量消除錯(cuò)誤,從而避免后期修改錯(cuò)誤帶來的巨大成本[13]。
圖1 模型驅(qū)動(dòng)的系統(tǒng)工程過程Fig.1 Process of model-driven system engineering
面向懸掛物管理系統(tǒng)應(yīng)用的Harmony系統(tǒng)工程,其主要目標(biāo)是識(shí)別并推導(dǎo)出懸掛物管理系統(tǒng)的功能,分析并識(shí)別出相關(guān)的系統(tǒng)工作狀態(tài)和運(yùn)行模式,并將其分配到核心處理單元和接口管理單元等系統(tǒng)部件中。本文首次將Harmony方法應(yīng)用于懸掛物管理系統(tǒng)的設(shè)計(jì)與驗(yàn)證,開展了模型的懸掛物管理系統(tǒng)工程實(shí)踐,其中,軟件平臺(tái)選用標(biāo)準(zhǔn)化系統(tǒng)建模語言SysML,需求管理工具選用IBM Rational公司的DOORS軟件,模型開發(fā)工具選用Rhapsody軟件。其中,DOORS工具可以幫助開發(fā)者建立各個(gè)層級(jí)需求之間的追蹤關(guān)系,便于完成對上層需求的追溯與確認(rèn),Rhapsody工具則完成相關(guān)各類模型的創(chuàng)建。
系統(tǒng)需求分析階段的首要工作是分析和篩選懸掛物管理系統(tǒng)原始的利益攸關(guān)者需求,從中捕獲系統(tǒng)需求,即定義系統(tǒng)的功能需求以及服務(wù)需求的質(zhì)量。為了確保系統(tǒng)需求的完整性,并且滿足用戶及投資人的需求與規(guī)范,可以利用DOORS實(shí)現(xiàn)系統(tǒng)需求到用戶需求的關(guān)聯(lián)。這也是首次將DOORS工具引入到懸掛物管理系統(tǒng)的需求建模中來,能夠更好地完成需求的捕獲與分析以及后續(xù)的需求跟蹤與追溯。
然后,定義系統(tǒng)用例并關(guān)聯(lián)功能/性能需求到系統(tǒng)用例。在懸掛物管理系統(tǒng)設(shè)計(jì)中,將其分為清單更新、清單自動(dòng)加載、清單手動(dòng)加載、武器占位選擇、選擇投放管理、武器發(fā)控管理6個(gè)用例,如圖2所示,這對武器發(fā)控過程中的選擇、加載、準(zhǔn)備、投放整個(gè)流程都進(jìn)行了覆蓋。
圖2 懸掛物管理系統(tǒng)用例圖Fig.2 Store management system use case diagram
王完成用例圖建立之后,在Rhapsody中添加用例與需求之間的關(guān)聯(lián)關(guān)系,建立需求跟蹤矩陣。從而在設(shè)計(jì)層級(jí)實(shí)現(xiàn)對需求的覆蓋率分析,以便在系統(tǒng)設(shè)計(jì)階段就能夠?qū)ο到y(tǒng)需求進(jìn)行確認(rèn),這相比傳統(tǒng)的開發(fā)過程可以大大提高設(shè)計(jì)對需求的符合性并能夠及早發(fā)現(xiàn)設(shè)計(jì)的偏差。
系統(tǒng)功能分析主要是在需求分析階段的基礎(chǔ)上,由上一個(gè)階段定義的用例模型,確定功能單元的功能定義、活動(dòng)、時(shí)序、狀態(tài),將系統(tǒng)功能性需求轉(zhuǎn)化為系統(tǒng)操作,同時(shí)每個(gè)用例在轉(zhuǎn)換的過程中,都應(yīng)該通過建立的可執(zhí)行模型進(jìn)行實(shí)際運(yùn)行來驗(yàn)證設(shè)計(jì)是否符合期望,并對設(shè)計(jì)偏差進(jìn)行修正,此過程被稱為功能單元的黑盒設(shè)計(jì)。對于懸掛物管理系統(tǒng),這個(gè)過程將圍繞著清單更新、清單自動(dòng)加載、清單手動(dòng)加載、武器占位選擇、選擇投放管理、武器發(fā)控管理這6個(gè)功能用例展開。
用例模塊的行為通過活動(dòng)圖、序列圖、內(nèi)部塊圖、狀態(tài)圖4個(gè)SysML視圖來展示。其中,活動(dòng)圖從本質(zhì)上來講是一種流程圖,主要表現(xiàn)一個(gè)工作執(zhí)行的活動(dòng)順序,闡明了用戶實(shí)現(xiàn)的工作流程;序列圖又稱為時(shí)序圖,它通過描述對象之間發(fā)送消息的時(shí)間順序來顯示多個(gè)對象之間的動(dòng)態(tài)協(xié)作,表示用例的行為順序;內(nèi)部塊圖以圖形方式展示系統(tǒng)與外部Actor的所有交互,生成結(jié)構(gòu)視圖的端口與接口;狀態(tài)圖也稱為狀態(tài)機(jī),主要用于分析系統(tǒng)在其生命周期內(nèi)的完整動(dòng)態(tài)行為,包括定義系統(tǒng)的狀態(tài)和依賴于狀態(tài)的行為、分析系統(tǒng)狀態(tài)之間的轉(zhuǎn)換及伴隨轉(zhuǎn)換的行為。懸掛物管理系統(tǒng)部分活動(dòng)圖和部分狀態(tài)機(jī)分別如圖3、圖4所示。
圖3 數(shù)據(jù)準(zhǔn)備過程活動(dòng)圖Fig.3 Data preparation process activity diagram
圖4 武器發(fā)控管理用例狀態(tài)機(jī)(部分)Fig.4 Weapon launch and control management use case state machine(partial)
設(shè)計(jì)綜合又稱為白盒分析,該階段的重點(diǎn)是物理架構(gòu)(例如一系列產(chǎn)品、系統(tǒng),與/或軟件元素)的開發(fā),該物理架構(gòu)具有在規(guī)定的性能約束下執(zhí)行所需功能的能力。
設(shè)計(jì)綜合遵循自頂向下的工作方法,分別進(jìn)行架構(gòu)分析和架構(gòu)設(shè)計(jì)。架構(gòu)分析是針對一組滿足于給定的功能需求和性能需求的硬件或軟件配置方案,在未完成硬件實(shí)現(xiàn)的情況下,通過模型比較不同方案的總體效能指標(biāo),從中選取一個(gè)最優(yōu)方案[14]。架構(gòu)設(shè)計(jì)階段的重點(diǎn)是系統(tǒng)層業(yè)務(wù)到架構(gòu)結(jié)構(gòu)元素的分配。這個(gè)架構(gòu)可以是先前的業(yè)務(wù)研究或者一個(gè)給定的(原有的)架構(gòu)的成果。分配是一個(gè)迭代的過程,并且一般是在領(lǐng)域?qū)<业膮f(xié)作下進(jìn)行的。考慮到諸如性能和安全需求這些在需求分析階段捕獲的設(shè)計(jì)約束,可以分析不同的分配策略。
在狀態(tài)機(jī)模型建立之后,通過對組件進(jìn)行配置、編譯、運(yùn)行,來執(zhí)行模型,并重新生成序列圖。在模型執(zhí)行過程中,通過分析系統(tǒng)對象所經(jīng)歷的狀態(tài)序列、在特定狀態(tài)下的行為和對異常做出的響應(yīng)以及新老序列圖的執(zhí)行流程等來對整個(gè)系統(tǒng)的動(dòng)態(tài)過程進(jìn)行驗(yàn)證,從而判斷狀態(tài)機(jī)模型是否符合系統(tǒng)需求(新序列圖指的是新生成的狀態(tài)機(jī)的運(yùn)行序列,老序列圖指功能分析階段進(jìn)行場景分析時(shí)所畫的序列圖)。圖5所示為選擇投放用例狀態(tài)機(jī)運(yùn)行的過程。其中,紅色的狀態(tài)表示目前正在運(yùn)行的狀態(tài),黃色的狀態(tài)表示運(yùn)行過的狀態(tài)。圖6所示為武器發(fā)控管理用例新老序列圖的執(zhí)行流程,可以看出,模型狀態(tài)圖的運(yùn)行符合預(yù)想的狀態(tài)遷移情景(左圖為老序列圖),新的序列圖的執(zhí)行順序與老的序列圖保持一致,該模型能夠很好地滿足懸掛物系統(tǒng)需求。該驗(yàn)證方法相較于以往懸掛物開發(fā)過程中采用的以文檔為中心,在軟件硬件開發(fā)完畢后才進(jìn)行系統(tǒng)驗(yàn)證的方法,能夠更早更直觀地對系統(tǒng)需求進(jìn)行驗(yàn)證與確認(rèn),從而大大提高設(shè)計(jì)效率與質(zhì)量。
圖5 選擇投放用例狀態(tài)機(jī)的執(zhí)行(狀態(tài)的遷移)Fig.5 Execution of selecting jettison use case state machine(transition of state)
圖6 武器發(fā)控管理用例序列圖比對Fig.6 Weapon launch and control use case sequence diagrams
本文將基于模型的系統(tǒng)工程方法首次應(yīng)用于懸掛物管理系統(tǒng)的開發(fā)過程,采用DOORS和Rhapsody作為需求管理工具和系統(tǒng)設(shè)計(jì)工具,對懸掛物管理系統(tǒng)進(jìn)行了需求分析、系統(tǒng)功能分析和架構(gòu)分析,以不同視角描述系統(tǒng)在用例中的功能行為,得到一組可執(zhí)行模型,并通過模型的驗(yàn)證來形成系統(tǒng)測試場景,檢查系統(tǒng)設(shè)計(jì)是否滿足需求。MBSE方法與傳統(tǒng)的以文檔為中心的設(shè)計(jì)方法相比較,有以下優(yōu)點(diǎn):
1) 標(biāo)準(zhǔn)化的模型設(shè)計(jì),提高了信息交流的效率,有助于信息的傳遞;
2) 系統(tǒng)模型能夠準(zhǔn)確有效地對系統(tǒng)的各種活動(dòng)進(jìn)行描述,避免了文字描述中容易產(chǎn)生的歧義,改進(jìn)了文字描述復(fù)雜系統(tǒng)時(shí)帶來的不便,并使得后期的變更與維護(hù)更為容易;
3) 模型可以更好地完成知識(shí)的存儲(chǔ)與傳承,從而將設(shè)計(jì)人員從繁冗的文檔中解放出來;
4) 模型設(shè)計(jì)方法使得整個(gè)設(shè)計(jì)活動(dòng)具有追溯性,系統(tǒng)模型的建立貫穿系統(tǒng)的整個(gè)生命周期,包括需求獲取與分析、功能分析、設(shè)計(jì)綜合、系統(tǒng)確認(rèn)和驗(yàn)證,是一個(gè)統(tǒng)一完整的過程,可以提供一個(gè)整體的、具有一致性和追溯性的系統(tǒng)設(shè)計(jì),從而保證系統(tǒng)所有的活動(dòng)都是有據(jù)可循的;
5) 模型可以作為后續(xù)系統(tǒng)設(shè)計(jì)文件(ICD,POP)的設(shè)計(jì)來源,從而保證所有的設(shè)計(jì)文件都有據(jù)可依;
6) 可以通過模型的運(yùn)行(狀態(tài)機(jī)的運(yùn)行和序列圖的自動(dòng)生成)在系統(tǒng)設(shè)計(jì)早期對系統(tǒng)需求進(jìn)行驗(yàn)證和確認(rèn),避免后期通過樣件的運(yùn)行來發(fā)現(xiàn)問題,從而提高設(shè)計(jì)效率并降低風(fēng)險(xiǎn)[15]。
綜上所述,基于模型的系統(tǒng)工程設(shè)計(jì)方法有效地解決了傳統(tǒng)設(shè)計(jì)方法中的不足和問題,完成了由經(jīng)驗(yàn)研發(fā)向需求研發(fā)的轉(zhuǎn)變。深入開展基于模型的系統(tǒng)工程研究與實(shí)踐,對于懸掛物管理系統(tǒng)設(shè)計(jì)與維護(hù)均有著十分重要的意義。
[1]左偉,馮金富,許凌權(quán). 高級(jí)用例建模在懸掛物管理系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)工程,2009,35(24):271-273.
[2]王朝陽,季曉光,丁全心.機(jī)載懸掛物管理系統(tǒng)技術(shù)發(fā)展分析[J].電光與控制,2009,16(3):1-5.
[3]李向東,仇振安,蘇文強(qiáng).懸掛物管理功能仿真通用技術(shù)應(yīng)用研究[J].電光與控制,2011,18(10):82-86.
[4]馮金富,劉安,左偉,等.模型驅(qū)動(dòng)的開放式結(jié)構(gòu)懸掛物管理系統(tǒng)設(shè)計(jì)方法[J].空軍工程大學(xué)學(xué)報(bào),2010,11(4):1-5.
[5]張建華,楊致怡,沈振惠.基于模型的艦船電子對抗系統(tǒng)工程研究與應(yīng)用[J].指揮控制與仿真,2015,37(3):101-104.
[6]ESTEFAN J A. Survey of model-based systems engineering (MBSE) methodologies[R].United States:INCOSE,2008.
[7]曹悅.基于SysML的多域復(fù)雜機(jī)電產(chǎn)品系統(tǒng)層建模與仿真集成研究[D].杭州: 浙江大學(xué),2011.
[8]張煒鐘,王智學(xué),趙文.基于SysML的可執(zhí)體系結(jié)構(gòu)框架[J].計(jì)算機(jī)工程,2011,37(22):39- 41.
[9]INCOSE.系統(tǒng)工程手冊[M].張新國,譯.北京:機(jī)械工業(yè)出版社,2013.
[10]倪忠建,張彥,李漪,等.模型驅(qū)動(dòng)的系統(tǒng)設(shè)計(jì)方法應(yīng)用研究[J].航空電子技術(shù),2011,42(1):18-23.
[11]丁鼎.基于模型的系統(tǒng)工程在民機(jī)領(lǐng)域的應(yīng)用[J].沈陽航空航天大學(xué)學(xué)報(bào),2012,29(4):47-51,54.
[12]蒲小勃.現(xiàn)代航空電子系統(tǒng)與綜合[M].北京:航空工業(yè)出版社, 2013.
[13]HOFFMANN H P.System engineering best practices with the rational solution for systems and software engineering[M].New York:IBM Corporation,2011.
[14]孫煜,梁琰,馬力.基于模型的系統(tǒng)工程與SysML應(yīng)用研究[J].信息系統(tǒng)工程, 2012(10):114-118.
[15]葛立敏,劉遠(yuǎn)恒,王揚(yáng).基于模型的系統(tǒng)工程在航電系統(tǒng)設(shè)計(jì)中的應(yīng)用研究[J].航空制造技術(shù),2015(8):60-63.