成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

史海峰:架構評審的意義

開發 開發工具
架構設計往往沒有想象中那么簡單純粹,甚至一多半的精力要關注非核心的方面。

許多公司的項目流程中都有架構評審環節,卻鮮少有人提起,大概對于參與者來說都并不是多么愉快的經歷,一提都要皺著眉頭,各有一肚子苦水涌上心頭,慨嘆不堪回首。

[[184623]]

被評審的同學感覺像是過堂,冥冥中有人在高聲呼喝“升堂~~威武~~”,生怕自己一句話沒說明白,對面的黑臉胖子就會蹦起來叫“開鍘”,沒通過評審連死的心都有。

[[184624]]

依我看,這源于認知沖突(這個詞兒是從《架構即未來》里學的),參與各方的認知不一致,甚至引發情感沖突。

今天簡單說說我對架構評審的認識,主要是評審的意義所在,理解了意義,目標一致,自然同心協力。

曾經有次架構評審,兩位其他部門的同事問我架構設計有什么特別思維,要掌握哪些不為人知的高能技巧。

我當時心思還在方案上,順口回答其實跟編程做開發都是一脈相承的,該怎么拆分解耦怎么抽象聚合,道理上都是一樣一樣一樣的啊。

大概這個答案不符合兩位同事的預期,他們臉上有些失望,還有些不以為然,可能認為我在敷衍或者是本身就其實難副,就沒再繼續交流下去。

似乎不久之后,他們都離開了那個公司,不知如今是否找尋到了滿意的答案。

如今再想,當年的確回答得太狹隘了,架構設計還要考慮很多其他方面。

架構評審、跟技術方案評審、CodeReview一樣,都是項目流程必要環節,是指對架構設計方案進行評審。

在傳統的軟件工程理論中,設計階段產出物就是設計文檔,包括概要設計/詳細設計,但不分產品和研發,所以文檔既包括功能描述,也包括技術實現,有些對日外包的項目,甲方發過來的文檔里連偽代碼都寫好了,就等著你翻譯成代碼,外包工程師純粹就是一個翻譯機器。

而到了互聯網時代,提倡敏捷迭代,總嫌傳統方式太重,流程復雜,影響效率,什么都希望短平快,在扁平化的組織中,經常是需求火速分發到一線研發,然后就靠個人折騰去了。

實際上達到一定規模的公司多半會進行架構評審,即由架構評審組織(架構評審委員會之類)制定架構設計文檔規范,設計人員根據規范編寫方案,設計人員當面向評審人員講解方案,回答評審人員問題,評審人員提出意見和建議,雙方進行討論以充分溝通,最終由評審人員決定是否通過,一次評審不通過可以修改后再次評審。

本質上架構評審跟測試相同,都為了保證質量,也沒見誰對測試有多反感,宣稱不需要測試通過就可以直接上線的。

由于技術人員普遍存在文人相輕的心理,對于參加評審被人挑毛揀刺的活動容易有所抵觸。

評審過程中會講到實現的關鍵點,因此有些相關人員也會參與了解,比如測試、數據、安全等,可能在無形中增加了被審者的心理壓力。

畢竟架構設計代表著更高階的技術能力,當面當眾被指出問題要求修改,慣于“一人我擼代碼”的研發人員容易自尊心受傷,面子上掛不住。

有強烈的技術個人自由主義傾向的同學,并不適合團隊作戰。

只注重研發實現,技術新潮,不關注線上性能、持續運維、故障應急的程序猿,再牛也不是好攻城獅。

自己的設計被指出問題,提出改進建議,不喜反惱,則是心態不成熟的表現。

架構評審的目的是什么?

把關,確保方案合格,各方面都考慮到了,避免缺陷和遺漏,不求方案多牛,至少不犯錯。

保證架構設計合理和基本一致,符合整體原則。

維持對系統架構的全局認知,避免黑盒效應。

通過評審發掘創新亮點,推廣***實踐。

以上四點重要性從高到低排列。

可見,評審都是對事,而不是對人,參與評審的各方是平等的,各司其職,而項目是服務于公司業務的。

有人會自信滿滿拍著胸脯說自己的設計已經足夠***,不需要再費時間給別人講,你敢保證別人的也跟你一樣***么?這次***了,下次也會么?

方案設計不僅僅是考慮功能實現,還有很多非功能需求,以及持續運維所需要的工作,需要工程實踐經驗,進行平衡和取舍。

架構設計往往沒有想象中那么簡單純粹,甚至一多半的精力要關注非核心的方面。

