摘 要:為了實(shí)現(xiàn)標(biāo)準(zhǔn)模型化,首次將COMET方法應(yīng)用到數(shù)據(jù)鏈系統(tǒng)控制中心的軟件設(shè)計(jì)中,通過(guò)借助UML表示法對(duì)系統(tǒng)設(shè)計(jì)的需求、分析,在設(shè)計(jì)各階段進(jìn)行標(biāo)準(zhǔn)建模,并采用分布式軟件體系結(jié)構(gòu)構(gòu)建控制中心的分析模型。采用COMET方法,可有效提高數(shù)據(jù)鏈控制中心的升級(jí)擴(kuò)充性,并為今后設(shè)計(jì)高度迭代、實(shí)時(shí)高效的數(shù)據(jù)鏈系統(tǒng)軟件提供理論基礎(chǔ)和方法依據(jù)。關(guān)鍵詞:COMET方法; 數(shù)據(jù)鏈系統(tǒng); 標(biāo)準(zhǔn)模型; UML
中圖分類號(hào):TN919-34文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2010)16-0037-03
Application of COMET in Data Link System
MAO Hong-qing
(Southwest China Institute of Electronic Technology, Chengdu 610036, China)
Abstract: The COMET method is applied in the software design of data link system control center to achieve the standard modeling. The requirement, analysis and design of the system design are made a standard modeling through UML, and the distributed software architecture is adopted to construct the analytical model of control center. By introducing COMET method, the upgrade and extension ability of the system can be improved significantly, the theoretical basis is provided for the future highly-iterative and real-time data link system software design
Keywords: COMET; data link system; standard model; UML
0 引 言
隨著無(wú)線數(shù)據(jù)通信技術(shù)和戰(zhàn)術(shù)數(shù)據(jù)鏈[1]的發(fā)展,高效、實(shí)時(shí)、安全、可靠的數(shù)據(jù)鏈[2]系統(tǒng)建設(shè)也越來(lái)越被各國(guó)軍方所重視。近年來(lái),美軍以“網(wǎng)絡(luò)中心戰(zhàn)”思想為指導(dǎo),綜合多種通信手段和戰(zhàn)略、戰(zhàn)術(shù)數(shù)據(jù)鏈進(jìn)行了機(jī)載數(shù)據(jù)鏈系統(tǒng)的建設(shè),以滿足地空和空空平臺(tái)間對(duì)指令信息、態(tài)勢(shì)信息傳輸?shù)男枨蟆?shù)據(jù)鏈系統(tǒng)體系龐大而復(fù)雜,由分布在不同區(qū)域、完成不同功能的物理節(jié)點(diǎn)構(gòu)成[3]。
目前,國(guó)外數(shù)據(jù)鏈系統(tǒng)的設(shè)計(jì)已經(jīng)逐漸采用模型化的方法[4],國(guó)內(nèi)目前還停留在基于過(guò)程的設(shè)計(jì)方法中,無(wú)法滿足日益增加的需求,且升級(jí)擴(kuò)充性較差。本文以數(shù)據(jù)鏈系統(tǒng)的控制中心節(jié)點(diǎn)為研究對(duì)象,首次引入COMET(concurrent object modeling and architectural design method)方法,分析數(shù)據(jù)鏈控制中心節(jié)點(diǎn)的軟件特點(diǎn),構(gòu)建高效可擴(kuò)展的軟件體系。
1 COMET方法
COMET方法是一種針對(duì)分布、實(shí)時(shí)應(yīng)用的方法。COMET所使用的表示法是統(tǒng)一建模語(yǔ)言UML[6],并僅使用特別有用的方面。在圖形方面,COMET方法僅使用UML圖中的用例圖、類圖、協(xié)作圖、狀態(tài)圖、順序圖、部署圖。
COMET面向?qū)ο蟮能浖芷谑菄@用例(Use Case )概念的、高度迭代的軟件開(kāi)發(fā)過(guò)程。根據(jù)行為者和用例定義系統(tǒng)的功能需求,每一個(gè)用例都定義了一個(gè)或者多個(gè)行為者與系統(tǒng)之間的交互序列。圖1展示了完全的COMET面向?qū)ο筌浖芷谀P汀?/p>
(1) 在需求建模階段進(jìn)行用例模型開(kāi)發(fā)。以行為者和用例定義系統(tǒng)的功能需求,可以把整個(gè)系統(tǒng)作為黑箱進(jìn)行建模。
(2) 在分析建模階段進(jìn)行靜態(tài)和動(dòng)態(tài)的系統(tǒng)模型開(kāi)發(fā)。靜態(tài)模型定義了問(wèn)題域的類之間的結(jié)構(gòu)關(guān)系。動(dòng)態(tài)模型細(xì)化到每個(gè)用例之間的對(duì)象以及他們之間的交互關(guān)系。
(3) 在設(shè)計(jì)建模階段,涉及系統(tǒng)的軟件體系結(jié)構(gòu),并將分析模型映射到運(yùn)行環(huán)境。
(4) 增量式軟件構(gòu)造方法的基礎(chǔ)是對(duì)每一個(gè)要構(gòu)造的增量選擇一個(gè)系統(tǒng)子集,并完成子集的詳細(xì)設(shè)計(jì)、編碼和類的單元測(cè)試。通過(guò)增量構(gòu)造達(dá)到最終完成整個(gè)軟件系統(tǒng)的目的。
(5) 在增量式軟件集成期間,每一次軟件增量都要進(jìn)行集成測(cè)試,其依據(jù)為增量所選的用例,當(dāng)一個(gè)軟件增量被審定滿意之后,下一次增量才可構(gòu)造并集成。
(6) 系統(tǒng)測(cè)試包括系統(tǒng)的功能測(cè)試,即按照功能需求測(cè)試系統(tǒng)。
圖1 COMET面向?qū)ο筌浖芷谀P?/p>
2 COMET方法在控制中心的應(yīng)用研究
數(shù)據(jù)鏈系統(tǒng)控制中心涉及到大量的機(jī)載、地面設(shè)施和數(shù)據(jù)鏈系統(tǒng)。在構(gòu)建初期,必須考慮的因素有:各種硬件設(shè)備正處于高速發(fā)展階段,無(wú)法緊跟其變化;數(shù)據(jù)鏈系統(tǒng)種類繁多,短時(shí)間內(nèi)無(wú)法全部集成;新設(shè)備的接入與舊設(shè)備的換裝,不能影響到系統(tǒng)的正常運(yùn)行;隨著更多站點(diǎn)、空中平臺(tái)的不斷接入,系統(tǒng)高速膨脹。
基于以上因素,構(gòu)建數(shù)據(jù)鏈系統(tǒng)控制中心時(shí),在對(duì)現(xiàn)有機(jī)載、地面設(shè)備和數(shù)據(jù)鏈系統(tǒng)進(jìn)行集成的同時(shí),必須兼顧到其發(fā)展,為數(shù)控制中心節(jié)點(diǎn)選擇一種合適的設(shè)計(jì)方法,這已成為系統(tǒng)設(shè)計(jì)成敗的關(guān)鍵。COMET方法的特點(diǎn)恰恰能為其提供解決的方法和依據(jù)。
2.1 用例模型
數(shù)據(jù)鏈控制中心主要的人類行為者包括網(wǎng)絡(luò)管理員、規(guī)劃操作員、系統(tǒng)行為者定時(shí)器。此外,還包括可以看作行為者的外部系統(tǒng),它們主要是集控站、地面指揮系統(tǒng)、地面站、空中平臺(tái)。
控制中心的主要用例包括:
(1) 越區(qū)切換控制。當(dāng)空中平臺(tái)跨越多個(gè)地面站飛行時(shí),通過(guò)越區(qū)切換[7-8]操作來(lái)保障空中平臺(tái)與地面指揮系統(tǒng)之間[9]的通信暢通。
(2) 集控站狀態(tài)監(jiān)視。監(jiān)視多個(gè)集控站的各類狀態(tài)。
(3) 地面站狀態(tài)監(jiān)視。監(jiān)視多個(gè)地面站的各類狀態(tài)。
(4) 通信鏈路控制。通過(guò)對(duì)鏈路的控制,改變通信數(shù)據(jù)鏈系統(tǒng)的通信參數(shù),使地面指揮系統(tǒng)可以與裝備不同數(shù)據(jù)鏈的空中平臺(tái)進(jìn)行數(shù)據(jù)、話音通信[10]。
(5) 鏈路調(diào)配。通過(guò)鏈路調(diào)配來(lái)滿足地面指揮系統(tǒng)進(jìn)行本場(chǎng)、跨區(qū)指揮或協(xié)同空中平臺(tái)的需要。
(6) 參數(shù)分發(fā)。當(dāng)數(shù)據(jù)鏈系統(tǒng)的參數(shù)需要變更時(shí),通過(guò)參數(shù)分發(fā)功能完成整個(gè)系統(tǒng)參數(shù)的快速改變。
(7) 系統(tǒng)規(guī)劃。通過(guò)對(duì)數(shù)據(jù)鏈系統(tǒng)資源進(jìn)行規(guī)劃,達(dá)到提升系統(tǒng)性能與容量的目的。
控制中心節(jié)點(diǎn)的行為者和用例如圖2所示。
2.2 問(wèn)題域靜態(tài)模型
由于數(shù)據(jù)鏈控制中心的信息比較密集,因此問(wèn)題域的靜態(tài)模型就顯得特別重要。在開(kāi)發(fā)問(wèn)題域之前,首先要確定系統(tǒng)中真實(shí)世界的類,這些類主要是集控站、地面站、數(shù)據(jù)傳輸設(shè)備、電臺(tái)、衛(wèi)星通信設(shè)備、空中平臺(tái)、地面指揮系統(tǒng)等,并從中抽象出相關(guān)的超類。圖3展示了數(shù)據(jù)鏈控制中心最基本的靜態(tài)模型。
圖2 控制中心的行為者和用例
2.3 動(dòng)態(tài)模型
動(dòng)態(tài)模型主要用于描述動(dòng)態(tài)依賴關(guān)系,由協(xié)作圖和狀態(tài)圖構(gòu)成。數(shù)據(jù)鏈控制中心用例多,功能復(fù)雜,以越區(qū)切換控制過(guò)程為例,描述各個(gè)對(duì)象是如何參與到越區(qū)切換控制用例,以及它們之間的消息是如何傳遞路徑的。圖4展示了越區(qū)切換控制用例簡(jiǎn)化后的協(xié)作圖。
2.4 控制中心系統(tǒng)構(gòu)建
由于數(shù)據(jù)鏈控制中心的軟件系統(tǒng)較為龐大,只用幾幅包羅萬(wàn)象的協(xié)作圖來(lái)描述是不現(xiàn)實(shí)的。相反,可以把整個(gè)控制中心的軟件系統(tǒng)劃分為若干個(gè)子系統(tǒng),分別開(kāi)發(fā)各個(gè)子系統(tǒng)的協(xié)作圖。
可以根據(jù)地理分布和服務(wù)器的職能來(lái)劃分,這樣就能非常容易地確定某些子系統(tǒng)。采用最常見(jiàn)的客戶/服務(wù)器方式,將整個(gè)系統(tǒng)劃分為通信前置機(jī)子系統(tǒng)、服務(wù)器子系統(tǒng)、管理子系統(tǒng)、規(guī)劃子系統(tǒng)、越區(qū)切換子系統(tǒng)等。子系統(tǒng)與子系統(tǒng)之間通過(guò)局域網(wǎng)連接到一起,通過(guò)多種網(wǎng)絡(luò)消息進(jìn)行交互。圖5展示了控制中心各子系統(tǒng)之間的協(xié)作圖。
2.5 分布式軟件體系結(jié)構(gòu)
把控制中心的分析模型映射到分布式軟件體系結(jié)構(gòu)時(shí),必須確保分布式子系統(tǒng)是可配置的、并發(fā)的、基于消息的,控制中心的軟件應(yīng)遵循應(yīng)用構(gòu)件準(zhǔn)則和構(gòu)件子系統(tǒng)之間的消息通信準(zhǔn)則。系統(tǒng)中設(shè)備、站點(diǎn)、網(wǎng)絡(luò)成員、通信鏈路均有多個(gè)實(shí)例,不同的子系統(tǒng)中使用其特定的屬性和方法,設(shè)計(jì)過(guò)程中,對(duì)每一類實(shí)例,均設(shè)計(jì)為構(gòu)件,通過(guò)簡(jiǎn)單的配置界面進(jìn)行增加和移出,而不影響系統(tǒng)的正常運(yùn)行。
圖3 控制中心基本靜態(tài)模型
圖4 越區(qū)切換控制用例簡(jiǎn)化的協(xié)作圖
控制中心的各子系統(tǒng)之間采用松耦合(異步的)的消息通信,當(dāng)通信前置機(jī)收到外部信息,先進(jìn)行數(shù)據(jù)的歸一化處理,然后通過(guò)系統(tǒng)內(nèi)數(shù)據(jù)結(jié)構(gòu)發(fā)送到控制中心服務(wù)器,服務(wù)器對(duì)消息進(jìn)行過(guò)濾后經(jīng)過(guò)局域網(wǎng),使用用戶數(shù)據(jù)報(bào)協(xié)議發(fā)給其他子系統(tǒng);其他子系統(tǒng)也通過(guò)用戶數(shù)據(jù)報(bào)協(xié)議與服務(wù)器進(jìn)行交互。
圖5 控制中心各子系統(tǒng)之間的協(xié)作圖
3 結(jié) 語(yǔ)
通過(guò)將COMET方法應(yīng)用到數(shù)據(jù)鏈控制中心軟件的分析、設(shè)計(jì),可以簡(jiǎn)化龐大、復(fù)雜的數(shù)據(jù)鏈系統(tǒng),為控制中心軟件構(gòu)建了一個(gè)雛形,具有很高的實(shí)用價(jià)值。
參考文獻(xiàn)
[1]楊磊,黃金才,張維明.戰(zhàn)術(shù)數(shù)據(jù)鏈系統(tǒng)分層參考模型[J].計(jì)算機(jī)工程,2007,33(21):257-258.
[2]駱光明.數(shù)據(jù)鏈信息系統(tǒng)連接武器系統(tǒng)的捷徑[M].北京:國(guó)防工業(yè)出版社,2008.
[3]康志彬,趙新國(guó),黃程林.全球信息柵格中的通信系統(tǒng)結(jié)構(gòu)研究[J].裝備指揮技術(shù)學(xué)院學(xué)報(bào),2006,17(1):47-49.
[4]王運(yùn)棟,狄遠(yuǎn)博,陸小龍.UML在戰(zhàn)術(shù)數(shù)據(jù)處理系統(tǒng)建模中的應(yīng)用[J].電光與控制,2007,14(5):149-152.
[5]GOMAA Hassan. Designing concurrent, distributed and real-time applications with UML[M].北京:北京航空航天大學(xué)出版社,2004.
[6]PILONE Dan, PITMAN Neil. UML 2.0 in a nutshell a desktop quick reference[M].南京:東南大學(xué)出版社,2006.
[7]李瑩,熊健,袁苑.VHF/UHF空地?cái)?shù)據(jù)鏈系統(tǒng)中越區(qū)切換技術(shù)設(shè)計(jì)[J].電訊技術(shù),2003,43(2):73-76.
[8]葛志強(qiáng),王瑾,燕海濤.V/UHF數(shù)據(jù)鏈的越區(qū)切換方法探討[J].電光與控制,2008,15(2):55-57.
[9]楊小強(qiáng),黃智剛,張軍.基于空地?cái)?shù)據(jù)鏈的飛機(jī)狀態(tài)監(jiān)控系統(tǒng)的實(shí)現(xiàn)[J].電訊技術(shù),2003,43(1):68-72.
[10]劉燕慧,孫宏偉.戰(zhàn)術(shù)數(shù)據(jù)鏈仿真中的顯示控制系統(tǒng)[J].電光與控制,2007,14(4):117-119.