軍用VXI測試系統(tǒng)的軟構(gòu)件技術(shù)
1 基本型系統(tǒng)測試應用面臨的問題
計算機技術(shù)日新月異的發(fā)展,直接影響著軍用ATE/ATS系統(tǒng)的技術(shù)發(fā)展水平。我們知道,軍事工業(yè)的技術(shù)發(fā)展水平,往往代表了當今科學技術(shù)發(fā)展的最高水平。但事物的發(fā)展還存在另一面,一方面新技術(shù)不斷涌現(xiàn),另一方面在當時取得最新技術(shù)成果,并且已經(jīng)定型的軍用武器測試系統(tǒng),還要保持長期穩(wěn)定可靠。解決的方法就是應用COTS(商業(yè)化的產(chǎn)品和技術(shù)),即采用開放的工業(yè)標準和具有最優(yōu)性價比的產(chǎn)品和技術(shù),確保系統(tǒng)硬件設(shè)備的互換性和軟件產(chǎn)品的互操作性。
硬件設(shè)備已經(jīng)采用開放的標準總線——VXI總線,且硬件產(chǎn)品的高度集成化和軟件化,使得互換性成為可能。而軟件的發(fā)展就復雜得多:
* 用于軍用測試的軟件系統(tǒng)必須適應被測系統(tǒng)的復雜程度,功能龐大,研制周期長,維護困難而且費用高,功能擴展風險較大。
* 可供選擇的硬件平臺、系統(tǒng)平臺、開發(fā)平臺性能各異,體現(xiàn)在驅(qū)動硬件的方式、操作系統(tǒng)的服務形式、以及各個軟件開發(fā)模塊的代碼格式、協(xié)作方式上各不相同,不易集成。
* 硬件結(jié)構(gòu)和軟件復雜性的增強,導致了對分布式計算模式(客戶機/服務器模式和瀏覽器/服務器模式)、模塊化和“構(gòu)件化”計算風格的需要。
* 根據(jù)實際需要,采用分布式計算方式,統(tǒng)一用戶界面,簡化用戶使用難度,以便為用戶和應用提供一個單一系統(tǒng)映象,并且不論配置、計算機體系結(jié)構(gòu)以及實現(xiàn)環(huán)境,在網(wǎng)絡環(huán)境中使用各種服務。
* 將面向?qū)ο蟮某绦蛟O(shè)計思想與構(gòu)件式編程思想相結(jié)合,實現(xiàn)測試領(lǐng)域內(nèi)的軟件、系統(tǒng)“即插即用”,解決由不同廠商提供的軟構(gòu)件相互協(xié)調(diào)、相互通信的互操作問題,共同完成更復雜的功能。
2 軟構(gòu)件結(jié)構(gòu)的概念
軟構(gòu)件是一種接口定義良好的獨立可重用的二進制代碼,它可以是一些功能模塊、被封裝的對象類、軟件框架、軟件系統(tǒng)模型等。軟構(gòu)件技術(shù)是基于面向?qū)ο蟮?,以嵌入后馬上可以使用的即插即用型軟構(gòu)件概念為中心,通過構(gòu)件的組合來建立應用的技術(shù)體系,它是通過構(gòu)件組合支持應用的開發(fā)環(huán)境和系統(tǒng)。
從面向過程的結(jié)構(gòu)化、模塊化軟件開發(fā)到面向?qū)ο蟮能浖_發(fā),軟構(gòu)件的內(nèi)涵和外延都發(fā)生了巨大的進步。從最初的一些定義良好的函數(shù)包或功能模塊庫,到提供封裝性、多態(tài)性和繼承性的對象類,軟構(gòu)件的可重用性一步步提高,軟件開發(fā)的難度也在逐步降低,但是這些類型的構(gòu)件依賴于特定的編程語言,耦合度較高,且需要用戶對構(gòu)件庫的結(jié)構(gòu)和宿主語言有較深的了解,因此不能完全達到軟件重用的可移植性和互操作性要求。90年代以來,基于對象的智能化腳本程序設(shè)計方法為軟件重用開辟了新的道路。構(gòu)件的內(nèi)涵進一步加強,其聚合性、獨立性和重用性進一步提高。目前基于對象的構(gòu)件軟件體系結(jié)構(gòu)中的"構(gòu)件”,是指可方便地插入到語言、工具、操作系統(tǒng)、網(wǎng)絡軟件系統(tǒng)中的二進制形式的代碼和數(shù)據(jù)。軟構(gòu)件應該具備以下幾個特征:
①自描述
構(gòu)件必須能夠識別其屬性、存取方法和事件,這些信息可以使開發(fā)環(huán)境將第三方軟件構(gòu)件無縫地結(jié)合起來;粒度大小較自由,便于擴展;
②可定制
通過規(guī)定一個統(tǒng)一的二進制標準,建立構(gòu)件之間的智能互操作機制和實現(xiàn)語言獨立性;
?、劭杉?BR> 構(gòu)件必須可以被編程語言直接控制,外界僅通過接口訪問構(gòu)件。構(gòu)件也可以和腳本語言連接或者與從代碼級訪問構(gòu)件的環(huán)境連接,這個特性使得軟件構(gòu)件可以在非可視化開發(fā)項目中使用;
④連接機制
軟構(gòu)件必須能產(chǎn)生事件,表達的語義層次較高,可以從不同側(cè)面連接它,其外特性不唯一,具有讓程序員從語義上實現(xiàn)相互連接的機制。
3 軟構(gòu)件系統(tǒng)結(jié)構(gòu)及技術(shù)規(guī)范
利用軟構(gòu)件開發(fā)軍用測試系統(tǒng)的過程與搭積木的過程很類似,一般是先構(gòu)筑系統(tǒng)的總體框架,然后構(gòu)造各個構(gòu)件,并依次把構(gòu)件安裝到系統(tǒng)中去。軟構(gòu)件系統(tǒng)結(jié)構(gòu)見圖1。其中軟構(gòu)件制造子系統(tǒng)是整個系統(tǒng)的核心;構(gòu)件庫管理子系統(tǒng)是系統(tǒng)的管理中樞;而軟構(gòu)件的嵌入、鏈接與集成子系統(tǒng)是該系統(tǒng)與終端用戶的接口。
大部分軍用測試系統(tǒng),在功能上有類似之處,因而利用軟件的重用技術(shù)就可以把開發(fā)過程大大簡化。積木法的提出正是基于這種設(shè)想。積木法在確定系統(tǒng)總體框架、構(gòu)筑總體框架、修改總體框架、構(gòu)造構(gòu)件以及修改構(gòu)件等階段,都同一個叫做“軟構(gòu)件集合”的實體打交道,這個軟構(gòu)件集合也被稱為“軟構(gòu)件庫”。在開發(fā)測試系統(tǒng)之初,就應該著手準備這個軟構(gòu)件集合,比如可以搜集一些已經(jīng)開發(fā)出的系統(tǒng)的總體設(shè)計、規(guī)范、局部流程以及某些人機界面、通用功能模塊、簡單開發(fā)工具。開發(fā)系統(tǒng)的大部分工作都集中在構(gòu)造軟件階段。這一階段的工作特點是盡量使開發(fā)出的軟構(gòu)件具有較大的靈活性和變通性,為重用做好準備。每開發(fā)出一個軟構(gòu)件,都要把該構(gòu)件及其功能、調(diào)用接口等信息放入軟構(gòu)件集合。
評論