CSAI首席顧問教你:如何成爲更合格的架構師

單一方法已捉襟見肘。一線架構師真正需要的,是覆蓋“需求進,架構出”全過程的實踐指導只有綜合了不同方法優點的“方法體系”才能堪此重任。方法體系必然是軟件業界未來發展的重大趨勢之一。

架構師是什麼

  • 一個架構師得需要足夠的想象力,能把各種目標需求進行不同維度的擴展,爲目標客戶提供更爲全面的需求清單。說得詳細一些, 架構師就是確認和評估系統需求,給出開發規範,搭建系統實現的核心構架,並澄清技術細節、掃清主要難點的技術人員。主要着眼於系統的"技術實現”
  • 架構師的主要任務:不是從事具體的軟件程序的編寫,而是從事更高層次的開發構架工作。他必須對開發技術非常瞭解,並且需要有良好的組織管理能力。可以這樣說,一個架構師工作的好壞決定了整個軟件開發項目的成敗。
  • 在成爲Java架構師之前,應當先成爲高級Java工程師,越基礎的東西越重要, 很多人認爲自己會用它們寫代碼了,其實僅僅是知道如何調用api已,離會用還差得遠。如果你立志做架構,首先打好基礎從最底層開始。然後發展到各種技術和語言,什麼都要懂兩點,要全面且不膚淺。
  • 架構師都是從碼農過來的:先精一門,爲全面且不膚淺打基礎。另外就是向有經驗的架構師學習, 和小夥伴們討論辯論爭論。其實最重要的能力就是不斷學習。在思考新的技術是否能更好地解決你們遇到的問題。
  • 千萬不要成爲不寫代碼的架構師,有些公司專門產不寫技術的架構師。
  • 不肯下苦功,如何高人一頭?

下面內容是來自:CSAI顧問團首席顧問著的《一線架構師的實踐指南》一書;關注後私信小編“架構師”可免費獲取一份PDF版完整版;

一線架構師:6個經典困惑

4個實際問題的困惑:

將系統劃分模塊,如何更合理?大系統架構設計,如何起步?總覺需求很糟糕,影響了架構設計!非功能需求重要,但如何設計?2個職業發展的困惑:

架構新手:缺乏指導,架構設計不知所措!架構老手:缺乏總結,仍“怕”下個項目!

4個核心主張

一、方法體系是大趨勢

單一方法已捉襟見肘。一線架構師真正需要的,是覆蓋“需求進,架構出”全過程的實踐指導——只有綜合了不同方法優點的“方法體系”才能堪此重任。本書認爲,方法體系必然是軟件業界未來發展的重大趨勢之一。

本書將要系統介紹的方法體系的名字一ADMEMS, 正是“Architectural DesignMethod has been Extended to Method System”的縮寫。是的,ADMEMS方法不是“單一方法”,而是由多個各具特點的方法組成的“方法體系”。ADMEMS方法通過它的名字亮明瞭其核心主張。

二、質疑驅動的架構設計

毫無疑問,架構設計是需求驅動的,而不是模型驅動的。

但需求驅動的說法,不太傳神一當你很清楚需求卻依然設計不出架構時就足以說明“需求驅動的架構設計”的總結還“缺點兒什麼”。

架構設計是一門藝術,你不可能把“一桶需求”倒進某臺神奇的機器然後等着架構設計自動被“加工生產”完畢,因此“需求驅動的架構設計”給架構師的啓發不夠。

缺點兒什麼呢?答案是,缺“人的因素”、“架構師的因素”!

架構設計實際上是個“質疑驅動的過程”需求,被架構師的大腦(而不是自動),有節奏地引入到架構設計的一波接一波的思維活動中。例如,作爲架構師,當你的架構設計進行到一半時,你可以明顯感覺到:這個架構設計中間成果,還需要“我”進一步通過“質疑”引入更多“質量屬性”以及“特殊功能場景”來驅動後續的架構設計工作的開展。

