fbpx
维基百科

C4模型

C4模型軟體系統建模的圖形表示技巧[1][2]。C4模型會用到一些現有的建模技巧,例如统一建模语言(UML)及ER模型(ERD),會將系統結構化分解,分解為容器(container)和組件(component)。  

歷史

C4模型是由軟體架構師英语software architectSimon Brown在2006年至2011年之間創建,以统一建模语言4+1視景模型的基礎上建立。在2018年在官網上以知识共享许可协议[3]發佈,並且也提出相關的文章[4][1]

簡介

C4模型用以下的幾個視角來敘述軟體系統的架構[5],會說明系統分解為容器和組件的方式、各元素之間的關係,若是適用的話,也可以說明和使用者之間的關係[3]

C4模型會依其階層關係來分類[2][3]

  • 系統上下文圖(Context diagrams),第一層的圖,說明系統、和其使用者以及其他系統的關係。
  • 容器圖(Container diagrams),第二層的圖,將系統分解為彼此相關的容器(container)。容器可以是應用程序或是資料存儲。
  • 組件圖(Component diagrams),第三層的圖,將容器分別為彼此相關的組件,也說明組件和其他組件(或是其他系統)的關係。
  • 程式碼圖(Code diagrams),第四層的圖,提供架構元素的設計細節,可以對應到程式碼。在此層級的C4模型會用到目前已有的標示方式,例如统一建模语言ER模型或是集成开发环境產生的示意圖。

C4模型的第一層到第三層,用到五種基礎的圖示元素:人、軟體系統、容器、組件和關係。此技術沒有規定元素的佈局、形狀、顏色或是風格。C4模型建議以嵌套框為基礎的簡單圖表,方便互動式的協作繪圖。C4模型也鼓勵良好的建模實務,例如在每一個圖都加上標題以及圖例,以及清楚的標示,以方便目標讀者的理解。

敏捷開發社群中,不太希望有制式化的文件方式,以及前期的架構設計,C4模型可以將架構可視化,因此在敏捷社群很受歡迎[6]

相關條目

參考資料

  1. ^ 1.0 1.1 Richards,Mark; Ford, Neal. Fundamentals of software architecture: an engineering approach. O'REILLY MEDIA. 2019: 293. ISBN 978-1-4920-4342-3. OCLC 1138515057. some standard are emerging for diagramming software architecture (such as software architect simon Brown's C4 model or The Open Group Archimate standard) 
  2. ^ 2.0 2.1 Enríquez, René. Software Architecture with Spring 5. 0 : Design and Architect Highly Scalable, Robust, and High-Performance Java Applications.. Salazar, Alberto. Packt Publishing Ltd. 2018: 41–44. ISBN 978-1-78899-673-0. OCLC 1053798657. 
  3. ^ 3.0 3.1 3.2 Brown, Simon. The C4 model for visualising software architecture. c4model.com (Official site of the modelling technique). [2020-08-22]. (原始内容于2010-02-25). 
  4. ^ Brown, Simon. The C4 Model for Software Architecture. InfoQ. 2018-06-25 [2020-08-22]. (原始内容于2018-12-12) (英语). 
  5. ^ Keeling, Michael. Design it! : from programmer to software architect. Raleigh, North Carolina. ISBN 978-1-68050-345-6. OCLC 1024312521. 
  6. ^ The Conflict Between Agile and Architecture: Myth or Reality?. resources.sei.cmu.edu. SATURN 2013 conference. Software Engineering Institute of Carnegie Mellon University. [2020-08-22]. (原始内容于2021-04-19) (英语). 

外部連結

c4模型, 是軟體系統建模的圖形表示技巧, 會用到一些現有的建模技巧, 例如统一建模语言, 及er模型, 會將系統結構化分解, 分解為容器, container, 和組件, component, 目录, 歷史, 簡介, 相關條目, 參考資料, 外部連結歷史, 编辑是由軟體架構師, 英语, software, architect, simon, brown在2006年至2011年之間創建, 以统一建模语言和4, 1視景模型的基礎上建立, 在2018年在官網上以知识共享许可协议, 發佈, 並且也提出相關的文章, 簡介,. C4模型是軟體系統建模的圖形表示技巧 1 2 C4模型會用到一些現有的建模技巧 例如统一建模语言 UML 及ER模型 ERD 會將系統結構化分解 分解為容器 container 和組件 component 目录 1 歷史 2 簡介 3 相關條目 4 參考資料 5 外部連結歷史 编辑C4模型是由軟體架構師 英语 software architect Simon Brown在2006年至2011年之間創建 以统一建模语言和4 1視景模型的基礎上建立 在2018年在官網上以知识共享许可协议 3 發佈 並且也提出相關的文章 4 1 簡介 编辑C4模型用以下的幾個視角來敘述軟體系統的架構 5 會說明系統分解為容器和組件的方式 各元素之間的關係 若是適用的話 也可以說明和使用者之間的關係 3 C4模型會依其階層關係來分類 2 3 系統上下文圖 Context diagrams 第一層的圖 說明系統 和其使用者以及其他系統的關係 容器圖 Container diagrams 第二層的圖 將系統分解為彼此相關的容器 container 容器可以是應用程序或是資料存儲 組件圖 Component diagrams 第三層的圖 將容器分別為彼此相關的組件 也說明組件和其他組件 或是其他系統 的關係 程式碼圖 Code diagrams 第四層的圖 提供架構元素的設計細節 可以對應到程式碼 在此層級的C4模型會用到目前已有的標示方式 例如统一建模语言 ER模型或是集成开发环境產生的示意圖 C4模型的第一層到第三層 用到五種基礎的圖示元素 人 軟體系統 容器 組件和關係 此技術沒有規定元素的佈局 形狀 顏色或是風格 C4模型建議以嵌套框為基礎的簡單圖表 方便互動式的協作繪圖 C4模型也鼓勵良好的建模實務 例如在每一個圖都加上標題以及圖例 以及清楚的標示 以方便目標讀者的理解 在敏捷開發社群中 不太希望有制式化的文件方式 以及前期的架構設計 C4模型可以將架構可視化 因此在敏捷社群很受歡迎 6 相關條目 编辑软件架构參考資料 编辑 1 0 1 1 Richards Mark Ford Neal Fundamentals of software architecture an engineering approach O REILLY MEDIA 2019 293 ISBN 978 1 4920 4342 3 OCLC 1138515057 some standard are emerging for diagramming software architecture such as software architect simon Brown s C4 model or The Open Group Archimate standard 2 0 2 1 Enriquez Rene Software Architecture with Spring 5 0 Design and Architect Highly Scalable Robust and High Performance Java Applications Salazar Alberto Packt Publishing Ltd 2018 41 44 ISBN 978 1 78899 673 0 OCLC 1053798657 3 0 3 1 3 2 Brown Simon The C4 model for visualising software architecture c4model com Official site of the modelling technique 2020 08 22 原始内容存档于2010 02 25 Brown Simon The C4 Model for Software Architecture InfoQ 2018 06 25 2020 08 22 原始内容存档于2018 12 12 英语 Keeling Michael Design it from programmer to software architect Raleigh North Carolina ISBN 978 1 68050 345 6 OCLC 1024312521 The Conflict Between Agile and Architecture Myth or Reality resources sei cmu edu SATURN 2013 conference Software Engineering Institute of Carnegie Mellon University 2020 08 22 原始内容存档于2021 04 19 英语 外部連結 编辑Official site 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title C4模型 amp oldid 71814495, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。