




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第二章第二章 軟件體系結(jié)構(gòu)建模軟件體系結(jié)構(gòu)建模天津商業(yè)大學(xué)天津商業(yè)大學(xué) 軟件體系結(jié)構(gòu)模型的分類 結(jié)構(gòu)模型結(jié)構(gòu)模型 框架模型框架模型 動態(tài)模型動態(tài)模型 過程模型過程模型 功能模型功能模型 軟件體系結(jié)構(gòu)建模的種類 結(jié)構(gòu)模型結(jié)構(gòu)模型 這是一個(gè)最直觀、最普遍的建模方法。這種方法這是一個(gè)最直觀、最普遍的建模方法。這種方法以體系結(jié)構(gòu)的構(gòu)件、連接件和其他概念來刻畫結(jié)構(gòu),以體系結(jié)構(gòu)的構(gòu)件、連接件和其他概念來刻畫結(jié)構(gòu),并力圖通過結(jié)構(gòu)來反映系統(tǒng)的重要語義內(nèi)容,包括系并力圖通過結(jié)構(gòu)來
2、反映系統(tǒng)的重要語義內(nèi)容,包括系統(tǒng)的配置、約束、隱含的假設(shè)條件、風(fēng)格、性質(zhì)等。統(tǒng)的配置、約束、隱含的假設(shè)條件、風(fēng)格、性質(zhì)等。 研究結(jié)構(gòu)模型的核心是體系結(jié)構(gòu)描述語言。研究結(jié)構(gòu)模型的核心是體系結(jié)構(gòu)描述語言。 工作流建模元素的靜態(tài)結(jié)構(gòu)模型工作流建模元素的靜態(tài)結(jié)構(gòu)模型 軟件體系結(jié)構(gòu)建模的種類 框架模型框架模型 框架模型與結(jié)構(gòu)模型類似,但它不太側(cè)重描述結(jié)框架模型與結(jié)構(gòu)模型類似,但它不太側(cè)重描述結(jié)構(gòu)的細(xì)節(jié)而更側(cè)重于整體的結(jié)構(gòu)。構(gòu)的細(xì)節(jié)而更側(cè)重于整體的結(jié)構(gòu)。 框架模型主要以一些特殊的問題為目標(biāo)建立只針框架模型主要以一些特殊
3、的問題為目標(biāo)建立只針對和適應(yīng)該問題的結(jié)構(gòu)。對和適應(yīng)該問題的結(jié)構(gòu)。.NET .NET 平臺框架結(jié)構(gòu)平臺框架結(jié)構(gòu) 軟件體系結(jié)構(gòu)建模的種類 動態(tài)模型動態(tài)模型 動態(tài)模型是對結(jié)構(gòu)或框架模型的補(bǔ)充,研究系統(tǒng)的動態(tài)模型是對結(jié)構(gòu)或框架模型的補(bǔ)充,研究系統(tǒng)的“大顆粒大顆?!钡男袨椤@纾枋鱿到y(tǒng)的重新配置或演化。的行為。例如,描述系統(tǒng)的重新配置或演化。動態(tài)可以指系統(tǒng)總體結(jié)構(gòu)的配置、建立或拆除通信通道動態(tài)可以指系統(tǒng)總體結(jié)構(gòu)的配置、建立或拆除通信通道或計(jì)算的過程?;蛴?jì)算的過程。動態(tài)模型
4、示例動態(tài)模型示例 軟件體系結(jié)構(gòu)建模的種類 過程模型過程模型 過程模型研究構(gòu)造系統(tǒng)的步驟和過程。過程模型研究構(gòu)造系統(tǒng)的步驟和過程。 結(jié)構(gòu)是遵循某些過程腳本的結(jié)果。結(jié)構(gòu)是遵循某些過程腳本的結(jié)果。 經(jīng)典軟件開發(fā)過程模型經(jīng)典軟件開發(fā)過程模型 軟件體系結(jié)構(gòu)建模的種類 功能模型功能模型 功能模型認(rèn)為體系結(jié)構(gòu)是由一組功能構(gòu)件按層次組功能模型認(rèn)為體系結(jié)構(gòu)是由一組功能構(gòu)件按層次組成,下層向上層提供服務(wù)。成,下層向上層提供服務(wù)。 功能模型可以看作是一種特殊的框架模型。功能模型可以看作
5、是一種特殊的框架模型。 “4+1”模型概述 KruchtenKruchten在在19951995年提出了年提出了“4+14+1”的視圖模型。的視圖模型。 “4+14+1”視圖模型從視圖模型從5 5個(gè)不同的視角包括邏輯視圖、進(jìn)個(gè)不同的視角包括邏輯視圖、進(jìn)程視圖、物理視圖、開發(fā)視圖和場景視圖來描述軟件程視圖、物理視圖、開發(fā)視圖和場景視圖來描述軟件體系結(jié)構(gòu)。體系結(jié)構(gòu)。 每一個(gè)視圖只關(guān)心系統(tǒng)的一個(gè)側(cè)面,每一個(gè)視圖只關(guān)心系統(tǒng)的一個(gè)側(cè)面,5 5個(gè)視圖結(jié)合在個(gè)視圖結(jié)合在一起才能反映系統(tǒng)的軟件體系結(jié)構(gòu)的全部內(nèi)容。一起才能反映系統(tǒng)的軟件體系結(jié)構(gòu)的全部內(nèi)容。 http:
6、/ “4+1”模型概述 邏輯視圖邏輯視圖進(jìn)程視圖進(jìn)程視圖開發(fā)視圖開發(fā)視圖物理視圖物理視圖最終用戶:功能需求最終用戶:功能需求場景場景編程人員:軟件管理編程人員:軟件管理系統(tǒng)集成人員:性能系統(tǒng)集成人員:性能可擴(kuò)充性、吞吐量等可擴(kuò)充性、吞吐量等系統(tǒng)工程人員:系統(tǒng)系統(tǒng)工程人員:系統(tǒng)拓?fù)洹惭b、通信等拓?fù)?、安裝、通信等 邏輯視圖 邏輯視圖主要支持系統(tǒng)的功能需求,即系統(tǒng)提供給邏輯視圖主要支持系統(tǒng)的功能需求,即系統(tǒng)提供給最終用戶的服務(wù)。在邏輯視圖中,系統(tǒng)分解成一系列最終用戶的服務(wù)。在邏輯視圖中,系統(tǒng)分解成一系列的功能抽象,這些抽象
7、主要來自問題領(lǐng)域。這種分解的功能抽象,這些抽象主要來自問題領(lǐng)域。這種分解不但可以用來進(jìn)行功能分析,而且可用作標(biāo)識在整個(gè)不但可以用來進(jìn)行功能分析,而且可用作標(biāo)識在整個(gè)系統(tǒng)的各個(gè)不同部分的通用機(jī)制和設(shè)計(jì)元素。系統(tǒng)的各個(gè)不同部分的通用機(jī)制和設(shè)計(jì)元素。 在面向?qū)ο蠹夹g(shù)中,通過抽象、封裝和繼承,可以在面向?qū)ο蠹夹g(shù)中,通過抽象、封裝和繼承,可以用對象模型來代表邏輯視圖,用類圖來描述邏輯視用對象模型來代表邏輯視圖,用類圖來描述邏輯視圖。圖。 邏輯視圖 可以從可以從BoochBooch標(biāo)記法中導(dǎo)出邏輯視圖的標(biāo)記法,只是從體標(biāo)記法中導(dǎo)出邏輯視圖的標(biāo)記法,只是從體系結(jié)構(gòu)
8、級的范疇來考慮這些符號,用系結(jié)構(gòu)級的范疇來考慮這些符號,用Rational RoseRational Rose進(jìn)行體進(jìn)行體系結(jié)構(gòu)設(shè)計(jì)。系結(jié)構(gòu)設(shè)計(jì)。構(gòu)件構(gòu)件實(shí)例實(shí)例繼承繼承使用使用包含,聚集包含,聚集關(guān)聯(lián)關(guān)聯(lián)類層次類層次參數(shù)化類參數(shù)化類類服務(wù)類服務(wù)類類連接件連接件 邏輯視圖 邏輯視圖中使用的風(fēng)格為面向?qū)ο蟮娘L(fēng)格,邏輯視圖設(shè)邏輯視圖中使用的風(fēng)格為面向?qū)ο蟮娘L(fēng)格,邏輯視圖設(shè)計(jì)中要注意的主要問題是要保持一個(gè)單一的、內(nèi)聚的對象計(jì)中要注意的主要問題是要保持一個(gè)單一的、內(nèi)聚的對象模型貫穿整個(gè)系統(tǒng)。模型貫穿整個(gè)系統(tǒng)。會話終端控制器轉(zhuǎn)換服務(wù)連接服務(wù)編號計(jì)劃某通信系統(tǒng)體
9、系結(jié)構(gòu)邏輯視圖某通信系統(tǒng)體系結(jié)構(gòu)邏輯視圖 開發(fā)視圖 開發(fā)視圖也稱模塊視圖,主要側(cè)重于軟件模塊的組開發(fā)視圖也稱模塊視圖,主要側(cè)重于軟件模塊的組織和管理??椇凸芾?。 開發(fā)視圖要考慮軟件內(nèi)部的需求,如軟件開發(fā)的容開發(fā)視圖要考慮軟件內(nèi)部的需求,如軟件開發(fā)的容易性、軟件的重用和軟件的通用性,要充分考慮由于易性、軟件的重用和軟件的通用性,要充分考慮由于具體開發(fā)工具的不同而帶來的局限性。具體開發(fā)工具的不同而帶來的局限性。 開發(fā)視圖通過系統(tǒng)輸入輸出關(guān)系的模型圖和子系統(tǒng)開發(fā)視圖通過系統(tǒng)輸入輸出關(guān)系的模型圖和子系統(tǒng)圖來描述。圖來描述。http:/www.chinasa.
10、info 開發(fā)視圖 與邏輯視圖一樣,可以使用與邏輯視圖一樣,可以使用BoochBooch標(biāo)記法中某些符標(biāo)記法中某些符號來表示開發(fā)視圖。號來表示開發(fā)視圖。 開發(fā)視圖 在開發(fā)視圖中,最好采用在開發(fā)視圖中,最好采用4-64-6層子系統(tǒng),而且每個(gè)子層子系統(tǒng),而且每個(gè)子系統(tǒng)僅僅能與同層或更低層的子系統(tǒng)通訊,這樣可以系統(tǒng)僅僅能與同層或更低層的子系統(tǒng)通訊,這樣可以使每個(gè)層次的接口既完備又精練,避免了各個(gè)模塊之使每個(gè)層次的接口既完備又精練,避免了各個(gè)模塊之間很復(fù)雜的依賴關(guān)系。間很復(fù)雜的依賴關(guān)系。 設(shè)計(jì)時(shí)要充分考慮,對于各個(gè)層次,層次越低,通設(shè)計(jì)時(shí)要充分考慮,對于各個(gè)
11、層次,層次越低,通用性越強(qiáng),這樣,可以保證應(yīng)用程序的需求發(fā)生改變用性越強(qiáng),這樣,可以保證應(yīng)用程序的需求發(fā)生改變時(shí),所做的改動最小。開發(fā)視圖所用的風(fēng)格通常是層時(shí),所做的改動最小。開發(fā)視圖所用的風(fēng)格通常是層次結(jié)構(gòu)風(fēng)格。次結(jié)構(gòu)風(fēng)格。 開發(fā)視圖 進(jìn)程視圖 進(jìn)程視圖側(cè)重于系統(tǒng)的進(jìn)程視圖側(cè)重于系統(tǒng)的運(yùn)行特性運(yùn)行特性,主要關(guān)注一些非,主要關(guān)注一些非功能性的需求。功能性的需求。 進(jìn)程視圖強(qiáng)調(diào)進(jìn)程視圖強(qiáng)調(diào)并發(fā)性、分布性、系統(tǒng)集成性和容錯(cuò)并發(fā)性、分布性、系統(tǒng)集成性和容錯(cuò)能力能力,以及從邏輯視圖中的主要抽象如何適合進(jìn)程結(jié),以
12、及從邏輯視圖中的主要抽象如何適合進(jìn)程結(jié)構(gòu)。它也定義邏輯視圖中的各個(gè)類的操作具體是在哪構(gòu)。它也定義邏輯視圖中的各個(gè)類的操作具體是在哪一個(gè)線程中被執(zhí)行的。一個(gè)線程中被執(zhí)行的。 進(jìn)程視圖可以描述成進(jìn)程視圖可以描述成多層抽象多層抽象,每個(gè)級別分別關(guān)注,每個(gè)級別分別關(guān)注不同的方面。在最高層抽象中,進(jìn)程結(jié)構(gòu)可以看作是不同的方面。在最高層抽象中,進(jìn)程結(jié)構(gòu)可以看作是構(gòu)成一個(gè)執(zhí)行單元的一組任務(wù)。它可看成一系列獨(dú)立構(gòu)成一個(gè)執(zhí)行單元的一組任務(wù)。它可看成一系列獨(dú)立的,通過邏輯網(wǎng)絡(luò)相互通信的程序。它們是分布的,的,通過邏輯網(wǎng)絡(luò)相互通信的程序。它們是分布的,通過總線或局域網(wǎng)、廣域網(wǎng)等硬件資源連接起來。通過總線或局域網(wǎng)、廣
13、域網(wǎng)等硬件資源連接起來。 進(jìn)程視圖 通過擴(kuò)展通過擴(kuò)展BoochBooch對對AdaAda任務(wù)的表示法,來表示進(jìn)程視任務(wù)的表示法,來表示進(jìn)程視圖。圖。 進(jìn)程視圖某通信系統(tǒng)局部進(jìn)程視圖某通信系統(tǒng)局部進(jìn)程視圖 物理視圖 物理視圖主要考慮如何把軟件映射到硬件上,它通物理視圖主要考慮如何把軟件映射到硬件上,它通常要考慮到系統(tǒng)性能、規(guī)模、可靠性等。解決系統(tǒng)拓常要考慮到系統(tǒng)性能、規(guī)模、可靠性等。解決系統(tǒng)拓?fù)浣Y(jié)構(gòu)、系統(tǒng)安裝、通訊等問題。撲結(jié)構(gòu)、系統(tǒng)安裝、通訊等問題。 當(dāng)軟件運(yùn)行于
14、不同的節(jié)點(diǎn)上時(shí),各視圖中的構(gòu)件都當(dāng)軟件運(yùn)行于不同的節(jié)點(diǎn)上時(shí),各視圖中的構(gòu)件都直接或間接地對應(yīng)于系統(tǒng)的不同節(jié)點(diǎn)上。因此,從軟直接或間接地對應(yīng)于系統(tǒng)的不同節(jié)點(diǎn)上。因此,從軟件到節(jié)點(diǎn)的映射要有較高的靈活性,當(dāng)環(huán)境改變時(shí),件到節(jié)點(diǎn)的映射要有較高的靈活性,當(dāng)環(huán)境改變時(shí),對系統(tǒng)其他視圖的影響最小。對系統(tǒng)其他視圖的影響最小。 物理視圖 大型系統(tǒng)的物理視圖可能會變得十分混亂,因此可大型系統(tǒng)的物理視圖可能會變得十分混亂,因此可以與進(jìn)程視圖的映射一道,以多種形式出現(xiàn),也可單以與進(jìn)程視圖的映射一道,以多種形式出現(xiàn),也可單獨(dú)出現(xiàn)。獨(dú)出現(xiàn)。 http:/www.chinasa
15、.info 物理視圖ACSACS系統(tǒng)的物理視圖系統(tǒng)的物理視圖 C主KKKKKKKKF備份F主F備份F主C備份 場景 場景可以看作是那些重要場景可以看作是那些重要系統(tǒng)活動的抽象系統(tǒng)活動的抽象,它使四,它使四個(gè)視圖有機(jī)聯(lián)系起來,從某種意義上說場景是個(gè)視圖有機(jī)聯(lián)系起來,從某種意義上說場景是最重要的最重要的需求抽象需求抽象。在開發(fā)體系結(jié)構(gòu)時(shí),它可以幫助設(shè)計(jì)者找到。在開發(fā)體系結(jié)構(gòu)時(shí),它可以幫助設(shè)計(jì)者找到體系結(jié)構(gòu)的構(gòu)件和它們之間的作用關(guān)系。同時(shí),也可以體系結(jié)構(gòu)的構(gòu)件和它們之間的作用關(guān)系。同時(shí),也可以用場景來分析一個(gè)特定的視圖,或描述不同視圖構(gòu)件間用場景來分析一個(gè)
16、特定的視圖,或描述不同視圖構(gòu)件間是如何相互作用的。是如何相互作用的。 場景可以用文本表示,也可以用圖形表示。場景可以用文本表示,也可以用圖形表示。 場景本地呼叫場景的一個(gè)原型本地呼叫場景的一個(gè)原型 (1)摘機(jī)(2)撥號音(3)號碼(4)號碼(5)打開會話 小結(jié) 邏輯視圖和開發(fā)視圖描述系統(tǒng)的靜態(tài)結(jié)構(gòu),而進(jìn)程邏輯視圖和開發(fā)視圖描述系統(tǒng)的靜態(tài)結(jié)構(gòu),而進(jìn)程視圖和物理視圖描述系統(tǒng)的動態(tài)結(jié)構(gòu)。視圖和物理視圖描述系統(tǒng)的動態(tài)結(jié)構(gòu)。 對于不同的軟件系統(tǒng)來說,側(cè)重的角度也有所不同。對于不同的軟件系統(tǒng)來說,側(cè)重的角度也有所不同
17、。例如,對于管理信息系統(tǒng)來說,比較側(cè)重于從邏輯視圖例如,對于管理信息系統(tǒng)來說,比較側(cè)重于從邏輯視圖和開發(fā)視圖來描述系統(tǒng),而對于實(shí)時(shí)控制系統(tǒng)來說,則和開發(fā)視圖來描述系統(tǒng),而對于實(shí)時(shí)控制系統(tǒng)來說,則比較注重于從進(jìn)程視圖和物理視圖來描述系統(tǒng)。比較注重于從進(jìn)程視圖和物理視圖來描述系統(tǒng)。 END作業(yè)1請畫出4+1模型視圖w 某交通設(shè)施管控系統(tǒng) 某交通管理部門為估測道路交通流情況,特對現(xiàn)有交某交通管理部門為估測道路交通流情況,特對現(xiàn)有交通設(shè)施管控系統(tǒng)進(jìn)行升級。升級后的系統(tǒng)可實(shí)時(shí)采集通設(shè)施管控系統(tǒng)進(jìn)行升級。升級后的系統(tǒng)可實(shí)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報(bào)書丟了咋辦
- 英語教改課題申報(bào)書
- 國家課題項(xiàng)目申報(bào)書
- 新課標(biāo)相關(guān)課題申報(bào)書
- 合同范本號和合同編號
- 加工承攬合同范本格式
- 青年生育意愿課題申報(bào)書
- 員工店鋪勞務(wù)合同范本
- 化工用消泡劑采購合同范例
- 低價(jià)出售二手叉車合同范本
- 拍攝短視頻的腳本范文(可用8篇)
- 2023年中央廣播電視總臺校園招聘筆試參考題庫附帶答案詳解
- 2023年青島港灣職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)模擬試題及答案解析
- 消防栓定期檢查記錄表
- 員工面試登記表通用模板
- 新人教版小學(xué)五年級數(shù)學(xué)下冊全冊同步課堂練習(xí)題
- DB63T 2105-2023 蒸發(fā)量觀測 全自動水面蒸發(fā)器比測規(guī)程
- 單位(個(gè)人或集體)約談表
- 在戲劇家協(xié)會會員大會上的講話
- 體育賽事管理
- A類業(yè)余無線電操作技術(shù)能力驗(yàn)證題目題庫1
評論
0/150
提交評論