在保留“需求驅動的架構設計”所有正確內涵的同時,“質疑驅動的架構設計”告訴架構師:你的頭腦,纔是架構設計全過程的真正驅動力。質疑意識,是架構師最寶貴的意識之一。

至於有的專家提倡的“用例驅動的架構設計”這種觀點,則有嚴重缺陷,3句話足以揭示這一點:

  1. 需求=功能+質量+約束
  2. 用例是功能需求實際上的標準
  3. 用例涉及、但不涵蓋非功能需求

三、多階段方法

架構設計的多視圖方法很重要,但是,架構設計方法首先應當是多階段的,其次纔是多視圖的。

CSAI首席顧問教你:如何成爲更合格的架構師

 

一句話,先做後做——這叫階段 (Phase), 齊頭並進——這叫視圖 (View)。

任何好的方法(不侷限於軟件領域),都必須以時間爲軸來組織,因爲這樣才最利於指導踐。

架構設計只需多視圖方法,看上去很美,其實並不足夠。實際上,大量一線架構師早已感覺到多視圖方法的“不足夠”。例如,想想投標:

  1. 一方面,投標時,要提供和講解《方案建議書》,其中涉及到架構的內容。
  2. 另一方面,團隊開發時,需要《架構設計文檔》,供多方涉衆使用。
  3. 但是,投標時講的“架構”和並行開發時作爲基礎的“架構”在同-一個抽象層次上嗎?絕不可能。前者叫概念架構,後者叫細化架構。如果投標失敗,細化架構設計根本就不需要做了。
  4. 結論, 概念架構設計和細化架構設計,是2個架構階段,不是2個架構視圖。

四、內置最佳實踐的方法

方法不應該是個空框框,應融入最佳實踐經驗。相信業界很多專家都正朝着這個方向邁進。

ADMEMS方法中融入了筆者的哪些實踐經驗呢?僅舉幾例:

1、邏輯架構設計的10條經驗

2、質疑驅動的邏輯架構設計整體思路

CSAI首席顧問教你:如何成爲更合格的架構師

 

3、基於魯棒圖進行初步設計的10條經驗

4、ADMEMS矩陣方法

5、約束的4大類型

6、....

由於內容細節實在是太多了,感興趣的朋友點贊+關注+轉發後私信小編“架構師”免費獲取完整PDF版

第1章 緒論

CSAI首席顧問教你:如何成爲更合格的架構師

 

第2章Pre- architecture的故事

CSAI首席顧問教你:如何成爲更合格的架構師

 

第3章Pre- architecture總論

CSAI首席顧問教你:如何成爲更合格的架構師

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第4章需求結構化與分析約束影響

CSAI首席顧問教你:如何成爲更合格的架構師

 

 

第5章確定關鍵質 與關鍵功能 第2部分Conceptual Architecture階段

CSAI首席顧問教你:如何成爲更合格的架構師

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第2部分Conceptual Architecture階段

第6章概念架構的故事

CSAI首席顧問教你:如何成爲更合格的架構師

 

 

第7章Conceptual Architecture總論

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第8章初步設計

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第9章高層分割

CSAI首席顧問教你:如何成爲更合格的架構師

 

第10章考慮非功能需求 第3部分Refined Architecture階段

CSAI首席顧問教你:如何成爲更合格的架構師

 

第3部分Refined Architecture階段

第11章細化架構的故事

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第12章Refined Architecture總論

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第13章邏輯架構

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第14章物理架構、運行架構、開發架構

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第15章數據架構的難點:數據分佈

 

CSAI首席顧問教你:如何成爲更合格的架構師

 

第16章考慮非功能需求

第17章應對非功能 目標的理性設計難題

CSAI首席顧問教你:如何成爲更合格的架構師

 

 

 架構師都是從碼農過來的,媳婦熬成婆。

加油吧,各位!記得點贊+關注哦

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章