工作中我們經(jīng)常需要給其他人介紹項(xiàng)目架構(gòu),有什么方法可以提高介紹的效果嗎惕橙?根據(jù)本人經(jīng)驗(yàn),總結(jié)了一篇指南钉跷。
要讓對(duì)方掌握項(xiàng)目架構(gòu)弥鹦,一個(gè)清晰的介紹架構(gòu)和順序可以事半功倍。
項(xiàng)目背景
在介紹項(xiàng)目架構(gòu)之前尘应,首先要介紹一下項(xiàng)目本身的意義和目的惶凝,便于對(duì)方了解項(xiàng)目背景
- 解決了什么問題,滿足了什么需求等?
- 目標(biāo)用戶是誰?(可以用類似講故事的方式介紹對(duì)目標(biāo)用戶的帶來的價(jià)值)
- 目前用戶的使用情況如何(訪問量犬钢,滿意度苍鲜,各個(gè)功能使用情況等數(shù)據(jù))
功能點(diǎn)
項(xiàng)目針對(duì)用戶需求或問題,開發(fā)了哪些功能
在介紹功能的時(shí)候玷犹,最好要有用戶視角混滔,而且可能還涉及到多個(gè)不同角色的用戶。比如ToB的終端用戶,B端企業(yè)用戶坯屿,企業(yè)老板等
核心功能
滿足用戶核心需求油湖、解決核心問題的功能
比如:
- RPC框架中的遠(yuǎn)程調(diào)用
- ORM框架中對(duì)象關(guān)系轉(zhuǎn)換
- 智能問答系統(tǒng)中問答功能
輔助功能
配合核心功能工作的輔助功能
比如:
- RPC框架中的調(diào)用鏈路跟蹤、監(jiān)控领跛、連接池管理乏德、負(fù)載均衡等
- ORM框架中的動(dòng)態(tài)SQL、參數(shù)綁定吠昭、緩存等
- 智能問答系統(tǒng)中的知識(shí)庫管理喊括、相似問題學(xué)習(xí)等
性能&安全
在比較完善的系統(tǒng)規(guī)劃中,性能&安全都是重要功能特性之一矢棚,可以作為廣義功能來介紹
比如:
- 吞吐量
- 響應(yīng)時(shí)間
- XSS/CSRF/SQL注入等漏洞修復(fù)
- 數(shù)據(jù)安全等
這一部分也可以放在架構(gòu)之后再介紹
發(fā)展規(guī)劃
如果有的話郑什,就簡(jiǎn)單介紹一下項(xiàng)目未來的發(fā)展方向(不要超過一張PPT,不要超過1分鐘)
架構(gòu)圖
使用各種類型的圖表蒲肋、文字蘑拯、動(dòng)畫等把項(xiàng)目的整體架構(gòu)描述清楚,外行覺得很思路清晰兜粘,內(nèi)行能夠很容易掌握技術(shù)點(diǎn)申窘,能夠理解架構(gòu)的優(yōu)缺點(diǎn)。
優(yōu)缺點(diǎn)是指架構(gòu)設(shè)計(jì)中的取舍孔轴,取對(duì)項(xiàng)目重要的特性偶洋,舍棄本項(xiàng)目影響不大,可以接受的特性
模塊層次圖
系統(tǒng)中各個(gè)模塊的組成距糖,模塊實(shí)現(xiàn)方式,模塊層次牵寺,模塊之間調(diào)用方式等
比如:存儲(chǔ)模塊悍引、緩存模塊、日志模塊帽氓、運(yùn)營(yíng)數(shù)據(jù)趣斤、監(jiān)控模塊以及各個(gè)業(yè)務(wù)功能模塊。
核心流程圖
各個(gè)模塊在核心功能及主要輔助功能流程中的作用黎休,使用流程圖把各個(gè)模塊串聯(lián)起來
使用流程圖形式浓领,讓對(duì)方了解系統(tǒng)是如何使用各個(gè)模塊協(xié)作實(shí)現(xiàn)核心功能
技術(shù)點(diǎn)
流程在使用各個(gè)模塊中實(shí)現(xiàn)的技術(shù)點(diǎn)
比如:
- 緩存及緩存同步
- 分布式鎖
- 分布式會(huì)話管理
- 負(fù)載均衡
- 監(jiān)控
- AB Test
- AOP或字節(jié)碼修改等
如果有技術(shù)亮點(diǎn),可以重點(diǎn)介紹一下
遺留的問題
沒有一種架構(gòu)是完美的势腮,根據(jù)業(yè)務(wù)發(fā)展情況联贩,有的問題的優(yōu)先級(jí)不高,可以暫時(shí)保留
- 比如緩存同步的方案捎拯、緩存數(shù)據(jù)量太大泪幌、運(yùn)營(yíng)數(shù)據(jù)比較雜亂等
改進(jìn)方向
如何解決遺留的問題,如何更好滿足未來的需求,當(dāng)業(yè)務(wù)量不斷增大的時(shí)候祸泪,是否有預(yù)案
比如:
- 分庫分表吗浩、異構(gòu)數(shù)據(jù)庫等
- Set化
- 數(shù)據(jù)冷熱分離等
監(jiān)控&告警
沒有接入監(jiān)控&告警系統(tǒng)的項(xiàng)目是不允許發(fā)布上線的
- 項(xiàng)目使用了什么監(jiān)控系統(tǒng),監(jiān)控了哪些指標(biāo)没隘,使用什么樣的告警機(jī)制
高可用
如果是行業(yè)標(biāo)準(zhǔn)高可用方案的話懂扼,簡(jiǎn)單介紹一下即可
其他
- 與其他類似項(xiàng)目的對(duì)比