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