軟件架構1


簡介


編輯

軟件體系結構是構建計算機軟件實踐的基礎。與建築師設定建築項目的設計原則和目標,作爲繪圖員畫圖的基礎一樣,一個軟件架構師或者系統架構師陳述軟件構架以作爲滿足不同客戶需求的實際系統設計方案的基礎。

軟件構架是一個容易理解的概念,多數工程師(尤其是經驗不多的工程師)會從直覺上來認識它,但要給出精確的定義很困難。特別是,很難明確地區分設計和構架:構架屬於設計的一方面,它集中於某些具體的特徵。

軟件架構是指在一定的設計原則基礎上,從不同角度對組成系統的各部分進行搭配和安排,形成系統的多個結構而組成架構,它包括該系統的各個組件,組件的外部可見屬性及組件之間的相互關係。組件的外部可見屬性是指其他組件對該組件所做的假設。

從和目的、主題、材料和結構的聯繫上來說,軟件架構可以和建築物的架構相比擬。一個軟件架構師需要有廣泛的軟件理論知識和相應的經驗來實施和管理軟件產品的高級設計。軟件架構師定義和設計軟件的模塊化,模塊之間的交互,用戶界面風格,對外接口方法,創新的設計特性,以及高層事物的對象操作、邏輯和流程。

是一般而言,軟件系統的架構(ArchitECture)有兩個要素:

它是一個軟件系統從整體到部分的最高層次的劃分。

一個系統通常是由元件組成的,而這些元件如何形成、相互之間如何發生作用,則是關於這個系統本身結構的重要信息。

詳細地說,就是要包括架構元件(Architecture Component)、聯結器(Connector)、任務流(TASk-flow)。所謂架構元素,也就是組成系統的核心"磚瓦",而聯結器則描述這些元件之間通訊的路徑、通訊的機制、通訊的預期結果,任務流則描述系統如何使用這些元件和聯結器完成某一項需求。

·建造一個系統所作出的最高層次的、以後難以更改的,商業的和技術的決定。

在建造一個系統之前會有很多的重要決定需要事先作出,而一旦系統開始進行詳細設計甚至建造,這些決定就很難更改甚至無法更改。顯然,這樣的決定必定是有關系統設計成敗的最重要決定,必須經過非常慎重的研究和考察。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章