這篇是一篇番外篇,沒有太多代碼與邏輯,完全是一種」軟「技巧,但是它對於你如何成為一名合格的架構設計人員很重要。
在此要澄清一點,架構師本身也是」程式設計師「,不是光動嘴皮子的傢伙們,如果你不是一名程式設計師出身那你根本談不上也不可能成為一名架構師。
那麼架構師還有哪些是作為一名程式設計師來說不具備的呢?
其中有一項能力就叫做」文檔寫作能力「。
作為一名架構師除得是一名資深的程式設計師外,它還必須具有相應的Soft Skill,其中有一名就叫做Documentation Skill。
1. 先來說一下Hard Skill
代碼與框架以及產品的靈活使用以及在相應的domain(如Insurance, Banking, CRM, DW。。。)上的經驗我們把它稱為Hard Skill,沒有這些技巧你就成不了一名合格的程式設計師。
程式設計師和IT是有區別的,程式設計師是IT業內的主力軍團,但是如果你是在一家網站或者是軟體司作需求分析的,哪怕是一個秘書,那你也是一個IT人員,對吧?所以這些東西是一個成為架構師的「硬」條件。
2. 什麼是Soft Skill
Soft Skill即指Documentation Skill, Presentation Skill,Communication Skill, 相應的Language Skill(不包括日本語,BS小日本), Management Skill, Leader Ship, 這些.
當然,還有更多,更多。。。
2.1 Documentation Skill與Presentation Skill
今天主要講述的是Documentation Skill與Presentation Skill。
勿要小看這兩點,有人說他自己編程編得好,有人說自己的算法寫了如何如何精深,那麼。。。在現在這個團隊合作至上以及處於目前這樣的世界經濟大環境以客戶至上的背景下你所知道的的東西不能向其它人表達清楚,誰會理解你的想法,誰會接受你的理念,誰會選擇你公司的產品呢?
舉兩個例子:
蘇步青,他是大數學家,對吧,或許不少人不知道蘇步青在文學上的造詣也是很深的。
蘇步青曾說過:為什麼我喜歡語文,語言,因為我的論文,我的教材需要用語言去表達的,如果不把語言,語文學好我根本無法更精準更明白的去表達我的算法。
著名計算機學者C語言教程的作者譚好強曾經說過:能夠把複雜的問題用簡單直白的語言和框圖去表達出來,就是最好的論文。
再說個實際點的例子,你處於一個投標競賽中,你的設計或許是很好,可是如何讓客戶能夠理解和接受貴公司的設計方案呢?
那麼你需要在平時有意識的去提高或者我們說修練一下你的documentation skill,documentation skill與presentation skill是聯繫在一起的.
2.2 要善於懂得「包裝」
Presentation Skill即」宣傳、演示、演講、推銷&34;的促銷手法。
要學會「包裝」但不是扯蛋和吹牛,因為架構師拿出來的東西哪怕再漂亮,如果沒有內含那也是「濫竽充數」,被人識破後就一錢不值了。但是我們在有好的質量好的技術的基礎上善於去「包裝」它,相信你會離成功更近一步。
我在前公司有一陣沒空,一度讓其它幾個senior的Team Leader幫助我寫文檔,要求把設計按照需求能夠寫清即可。
送上來5篇文章,基本一篇都不能用.
第一次送上來,每篇都是講一個功能點,要不是冗長的一段沒意義的解釋,要不就是從官網直接COPY一段話下來,甚至連1,2,3,4都沒列出來,至少你要有個Advantage Points 或者說是Benefit和Disadvantage Points的對比吧.
第二次送上來,有了1,2,3,4,但是這下好了,全都標成1,2,3,4了。
要善於利用office編輯器中的「符號列表」,「4角星」代表亮點,「√&34;這個描述來說,你要畫的圖其實是建立在你的Hard Skill上的。
3.2.3 依照「八股文」來繪製設計圖
八股文就是有條理有章矩,不管什麼樣的文章你按照八股文去寫,寫出來都是一樣的層次,我們考四級英語的「寫作」這一本時其實也是有「章法」可循的對吧?
那麼這個設計圖的畫法也是有章可循的,也是有它的「八股文」樣板的。
前面說了,上手三套圖先聲奪人,搶人二目,那麼在架構設計文檔中還會充斥著種種模塊,子模塊,功能設計,功能點描述圖。。。如果你也來個一概而論,那就不是先聲奪人了,而是「喧賓奪主「了,呵呵呵。
這種子模塊、功能設計或者是功能點描述往往往以點、線為主,以點、線來連成一個面,而面中」鏤空「,如下面的樣例:
七叔:You are beautiful...啊...you are beautiful...You are so handsome...啊You are so handsome...
周星星:七叔,你不要這樣好吧。。。七叔。。。來人啊。。。
我在前一天即第二十五天中用來描述DbUnit的優點時用到了一套圖,它們是這樣的,大家還記得吧?
右邊的文字,沒什麼稀罕的,都是配色而己,關鍵在於左邊的這個圖。。。hoho,很多人問我用的是什麼工具畫的?
我告訴你們,我不是美工,我其實是在「拼圖」,如這幅圖的製作:
我是用了以下這5幅小圖標,拼制而成的:
不是這麼簡單的,隨便畫畫就成了,都要花功夫的、花心思去製作的。
IBM的文檔是我看到過最恐怖的文檔,基本上這裡面的架構文檔出來都一個腔調,沒什麼文字,都是圖,連個「登錄過程」都用圖表達,連個「源碼check in check out」的管理流程都用圖表達。
保持你的圖系一致及風格的一致,你可以用卡通系、商務系任何一個系的圖來表達你的設計思想,但是當你的第一幅圖用的就是哪個系時,你的文檔中所有的圖都請用這個系列,而不建議你混雜使用你的圖系。
什麼都不多說,上截圖,大家自己去感受一下吧
今天就說這麼多,希望對大家提高你的設計文檔寫作水平有所提高吧。