




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
4.1體系結(jié)構(gòu)設(shè)計(jì)的重用當(dāng)前,重用是一個(gè)流行的新概念。通過(guò)基于軟件產(chǎn)品線(xiàn)的眾多研究,可重用軟件元素,專(zhuān)用領(lǐng)域引擎與相關(guān)軟件開(kāi)發(fā)過(guò)程,軟件重用已經(jīng)相當(dāng)成熟。然而,軟件重用并不是“銀彈”。雖然它能帶來(lái)諸如節(jié)省開(kāi)銷(xiāo),節(jié)約投入市場(chǎng)時(shí)間,挺高質(zhì)量上的好處,但簡(jiǎn)單說(shuō)來(lái),還是難以控制與應(yīng)用。4.2體系結(jié)構(gòu)設(shè)計(jì)空間與規(guī)則
體系結(jié)構(gòu)設(shè)計(jì)始于一系列關(guān)于屬性與行為的需求說(shuō)明,止于一系列的構(gòu)件連接器風(fēng)格與配置的落實(shí)。測(cè)試可以用于檢測(cè)需求是否被達(dá)到,如果是,這個(gè)設(shè)計(jì)就可以被認(rèn)為是合格的。4.2體系結(jié)構(gòu)設(shè)計(jì)空間與規(guī)則在構(gòu)造一個(gè)空間之前,需要相關(guān)的法則與分類(lèi)方法,來(lái)表示在一個(gè)維度上的不同值。可能值的范圍稱(chēng)作“范疇”。4.3基于體系結(jié)構(gòu)的軟件分析設(shè)計(jì)過(guò)程過(guò)程是有特定目標(biāo)的動(dòng)作序列。定義動(dòng)作為如下的五元組。Actioni=<ID,SHi,Resi,Acti,Consi>過(guò)程是動(dòng)作的有序集合:Process={Action1,Action2,…,Actionn}SADPBA(基于體系結(jié)構(gòu)的軟件分析設(shè)計(jì)過(guò)程)是用上述術(shù)語(yǔ)定義的一個(gè)過(guò)程,其特征就是軟件體系結(jié)構(gòu)動(dòng)作。SADPBA是一個(gè)迭代的過(guò)程,項(xiàng)目的每個(gè)階段都是以上一個(gè)階段的工作為基礎(chǔ)。SADPBA將過(guò)程分解為3個(gè)動(dòng)作:需求分析,軟件體系結(jié)構(gòu)設(shè)計(jì)與系統(tǒng)設(shè)計(jì),因此設(shè)計(jì)空間也符合這個(gè)模式。使用設(shè)計(jì)空間對(duì)設(shè)計(jì)過(guò)程進(jìn)行拆分設(shè)計(jì)空間的形式化定義如下:其中di是設(shè)計(jì)空間的維度,是對(duì)系統(tǒng)某一特性或設(shè)計(jì)決策的描述,而di中枚舉出的可能方法稱(chēng)為“范疇”。在面向領(lǐng)域的的設(shè)計(jì)過(guò)程中,使用三個(gè)空間,意味著設(shè)計(jì)過(guò)程將依次從一個(gè)空間映射到另一個(gè)空間,使用設(shè)計(jì)空間對(duì)設(shè)計(jì)過(guò)程進(jìn)行拆分設(shè)Fi,F(xiàn)j∈DS且Fi≠Fj,若Fj的取值依賴(lài)于Fi的取值,則稱(chēng)Fj依賴(lài)于Fi,記為FjDepFi,設(shè)計(jì)空間中的維的依賴(lài)關(guān)系描述了多個(gè)方案如何組合到一起,以實(shí)現(xiàn)一個(gè)系統(tǒng)。定義映射關(guān)系如下:DS1、DS2是兩個(gè)設(shè)計(jì)空間,如果存在一個(gè)法則f,使得對(duì)任意α∈DS1,在DS2中恰好存在一個(gè)b與之對(duì)應(yīng)(記為f(α)=b),則稱(chēng)f是DS1到DS2的一個(gè)映射,記f=DS1→DS2。α稱(chēng)為b在f中的自變量,b稱(chēng)為α在f中的值。SADPBA的追蹤機(jī)制追蹤是單一或多個(gè)項(xiàng)目空間中的項(xiàng)目元素的可逆關(guān)系,定義如下:在設(shè)計(jì)空間中,若從項(xiàng)目元素α可追蹤到其他相關(guān)項(xiàng)目元素β,稱(chēng)項(xiàng)目元素α和β存在可追蹤關(guān)系,記作SADPBA將可追蹤關(guān)系分為兩類(lèi):第一類(lèi)是DSF與DSA之間的關(guān)系:設(shè)DSF是一個(gè)功能設(shè)計(jì)空間而DSA是一個(gè)體系結(jié)構(gòu)設(shè)計(jì)空間,?是他們之間的映射規(guī)則。僅當(dāng)任意項(xiàng)目元素α∈DSF且它的所有依賴(lài)關(guān)系都可以被映射到DSA的元素,則稱(chēng)DSF對(duì)于DSA是完備的。另外一類(lèi)是DSA與DSS之間的關(guān)系設(shè)DSA是一個(gè)體系結(jié)構(gòu)設(shè)計(jì)空間而DSS是一個(gè)系統(tǒng)設(shè)計(jì)空間,?是他們之間的映射規(guī)則。僅當(dāng)任意項(xiàng)目元素α∈DSA且它的所有依賴(lài)關(guān)系都可以被映射到DSS的元素,則稱(chēng)DSA對(duì)于DSS是完備的。軟件體系結(jié)構(gòu)的生命周期模型實(shí)踐中的SADPBA實(shí)踐中的SADPBA實(shí)踐中的SADPBA需求分析階段,開(kāi)發(fā)人員需要盡可能的搜集各種有關(guān)系統(tǒng)的功能性需求,以及非功能性需求。一個(gè)軟件最終是否成功,通常是以客戶(hù)或用戶(hù)的滿(mǎn)意度為直接體現(xiàn)的。如果開(kāi)發(fā)階段初期的需求工程做的不夠完善,需求調(diào)研存在誤差或者遺漏,將對(duì)后續(xù)開(kāi)發(fā)造成影響,甚至不可逆的損失,最終產(chǎn)品評(píng)價(jià)也將受到嚴(yán)重的質(zhì)量危機(jī)。實(shí)踐中的SADPBA體系結(jié)構(gòu)設(shè)計(jì)階段則需要軟件架構(gòu)師根據(jù)上一階段可靠的需求報(bào)告,根據(jù)自己豐富的專(zhuān)業(yè)架構(gòu)知識(shí)與積累的軟件架構(gòu)經(jīng)驗(yàn),對(duì)軟件體系結(jié)構(gòu)進(jìn)行設(shè)計(jì),形成合適的架構(gòu)風(fēng)格。根據(jù)需求功能設(shè)計(jì)出構(gòu)件與連接器,確定體系結(jié)構(gòu)規(guī)范,進(jìn)行評(píng)審,看是否能夠滿(mǎn)足系統(tǒng)要求的功能以及非功能需求,并經(jīng)過(guò)不斷改進(jìn)確定構(gòu)件集合、連接器集合與結(jié)構(gòu)規(guī)范。實(shí)踐中的SADPBA系統(tǒng)設(shè)計(jì)階段則在確定構(gòu)件與連接器的基礎(chǔ)上,對(duì)整個(gè)系統(tǒng)的結(jié)構(gòu)進(jìn)行規(guī)劃。當(dāng)前有很多流行的架構(gòu)思想與概念,比如插件架構(gòu)、組態(tài)、虛擬化、嵌入式等等。實(shí)踐中的SADPBA插件架構(gòu)實(shí)踐中的SADPBA組態(tài)實(shí)踐中的SADPBA虛擬化實(shí)踐中的SADPBA嵌入式4.4示例:MEECS移動(dòng)設(shè)備已經(jīng)與七八年前相比有了長(zhǎng)足進(jìn)步。他們的計(jì)算能力與存儲(chǔ)能力已經(jīng)超過(guò)了2000年的個(gè)人電腦。同時(shí),移動(dòng)設(shè)備擁有出色的特征,例如你可以方便地將其帶到任何地方,可以接受多種模式的輸入:按鍵,聲音甚至是上下文感知。緊跟著這些特征的是創(chuàng)造性的應(yīng)用與更進(jìn)一步的新的商業(yè)模式。然而,移動(dòng)環(huán)境中的軟件系統(tǒng)是不同的,導(dǎo)致了對(duì)他們構(gòu)造的特別關(guān)注。異構(gòu)不穩(wěn)定性不對(duì)稱(chēng)性資源限制4.4示例:MEECS將SADPBA應(yīng)用到MEECS1.需求分析將SADPBA應(yīng)用到MEECS2.體系結(jié)構(gòu)設(shè)計(jì)將SADPBA應(yīng)用到MEECS2.體系結(jié)構(gòu)設(shè)計(jì)將SADPBA應(yīng)用到MEECS2.體系結(jié)構(gòu)設(shè)計(jì)將SADPBA應(yīng)用到MEECS2.體系結(jié)構(gòu)設(shè)計(jì)將SADPBA應(yīng)用到MEECS2.體系結(jié)構(gòu)設(shè)計(jì)將SADPBA應(yīng)用到MEECS3.系統(tǒng)設(shè)計(jì)將SADPBA應(yīng)用到MEECS3.系統(tǒng)設(shè)計(jì)4.5軟件體系結(jié)構(gòu)風(fēng)格選擇PSAS(Bhattacharya,2006)方法適用于基于組件的軟件工程方法(CBSE),設(shè)計(jì)者將首先進(jìn)行需求分析和功能設(shè)計(jì),并搜集軟件的不同用例,然后設(shè)計(jì)者將依照PSAS方法分析這些用例并且從構(gòu)件庫(kù)中選擇可以滿(mǎn)足用例功能的組件,連接器等軟件元素。最后PSAS將通過(guò)選擇出的軟件元素的特性來(lái)給出最符合的軟件體系結(jié)構(gòu)風(fēng)格。值得注意的是,PSAS方法可以在開(kāi)發(fā)的過(guò)程中不斷預(yù)測(cè)最合適的體系結(jié)構(gòu)風(fēng)格,這樣可以得到相對(duì)比較優(yōu)良的設(shè)計(jì)。4.5軟件體系結(jié)構(gòu)風(fēng)格選擇在PSAS開(kāi)始之前需要分析用例列表,并且構(gòu)建出一個(gè)PSAS說(shuō)明書(shū)模型。PSAS說(shuō)明書(shū)模型應(yīng)該包含軟件的軟件架構(gòu)元素在特定的領(lǐng)域中的詳細(xì)說(shuō)明文檔。軟件架構(gòu)元素即軟件中與領(lǐng)域相關(guān)的必要連接器(connector)和組件(component)。詳細(xì)的說(shuō)明文檔包括功能描述和非功能描述。4.5軟件體系結(jié)構(gòu)風(fēng)格選擇特征類(lèi)別分析特征類(lèi)別分析組成元素(ConstituentParts)組成元素代表軟件的構(gòu)成單元方面的特征,主要包含構(gòu)件(Components)和連接器(Connector)兩個(gè)成分。構(gòu)件是系統(tǒng)中的獨(dú)立程序,主要特征就是構(gòu)件具有相對(duì)獨(dú)立性,它們可以不依賴(lài)其他的構(gòu)件,也可以與其他的構(gòu)件互相協(xié)作,是系統(tǒng)功能的主要提供者,也是系統(tǒng)服務(wù)的載體。連接器也是體系結(jié)構(gòu)概念,在不同的風(fēng)格中可以被具化為其他的名稱(chēng)。連接器主要性質(zhì)就是連接構(gòu)件,即定義構(gòu)件之間信息交互的方式。特征類(lèi)別分析控制因素(ControlFactors)控制因素信息主要側(cè)重考慮構(gòu)成系統(tǒng)的組件之間的交互關(guān)系,并以此來(lái)分析系統(tǒng)的行為??刂埔蜃酉嚓P(guān)的部分主要有三種,拓?fù)浣Y(jié)構(gòu)(Topology),同步性(Synchronicity)和綁定時(shí)間(BindingTime)。綁定時(shí)間在說(shuō)明書(shū)中的組件交互細(xì)節(jié)中被申明,主要描述的是構(gòu)件之間控制轉(zhuǎn)移的時(shí)間消耗需求。特征類(lèi)別分析數(shù)據(jù)因素(DataFactors)與控制因素相對(duì)應(yīng),數(shù)據(jù)因素主要考察系統(tǒng)的數(shù)據(jù)流動(dòng)的關(guān)系。構(gòu)件之間不僅具有控制的流動(dòng),也具有數(shù)據(jù)的流動(dòng),數(shù)據(jù)因素就是主要捕獲數(shù)據(jù)流動(dòng)上的關(guān)系并且將不同的捕獲關(guān)系分類(lèi)以提供選擇軟件體系結(jié)構(gòu)的依據(jù)。數(shù)據(jù)因素同樣分為三個(gè)部分:拓?fù)浣Y(jié)構(gòu),連續(xù)性(Continuity)和時(shí)間。特征類(lèi)別分析控制/數(shù)據(jù)交互(Control/DataInteraction)這個(gè)層面描述了系統(tǒng)中控制和數(shù)據(jù)的交互關(guān)系。這里我們著重考慮數(shù)據(jù)流和控制流形狀(Shape)是否相同。如果一個(gè)系統(tǒng)的數(shù)據(jù)流拓?fù)浣Y(jié)構(gòu)和控制流拓?fù)浣Y(jié)構(gòu)相同,被稱(chēng)為形狀同構(gòu)系統(tǒng)(Isomorphic),否則稱(chēng)為非同構(gòu)系統(tǒng)。很多體系結(jié)構(gòu)風(fēng)格的數(shù)據(jù)流和控制流都是同構(gòu)的,包括順序批處理風(fēng)格,數(shù)據(jù)流網(wǎng)絡(luò)和C/S風(fēng)格架構(gòu),但是也有一些體系結(jié)構(gòu)風(fēng)格是不同構(gòu)的,例如黑板模型。PSAS方法主流程1.為系統(tǒng)需要提供的服務(wù)進(jìn)行進(jìn)行用例分析。需要提供的服務(wù)在架構(gòu)功能說(shuō)明書(shū)中被指定。2.對(duì)于每一個(gè)在用例中的服務(wù),從構(gòu)架庫(kù)中選擇最合適的構(gòu)件,并且構(gòu)件基礎(chǔ)構(gòu)件列表。3.如果基本構(gòu)件列表中的每一個(gè)構(gòu)件,通過(guò)4.5.2中的方法判別系統(tǒng)整體的構(gòu)件類(lèi)型,如果所有的構(gòu)件不是同一種類(lèi)型,我們把最多的類(lèi)型作為系統(tǒng)整體構(gòu)件類(lèi)型。4.如果基本構(gòu)件列表中的每一個(gè)構(gòu)件,通過(guò)4.5.2中的方法判別系統(tǒng)整體的連接器屬性類(lèi)型,如果所有的連接器不是同一種類(lèi)型,我們把最多的類(lèi)型作為系統(tǒng)整體連接器類(lèi)型。5.使用4.5.2中的方法繪制控制列表,判別系統(tǒng)的控制類(lèi)型,包括拓?fù)浣Y(jié)構(gòu)和同步方式6.使用4.5.2中的方法繪制數(shù)據(jù)列表,判別系統(tǒng)的數(shù)據(jù)類(lèi)型,包括數(shù)據(jù)拓?fù)浜瓦B續(xù)性類(lèi)型。7.確定是或否同構(gòu)8.查找表4-1來(lái)判斷最合適的軟件體系結(jié)構(gòu)風(fēng)格。如果找不到最合適的,可以選擇有相對(duì)較多的共性的風(fēng)格。4.6小結(jié)在本章中,介紹了軟件體系結(jié)構(gòu)級(jí)別上的設(shè)計(jì)策略。設(shè)計(jì)行為被抽象成設(shè)計(jì)空間。擴(kuò)展了設(shè)計(jì)空間,并將它分為功能設(shè)計(jì)空間,體系結(jié)構(gòu)設(shè)計(jì)空間與系統(tǒng)設(shè)計(jì)空間。而這就是SADPBA的核心概念,以體系結(jié)構(gòu)為中心的設(shè)計(jì)過(guò)程。介紹了SADPBA的概念與術(shù)語(yǔ),并討論
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)絡(luò)服務(wù)信息安全守秘保障承諾書(shū)5篇范文
- 2025年寧波前灣新區(qū)衛(wèi)生系統(tǒng)事業(yè)單位招聘高層次人才11人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(新)
- 2025年南安市部分公辦學(xué)校專(zhuān)項(xiàng)招聘編制內(nèi)新任教師(二)考前自測(cè)高頻考點(diǎn)模擬試題附答案詳解(突破訓(xùn)練)
- 2025年甘肅省特種設(shè)備檢驗(yàn)檢測(cè)研究院聘用人員招聘考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(奪冠)
- 2025廣西河池市大化瑤族自治縣特殊教育學(xué)校招聘公益性崗位工作人員2人模擬試卷及答案詳解(易錯(cuò)題)
- 2025北京郵電大學(xué)人工智能學(xué)院招聘1人(人才派遣)模擬試卷附答案詳解(黃金題型)
- 項(xiàng)目風(fēng)險(xiǎn)管理模板覆蓋多行業(yè)
- 2025北京大學(xué)地球與空間科學(xué)學(xué)院智慧能源和公共安全研究中心招聘科研助理1人模擬試卷附答案詳解(完整版)
- 湖南省部分市縣2024-2025學(xué)年高一下學(xué)期期末聯(lián)考地理試題(解析版)
- 2025北京平谷區(qū)衛(wèi)生健康委員會(huì)所屬事業(yè)單位第二次招聘211人模擬試卷及1套完整答案詳解
- 臨床輸血知識(shí)培訓(xùn)課件
- 西南大學(xué)財(cái)務(wù)管理辦法
- 心肌梗死護(hù)理查房
- 不停跳冠脈搭橋術(shù)麻醉管理
- 模塊七 直線(xiàn)的投影(課件)-中職高考《機(jī)械制圖》一輪復(fù)習(xí)(高教版第5版)
- 譚政工作報(bào)告全文
- 江蘇省南通市2025年七年級(jí)下學(xué)期語(yǔ)文期末模擬試卷四套及答案
- 國(guó)網(wǎng) 35kV~750kV輸電線(xiàn)路絕緣子金具串通 用設(shè)計(jì)技術(shù)導(dǎo)則(試行)2024
- 統(tǒng)編版(2024)道德與法治一年級(jí)上冊(cè)全冊(cè)公開(kāi)課一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì)
- 職業(yè)技術(shù)學(xué)院智能機(jī)器人技術(shù)專(zhuān)業(yè)人才培養(yǎng)方案
- 園林二級(jí)技師試題及答案
評(píng)論
0/150
提交評(píng)論