先說答案。畫架構圖分四步走:第一,搞清楚要畫的架構圖的類型;第二,確認架構圖中的關鍵要素(比如產品、技術、服務);第三,梳理關鍵要素之間的關聯:包含、支撐、同級并列等;第四,輸出關聯關系清晰的架構圖。
應用架構圖接下來,我們作進一步解讀:
一、架構圖的定義及作用什么是架構圖?
維基百科、百度百科其實都沒有關于它的直接定義。不過我們可以進行拆分理解:架構圖=架構+圖這樣問題就轉化成,什么是架構,以及什么是圖?關于架構,百度百科上是這樣定義的:架構,又名軟件架構,是有關軟件整體結構與組件的抽象描述,于指導型軟件系統各個方面的設計。ISO/IEC 42010:20072 中對架構則有如下定義:
The fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.(系統架構,體現在它的組成部分、它們之間的相互關系和環境中,以及控制其設計和演化的原則。)也就是說,架構是由系統組件,以及組件間相互關系共同構成的集合體。而架構圖,則是用來表達這種集合的載體。它的作用也很簡單,兩個:劃分目標系統邊界將目標系統的結構可視化進而減少溝通障礙,提升協作效率。
二、架構的分類及畫法架構大致可以分為4類:
業務架構、應用架構、數據架構和技術架構,整體邏輯關系如下:
架構分類業務架構:使用一套方法論/邏輯對產品(項目)所涉及到的業務進行邊界劃分。所以熟悉業務是關鍵。比如做一個團購網站,你需要把商品類目、商品、訂單、訂單服務、支付、退款等進行清晰劃分,而業務架構不需要考慮諸如我用什么技術開發、我的并發大怎么辦、我選擇什么樣的硬件等等。
產品架構圖應用架構:它是對整個系統實現的總體上的架構,需要指出系統的層次、系統開發的原則、系統各個層次的應用服務。例如,下圖就將系統分為數據層、服務層、通訊層、展現層,并細分寫明每個層次的應用服務。
應用架構圖數據架構:是一套對存儲數據的架構邏輯,它會根據各個系統應用場景、不同時間段的應用場景 ,對數據進行諸如數據異構、讀寫分離、緩存使用、分布式數據策略等劃分。數據架構主要解決三個問題:第一,系統需要什么樣的數據;第二,如何存儲這些數據;第三,如何進行數據架構設計。
大數據架構圖技術架構:應用架構本身只關心需要哪些應用系統,哪些平臺來滿足業務目標的需求,而不會關心在整個構建過程中你需要使用哪些技術。技術架構則是應接應用架構的技術需求,并根據識別的技術需求,進行技術選型,把各個關鍵技術和技術之間的關系描述清楚。技術架構解決的問題包括:純技術層面的分層、開發框架的選擇、開發語言的選擇、涉及非功能性需求的技術選擇。
審核編輯 :李倩
-
可視化
+關注
關注
1文章
1200瀏覽量
21034 -
架構圖
+關注
關注
0文章
5瀏覽量
5550
原文標題:如何畫架構圖
文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論