軟(ruan)件系統架構師綜合的知識能力包(bao)括9個方面,即:
1、戰(zhan)略規劃能力。
2、業務流(liu)程建模(mo)能力。
3、信息數據結構能力。
4、技術架構(gou)選擇(ze)和實現能力。
5、應用系(xi)統架構(gou)的解決和實現能力(li)。
6、基礎IT知識及(ji)基礎設施、資源(yuan)調配能力。
7、信息安(an)全(quan)技術支持(chi)與管理保障能力。
8、IT審計、治理(li)與(yu)基本(ben)需求(qiu)分析、獲取(qu)能力。
9、面(mian)向軟件(jian)系(xi)(xi)統可靠性與系(xi)(xi)統生(sheng)命周期的(de)質量保障服務能力。
作為(wei)(wei)系統架(jia)構師(shi)(shi),必須成(cheng)為(wei)(wei)所在開(kai)發團隊(dui)(dui)的(de)技(ji)(ji)術路線指導(dao)者;具有(you)(you)(you)很(hen)強的(de)系統思維的(de)能力(li);需要從大量互相沖突(tu)的(de)系統方(fang)(fang)法和工具中區分出哪些是有(you)(you)(you)效(xiao)的(de),哪些是無效(xiao)的(de)。架(jia)構師(shi)(shi)應當是一(yi)個成(cheng)熟的(de)、豐(feng)富的(de)、有(you)(you)(you)經驗的(de)、有(you)(you)(you)良好教(jiao)育的(de)、學(xue)習(xi)快(kuai)捷、善溝(gou)通(tong)(tong)(tong)和決(jue)策能力(li)強的(de)人(ren)。豐(feng)富是指他(ta)必須具有(you)(you)(you)業務領域(yu)方(fang)(fang)面(mian)的(de)工作知識,知識來源于經驗或者教(jiao)育。他(ta)必須廣泛了解(jie)各種(zhong)(zhong)技(ji)(ji)術并(bing)精通(tong)(tong)(tong)一(yi)種(zhong)(zhong)特(te)定(ding)技(ji)(ji)術,至少了解(jie)計算機(ji)通(tong)(tong)(tong)用(yong)技(ji)(ji)術以便確定(ding)那種(zhong)(zhong)技(ji)(ji)術最優,或組(zu)織團隊(dui)(dui)開(kai)展技(ji)(ji)術評估(gu)。優秀的(de)架(jia)構師(shi)(shi)能考慮并(bing)評估(gu)所有(you)(you)(you)可用(yong)來解(jie)決(jue)問題(ti)的(de)總體技(ji)(ji)術方(fang)(fang)案。需要良好的(de)書面(mian)和口(kou)頭溝(gou)通(tong)(tong)(tong)技(ji)(ji)巧(qiao),一(yi)般通(tong)(tong)(tong)過可視化模(mo)型(xing)和小組(zu)討論(lun)來溝(gou)通(tong)(tong)(tong)指導(dao)團隊(dui)(dui)確保開(kai)發人(ren)員按照架(jia)構建造系統。
(1)技術能力
技術(shu)能(neng)力,不(bu)(bu)用(yong)置(zhi)疑肯定(ding)是(shi)(shi)(shi)最重要(yao)的(de)(de)(de)。技術(shu)能(neng)力弱的(de)(de)(de)架(jia)構不(bu)(bu)是(shi)(shi)(shi)一個好架(jia)構。所(suo)(suo)以(yi),你(ni)(ni)需要(yao)知(zhi)道所(suo)(suo)有主流技術(shu)的(de)(de)(de)基本原理、應用(yong)場景,及快速解決問題的(de)(de)(de)能(neng)力。所(suo)(suo)以(yi),架(jia)構師必須(xu)要(yao)有見識,所(suo)(suo)需知(zhi)識面肯定(ding)是(shi)(shi)(shi)要(yao)不(bu)(bu)斷拓展的(de)(de)(de)。你(ni)(ni)需要(yao)清楚(chu)在什么樣的(de)(de)(de)場景用(yong)什么樣的(de)(de)(de)技術(shu)比(bi)較合(he)適,并(bing)知(zhi)道可(ke)能(neng)存在什么樣的(de)(de)(de)風險(xian)。來了需求,你(ni)(ni)腦袋是(shi)(shi)(shi)空的(de)(de)(de),不(bu)(bu)知(zhi)道用(yong)什么技術(shu)這(zhe)是(shi)(shi)(shi)最可(ke)怕的(de)(de)(de)。
(2)架構能力
這個可以表現為(wei)抽象能力(li)、整體規(gui)劃(hua)(hua)能力(li)、及(ji)設(she)計能力(li)。你(ni)需(xu)要照在業(ye)務(wu)的(de)角(jiao)度進(jin)(jin)行(xing)(xing)系統分解、技(ji)(ji)術(shu)選型、架構(gou)搭建,以及(ji)規(gui)范制定。架構(gou)出來了至少可以滿足(zu)最(zui)近的(de)發展,或者可以很方便對現有(you)架構(gou)進(jin)(jin)行(xing)(xing)擴容。有(you)人說(shuo)架構(gou)不(bu)(bu)(bu)需(xu)要懂(dong)業(ye)務(wu),我面(mian)(mian)試過的(de)就有(you)明確表示不(bu)(bu)(bu)做業(ye)務(wu)架構(gou)。當然有(you)方面(mian)(mian)的(de)架構(gou)師,如(ru)(ru)中間件架構(gou)師,運維基礎設(she)施架構(gou)師等。但一般的(de)后端架構(gou)師都(dou)是需(xu)要了解業(ye)務(wu),不(bu)(bu)(bu)理解業(ye)務(wu)你(ni)如(ru)(ru)果(guo)進(jin)(jin)行(xing)(xing)系統分解,服(fu)務(wu)劃(hua)(hua)分,及(ji)根據(ju)不(bu)(bu)(bu)同業(ye)務(wu)作出不(bu)(bu)(bu)同的(de)架構(gou)。技(ji)(ji)術(shu)都(dou)是為(wei)業(ye)務(wu)服(fu)務(wu)的(de),不(bu)(bu)(bu)站在業(ye)務(wu)的(de)角(jiao)度設(she)計架構(gou),那(nei)架構(gou)就是空談。
(3)溝通能力
這個(ge)(ge)看起來不(bu)(bu)是(shi)最重要的(de)(de)(de),其實也非常重要。作(zuo)為一個(ge)(ge)優秀的(de)(de)(de)架構師(shi),你需要清楚的(de)(de)(de)知道(dao)客戶的(de)(de)(de)需求(qiu),需要不(bu)(bu)斷和(he)需求(qiu)人(ren)員進行溝通,以達到客戶真正的(de)(de)(de)目(mu)的(de)(de)(de)。不(bu)(bu)論是(shi)不(bu)(bu)是(shi)架構師(shi),任何(he)一個(ge)(ge)職(zhi)場人(ren),提(ti)高自(zi)己的(de)(de)(de)溝通表達能力(li)無疑是(shi)不(bu)(bu)可或缺的(de)(de)(de)。有一句(ju)話(hua)怎么說的(de)(de)(de),領導(dao)就喜歡拍馬屁的(de)(de)(de)。做領導(dao)的(de)(de)(de)大多不(bu)(bu)是(shi)技術(shu)特別(bie)牛的(de)(de)(de),但溝通能力(li)肯(ken)定是(shi)很(hen)好(hao)的(de)(de)(de)。
系統構(gou)(gou)架(jia)(jia),是對已確定的需求(qiu)的技術(shu)實現構(gou)(gou)架(jia)(jia)、作好規(gui)劃(hua),運用(yong)成(cheng)套(tao)、完(wan)整的工具,在(zai)規(gui)劃(hua)的步驟下(xia)去完(wan)成(cheng)任務(wu)。系統架(jia)(jia)構(gou)(gou)師做為系統架(jia)(jia)構(gou)(gou)的設計(ji)者,關系到應(ying)用(yong)系統成(cheng)敗的關鍵。
系(xi)統架構師的主要功(gong)能包括:
(1)系統架構(gou)(gou)師(shi)是軟件(jian)(jian)項目(mu)的(de)總體(ti)設計師(shi),是軟件(jian)(jian)組織新產品的(de)開發與集成、新技術體(ti)系的(de)構(gou)(gou)建者(zhe)。
(2)系統架構師(shi)是(shi)在技術(shu)上(shang)對(dui)所有重要事情做(zuo)出(chu)決定的人(系統架構師(shi)在整個軟件開(kai)發過程中都起著重要作用,并隨著開(kai)發進(jin)程的推進(jin)而其職(zhi)責或關注點(dian)不斷地變化)。
(3)需求(qiu)階段(duan),軟件架構師負責理(li)解和管理(li)非功(gong)能(neng)性(xing)(xing)(xing)系統需求(qiu),比如軟件的可(ke)維護性(xing)(xing)(xing)、性(xing)(xing)(xing)能(neng)、復用性(xing)(xing)(xing)、可(ke)靠性(xing)(xing)(xing)、有效(xiao)性(xing)(xing)(xing)和可(ke)測試性(xing)(xing)(xing)等。審查(cha)客戶(hu)和市場人(ren)員(yuan)提(ti)出的需求(qiu),確認開發團(tuan)隊提(ti)出的設計;組(zu)織開發團(tuan)隊成員(yuan)和開發過程的定義;協助需求(qiu)分析師完成“用戶(hu)需求(qiu)說(shuo)明書(shu)”、“需求(qiu)變更說(shuo)明書(shu)”。
(4)設計(ji)階段,架構師(shi)負(fu)責對整(zheng)個軟件架構、關鍵構件、接口的(de)設計(ji)。協助系(xi)統(tong)分(fen)析師(shi)完成《系(xi)統(tong)概要設計(ji)說明書》。
(5)編碼階段,架構師(shi)則成為程(cheng)序員的顧問,并(bing)且經常(chang)性地要舉行一些(xie)技術(shu)(shu)研討會、技術(shu)(shu)培訓班等。
(6)測(ce)試(shi)及實施階段,隨(sui)著軟件開始(shi)測(ce)試(shi)、集(ji)成和交付,集(ji)成和測(ce)試(shi)支持將成為軟件架構師的工作重點(dian)。
系(xi)統架構師(shi)的職責就是設計一個(ge)公(gong)司的基礎架構,并提(ti)供關于怎(zen)樣建立
和維護(hu)系(xi)統的(de)指導方針。具體來講,系(xi)統架構師的(de)職責主(zhu)要(yao)體現(xian)于(yu)以(yi)下幾方面:
1 負(fu)責公司系(xi)統的架構設(she)計(ji)、研發工作;
2 承擔從業(ye)務向(xiang)技術轉換的(de)橋梁作用;
3 協(xie)助項(xiang)目(mu)經理制定項(xiang)目(mu)計劃和控制項(xiang)目(mu)進度;
4 負責輔助(zhu)并指導 SA 開展設計工(gong)作;
5 負責組(zu)織(zhi)技術研究(jiu)和攻(gong)關工作;
6 負責(ze)組織(zhi)和管理公(gong)司內部的技術培訓工作;
7 負責組(zu)織(zhi)及(ji)帶領公司內部員工研究與項目相關的新技術。
8 管理技(ji)術支撐團隊(dui)(dui)并給(gei)項目(mu)、產品開(kai)發(fa)實施團隊(dui)(dui)提供技(ji)術保(bao)障。
9 理(li)解系統(tong)的(de)業(ye)(ye)務需求,制定系統(tong)的(de)整體框架(包括:技術框架和業(ye)(ye)務框架)
10 對系(xi)統框架(jia)相關技術和業務進行(xing)(xing)培訓,指(zhi)導開(kai)發(fa)人(ren)員開(kai)發(fa)。并解決系(xi)統開(kai)發(fa)、運行(xing)(xing)中出現的各種(zhong)問題。系(xi)統架(jia)構師的目的:
11 對系(xi)統(tong)的重用(yong)、擴展、安全、性能、伸縮性、簡潔等(deng)做(zuo)系(xi)統(tong)級的把握。
————系統架構(gou)師(shi)(shi)的(de)(de)(de)工作在于針(zhen)對不(bu)(bu)同的(de)(de)(de)情(qing)況(kuang)篩選出最優的(de)(de)(de)技(ji)術(shu)(shu)(shu)解決方案,而不(bu)(bu)是(shi)沉在具(ju)體實現細節上。此外系統架構(gou)師(shi)(shi)是(shi)不(bu)(bu)可(ke)培養的(de)(de)(de),好的(de)(de)(de)系統架構(gou)師(shi)(shi)也許不(bu)(bu)是(shi)一(yi)個優秀的(de)(de)(de)程序員,但是(shi)不(bu)(bu)能不(bu)(bu)懂技(ji)術(shu)(shu)(shu)之間的(de)(de)(de)差別,技(ji)術(shu)(shu)(shu)的(de)(de)(de)發展趨勢(shi),采用該技(ji)術(shu)(shu)(shu)的(de)(de)(de)當前成本(ben)(ben)和后繼成本(ben)(ben),該技(ji)術(shu)(shu)(shu)與具(ju)體應用的(de)(de)(de)偶合(he)程度(du),自己可(ke)以調配的(de)(de)(de)資源狀況(kuang),研發中可(ke)能會(hui)遇(yu)到的(de)(de)(de)風險,如何回避風險。這(zhe)些才是(shi)架構(gou)師(shi)(shi)需要考慮的(de)(de)(de)主(zhu)要內容。
第一種是基礎架構的設計規劃,例如:OS,硬件,網絡,各(ge)種應(ying)用服務(wu)器(qi)等等。
第二種是軟(ruan)(ruan)件(jian)(jian)開發設計的(de)架構師,他(ta)們負(fu)責規劃程序(xu)的(de)運行模式,層次結構,調用關系(xi),規劃具體的(de)實現(xian)技術類(lei)型,甚至配(pei)合整(zheng)個團隊做(zuo)好軟(ruan)(ruan)件(jian)(jian)開發中的(de)項目管理。
系統構架師是最近在國內外迅速成長并發展良好的一個職位,它的重要性及給 T業所帶來的影響是不言而喻的。在我國雖然還存在一定的爭論性、不可預測性、不理解性,不確定性,但它確實是時代發展的需要。IT業各公司為了讓他們現有的IT系統實現更大的價值,紛紛進行了重大的技術變革,這(zhe)樣(yang)一(yi)來(lai),對(dui)高水平的(de)(de)架(jia)構(gou)師的(de)(de)需求(qiu)激增。對(dui)負責架(jia)構(gou)的(de)(de)管理人員的(de)(de)需求(qiu)不斷增大(da),其增長(chang)速(su)度(du)比對(dui)CIO的(de)(de)需求(qiu)還要(yao)快,這(zhe)是(shi)因為(wei),架(jia)構(gou)師會給一(yi)個組織帶來(lai)大(da)量專門(men)技術(shu)。公司需要(yao)一(yi)些(xie)在架(jia)構(gou)方面有真才實學(xue),而(er)且學(xue)得深且廣的(de)(de)人才。
在比爾(er)·蓋(gai)茨的(de)眾多稱(cheng)謂中,據(ju)說(shuo)他更偏愛“首(shou)席軟件架構(gou)師(shi)”。同樣,在網易創(chuang)始人(ren)丁磊名(ming)字前(qian),也有“首(shou)席架構(gou)師(shi)”這(zhe)樣的(de)稱(cheng)謂。由此(ci)可見(jian),對于企(qi)業來說(shuo),架構(gou)師(shi)就是靈魂的(de)創(chuang)造者。
系統架構師(shi)該怎(zen)么(me)來實現(xian)(xian)其(qi)“架構”企(qi)業(ye)的(de)職能呢?尤其(qi)在設計企(qi)業(ye)IT策略(lve)時,該怎(zen)樣體現(xian)(xian)架構師(shi)的(de)價值(zhi)?這里以(yi)實例說明:
摩托(tuo)(tuo)羅(luo)拉(la)的(de)(de)(de)副(fu)總(zong)裁 Toby Redshaw 說(shuo),架(jia)(jia)(jia)構(gou)師(shi)是(shi)“IT策(ce)略(lve)中的(de)(de)(de)中樞”,而(er)且這(zhe)(zhe)一(yi)(yi)(yi)(yi)角色(se)對公司(si)(si)的(de)(de)(de)影(ying)響確實(shi)非常(chang)(chang)大(da)。當 Toby Reshaw在(zai)2001年(nian)進入摩托(tuo)(tuo)羅(luo)拉(la)并(bing)(bing)擔任其(qi)策(ce)略(lve)暨架(jia)(jia)(jia)構(gou)副(fu)總(zong)裁時,他(ta)(ta)(ta)儼然一(yi)(yi)(yi)(yi)位購房者對一(yi)(yi)(yi)(yi)套(tao)搖搖欲(yu)墜的(de)(de)(de)公寓進行估價一(yi)(yi)(yi)(yi)樣(yang)。他(ta)(ta)(ta)并(bing)(bing)不是(shi)僅僅只作(zuo)些(xie)表面上的(de)(de)(de)修改,而(er)是(shi)擬定了一(yi)(yi)(yi)(yi)個重(zhong)(zhong)建(jian)(jian)摩托(tuo)(tuo)羅(luo)拉(la)整(zheng)個基礎結(jie)構(gou)的(de)(de)(de)計(ji)(ji)劃,這(zhe)(zhe)個計(ji)(ji)劃可(ke)以(yi)徹底修整(zheng)公司(si)(si)的(de)(de)(de)基礎建(jian)(jian)設,就(jiu)像(xiang)一(yi)(yi)(yi)(yi)個建(jian)(jian)筑師(shi)設計(ji)(ji)一(yi)(yi)(yi)(yi)幢房子一(yi)(yi)(yi)(yi)樣(yang),Redshaw擬出了一(yi)(yi)(yi)(yi)張技(ji)術構(gou)架(jia)(jia)(jia)藍圖,一(yi)(yi)(yi)(yi)座技(ji)術性(xing)的(de)(de)(de)建(jian)(jian)筑,以(yi)便使(shi)被(bei)他(ta)(ta)(ta)稱作(zuo)“如意大(da)利(li)面條般錯(cuo)亂(luan)的(de)(de)(de)應(ying)用(yong)程(cheng)序(xu)(xu),機器和管線”那些(xie)東西變(bian)得(de)井(jing)然有序(xu)(xu)。他(ta)(ta)(ta)說(shuo),只要(yao)選擇了正確的(de)(de)(de)架(jia)(jia)(jia)構(gou)策(ce)略(lve)并(bing)(bing)用(yong)對了人,摩托(tuo)(tuo)就(jiu)可(ke)以(yi)用(yong)比以(yi)前更(geng)快(kuai)的(de)(de)(de)速度生(sheng)產出大(da)量應(ying)用(yong)軟件,而(er)且可(ke)以(yi)減少維持(chi)重(zhong)(zhong)疊系(xi)(xi)統的(de)(de)(de)費(fei)用(yong)。Redshaw 說(shuo):“如果你連建(jian)(jian)筑架(jia)(jia)(jia)構(gou)都搞不好,就(jiu)算你的(de)(de)(de)石匠技(ji)術再高明,又有什(shen)么用(yong)?架(jia)(jia)(jia)構(gou)師(shi)IT策(ce)略(lve)中的(de)(de)(de)中樞。”像(xiang)Redshaw這(zhe)(zhe)樣(yang)的(de)(de)(de)系(xi)(xi)統架(jia)(jia)(jia)構(gou)師(shi)們在(zai)企(qi)業內(nei)部的(de)(de)(de)影(ying)響力非常(chang)(chang)大(da)。很(hen)久以(yi)來,雖然他(ta)(ta)(ta)們一(yi)(yi)(yi)(yi)直在(zai)信息技(ji)術部門擔任重(zhong)(zhong)要(yao)職(zhi)務(wu),但(dan)是(shi)他(ta)(ta)(ta)們經常(chang)(chang)受(shou)委托(tuo)(tuo)提供全(quan)面概況分析,并(bing)(bing)提出一(yi)(yi)(yi)(yi)些(xie)關于如何遵照(zhao)標準執行這(zhe)(zhe)些(xie)任務(wu)的(de)(de)(de)建(jian)(jian)議,而(er)這(zhe)(zhe)些(xie)對日常(chang)(chang)運(yun)作(zuo)的(de)(de)(de)影(ying)響極其(qi)有限。隨著各公司(si)(si)都在(zai)尋(xun)找重(zhong)(zhong)建(jian)(jian)他(ta)(ta)(ta)們的(de)(de)(de)IT系(xi)(xi)統,使(shi)其(qi)更(geng)能有效節省成本,更(geng)靈活的(de)(de)(de)方法(fa),架(jia)(jia)(jia)構(gou)師(shi)愈來愈被(bei)看(kan)作(zuo)是(shi)至關重(zhong)(zhong)要(yao)的(de)(de)(de)因素(su)。
一個(ge)定(ding)義明確(que)的(de)架構(gou)的(de)目標在(zai)于降低運行復雜的(de)運算系統(tong)的(de)費用。一個(ge)公(gong)司可以采用一種特定(ding)的(de)數(shu)據庫(ku)配置,如微軟(ruan)的(de)數(shu)據庫(ku),進而(er)將系統(tong)標準化,而(er)不需要讓(rang)公(gong)司的(de)每個(ge)部門安裝它們(men)自己(ji)所需要的(de)數(shu)據庫(ku)服務器。
Express的(de)(de)技(ji)術架(jia)構副總裁(cai)Andy Miller說:“如(ru)果(guo)你(ni)沒有(you)一(yi)項強有(you)力的(de)(de)架(jia)構策略,人人各行其是,最后以(yi)得(de)到六種服(fu)務(wu)器和軟(ruan)件(jian)平(ping)臺而告終,你(ni)的(de)(de)系(xi)統變成(cheng)了大雜燴,而那將使你(ni)的(de)(de)費用激增(zeng)。”把架(jia)構師(shi)獨立(li)出來(lai)有(you)很多好處,比如(ru)系(xi)統的(de)(de)整體把握,質(zhi)量(liang)上(shang)的(de)(de)保(bao)障,技(ji)術上(shang)的(de)(de)先進性,架(jia)構的(de)(de)靈活性,高效性,還(huan)可有(you)效地(di)降低成(cheng)本。試(shi)想,1個月薪(xin)1w的(de)(de)架(jia)構師(shi)+10個月薪(xin)5k的(de)(de)工(gong)程(cheng)師(shi),肯定比11個月薪(xin)6k的(de)(de)高級工(gong)程(cheng)師(shi)效果(guo)要(yao)好。一(yi)般來(lai)說,級別越高的(de)(de)架(jia)構師(shi),經(jing)驗更豐富(fu),爭相聘請(qing)的(de)(de)人也(ye)多,他們也(ye)是與公司全部(bu)的(de)(de)IT策略密切(qie)相關的(de)(de)專業(ye)人員。
作為(wei)軟(ruan)件開發的(de)(de)設計架構(gou)師(shi),那么(me)必須(xu)擁有一(yi)(yi)(yi)定的(de)(de)編(bian)程(cheng)技(ji)(ji)能(neng),同時有高超(chao)的(de)(de)學習新(xin)的(de)(de)架構(gou)設計、程(cheng)序設計技(ji)(ji)能(neng)。另外,我覺得作為(wei)軟(ruan)件架構(gou)師(shi),還必須(xu)了解一(yi)(yi)(yi)定的(de)(de)硬(ying)件、網絡(luo)、服務器(qi)的(de)(de)基(ji)本知(zhi)識。要不(bu)(bu)然,你都不(bu)(bu)知(zhi)道有些什(shen)么(me)材(cai)料可以用,你怎么(me)去根(gen)據實際情況去規劃你的(de)(de)軟(ruan)件架構(gou)呢?忽視程(cheng)序設計能(neng)力的(de)(de)持續跟(gen)新(xin),是(shi)永遠不(bu)(bu)能(neng)夠成為(wei)一(yi)(yi)(yi)個(ge)成功的(de)(de)系統架構(gou)師(shi)。
一般來講,系統架構師應該擁有以下幾方面的(de)能力:
1:具(ju)備8年(nian)以(yi)上軟件行業工作(zuo)經(jing)驗;
2:具備4年以上C/S或B/S體系結構軟件(jian)產品(pin)開發及架構和設計經驗;
3:具備(bei)3年以上的(de)代碼編寫工作經驗(yan);
4:具備豐(feng)富的大中型(xing)開發(fa)項(xiang)目的總體規劃、方案(an)設計及技術(shu)隊伍管理(li)經驗;
5:對(dui)相關的技術標準有深刻的認識,對(dui)軟件工程標準規范有良好的把握(wo);
6:對.Net/JAVA技(ji)術及(ji)整個解決方案(an)有深刻的理解及(ji)熟練的應用(yong),并且(qie)精通WebService/J2EE架(jia)構和設計模(mo)式,并在此(ci)基礎上設計產品框架(jia);
7:具(ju)(ju)有面向對(dui)象分析(xi)、設(she)計、開發能力(OOA、OOD、OOP),精通 UML 和 ROSE,熟練使用 Rational Rose、PowerDesigner等工具(ju)(ju)進行設(she)計開發;
8:精通大型(xing)數據庫(ku)如Oracle、Sql Server等的開發;
9:對計(ji)算機系(xi)統、網絡和安全、應用(yong)系(xi)統架構等有(you)全面的認識(shi),熟(shu)悉項目管理(li)(li)理(li)(li)論,并有(you)實踐基礎;
10:在應(ying)用(yong)系統開(kai)(kai)發平臺和(he)項目管理(li)上有深厚的(de)基礎,有大中型應(ying)用(yong)系統開(kai)(kai)發和(he)實施(shi)的(de)成功案例;
11:良好的團隊意識和協(xie)作(zuo)精神(shen),有(you)較強的內外溝(gou)通能力。
系統構架師與產品(pin)經理的關系及區別
產(chan)(chan)品(pin)(pin)(pin)經(jing)(jing)(jing)理(li)(li)(li)通常是(shi)指(zhi)負責(ze)產(chan)(chan)品(pin)(pin)(pin)設計(ji)的(de)(de)(de)(de)“專人”。一個(ge)優秀的(de)(de)(de)(de)理(li)(li)(li)想的(de)(de)(de)(de)產(chan)(chan)品(pin)(pin)(pin)經(jing)(jing)(jing)理(li)(li)(li),應同時具備(bei)較高的(de)(de)(de)(de)商(shang)業素質和較強的(de)(de)(de)(de)技(ji)(ji)術(shu)背(bei)景(jing)。產(chan)(chan)品(pin)(pin)(pin)經(jing)(jing)(jing)理(li)(li)(li)要(yao)有(you)深(shen)厚(hou)的(de)(de)(de)(de)領域(yu)經(jing)(jing)(jing)驗,也就(jiu)是(shi)說,對該軟(ruan)件系(xi)統(tong)(tong)要(yao)應用到(dao)的(de)(de)(de)(de)業務領域(yu)非(fei)常之(zhi)(zhi)熟(shu)悉(xi)。比(bi)如(ru),開(kai)發房地產(chan)(chan)銷(xiao)(xiao)售(shou)軟(ruan)件的(de)(de)(de)(de)產(chan)(chan)品(pin)(pin)(pin)經(jing)(jing)(jing)理(li)(li)(li),應該對房地產(chan)(chan)公司的(de)(de)(de)(de)標(biao)準銷(xiao)(xiao)售(shou)流(liu)程了如(ru)指(zhi)掌,甚至比(bi)大多數(shu)銷(xiao)(xiao)售(shou)人員還要(yao)清楚(chu)。如(ru)果(guo)開(kai)發的(de)(de)(de)(de)是(shi)通用產(chan)(chan)品(pin)(pin)(pin),他/她還具備(bei)對市場(chang)、潛在客戶需求的(de)(de)(de)(de)深(shen)刻洞察力。那(nei)么(me),系(xi)統(tong)(tong)架構(gou)(gou)師(shi)與產(chan)(chan)品(pin)(pin)(pin)經(jing)(jing)(jing)理(li)(li)(li)有(you)什么(me)不同呢(ni)?我們不應該把二者(zhe)混(hun)為(wei)一談,這是(shi)不少(shao)論述和實踐(jian)常犯(fan)的(de)(de)(de)(de)錯誤。我看來(lai),如(ru)果(guo)把開(kai)發軟(ruan)件比(bi)作攝制電影,產(chan)(chan)品(pin)(pin)(pin)經(jing)(jing)(jing)理(li)(li)(li)之(zhi)(zhi)于(yu)系(xi)統(tong)(tong)架構(gou)(gou)師(shi),就(jiu)正(zheng)像編劇(ju)之(zhi)(zhi)于(yu)導演(yan)。產(chan)(chan)品(pin)(pin)(pin)經(jing)(jing)(jing)理(li)(li)(li)雖(sui)然(ran)要(yao)有(you)一定技(ji)(ji)術(shu)背(bei)景(jing),但仍(reng)應屬于(yu)“商(shang)業人士(business people)”,而系(xi)統(tong)(tong)架構(gou)(gou)師(shi)則肯定是(shi)一個(ge)技(ji)(ji)術(shu)專家。二者(zhe)看待問題的(de)(de)(de)(de)立(li)場(chang)、角度和出發點完全不同。
系(xi)統構架師(shi)與(yu)項目經理的關系(xi)及區(qu)別
軟(ruan)件(jian)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)是(shi)(shi)指對項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)控(kong)(kong)制/管(guan)(guan)理(li)(li)(li),關(guan)注項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)本(ben)身的(de)(de)(de)(de)(de)進度、質量(liang)(liang),分配、調(diao)動(dong)、協調(diao)、管(guan)(guan)理(li)(li)(li)好人(ren)、財(cai)、物(wu)等(deng)資源的(de)(de)(de)(de)(de)負(fu)責人(ren)。對于(yu)(yu)軟(ruan)件(jian)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)來講(jiang),包括項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)計劃(hua)、進度跟蹤(zong)/監(jian)控(kong)(kong)、質量(liang)(liang)保證、配置/發(fa)(fa)布/版本(ben)/變更(geng)管(guan)(guan)理(li)(li)(li)、人(ren)員(yuan)績效評估(gu)等(deng)方面(mian)。優秀的(de)(de)(de)(de)(de)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)需(xu)要的(de)(de)(de)(de)(de)素質,并不(bu)僅在(zai)于(yu)(yu)會(hui)使(shi)用幾種(zhong)軟(ruan)件(jian)或(huo)是(shi)(shi)了解若干抽象的(de)(de)(de)(de)(de)方法(fa)論(lun)原(yuan)則,更(geng)重要的(de)(de)(de)(de)(de)在(zai)于(yu)(yu)從大(da)量(liang)(liang)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)實踐中(zhong)(zhong)獲得的(de)(de)(de)(de)(de)寶貴經(jing)(jing)(jing)驗(yan),以(yi)及交流、協調(diao)、激勵的(de)(de)(de)(de)(de)能(neng)力,甚至還應(ying)具備(bei)某種(zhong)個(ge)(ge)(ge)性魅力或(huo)領袖(xiu)氣質(Charisma)。由此可見,項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)和(he)系(xi)(xi)統(tong)(tong)架(jia)構(gou)師(shi)在(zai)職(zhi)(zhi)責上(shang)(shang)有(you)很大(da)差異。混同這(zhe)兩個(ge)(ge)(ge)角色,往(wang)(wang)往(wang)(wang)也會(hui)導致低(di)效、無序的(de)(de)(de)(de)(de)開(kai)(kai)發(fa)(fa)。特別是(shi)(shi),從性格因素上(shang)(shang)講(jiang),單純的(de)(de)(de)(de)(de)技(ji)術人(ren)員(yuan)傾向于(yu)(yu)忽視“人(ren)”的(de)(de)(de)(de)(de)因素,而這(zhe)正是(shi)(shi)管(guan)(guan)理(li)(li)(li)活動(dong)的(de)(de)(de)(de)(de)一(yi)個(ge)(ge)(ge)主(zhu)要方面(mian)。另外(wai),就像戰爭中(zhong)(zhong)的(de)(de)(de)(de)(de)空軍掩護(Air Cover)一(yi)樣,專職(zhi)(zhi)的(de)(de)(de)(de)(de)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)能(neng)夠應(ying)付開(kai)(kai)發(fa)(fa)過程(cheng)中(zhong)(zhong)大(da)量(liang)(liang)的(de)(de)(de)(de)(de)偶發(fa)(fa)事件(jian)和(he)雜(za)務(wu),對于(yu)(yu)一(yi)個(ge)(ge)(ge)規(gui)模(mo)稍(shao)大(da)的(de)(de)(de)(de)(de)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu),這(zhe)些雜(za)務(wu)本(ben)身就能(neng)占用一(yi)個(ge)(ge)(ge)全(quan)職(zhi)(zhi)工作者的(de)(de)(de)(de)(de)幾乎全(quan)部(bu)時間。在(zai)一(yi)個(ge)(ge)(ge)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)中(zhong)(zhong),推動(dong)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)發(fa)(fa)展(zhan)的(de)(de)(de)(de)(de)是(shi)(shi)系(xi)(xi)統(tong)(tong)構(gou)架(jia)師(shi),而不(bu)是(shi)(shi)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)。項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)的(de)(de)(de)(de)(de)職(zhi)(zhi)責只是(shi)(shi)配合(he)系(xi)(xi)統(tong)(tong)構(gou)架(jia)師(shi),提供各個(ge)(ge)(ge)方面(mian)的(de)(de)(de)(de)(de)支持。主(zhu)要職(zhi)(zhi)責是(shi)(shi)與內外(wai)部(bu)溝通和(he)管(guan)(guan)理(li)(li)(li)資源(包括人(ren))。系(xi)(xi)統(tong)(tong)構(gou)架(jia)師(shi)提出(chu)系(xi)(xi)統(tong)(tong)的(de)(de)(de)(de)(de)總體構(gou)架(jia),給出(chu)開(kai)(kai)發(fa)(fa)指導。一(yi)個(ge)(ge)(ge)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)中(zhong)(zhong),項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)經(jing)(jing)(jing)理(li)(li)(li)的(de)(de)(de)(de)(de)角色什(shen)么?如(ru)果(guo)他即使(shi)管(guan)(guan)理(li)(li)(li)人(ren)員(yuan)又(you)是(shi)(shi)設(she)計人(ren)員(yuan),則必須(xu)比別人(ren)強(qiang),能(neng)夠有(you)讓別人(ren)服(fu)的(de)(de)(de)(de)(de)東西。如(ru)果(guo)他只是(shi)(shi)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)管(guan)(guan)理(li)(li)(li)人(ren)員(yuan),系(xi)(xi)統(tong)(tong)構(gou)架(jia)師(shi)有(you)專門人(ren)員(yuan),就可以(yi)不(bu)用精通或(huo)者說(shuo)了解it各個(ge)(ge)(ge)方面(mian)的(de)(de)(de)(de)(de)知識(shi),如(ru)果(guo)了解更(geng)好。另外(wai),如(ru)果(guo)在(zai)一(yi)個(ge)(ge)(ge)項(xiang)(xiang)(xiang)(xiang)目(mu)(mu)(mu)(mu)沒有(you)人(ren)在(zai)技(ji)術構(gou)架(jia)上(shang)(shang)和(he)開(kai)(kai)發(fa)(fa)指導上(shang)(shang)負(fu)全(quan)部(bu)責任(ren),而是(shi)(shi)每(mei)個(ge)(ge)(ge)人(ren)都負(fu)責一(yi)快的(de)(de)(de)(de)(de)架(jia)構(gou)、分析、設(she)計、代碼(ma)和(he)實施等(deng),最后(hou)肯定會(hui)失去管(guan)(guan)理(li)(li)(li)。
系統構架師與系統分析(xi)師的關(guan)系及(ji)區別(bie)
系(xi)統(tong)分(fen)(fen)析(xi)(xi)師(shi)(System analyst)是(shi)指(zhi)對(dui)(dui)系(xi)統(tong)開發中(zhong)進行業務需(xu)求(qiu)分(fen)(fen)析(xi)(xi)、系(xi)統(tong)需(xu)求(qiu)分(fen)(fen)析(xi)(xi)、可行性(xing)分(fen)(fen)析(xi)(xi)、業務建模和(he)指(zhi)導項目開發的(de)人(ren)。系(xi)統(tong)分(fen)(fen)析(xi)(xi)師(shi)所面臨(lin)的(de)往(wang)往(wang)是(shi)有許多不(bu)(bu)確定性(xing)的(de)事(shi)件,需(xu)要對(dui)(dui)這(zhe)些(xie)不(bu)(bu)確定性(xing)的(de)事(shi)件進行分(fen)(fen)析(xi)(xi)、總結,使之(zhi)得出(chu)一個(ge)相對(dui)(dui)可靠的(de)確定性(xing)結論或實施方(fang)案模型。一般意思上(shang)講,系(xi)統(tong)分(fen)(fen)析(xi)(xi)師(shi)的(de)水平將影響系(xi)統(tong)開發的(de)質量,甚至成敗。但(dan)在(zai)一個(ge)完善的(de)系(xi)統(tong)開發隊伍中(zhong),還需(xu)要有業務專家,技術專家和(he)其他輔助人(ren)員。對(dui)(dui)于大(da)型企(qi)業或者項目,如果一人(ren)承擔多個(ge)角色(se),往(wang)往(wang)容易發生顧此失彼的(de)現象。
系(xi)(xi)統(tong)(tong)(tong)分(fen)析(xi)師(shi)(shi)對業務(wu)系(xi)(xi)統(tong)(tong)(tong)進行(xing)分(fen)析(xi)、建(jian)模(mo),他的(de)(de)任(ren)務(wu)、目(mu)(mu)標(biao)(biao)是明確的(de)(de)。系(xi)(xi)統(tong)(tong)(tong)架(jia)構(gou)師(shi)(shi)協同(tong)系(xi)(xi)統(tong)(tong)(tong)分(fen)析(xi)師(shi)(shi)的(de)(de)工(gong)(gong)作,建(jian)議系(xi)(xi)統(tong)(tong)(tong)分(fen)析(xi)師(shi)(shi)按什么標(biao)(biao)準,什么工(gong)(gong)具,什么模(mo)式,什么技(ji)術(shu)(shu)去(qu)思考(kao)系(xi)(xi)統(tong)(tong)(tong)。同(tong)時(shi),系(xi)(xi)統(tong)(tong)(tong)架(jia)構(gou)師(shi)(shi)應(ying)該(gai)對系(xi)(xi)統(tong)(tong)(tong)分(fen)析(xi)師(shi)(shi)所提出(chu)的(de)(de)問題,碰(peng)到的(de)(de)難題及時(shi)地提出(chu)解決的(de)(de)方法。系(xi)(xi)統(tong)(tong)(tong)架(jia)構(gou)師(shi)(shi)在項目(mu)(mu)中擔任(ren)技(ji)術(shu)(shu)骨干的(de)(de)角色(se),負責(ze)技(ji)術(shu)(shu)實施中的(de)(de)重點技(ji)術(shu)(shu)問題攻(gong)關。同(tong)時(shi),又是系(xi)(xi)統(tong)(tong)(tong)分(fen)析(xi)師(shi)(shi)的(de)(de)技(ji)術(shu)(shu)顧問,為整個項目(mu)(mu)的(de)(de)技(ji)術(shu)(shu)框(kuang)架(jia)與技(ji)術(shu)(shu)細節的(de)(de)展開和落(luo)實提供強(qiang)有(you)力的(de)(de)技(ji)術(shu)(shu)保障。
優秀的(de)(de)(de)系(xi)(xi)(xi)統架(jia)(jia)構(gou)師是保證軟(ruan)件系(xi)(xi)(xi)統強大生命力(li)的(de)(de)(de)核心人(ren)物。專(zhuan)業架(jia)(jia)構(gou)師能夠幫助公司(si)全(quan)面(mian)研究現有架(jia)(jia)構(gou)和設(she)計模(mo)式、評估系(xi)(xi)(xi)統設(she)計的(de)(de)(de)優缺點和可(ke)能存在的(de)(de)(de)風(feng)險(xian),通過一(yi)系(xi)(xi)(xi)列的(de)(de)(de)專(zhuan)題指導和具體案(an)例幫助公司(si)掌握先進的(de)(de)(de)、成熟(shu)的(de)(de)(de)設(she)計模(mo)式,簡(jian)化復(fu)雜的(de)(de)(de)業務邏輯(ji)和需求,確定系(xi)(xi)(xi)統最適合(he)法人(ren)方案(an)。在必要的(de)(de)(de)情況下,還可(ke)就(jiu)特定領域或課題,為(wei)開發人(ren)員提供定制指導。通過上(shang)面(mian)的(de)(de)(de)介紹,我們對系(xi)(xi)(xi)統構(gou)架(jia)(jia)師有了的(de)(de)(de)較深(shen)刻的(de)(de)(de)認(ren)識,我們明白了系(xi)(xi)(xi)統構(gou)架(jia)(jia)師的(de)(de)(de)地位(wei),作(zuo)用(yong),工(gong)(gong)作(zuo)職責及任職條件,同時還區別出與其他角色的(de)(de)(de)不同,那(nei)么(me)如何評估系(xi)(xi)(xi)統構(gou)架(jia)(jia)師的(de)(de)(de)工(gong)(gong)作(zuo)成績,
如何識別一個合格的(de)優(you)秀(xiu)的(de)系統構架師是不難(nan)的(de)。
具體來講,我(wo)們可以通(tong)過以下幾方面來評估(gu)系統構架(jia)師的工作成績(ji):
1:系統構架師(shi)是(shi)否是(shi)某一技(ji)術領域(yu)的專家;
2:系統構架師能否指(zhi)導分析(xi)員的設計工作,發現并(bing)指(zhi)出設計存在的問題(ti)并(bing)提出解決方(fang)法,評審他們的工作;
3:系(xi)統構架師能否指(zhi)導軟件(jian)工程師進行(xing)開發工作(zuo),發現并指(zhi)出(chu)編(bian)碼存在(zai)的問題并提出(chu)解決(jue)方法,評審他們(men)的工作(zuo);
4:系(xi)統構架師能(neng)否(fou)協助好項(xiang)目(mu)經理制定項(xiang)目(mu)計劃和控(kong)制項(xiang)目(mu)進度(du);
5:系統構架師能否及時有效地解決設(she)計、開(kai)發人員所(suo)提出的問題(ti),解決技(ji)術上的難(nan)題(ti);
6:系(xi)統構架師能否制訂并規范系(xi)統設計和(he)開發文檔、工(gong)具、模型(xing);能否讓(rang)其他(ta)人(ren)員容(rong)易(yi)理解(jie);
7:系(xi)統構架(jia)師能否經常組織(zhi)并(bing)帶領公司內部員工(gong)研究(jiu)、學習與(yu)項目相關的新技(ji)術;
8:系統構架師能否(fou)組織和(he)管理好公(gong)司內部的技術(shu)培訓工(gong)(gong)作,技術(shu)研究和(he)公(gong)關工(gong)(gong)作;
9:系統構架師是(shi)否有良(liang)好的團(tuan)隊(dui)意識和協作精(jing)神,有較強的內(nei)外溝通能力;
10:系統構架師是否能管(guan)理好技(ji)術支撐(cheng)團(tuan)隊并給項目、產品開(kai)發(fa)實施團(tuan)隊提供技(ji)術保(bao)障;
11:系統構架師所設計的系統架構是否合理,技(ji)術是否先進(jin),能否滿足客戶的要求;
12:系統構架是否(fou)(fou)有擴展性,安(an)全性,能(neng)否(fou)(fou)經受(shou)壓力測(ce)試,網絡流量在超用戶(hu)數(shu)下如何控制;
13:系(xi)統邊(bian)界如何處理(li),瓶(ping)頸問題如何解(jie)決等;
14:系(xi)統設計前(qian)期、中期、后期所要解決(jue)的問題,是否有(you)階段性,里程碑(bei)的標識;
15:是否有(you)分析(xi)、識別并盡可能(neng)地(di)回避風險(xian),降低風險(xian)所引發問題成本(ben)的能(neng)力;
16:能(neng)否給(gei)公司降低開發成本,提高效率;
系(xi)統(tong)架(jia)構(gou)(gou)師的(de)(de)(de)一般月薪范圍在20000-100000美元左右。系(xi)統(tong)架(jia)構(gou)(gou)師是軟件項目的(de)(de)(de)總(zong)設(she)計師,是軟件企業(ye)的(de)(de)(de)新產(chan)品、新技(ji)(ji)術(shu)體(ti)系(xi)的(de)(de)(de)構(gou)(gou)建(jian)者,是軟件開(kai)發(fa)中急需的(de)(de)(de)高(gao)層(ceng)次技(ji)(ji)術(shu)人才。其是由(you)系(xi)統(tong)開(kai)發(fa)工(gong)程師發(fa)展(zhan)而來,可以向研發(fa)總(zong)監,高(gao)級技(ji)(ji)術(shu)總(zong)監等高(gao)層(ceng)次的(de)(de)(de)方向發(fa)展(zhan)。