摘要:ABC方法的主旨是在軟件開(kāi)發(fā)的每個(gè)環(huán)節(jié)加入軟件體系結(jié)構(gòu),相當(dāng)于對(duì)系統(tǒng)開(kāi)發(fā)的規(guī)劃,通過(guò)開(kāi)發(fā)工具的自動(dòng)轉(zhuǎn)換性能來(lái)加大設(shè)計(jì)成功的可能性,文中基于軟件體系結(jié)構(gòu)的網(wǎng)構(gòu)軟件開(kāi)發(fā),主要探討了ABC方法和基于特征模型的網(wǎng)構(gòu)軟件開(kāi)發(fā)。
關(guān)鍵詞:ABC方法 軟件開(kāi)發(fā) 體系結(jié)構(gòu)
中圖分類號(hào): 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):1007-9416(2013)06-0149-02
網(wǎng)構(gòu)軟件的開(kāi)發(fā)過(guò)程的原則是從下往上、從亂到順,開(kāi)發(fā)的重點(diǎn)從系統(tǒng)完成之前轉(zhuǎn)移到系統(tǒng)運(yùn)行中;在選擇開(kāi)發(fā)方法時(shí)一定要結(jié)合軟件的自適應(yīng)性進(jìn)行考慮;支持技術(shù)要基于整個(gè)軟件的開(kāi)發(fā)周期對(duì)開(kāi)發(fā)環(huán)境與工具進(jìn)行整合,其中開(kāi)發(fā)環(huán)境應(yīng)給軟件的自適應(yīng)性一定的條件。
1 ABC方法
2 基于特征模型的網(wǎng)構(gòu)軟件開(kāi)發(fā)
網(wǎng)構(gòu)軟件系統(tǒng)的開(kāi)發(fā)是在一個(gè)軟件資源較為豐富的平臺(tái)上進(jìn)行的,其開(kāi)發(fā)過(guò)程遵循的是一種自下往上的模式,也就是根據(jù)用戶的要求大部分軟件資源進(jìn)行整合變成一個(gè)新的系統(tǒng)。
FODM的特征模型是一種對(duì)領(lǐng)域需求予以支持的特征模型結(jié)構(gòu)框架,它是以特征與特征之間的相互依附關(guān)系為中心。它們之間的關(guān)系表現(xiàn)為以下幾個(gè)方面:精化、約束、影響、交互。前面兩點(diǎn)會(huì)在很大程度上影響著模型創(chuàng)建需求的一些特性。精化呈現(xiàn)的是各個(gè)高層次與特征之間的非動(dòng)態(tài)結(jié)構(gòu)的關(guān)系,根據(jù)這種關(guān)系特征模型會(huì)產(chǎn)生一種具有層次的容易被理解的結(jié)構(gòu);約束則是對(duì)綁定狀態(tài)下特征的依賴關(guān)系的呈現(xiàn),這種關(guān)系的模型創(chuàng)建使得特征模型的便于定制的特性得到看保證,從而方便復(fù)用。而后兩者關(guān)系對(duì)以特征模型為基礎(chǔ)的設(shè)計(jì)有著重大的影響,對(duì)于呈現(xiàn)的特征在程序要求方面的依賴關(guān)系有一定的影響。交互呈現(xiàn)的則是運(yùn)行過(guò)程中特征的依賴關(guān)系。
為了方便設(shè)計(jì)人員在基層平臺(tái)的眾多資源中挑選出合適的構(gòu)件進(jìn)行整合以形成新的系統(tǒng),在需求這個(gè)環(huán)節(jié),要建立特征之間、資源之間關(guān)系的對(duì)應(yīng)體制。經(jīng)過(guò)分辨及分配需求責(zé)任,F(xiàn)ODM提供了一種比較規(guī)范的方法,由特征模型變換為高層軟件體系結(jié)構(gòu)。這種變換必要解決的問(wèn)題包括模型變化的基礎(chǔ)與模型變化的重點(diǎn);模型變換的基礎(chǔ)指的是兩個(gè)模型之間的跟隨關(guān)系,即源模型與目標(biāo)模型;模型變換的重點(diǎn)是目標(biāo)模型的構(gòu)造。以上兩個(gè)方面在FODM中具體表現(xiàn)為:特征與構(gòu)件之間的跟隨關(guān)系;在特征模型的基礎(chǔ)上對(duì)軟件體系結(jié)構(gòu)的構(gòu)造。
特征與構(gòu)件之間的關(guān)系較為復(fù)雜,為了使這種復(fù)雜的跟隨關(guān)系得到改善,連接特征與底層構(gòu)件的元素為責(zé)任。責(zé)任具有比較強(qiáng)的凝聚力,對(duì)于軟件程序有一種約束作用,同時(shí)還能對(duì)任務(wù)進(jìn)行分配。有了這個(gè)元素的連接,特征與構(gòu)件之間的復(fù)雜關(guān)系就能夠簡(jiǎn)單化,將其分為兩組一對(duì)多的關(guān)系。也就是一個(gè)特征可以被分解為多個(gè)責(zé)任,而且這多個(gè)責(zé)任可以通過(guò)一個(gè)構(gòu)件去實(shí)現(xiàn)。通過(guò)分解建立特征與構(gòu)件之間的跟隨關(guān)系可以根據(jù)兩個(gè)步驟來(lái)實(shí)現(xiàn):將特征分解為多個(gè)責(zé)任;將多個(gè)責(zé)任分配給相應(yīng)的構(gòu)件。
例如網(wǎng)上購(gòu)物軟件系統(tǒng),現(xiàn)在的購(gòu)物網(wǎng)站很多,它們所使用的軟件各式各樣,基本上都不一樣,這里可以采取建立特征模型的方法來(lái)分析和整理這類軟件在市場(chǎng)上的需求,其抽象化需求可以分為八個(gè)方面的服務(wù):客戶登陸服務(wù)、客戶注冊(cè)服務(wù)、商品定購(gòu)服務(wù)、商品信息查詢及瀏覽服務(wù)、商品信息管理服務(wù)、訂單手工處理服務(wù)、訂單自動(dòng)處理配置服務(wù)、訂單自動(dòng)處理服務(wù)等,前四種服務(wù)是針對(duì)商品購(gòu)買者;接著的三種服務(wù)是針對(duì)網(wǎng)店的工作人員;最后一種是網(wǎng)店軟件自身具備的一種智能化服務(wù)。
3 結(jié)語(yǔ)
過(guò)去幾十年,軟件技術(shù)經(jīng)歷了一系列重要的變化和發(fā)展,其發(fā)展的主線是:構(gòu)成軟件的軟件實(shí)體的粒度不斷增大,文中利用ABC方法對(duì)網(wǎng)構(gòu)軟件的支持仍存在一些不足,如白適應(yīng)體系結(jié)構(gòu)的設(shè)計(jì)自動(dòng)化程度有待提高、網(wǎng)構(gòu)軟件的協(xié)同性支持不夠、符合網(wǎng)構(gòu)軟件的構(gòu)件模型尚未成形等,這些都是ABC進(jìn)一步的工作重點(diǎn).
參考文獻(xiàn)
[1]梅宏,黃罡,趙海燕,焦文品.一種以軟件體系結(jié)構(gòu)為中心的網(wǎng)構(gòu)軟件開(kāi)發(fā)方法[J].中國(guó)科學(xué)E輯:信息科學(xué),2006,10:1100-1126.
[2]周立,陳湘萍,黃罡,孫艷春,梅宏.支持協(xié)商的網(wǎng)構(gòu)軟件體系結(jié)構(gòu)行為建模與驗(yàn)證[J].軟件學(xué)報(bào),2008,05:1099-1112.
[3]王遠(yuǎn),呂建,徐鋒,張林.一種面向網(wǎng)構(gòu)軟件體系結(jié)構(gòu)的信任驅(qū)動(dòng)服務(wù)選取機(jī)制[J].軟件學(xué)報(bào),2008,06:1350-1362.
[4]趙會(huì)群,孫晶.網(wǎng)構(gòu)軟件體系結(jié)構(gòu)代數(shù)模型[J].中國(guó)科學(xué):信息科學(xué),2013,01:161-177.
[5]陳暄,高俊,李長(zhǎng)云.一種網(wǎng)構(gòu)軟件體系結(jié)構(gòu)中的縱橫驗(yàn)證機(jī)制[J].計(jì)算機(jī)應(yīng)用研究,2012,02:601-605.