4+1視景模型(4+1 view model)也稱為4+1架構視圖,是「以使用多個、並發的視景為基礎,描述軟件密集系統的架構」的視景模型英語view model[1]。這些視景是用各利益相關者的觀點來描述系統,包括有用終端使用者、開發、系統工程師以及專案經理。模型的四個視景是邏輯、開發、過程以及實體視景。此外,也可以用用例或情景(scenarios)來描述架構(+1),因此可以稱為4+1視景[1]

  • 邏輯視景(Logical view):邏輯視景和提供給終端使用者的機能有關。會用統一塑模語言(UML)來表現邏輯視景,包括有類別圖狀態圖[2]
  • 過程視景(Process view):過程視景處理系統的動態層面,說明系統的過程以及通訊的方式,着重在系統運行時的時間特性。過程視景描述並發性、分散、整合者、效能以及可擴縮性(scalability)等。表示過程視景的UML有時序圖通訊圖英語Communication diagram活動圖[3][2]
  • 開發視景(Development view):開發視景描述從程式設計師的觀點所看到的系統,着重軟件的管理。此視景也稱為實現視景(implementation view),會用到UML中的組件圖來說明系統組件。套件圖英語Package diagram也可以用來說明開發視景[2]
  • 實體視景(Physical view):實體視景以系統工程師的觀點來說明系統,這和軟件組件在實體層上的拓撲有關,也和各組件之間的實體連接有關。此視景也稱為是佈署視景(deployment view)UML圖中的部署圖英語Deployment diagram可以說明實體視景[2]
  • 情景(scenarios):這種說明架構的方式是透過小型的用例或情景來進行,這是第五個觀點。情景會敘述各物件、各過程之間互動的結果。也可以用來識別架構元素,也可敘述並且確認架構設計。這也是架構原形測試的起點。此視景也稱為是用例視景(use case view)。
4+1視景模型的說明

4+1視景模型是通用的,沒有限制標示方式、工具或是設計方法。摘錄Kruchten的文字如下

4+1視景模型是通用,也可以使用其他的標示方式或工具。也可以使用其他的設計方式,特別是在邏輯以及過程的拆解上。不過我們會指出我們曾經成功使用的方法。

——Architectural Blueprints—The "4+1" View Model of Software Architecture[1]

相關條目 編輯

參考資料 編輯

  1. ^ 1.0 1.1 1.2 Kruchten, Philippe (1995, November). Architectural Blueprints — The 「4+1」 View Model of Software Architecture.頁面存檔備份,存於互聯網檔案館) IEEE Software 12 (6), pp. 42-50.
  2. ^ 2.0 2.1 2.2 2.3 Mikko Kontio (2008, July) Architectural manifesto: Designing software architectures, Part 5頁面存檔備份,存於互聯網檔案館
  3. ^ Hui, LM; Leung, CW; Fan, CK; Wong, TN. Modelling agent-based systems with UML. Proceedings of the Fifth Asia Pacific Industrial Engineering and Management Systems Conference. 2004.