基于模式的軟件體系結(jié)構(gòu)自動(dòng)化合成
發(fā)布時(shí)間:2021-08-30 04:12
在軟件體系結(jié)構(gòu)設(shè)計(jì)中,軟件體系結(jié)構(gòu)合成活動(dòng)連接了軟件體系結(jié)構(gòu)設(shè)計(jì)的問(wèn)題空間和解空間,是軟件體系結(jié)構(gòu)設(shè)計(jì)中的關(guān)鍵活動(dòng)。為了在軟件體系結(jié)構(gòu)設(shè)計(jì)中更好的復(fù)用已有的成功經(jīng)驗(yàn),軟件架構(gòu)師往往利用軟件體系結(jié)構(gòu)模式作為可復(fù)用的軟件體系結(jié)構(gòu)知識(shí)進(jìn)行軟件體系結(jié)構(gòu)的合成。使用軟件體系結(jié)構(gòu)模式進(jìn)行軟件體系結(jié)構(gòu)合成具有許多優(yōu)勢(shì),例如復(fù)雜的大型軟件系統(tǒng)的體系結(jié)構(gòu)可以組合已有的軟件體系結(jié)構(gòu)模式從而進(jìn)行增量式的設(shè)計(jì)。盡管如此,使用軟件體系結(jié)構(gòu)模式進(jìn)行軟件體系結(jié)構(gòu)合成仍然是一項(xiàng)具有挑戰(zhàn)性的任務(wù),尤其是對(duì)于那些缺乏設(shè)計(jì)經(jīng)驗(yàn)的架構(gòu)師。因此,本文提出基于模式的軟件體系結(jié)構(gòu)自動(dòng)化合成方法生成候選的軟件體系結(jié)構(gòu)候選解決方案,來(lái)輔助架構(gòu)師的軟件體系結(jié)構(gòu)合成活動(dòng);谀J降能浖w系結(jié)構(gòu)合成活動(dòng)包含兩個(gè)子過(guò)程:職責(zé)合成和模式合成。本文中職責(zé)指的是軟件系統(tǒng)需要實(shí)現(xiàn)的功能性需求。在面向?qū)ο蟮能浖w系結(jié)構(gòu)的職責(zé)合成中,職責(zé)用方法和屬性來(lái)表示。職責(zé)合成子過(guò)程僅關(guān)注于職責(zé)在軟件體系結(jié)構(gòu)中的分配。對(duì)于軟件體系結(jié)構(gòu)的總體設(shè)計(jì),職責(zé)到類(lèi)的分配對(duì)軟件體系結(jié)構(gòu)的設(shè)計(jì)質(zhì)量有較大的影響。與職責(zé)合成不同,模式合成子過(guò)程獨(dú)立于具體的業(yè)務(wù)上下文,僅關(guān)注于軟件體系...
【文章來(lái)源】:武漢大學(xué)湖北省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:137 頁(yè)
【學(xué)位級(jí)別】:博士
【部分圖文】:
圖2-1軟件體系結(jié)構(gòu)模式對(duì)與質(zhì)量屬性的關(guān)系Ml??圖2-1中軟件體系結(jié)構(gòu)設(shè)計(jì)模式與軟件質(zhì)量屬性的關(guān)系只有在軟件體系結(jié)構(gòu)設(shè)計(jì)模??色、足計(jì)
盡管分層系統(tǒng)具有關(guān)注點(diǎn)分離的特性,但是實(shí)現(xiàn)該特性必須確保軟件系統(tǒng)分層模式??的實(shí)現(xiàn)符合分層模式本身的特性,分層模式的實(shí)現(xiàn)與分層模式的固有的特性、原則不能??出現(xiàn)不一致性。分層模式的一個(gè)重要特性是閉合設(shè)計(jì)。例如,在圖2-2所示的具有四層??的分層系統(tǒng)中,系統(tǒng)的每一層都是閉合的。閉合意味著請(qǐng)求只能從一層中的組件轉(zhuǎn)發(fā)到??相鄰層的組件,當(dāng)請(qǐng)求從分層模式的頂層組件發(fā)起時(shí),該請(qǐng)求依次轉(zhuǎn)發(fā)到分層模式的每??16??
件間不會(huì)存在大量的依賴(lài)關(guān)系,保證了組件間的松散耦合。此外,分層隔離原則也確保??了每一層中的組件獨(dú)立于其他層中的組件,提升了軟件系統(tǒng)的可維護(hù)性。分層模式中分??層隔離原則的存在確保了圖2-1中分層模式對(duì)系統(tǒng)開(kāi)發(fā)、可測(cè)試性質(zhì)量屬性的正面影響,??但也導(dǎo)致了分層模式對(duì)系統(tǒng)性能、可擴(kuò)展性等質(zhì)量屬性產(chǎn)生負(fù)而影響。??Request???I??Presentation?Layer?▼?Component?Component?Component??......—_--—1???▼????????Business?Layer?Component?Component?Component??8?s???????=====^??Component?Component?Component??Component?Component?Component??^^?x???????J??Database?Layer?^QOQQ?Ba??圖2-3分層模式的開(kāi)放設(shè)計(jì)[66]??隨著軟件系統(tǒng)的規(guī)模的持續(xù)增長(zhǎng)演化,在圖2-2所示的具有四層的分層系統(tǒng)中增加??了一層服務(wù)層,如圖2-3所示。服務(wù)層的增加隔離了業(yè)務(wù)層和持久層組件,從而限制了??業(yè)務(wù)層中的構(gòu)件對(duì)持久層中的構(gòu)件的直接訪(fǎng)問(wèn)。但是,在軟件系統(tǒng)的演化過(guò)程中,業(yè)務(wù)??層構(gòu)件對(duì)持久層構(gòu)件之間的直接依賴(lài)并沒(méi)有完全被修改,這導(dǎo)致了業(yè)務(wù)層的部分構(gòu)件仍??然直接依賴(lài)于持久層構(gòu)件所提供的服務(wù)。在軟件系統(tǒng)演化的過(guò)程中
【參考文獻(xiàn)】:
期刊論文
[1]以決策為中心的軟件體系結(jié)構(gòu)設(shè)計(jì)方法[J]. 崔曉峰,孫艷春,梅宏. 軟件學(xué)報(bào). 2010(06)
[2]軟件體系結(jié)構(gòu)評(píng)估技術(shù)[J]. 張莉,高暉,王守信. 軟件學(xué)報(bào). 2008(06)
[3]軟件體系結(jié)構(gòu)研究進(jìn)展[J]. 梅宏,申峻嶸. 軟件學(xué)報(bào). 2006(06)
[4]基于軟件體系結(jié)構(gòu)的反射式中間件研究[J]. 黃罡,王千祥,梅宏,楊芙清. 軟件學(xué)報(bào). 2003(11)
[5]軟件體系結(jié)構(gòu)研究綜述[J]. 孫昌愛(ài),金茂忠,劉超. 軟件學(xué)報(bào). 2002(07)
[6]基于軟件體系結(jié)構(gòu)的可復(fù)用構(gòu)件制作和組裝[J]. 張世琨,張文娟,常欣,王立福,楊芙清. 軟件學(xué)報(bào). 2001(09)
本文編號(hào):3372034
【文章來(lái)源】:武漢大學(xué)湖北省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:137 頁(yè)
【學(xué)位級(jí)別】:博士
【部分圖文】:
圖2-1軟件體系結(jié)構(gòu)模式對(duì)與質(zhì)量屬性的關(guān)系Ml??圖2-1中軟件體系結(jié)構(gòu)設(shè)計(jì)模式與軟件質(zhì)量屬性的關(guān)系只有在軟件體系結(jié)構(gòu)設(shè)計(jì)模??色、足計(jì)
盡管分層系統(tǒng)具有關(guān)注點(diǎn)分離的特性,但是實(shí)現(xiàn)該特性必須確保軟件系統(tǒng)分層模式??的實(shí)現(xiàn)符合分層模式本身的特性,分層模式的實(shí)現(xiàn)與分層模式的固有的特性、原則不能??出現(xiàn)不一致性。分層模式的一個(gè)重要特性是閉合設(shè)計(jì)。例如,在圖2-2所示的具有四層??的分層系統(tǒng)中,系統(tǒng)的每一層都是閉合的。閉合意味著請(qǐng)求只能從一層中的組件轉(zhuǎn)發(fā)到??相鄰層的組件,當(dāng)請(qǐng)求從分層模式的頂層組件發(fā)起時(shí),該請(qǐng)求依次轉(zhuǎn)發(fā)到分層模式的每??16??
件間不會(huì)存在大量的依賴(lài)關(guān)系,保證了組件間的松散耦合。此外,分層隔離原則也確保??了每一層中的組件獨(dú)立于其他層中的組件,提升了軟件系統(tǒng)的可維護(hù)性。分層模式中分??層隔離原則的存在確保了圖2-1中分層模式對(duì)系統(tǒng)開(kāi)發(fā)、可測(cè)試性質(zhì)量屬性的正面影響,??但也導(dǎo)致了分層模式對(duì)系統(tǒng)性能、可擴(kuò)展性等質(zhì)量屬性產(chǎn)生負(fù)而影響。??Request???I??Presentation?Layer?▼?Component?Component?Component??......—_--—1???▼????????Business?Layer?Component?Component?Component??8?s???????=====^??Component?Component?Component??Component?Component?Component??^^?x???????J??Database?Layer?^QOQQ?Ba??圖2-3分層模式的開(kāi)放設(shè)計(jì)[66]??隨著軟件系統(tǒng)的規(guī)模的持續(xù)增長(zhǎng)演化,在圖2-2所示的具有四層的分層系統(tǒng)中增加??了一層服務(wù)層,如圖2-3所示。服務(wù)層的增加隔離了業(yè)務(wù)層和持久層組件,從而限制了??業(yè)務(wù)層中的構(gòu)件對(duì)持久層中的構(gòu)件的直接訪(fǎng)問(wèn)。但是,在軟件系統(tǒng)的演化過(guò)程中,業(yè)務(wù)??層構(gòu)件對(duì)持久層構(gòu)件之間的直接依賴(lài)并沒(méi)有完全被修改,這導(dǎo)致了業(yè)務(wù)層的部分構(gòu)件仍??然直接依賴(lài)于持久層構(gòu)件所提供的服務(wù)。在軟件系統(tǒng)演化的過(guò)程中
【參考文獻(xiàn)】:
期刊論文
[1]以決策為中心的軟件體系結(jié)構(gòu)設(shè)計(jì)方法[J]. 崔曉峰,孫艷春,梅宏. 軟件學(xué)報(bào). 2010(06)
[2]軟件體系結(jié)構(gòu)評(píng)估技術(shù)[J]. 張莉,高暉,王守信. 軟件學(xué)報(bào). 2008(06)
[3]軟件體系結(jié)構(gòu)研究進(jìn)展[J]. 梅宏,申峻嶸. 軟件學(xué)報(bào). 2006(06)
[4]基于軟件體系結(jié)構(gòu)的反射式中間件研究[J]. 黃罡,王千祥,梅宏,楊芙清. 軟件學(xué)報(bào). 2003(11)
[5]軟件體系結(jié)構(gòu)研究綜述[J]. 孫昌愛(ài),金茂忠,劉超. 軟件學(xué)報(bào). 2002(07)
[6]基于軟件體系結(jié)構(gòu)的可復(fù)用構(gòu)件制作和組裝[J]. 張世琨,張文娟,常欣,王立福,楊芙清. 軟件學(xué)報(bào). 2001(09)
本文編號(hào):3372034
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3372034.html
最近更新
教材專(zhuān)著