架构之美第八章-软件架构的含义
進行復(fù)審、討論、修改和批準,然后作為后續(xù)決定和構(gòu)建時的約束。對于軟件系統(tǒng),這些設(shè)計決定包括行為上的和結(jié)構(gòu)上的。
? ? ? ? 外部行為描述展示了產(chǎn)品如何與它的用戶、其他系統(tǒng)和外部設(shè)備進行交互,這應(yīng)該表現(xiàn)為需求。結(jié)構(gòu)描述展示了產(chǎn)品如何劃分為多個部分,以及這些部分之間的關(guān)系。我們還
需要內(nèi)部行為描述,用于描述組件之間的交互接口。結(jié)構(gòu)上的描述常常展示相同部分的一些不同視圖,因為不可能把所有信息以有意義的方式組織到一張圖紙或一份文檔中。
一個視圖中的組件,可能是另一個視圖中一個組件的一個部分。
? ? ? ? ?軟件架構(gòu)常常表現(xiàn)為分層的層次結(jié)構(gòu),這種層次結(jié)構(gòu)將幾種不同的結(jié)構(gòu)放在一張圖中。20世紀70年代,Parnas指出“層次結(jié)構(gòu)”這個術(shù)語已經(jīng)被濫用,然后精確地定義了它,
并給出了幾個不同結(jié)構(gòu)的例子,它們在設(shè)計不同系統(tǒng)時實現(xiàn)了不同的目的(Parnas 1974)。將架構(gòu)的結(jié)構(gòu)描述為一組視圖(view),每個視圖關(guān)注不同的部分,現(xiàn)在已成為了廣泛接受的標準架構(gòu)實踐(Clements等2003; IEEE 2000)。我們將使用“架構(gòu)”這個詞來代指一組有標注的圖紙和功能描述,它說明了設(shè)計和構(gòu)建一個系統(tǒng)時所使用的結(jié)構(gòu)。在軟
件開發(fā)社區(qū)中,針對這樣的圖紙和描述,人們使用并建議了許多不同的形式。在Hoffman和Weiss(2000,第14章和第16章)的著作中可以看到一些例子。
? ? ? ? ?一個程序或計算系統(tǒng)的軟件架構(gòu)是系統(tǒng)的一種結(jié)構(gòu)或一組結(jié)構(gòu),它包含軟件元素、這些元素的外部可見的屬性,以及元素之間的關(guān)系。“外部可見”的屬性是其他元素對該元素可以做出的假定,諸如它提供的服務(wù)、執(zhí)行時的特征、錯誤處理、共享資源的使用等。
總結(jié)
以上是生活随笔為你收集整理的架构之美第八章-软件架构的含义的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中continue的用法_关
- 下一篇: 照片缩小尺寸怎么操作?