軟體架構風格概述:
軟體開發是根據用戶要求建造出軟體系統或者系統中的軟體部分的過程。軟體開發是一項包括需求捕捉,需求分析,設計,實現和測試的系統工程。軟體一般是用某種程式設計語言來實現的。通常採用軟體開發工具可以進行開發。軟體分為系統軟體和套用軟體。軟體並不只是包括可以在計算機上運行的程式,與這些程式相關的檔案一般也被認為是軟體的一部分。軟體設計思路和方法的一般過程,包括設計軟體的功能和實現的算法和方法、軟體的總體結構設計和模組設計、編程和調試、程式聯調和測試以及編寫、提交程式。
軟體體系結構風格是描述某一特定套用領域中系統組織方式的慣用模式。體系結構風格定義一個系統家族,即一個體系結構定義一個辭彙表和一組約束。辭彙表中包含一些構件和連線件類型,而這組約束指出系統是如何將這些構件和連線件組合起來的。體系結構風格反映了領域中眾多系統所共有的結構和語義特性,並指導如何將各個模組和子系統有效地組織成一個完整的系統。對軟體體系結構風格的研究和實踐促進對設計的重用,一些經過實踐證實的解決方案也可以可靠地用於解決新的問題。例如,如果某人把系統描述為“客戶/伺服器”模式,則不必給出設計細節,我們立刻會明白系統是如何組織和工作的。
Garlan和Shaw將通用軟體體系結構風格總結為以下幾類:
1.數據流風格:批處理序列;管道/過濾器。2.調用/返迴風格:主程式/子程式;面向對象風格;層次結構。3.獨立構件風格:進程通訊;事件系統。4.虛擬機風格:解釋器;基於規則的系統。5.倉庫風格:資料庫系統;超文本系統;黑板系統。