<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 軍用VXI測試系統(tǒng)的軟構(gòu)件技術(shù)

          軍用VXI測試系統(tǒng)的軟構(gòu)件技術(shù)

          作者: 時(shí)間:2013-02-05 來源:網(wǎng)絡(luò) 收藏

          1 基本型系統(tǒng)測試應(yīng)用面臨的問題

            計(jì)算機(jī)技術(shù)日新月異的發(fā)展,直接影響著軍用ATE/ATS系統(tǒng)的技術(shù)發(fā)展水平。我們知道,軍事工業(yè)的技術(shù)發(fā)展水平,往往代表了當(dāng)今科學(xué)技術(shù)發(fā)展的最高水平。但事物的發(fā)展還存在另一面,一方面新技術(shù)不斷涌現(xiàn),另一方面在當(dāng)時(shí)取得最新技術(shù)成果,并且已經(jīng)定型的軍用武器,還要保持長期穩(wěn)定可靠。解決的方法就是應(yīng)用COTS(商業(yè)化的產(chǎn)品和技術(shù)),即采用開放的工業(yè)標(biāo)準(zhǔn)和具有最優(yōu)性價(jià)比的產(chǎn)品和技術(shù),確保系統(tǒng)硬件設(shè)備的互換性和軟件產(chǎn)品的互操作性。
            硬件設(shè)備已經(jīng)采用開放的標(biāo)準(zhǔn)總線——VXI總線,且硬件產(chǎn)品的高度集成化和軟件化,使得互換性成為可能。而軟件的發(fā)展就復(fù)雜得多:
            * 用于軍用測試的軟件系統(tǒng)必須適應(yīng)被測系統(tǒng)的復(fù)雜程度,功能龐大,研制周期長,維護(hù)困難而且費(fèi)用高,功能擴(kuò)展風(fēng)險(xiǎn)較大。
            * 可供選擇的硬件平臺(tái)、系統(tǒng)平臺(tái)、開發(fā)平臺(tái)性能各異,體現(xiàn)在驅(qū)動(dòng)硬件的方式、操作系統(tǒng)的服務(wù)形式、以及各個(gè)軟件開發(fā)模塊的代碼格式、協(xié)作方式上各不相同,不易集成。
            * 硬件結(jié)構(gòu)和軟件復(fù)雜性的增強(qiáng),導(dǎo)致了對(duì)分布式計(jì)算模式(客戶機(jī)/服務(wù)器模式和瀏覽器/服務(wù)器模式)、模塊化和“構(gòu)件化”計(jì)算風(fēng)格的需要。
            * 根據(jù)實(shí)際需要,采用分布式計(jì)算方式,統(tǒng)一用戶界面,簡化用戶使用難度,以便為用戶和應(yīng)用提供一個(gè)單一系統(tǒng)映象,并且不論配置、計(jì)算機(jī)體系結(jié)構(gòu)以及實(shí)現(xiàn)環(huán)境,在網(wǎng)絡(luò)環(huán)境中使用各種服務(wù)。
            * 將面向?qū)ο蟮某绦蛟O(shè)計(jì)思想與構(gòu)件式編程思想相結(jié)合,實(shí)現(xiàn)測試領(lǐng)域內(nèi)的軟件、系統(tǒng)“即插即用”,解決由不同廠商提供的軟構(gòu)件相互協(xié)調(diào)、相互通信的互操作問題,共同完成更復(fù)雜的功能。

          2 軟構(gòu)件結(jié)構(gòu)的概念

            軟構(gòu)件是一種接口定義良好的獨(dú)立可重用的二進(jìn)制代碼,它可以是一些功能模塊、被封裝的對(duì)象類、軟件框架、軟件系統(tǒng)模型等。是基于面向?qū)ο蟮?,以嵌入后馬上可以使用的即插即用型軟構(gòu)件概念為中心,通過構(gòu)件的組合來建立應(yīng)用的技術(shù)體系,它是通過構(gòu)件組合支持應(yīng)用的開發(fā)環(huán)境和系統(tǒng)。
            從面向過程的結(jié)構(gòu)化、模塊化軟件開發(fā)到面向?qū)ο蟮能浖_發(fā),軟構(gòu)件的內(nèi)涵和外延都發(fā)生了巨大的進(jìn)步。從最初的一些定義良好的函數(shù)包或功能模塊庫,到提供封裝性、多態(tài)性和繼承性的對(duì)象類,軟構(gòu)件的可重用性一步步提高,軟件開發(fā)的難度也在逐步降低,但是這些類型的構(gòu)件依賴于特定的編程語言,耦合度較高,且需要用戶對(duì)構(gòu)件庫的結(jié)構(gòu)和宿主語言有較深的了解,因此不能完全達(dá)到軟件重用的可移植性和互操作性要求。90年代以來,基于對(duì)象的智能化腳本程序設(shè)計(jì)方法為軟件重用開辟了新的道路。構(gòu)件的內(nèi)涵進(jìn)一步加強(qiáng),其聚合性、獨(dú)立性和重用性進(jìn)一步提高。目前基于對(duì)象的構(gòu)件軟件體系結(jié)構(gòu)中的"構(gòu)件”,是指可方便地插入到語言、工具、操作系統(tǒng)、網(wǎng)絡(luò)軟件系統(tǒng)中的二進(jìn)制形式的代碼和數(shù)據(jù)。軟構(gòu)件應(yīng)該具備以下幾個(gè)特征:
           ?、僮悦枋?BR>  構(gòu)件必須能夠識(shí)別其屬性、存取方法和事件,這些信息可以使開發(fā)環(huán)境將第三方軟件構(gòu)件無縫地結(jié)合起來;粒度大小較自由,便于擴(kuò)展;
           ?、诳啥ㄖ?BR>  通過規(guī)定一個(gè)統(tǒng)一的二進(jìn)制標(biāo)準(zhǔn),建立構(gòu)件之間的智能互操作機(jī)制和實(shí)現(xiàn)語言獨(dú)立性;
           ?、劭杉?BR>  構(gòu)件必須可以被編程語言直接控制,外界僅通過接口訪問構(gòu)件。構(gòu)件也可以和腳本語言連接或者與從代碼級(jí)訪問構(gòu)件的環(huán)境連接,這個(gè)特性使得軟件構(gòu)件可以在非可視化開發(fā)項(xiàng)目中使用;
            ④連接機(jī)制
            軟構(gòu)件必須能產(chǎn)生事件,表達(dá)的語義層次較高,可以從不同側(cè)面連接它,其外特性不唯一,具有讓程序員從語義上實(shí)現(xiàn)相互連接的機(jī)制。


          3 軟構(gòu)件系統(tǒng)結(jié)構(gòu)及技術(shù)規(guī)范

            利用軟構(gòu)件開發(fā)軍用的過程與搭積木的過程很類似,一般是先構(gòu)筑系統(tǒng)的總體框架,然后構(gòu)造各個(gè)構(gòu)件,并依次把構(gòu)件安裝到系統(tǒng)中去。軟構(gòu)件系統(tǒng)結(jié)構(gòu)見圖1。其中軟構(gòu)件制造子系統(tǒng)是整個(gè)系統(tǒng)的核心;構(gòu)件庫管理子系統(tǒng)是系統(tǒng)的管理中樞;而軟構(gòu)件的嵌入、鏈接與集成子系統(tǒng)是該系統(tǒng)與終端用戶的接口。

            大部分軍用,在功能上有類似之處,因而利用軟件的重用技術(shù)就可以把開發(fā)過程大大簡化。積木法的提出正是基于這種設(shè)想。積木法在確定系統(tǒng)總體框架、構(gòu)筑總體框架、修改總體框架、構(gòu)造構(gòu)件以及修改構(gòu)件等階段,都同一個(gè)叫做“軟構(gòu)件集合”的實(shí)體打交道,這個(gè)軟構(gòu)件集合也被稱為“軟構(gòu)件庫”。在開發(fā)測試系統(tǒng)之初,就應(yīng)該著手準(zhǔn)備這個(gè)軟構(gòu)件集合,比如可以搜集一些已經(jīng)開發(fā)出的系統(tǒng)的總體設(shè)計(jì)、規(guī)范、局部流程以及某些人機(jī)界面、通用功能模塊、簡單開發(fā)工具。開發(fā)系統(tǒng)的大部分工作都集中在構(gòu)造軟件階段。這一階段的工作特點(diǎn)是盡量使開發(fā)出的軟構(gòu)件具有較大的靈活性和變通性,為重用做好準(zhǔn)備。每開發(fā)出一個(gè)軟構(gòu)件,都要把該構(gòu)件及其功能、調(diào)用接口等信息放入軟構(gòu)件集合。


          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();