• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      構(gòu)件形式化組裝研究

      2013-11-13 08:57:56安海寧
      合作經(jīng)濟(jì)與科技 2013年8期
      關(guān)鍵詞:三元組術(shù)語(yǔ)架構(gòu)

      □文/安海寧 婁 健

      (河北大學(xué)計(jì)算中心 河北·保定)

      基于構(gòu)件進(jìn)行系統(tǒng)組裝的研究,是基于組件的軟件工程(簡(jiǎn)稱CBSE)中的一個(gè)研究熱點(diǎn)。合理地進(jìn)行構(gòu)件描述,并在使用構(gòu)件的時(shí)候,快速、準(zhǔn)確地判斷出構(gòu)件的可用性,通過(guò)構(gòu)件組裝系統(tǒng)的可行性分析,才能在此基礎(chǔ)上進(jìn)行有理有據(jù)的構(gòu)件組裝,進(jìn)而形成應(yīng)用系統(tǒng)。

      為了實(shí)現(xiàn)構(gòu)件組裝,大量的可重用構(gòu)件是不可缺少的,所以構(gòu)件庫(kù)作為存儲(chǔ)和管理構(gòu)件的實(shí)體,在基于構(gòu)件的開(kāi)發(fā)過(guò)程中起著非常重要的作用。其中,如何對(duì)構(gòu)件進(jìn)行合理的描述將直接影響構(gòu)件的可用性、易用性、可學(xué)習(xí)性等。在利用構(gòu)件庫(kù)中的構(gòu)件進(jìn)行系統(tǒng)組裝時(shí),快速推導(dǎo)出構(gòu)件能否被正確地集成在一起,完成特定的系統(tǒng)功能,是研究人員必須解決的一個(gè)非常重要的問(wèn)題。

      一、構(gòu)件描述

      為了能夠利用構(gòu)件庫(kù)中的構(gòu)件進(jìn)行組裝,對(duì)構(gòu)件進(jìn)行合理的描述是必不可少的。構(gòu)件描述需要涉及其組裝特征,及從多個(gè)方面衡量它與其他構(gòu)件能否組裝的必備信息;要描述構(gòu)件的接口,從而獲知構(gòu)件如何與其他構(gòu)件進(jìn)行信息交互;還有一些其他特征信息,便于用戶更好地理解構(gòu)件?;谶@些因素,定義構(gòu)件描述如下:

      一個(gè)構(gòu)件描述就是一個(gè)三元組:

      其中,AssemblyProperties用于描述構(gòu)件的組裝特征,ComponentInterfaces用于描述構(gòu)件的接口,OtherCharacters用于描述構(gòu)件的其他特征。

      1、AssemblyProper ties的描述。對(duì)于AssemblyProperties,定義其也為一個(gè)三元組:

      其中,每個(gè)描述項(xiàng)稱為一個(gè)組裝刻面,每個(gè)組裝刻面可以有多個(gè)術(shù)語(yǔ)對(duì)其進(jìn)行具體描述。

      functions刻面描述構(gòu)件的主要功能,是構(gòu)件用戶最關(guān)心的一個(gè)刻面。其術(shù)語(yǔ)隨領(lǐng)域不同,可以自行定義。例如,針對(duì)圖書(shū)館管理領(lǐng)域,functions刻面的術(shù)語(yǔ)可以有圖書(shū)信息處理、讀者信息處理、借閱信息處理等。

      依據(jù)軟件體系結(jié)構(gòu)的構(gòu)成,structures刻面主要描述該構(gòu)件在軟件體系結(jié)構(gòu)中中所處的位置,其術(shù)語(yǔ)可包括:表示層(UI)、業(yè)務(wù)邏輯層、數(shù)據(jù)層等,術(shù)語(yǔ)隨構(gòu)件實(shí)際所處的軟件架構(gòu)位置不同,可以自行定義。

      implements刻面主要描述構(gòu)件實(shí)現(xiàn)的具體方法,其術(shù)語(yǔ)可以包括如:應(yīng)用程序?qū)崿F(xiàn)、腳本實(shí)現(xiàn)等。該刻面的術(shù)語(yǔ)同樣可以自行定義。

      2、Component Inter faces的描述。構(gòu)件通過(guò)接口向外提供服務(wù)。對(duì)Interfaces的描述包括該接口能夠?qū)ν饨缣峁┠男┓?wù),滿足哪些條件才能夠提供這些服務(wù),如何提供服務(wù)。表示如下:

      接口語(yǔ)義說(shuō)明接口能夠提供什么服務(wù),需要滿足哪些條件才能提供這些服務(wù),以及構(gòu)件執(zhí)行完畢的狀態(tài);接口語(yǔ)法說(shuō)明接口如何提供服務(wù)。由于利用XML可以比較清晰地反映接口描述的層次性,使描述結(jié)構(gòu)化,所以這里用一個(gè)簡(jiǎn)化的XML的DTD(文檔模板定義)給出對(duì)接口描述的詳細(xì)設(shè)計(jì)。其中參數(shù)的基本類型與C++所提供的基本參數(shù)類型一致。

      3、OtherCharacters的描述。Other-Characters主要包括用戶在使用該構(gòu)件時(shí)需要了解的其他方面的信息,如構(gòu)件版本、運(yùn)行平臺(tái)、其他構(gòu)件支持等。Other-Characters的具體描述項(xiàng)可根據(jù)構(gòu)件實(shí)際情況增減,但在描述時(shí)需要一一指明有哪些描述項(xiàng)。

      圖1 構(gòu)架規(guī)則實(shí)例

      圖2 組裝過(guò)程

      二、構(gòu)件組裝規(guī)則

      組裝規(guī)則可定義為一個(gè)三元組(A,R,P),其中A代表組裝的架構(gòu)規(guī)則,R代表組裝的實(shí)現(xiàn)規(guī)則,P代表組裝的性能規(guī)則。

      其中,架構(gòu)規(guī)則的含義是軟件配置單中各個(gè)構(gòu)件在軟件架構(gòu)上滿足的要求,如一個(gè)完整的應(yīng)用軟件應(yīng)該由UI、業(yè)務(wù)邏輯等構(gòu)件組成,即為架構(gòu)規(guī)則。架構(gòu)規(guī)則可保證配置單中的構(gòu)件在邏輯上可以正確連接。

      實(shí)現(xiàn)規(guī)則規(guī)定了軟件配置單中各個(gè)構(gòu)件在實(shí)現(xiàn)方法上的一些限制,如采用何種構(gòu)件實(shí)現(xiàn)技術(shù)、接口定義如何等。實(shí)現(xiàn)規(guī)則可確保配置單中的構(gòu)件在物理上可以正確連接。

      性能規(guī)則說(shuō)明了組裝成一個(gè)性能較好的應(yīng)用軟件,對(duì)配置單中出現(xiàn)的構(gòu)件應(yīng)有的一些要求。如各個(gè)構(gòu)件的延遲、響應(yīng)時(shí)間等。性能規(guī)則能夠輔助用戶組裝一個(gè)性能優(yōu)越的應(yīng)用軟件。

      在上述組裝規(guī)則中,實(shí)現(xiàn)規(guī)則和性能規(guī)則的表達(dá)較為簡(jiǎn)單,而架構(gòu)規(guī)則的表達(dá)較為復(fù)雜,為了簡(jiǎn)潔且準(zhǔn)確地表達(dá)一個(gè)應(yīng)用軟件的架構(gòu)規(guī)則,在本項(xiàng)目中,使用EBNF對(duì)架構(gòu)規(guī)則進(jìn)行了描述。EBNF,即擴(kuò)展巴科斯-瑙爾范式,經(jīng)常用來(lái)描述高級(jí)程序設(shè)計(jì)語(yǔ)言的語(yǔ)法規(guī)則,具有簡(jiǎn)潔、嚴(yán)謹(jǐn)、精確、無(wú)歧異等優(yōu)點(diǎn)。EBNF中常用的符號(hào)如下:

      根據(jù)架構(gòu)規(guī)則的不同,我們可把目前常用的應(yīng)用軟件分為數(shù)據(jù)庫(kù)應(yīng)用型、網(wǎng)絡(luò)應(yīng)用型、Web應(yīng)用型等不同種類型,可用EBNF表達(dá),如圖1所示。(圖1)

      其中,規(guī)則a的含義為:一個(gè)應(yīng)用軟件可以是數(shù)據(jù)庫(kù)應(yīng)用、通信應(yīng)用或Web應(yīng)用;規(guī)則b的含義為:一個(gè)數(shù)據(jù)庫(kù)應(yīng)用應(yīng)該由UI構(gòu)件、一個(gè)或多個(gè)業(yè)務(wù)邏輯構(gòu)件、數(shù)據(jù)訪問(wèn)構(gòu)件、數(shù)據(jù)庫(kù)構(gòu)件組成,其中數(shù)據(jù)訪問(wèn)構(gòu)件為可選項(xiàng)。其他規(guī)則的解釋類似,這里就不再贅述了。

      三、構(gòu)件的組裝

      項(xiàng)目中,采用如圖2所示的組裝過(guò)程。(圖 2)

      首先,用戶根據(jù)軟件的功能需求及構(gòu)件庫(kù)中現(xiàn)有構(gòu)件功能特性,生成軟件配置單。由于用戶生成軟件配置單時(shí)只考慮了構(gòu)件的功能特性,而功能符合要求的構(gòu)件并不一定可以組裝成一個(gè)完整的應(yīng)用程序,因此需要對(duì)用戶生成的軟件配置單做驗(yàn)證,驗(yàn)證依據(jù)即為上述的組裝規(guī)則。在本項(xiàng)目中,實(shí)現(xiàn)配置單驗(yàn)證的模塊被稱為“配置單編譯器”。

      若軟件配置單通過(guò)驗(yàn)證,則配置單編譯器會(huì)給出成功標(biāo)志,同時(shí)會(huì)對(duì)本次組裝的性能做相應(yīng)評(píng)價(jià);若未能通過(guò)驗(yàn)證,則會(huì)給出錯(cuò)誤標(biāo)志,同時(shí)提示配置單出錯(cuò)位置,以便于用戶修改。

      通過(guò)上述對(duì)組裝過(guò)程的分析可知,組裝實(shí)現(xiàn)的關(guān)鍵是軟件配置單的驗(yàn)證,即如何實(shí)現(xiàn)配置單編譯器。

      [1]Shaw M,Deline R,K lein DV.Abstractions for Software Architecture and Tools to SupportThem[J].IEEETransaction on Software Engineering,1995.4.

      [2]任洪敏,錢樂(lè)秋.構(gòu)件組裝及其形式化推導(dǎo)研究[J].軟件學(xué)報(bào),2003.6.

      [3]廖昕,陳松喬,孫瑩.可復(fù)用構(gòu)件組裝技術(shù)研究[J].計(jì)算技術(shù)與自動(dòng)化,2004.3.

      猜你喜歡
      三元組術(shù)語(yǔ)架構(gòu)
      基于語(yǔ)義增強(qiáng)雙編碼器的方面情感三元組提取
      軟件工程(2024年12期)2024-12-28 00:00:00
      基于帶噪聲數(shù)據(jù)集的強(qiáng)魯棒性隱含三元組質(zhì)檢算法*
      基于FPGA的RNN硬件加速架構(gòu)
      功能架構(gòu)在電子電氣架構(gòu)開(kāi)發(fā)中的應(yīng)用和實(shí)踐
      汽車工程(2021年12期)2021-03-08 02:34:30
      關(guān)于余撓三元組的periodic-模
      LSN DCI EVPN VxLAN組網(wǎng)架構(gòu)研究及實(shí)現(xiàn)
      一種基于FPGA+ARM架構(gòu)的μPMU實(shí)現(xiàn)
      三元組輻射場(chǎng)的建模與仿真
      有感于幾個(gè)術(shù)語(yǔ)的定名與應(yīng)用
      從術(shù)語(yǔ)學(xué)基本模型的演變看術(shù)語(yǔ)學(xué)的發(fā)展趨勢(shì)
      宁阳县| 云龙县| 昌平区| 淮南市| 汉川市| 抚顺县| 胶州市| 邹城市| 安义县| 休宁县| 马公市| 来宾市| 安乡县| 浏阳市| 漳浦县| 扎赉特旗| 怀来县| 永靖县| 华坪县| 丰顺县| 石城县| 原平市| 台北市| 彭阳县| 江口县| 涪陵区| 莆田市| 阿克苏市| 保靖县| 井研县| 肥东县| 萨迦县| 芜湖县| 靖安县| 麟游县| 江山市| 纳雍县| 临漳县| 于都县| 清原| 嘉荫县|