隨便舉幾個例子:

  1. 互聯網金融公司的系統沒有對賬機制——你還敢投錢在里面么?
  2. 有的人號稱玩轉高并發多線程,扣減積分/余額程序就是先查詢,再判斷夠不夠,夠的話就減掉后更新。——不知道被人白刷掉多少呢,刷多了應該能發現,拜托,對賬都沒有,你怎么發現?
  3. 對異常情況考慮不全,數據流斷了,數據就丟了,邏輯要是再復雜點兒,時間再久一點,再想修復?愁死你。
  4. 核心業務應用,方案設計很費心思,但沒考慮過性能指標,也沒想過怎么監控告警——這都是沒吃過虧,捅過簍子的。
  5. 有人對著自己的***方案講著講著,不等別人指出,就發現了數據邏輯沒有完整閉環的問題。

有人會說經驗都是趟坑積累出來的,否則沒法成長,你問問老板愿意拿業務系統當練手的試驗田么?

于是有了架構評審,更多有豐富經驗的人花較少的時間成本,快速的過一遍方案設計,三個臭皮匠賽過諸葛亮,更何況有資格做架構評審的,都是見識過各種情況的。

但不代表評審的人就高人一等更權威,再牛的人,討論技術方案,也要以理服人。

有些做評審的,認為浪費自己時間,因為總是那些常見問題,還要耐心聽完,自己似乎沒有得到什么提高,請注意,能避免犯錯,系統不至于三天兩頭到處冒煙,這就是莫大的光榮。

有些被評審的,在評審時感覺低人一頭,仿佛被人審判,進一步會想“憑什么你來評審我,你算老幾啊,這業務你沒我懂啊!”對不起,這真不是業務百科知識大賽。

身邊的人牛就不爽,覺得沒啥了不起,碰到業界大神又驚呼真平易近人!

其實大神本來就平易近人,不會覺得自己高高在上,心智成熟,有自知之明。

大牛之所以成為大牛,也許就因為人家不飄飄然,腳踏實地,勤于做事,虛懷若谷,空杯心態。

系統是滿足需求,實現業務功能的,大家都是為了能查漏補缺才坐到一起。

良好的心態才能合作,才能共贏。功勞是大家的,出了問題,共擔責任,不能置身事外。

***一句,既然都來了,放下那些有的沒的,好好琢磨方案才是正道!

【本文為51CTO專欄作者“史海峰”的原創稿件,轉載請通過作者微信公眾號“IT民工閑話(ITCrossTalker)”獲取聯系和授權】

戳這里,看該作者更多好文

 

責任編輯:武曉燕 來源: 51CTO專欄
相關推薦

2022-03-02 10:32:41

架構師系統架構

2021-09-06 08:55:16

軟件開發 架構

2021-03-26 07:47:18

單體架構程序

2021-06-09 08:09:05

架構軟件整潔

2009-07-08 16:46:54

J2SE 5.0

2010-02-05 15:46:41

IBM Power

2022-07-01 18:30:32

架構IT人生

2016-08-08 13:59:02

MySQL架構數據庫

2011-02-22 17:25:42

LinuxUnix

2011-09-01 09:34:21

架構

2013-04-02 14:27:02

架構架構評審

2018-08-22 17:58:01

數據平臺數據倉庫架構

2021-04-12 09:48:50

MVCHTMLCSS

2017-09-12 17:56:06

騰訊云云+未來

2017-09-16 18:29:00

代碼數據庫線程

2021-04-30 09:16:08

軟件架構命名

2014-12-31 17:16:15

知乎架構變遷史

2020-09-29 09:39:35

網絡攻擊

2010-11-01 00:40:39

Unix發展史

2019-04-09 09:50:34

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩一区二区福利视频 | 欧美国产亚洲一区二区 | 91视频官网 | 亚洲午夜电影 | 欧美在线一区二区三区 | 亚洲啊v在线 | 一区二区三区在线 | 欧 | 在线视频 亚洲 | 久久久久精 | 老妇激情毛片免费 | 色网站入口| 午夜精品视频 | 日本高清视频在线播放 | 91精品久久久久久久久99蜜臂 | 中文字幕av亚洲精品一部二部 | 五月天婷婷综合 | 中文字幕第100页 | 日本精品久久 | 天天干天天爱天天 | 中文字幕日韩一区 | 成人一区二区视频 | 精品一区二区在线看 | 亚洲成人一区二区 | 成人精品一区二区三区 | 国产精品欧美精品 | 韩国精品一区二区三区 | 欧美自拍第一页 | 中文在线a在线 | 国产一区二区精品在线观看 | 国产91视频免费 | 毛片a区| 羞羞视频免费观看 | av在线免费观看网站 | 男女在线免费观看 | 午夜免费网 | 天天操一操 | 91精品国产91久久综合桃花 | 国产在线观看不卡一区二区三区 | 亚洲一区二区 | 精品无码久久久久久国产 | 亚洲97 |