<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    如何從開發(fā)人員走向架構(gòu)師

    如何從開發(fā)人員走向架構(gòu)師
    來自:developerWorks 中國

            很多架構(gòu)師都是從好的開發(fā)人員逐步過渡而來的,但并非每個好的開發(fā)人員都希望成為架構(gòu)師,而且他們并不是都適合做架構(gòu)師。無論您是打算進(jìn)行職業(yè)轉(zhuǎn)型的開發(fā)人員,還是尋找能承擔(dān)體系結(jié)構(gòu)設(shè)計責(zé)任的合適人選的經(jīng)理,都務(wù)必對此轉(zhuǎn)型過程有個清楚的了解。本文將討論從實現(xiàn)專家到架構(gòu)師的過渡過程。

     

      在尋找優(yōu)秀的指揮的時候,您首先要找的是一名優(yōu)秀的音樂演奏家。但并非每個音樂演奏家都能成為優(yōu)秀的指揮。架構(gòu)師的專業(yè)發(fā)展方面也與此類似。越來越多的 IT 組織開始認(rèn)識到良好軟件體系結(jié)構(gòu)的重要性,架構(gòu)師職業(yè)正迅速發(fā)展為 IT 內(nèi)一個獨立的門類。由于要從相當(dāng)小的候選范圍內(nèi)招募架構(gòu)師,因此這就給管理帶來了一些新挑戰(zhàn)。即使人力資源部門找到了候選者,針對經(jīng)驗進(jìn)行的篩選也比其他門類更為嚴(yán)格??缭竭@些障礙的最快方式是要認(rèn)識到,大部分好的架構(gòu)師同時也是好的開發(fā)人員,因此尋找架構(gòu)師人才時可能首先應(yīng)該從普通開發(fā)人員中找起。招聘人員在對候選者(內(nèi)部或外部)進(jìn)行詳細(xì)審查時,應(yīng)該考慮這個觀點。不過,對此資源進(jìn)行挑選可能比較麻煩,因為只有極少的優(yōu)秀開發(fā)人員具有成為架構(gòu)師的特征或愿望。

      本文列出了開發(fā)人員成為架構(gòu)師要進(jìn)行的工作。我將從可能考慮進(jìn)行此轉(zhuǎn)型的開發(fā)人員和評估進(jìn)行此轉(zhuǎn)型的開發(fā)人員的經(jīng)理這兩個方面來探討這一問題。我還將提供一系列在做出這些決策時要考慮的因素。

      個人特征

      軟件開發(fā)團(tuán)隊和管理層之間的聯(lián)系始終是 IT 中的一個關(guān)鍵所在。二者都傾向于以完全不同的方式考慮給定的問題。大部分相關(guān)技術(shù)都是討論項目經(jīng)理應(yīng)如何跟蹤和解釋開發(fā)人員的進(jìn)度和問題。但溝通不足的情況仍然非常普遍,而且這是項目失敗的首要原因。好的架構(gòu)師是解決這個問題的最有效辦法。架構(gòu)師的主要責(zé)任是提供開發(fā)人員和項目經(jīng)理之間的共用溝通媒體。他們負(fù)責(zé)讓業(yè)務(wù)規(guī)則及需求與工程實踐及限制相適應(yīng),以確保成功。以下是成功架構(gòu)師的一些主要特征。

      愿意并有能力進(jìn)行溝通:在開發(fā)人員中發(fā)現(xiàn)架構(gòu)師的最有價值標(biāo)準(zhǔn)是有效的溝通。您需要技術(shù)嫻熟、經(jīng)驗豐富的開發(fā)人員,這樣的人員需要有就項目中的業(yè)務(wù)相關(guān)問題進(jìn)行溝通的經(jīng)歷。架構(gòu)師經(jīng)常必須對理解方面的差距進(jìn)行預(yù)計,然后才能有所貢獻(xiàn)。他們必須愿意克服困難來確保技術(shù)和業(yè)務(wù)觀點的融合。他們并不必對意見交換工作進(jìn)行計劃和協(xié)調(diào);這仍然主要是項目經(jīng)理的工作。他們的任務(wù)是確定表述系統(tǒng)設(shè)計時的最佳工具和構(gòu)件,以促進(jìn)有效的意見交換。他們必須能夠判斷當(dāng)前方法顯得不足而需要采用新方法的情況。寫作技能也非常重要,還需要具有制作草圖的技能或使用制圖軟件的能力。

      具有處理談判細(xì)節(jié)方面的經(jīng)驗:架構(gòu)師經(jīng)常需要負(fù)責(zé)討論系統(tǒng)開發(fā)的技術(shù)折衷方案。優(yōu)先級的沖突可能會帶來實踐限制、風(fēng)險規(guī)避或可能導(dǎo)致在各個不同業(yè)務(wù)組之間需求不同。優(yōu)秀的架構(gòu)師能夠有效地評估技術(shù)可能性,并能在不損失項目的主要價值的前提下制訂開發(fā)計劃來處理各種利害關(guān)系和限制。這與前面討論的溝通技能緊密相關(guān),但同時也要體現(xiàn)架構(gòu)師的技術(shù)能力。好的架構(gòu)師候選者應(yīng)該是經(jīng)常幫助對有爭議的討論進(jìn)行引導(dǎo)的人,能夠使討論得出新的想法,而不會使其在一個位置停滯不前。

      自覺主動;積極解決設(shè)計問題:架構(gòu)師的日常工作目標(biāo)經(jīng)常并不明確。很多開發(fā)人員直接參考功能規(guī)范來列出任務(wù)清單。架構(gòu)師通常則是向這些開發(fā)人員提供所需結(jié)構(gòu)的人員,以便盡可能提高工作效率。好的候選者不僅進(jìn)行溝通方面的工作,而且也會預(yù)計各種設(shè)計問題并加以解決——通常在沒有任何具體指示的情況下自覺進(jìn)行。無論所分配的職責(zé)如何,積極參與項目的開發(fā)人員都有機(jī)會從一起工作的人員中脫穎而出。

      抽象思維和分析:架構(gòu)師必須能夠理解表述模糊的概念并將其變成相關(guān)各方能夠理解的項目構(gòu)件。他們必須能夠理解抽象概念,并以具體的語言對其進(jìn)行溝通。開發(fā)人員中好的候選者經(jīng)常要求或自己主動解釋開發(fā)生命周期中容易混淆的問題。他們能迅速評估各種想法并將其納入后續(xù)工作的操作建議中。

      開發(fā)人員經(jīng)常具有很強的數(shù)學(xué)能力,而好的架構(gòu)師則傾向于表現(xiàn)出更強的口頭表達(dá)能力。管理人員經(jīng)常說開發(fā)人員具有“工程意識”,而這是一個用于評估架構(gòu)師的非常有意義的方面。架構(gòu)師應(yīng)該具有很強的解決技術(shù)問題的能力,但還必須能夠準(zhǔn)確獲知更為全面的人員如何與技術(shù)交互的信息。這要求具有某種形式的抽象思維(而不再是代碼的細(xì)節(jié)),這種思維能力可能較難形成。

      有些人認(rèn)為,某種級別的正式教育是成為優(yōu)秀開發(fā)人員的必備條件之一,我并不同意這種精英論。我遇到了很多高中就輟學(xué)的優(yōu)秀開發(fā)人員。不過,對于體系結(jié)構(gòu)設(shè)計工作,我的個人經(jīng)驗以及我對所需能力的認(rèn)識都讓我相信,好的架構(gòu)師通常至少獲得了一個有挑戰(zhàn)性的學(xué)士學(xué)位。

      跟蹤生命周期

      好的架構(gòu)師通常有在具備定義良好的軟件開發(fā)生命周期(Software Development Life Cycle,SDLC)的組織工作的經(jīng)驗。架構(gòu)師必須理解在其所屬專業(yè)內(nèi)最重要的操作過程。這并不意味著需要有其他前提,例如,并不需要高能力成熟度模型(Capability Maturity Model,CMM)級別的工作經(jīng)驗。好的架構(gòu)師可能來自使用 SDLC 的多個小型迭代的極限編程(Extreme Programming,XP)方法的組織。務(wù)必注意各種傳統(tǒng)軟件開發(fā)操作,如 Michael A. Jackson 的方法:Jackson 結(jié)構(gòu)編程(Jackson Structured Programming,JSP)和 Jackson 系統(tǒng)開發(fā)(Jackson System Development,JSD)。Jackson 的研究對架構(gòu)師職業(yè)發(fā)展的意義就像 Donald Knuth 的研究對程序員一樣重要。架構(gòu)師可以偏愛任何經(jīng)典的、經(jīng)過時間考驗的軟件系統(tǒng)開發(fā)方法。

      SDLC 也可以成為評估架構(gòu)師合適人選的有用機(jī)制。每個 SDLC 階段都具有能提供相關(guān)線索的特征。SDLC 包含很多小的變體,但在此部分,我將使用幾乎所有方法的公共基礎(chǔ)部分。下面的列表詳細(xì)說明了 SDLC 的各個階段,并列出了好的架構(gòu)師候選者在每個階段表現(xiàn)出來的特征。

    •   分析:在分析期間,好的架構(gòu)師會考慮非技術(shù)影響,以便了解需求和將在其中進(jìn)行開發(fā)的環(huán)境。架構(gòu)師可為風(fēng)險評估任務(wù)帶來廣泛的軟件經(jīng)驗供參考。尋找具有豐富經(jīng)驗的開發(fā)人員,以幫助業(yè)務(wù)部門理解技術(shù)人員正確解釋需求所需的信息。尋找在開發(fā)的早期階段能夠預(yù)計可能遇到的問題的開發(fā)人員。
    •   設(shè)計:在高級設(shè)計期間,好的架構(gòu)師會收集問題空間的各個抽象元素,并就其進(jìn)行溝通,以便開發(fā)團(tuán)隊草擬將要開發(fā)的系統(tǒng)的相關(guān)圖表。架構(gòu)師負(fù)責(zé)將需求謹(jǐn)慎地映射到所得到的系統(tǒng)體系結(jié)構(gòu)的功能。在詳細(xì)設(shè)計期間,他們所扮演的角色并不是核心角色,但為了根據(jù)整個系統(tǒng)的規(guī)則對特定模塊的元素進(jìn)行審查,仍然需要他們。尋找善于讓團(tuán)隊能夠預(yù)計設(shè)計決策對最終系統(tǒng)的影響的開發(fā)人員。尋找善于確定一些最佳構(gòu)件來促進(jìn)與技術(shù)和非技術(shù)受眾溝通設(shè)計問題的開發(fā)人員。
    •   實現(xiàn):在實現(xiàn)期間,架構(gòu)師對項目進(jìn)行引導(dǎo),以確保其符合系統(tǒng)體系結(jié)構(gòu)。他們在一線評估技術(shù)更改請求,并確定如何對設(shè)計進(jìn)行調(diào)整,以最好地處理此類請求。架構(gòu)師還要密切了解開發(fā)人員的進(jìn)度,特別要跟蹤系統(tǒng)中模塊間的集成點的狀態(tài)。尋找經(jīng)常對討論進(jìn)行引導(dǎo)來連接多個子系統(tǒng)的開發(fā)人員。尋找項目經(jīng)理可以依賴其快速地進(jìn)行與更改和出現(xiàn)的問題相關(guān)的風(fēng)險評估的開發(fā)人員。
    •   測試:架構(gòu)師對系統(tǒng)集成和用戶接受度測試進(jìn)行指導(dǎo),并負(fù)責(zé)評估進(jìn)度的正確溝通的持續(xù)測試結(jié)果。尋找理解錯誤模式且善于將測試復(fù)查結(jié)果轉(zhuǎn)換為行動計劃的開發(fā)人員。
    •   維護(hù):在維護(hù)期間,架構(gòu)師將發(fā)起關(guān)于系統(tǒng)集成的討論。無論處理 IT 基礎(chǔ)設(shè)施問題,還是確保部門之間的技術(shù)合作,架構(gòu)師都必須完全理解應(yīng)用程序,必須快速學(xué)習(xí)姊妹應(yīng)用程序的體系結(jié)構(gòu),而且必須就集成點和風(fēng)險進(jìn)行有效溝通。尋找具有系統(tǒng)集成經(jīng)驗且表現(xiàn)出快速掌握全貌的能力的開發(fā)人員。系統(tǒng)集成是一項獨特的任務(wù)。

      架構(gòu)師培養(yǎng)建議

      有些組織能比其他組織更有效地進(jìn)行架構(gòu)師培養(yǎng)。如果充分考慮到招聘此類新專業(yè)人才的困難,努力促成能鼓勵開發(fā)人員發(fā)展為架構(gòu)師的環(huán)境是非常明智的策略。但務(wù)必避免對不愿意或不適合走這條路的開發(fā)人員進(jìn)行處罰。組織應(yīng)該為開發(fā)人員制訂多條發(fā)展路線,包括那些愿意繼續(xù)擔(dān)任開發(fā)人員的人。對架構(gòu)師而言,資深開發(fā)人員不可或缺。他們可以實現(xiàn)系統(tǒng)中最關(guān)鍵的模塊。通過對其他開發(fā)人員進(jìn)行代碼檢查和測試支持,他們可幫助確??傮w軟件質(zhì)量,而如果質(zhì)量不能保證,即使最好的體系結(jié)構(gòu)也毫無用處。

      組織應(yīng)制訂個人評估程序,以鼓勵開發(fā)人員考慮其職業(yè)目標(biāo),其中要包含體系結(jié)構(gòu)設(shè)計的選項。應(yīng)該鼓勵經(jīng)理在其下屬中尋找體系結(jié)構(gòu)設(shè)計人才。應(yīng)該實現(xiàn)指導(dǎo)計劃,讓架構(gòu)師與希望成為架構(gòu)師的開發(fā)人員協(xié)作工作。應(yīng)該鼓勵開發(fā)人員通過參加各種協(xié)會、撰寫文章和參加會議,從而參與到專業(yè)領(lǐng)域中來。通過這樣參與進(jìn)來,可幫助開發(fā)人員從新的角度理解系統(tǒng),并幫助他們更好地就其認(rèn)識進(jìn)行溝通。這樣還能培養(yǎng)可提高效率的重要創(chuàng)新想法。

      結(jié)束語

      開發(fā)人員一旦邁出了通向體系結(jié)構(gòu)設(shè)計專業(yè)方向的第一步,就可以利用很多資源來獲得幫助,其中包括很多來自 IBM 的資源。有時候,此過程的最困難的部分就是第一步,而本文提供了一些線索和提示,經(jīng)理和開發(fā)人員可以利用其來評估應(yīng)該鼓勵哪些人努力成為架構(gòu)師。

    posted on 2007-03-19 08:41 XiaoLi 閱讀(1055) 評論(1)  編輯  收藏 所屬分類: Others

    評論

    # re: 如何從開發(fā)人員走向架構(gòu)師 2007-03-19 10:10 BeanSoft

    架構(gòu)師就架構(gòu)師吧... 怎么又和 IBM 掛上鉤了? IBM 也不是個個都是架構(gòu)師的.  回復(fù)  更多評論   

    公告


    文章發(fā)布許可

    本站作品均采用知識共享署名-非
    商業(yè)性使用-禁止演繹 2.5 中國大
    陸許可協(xié)議
    進(jìn)行許可。

    Books I've Translated

    《精通Nginx(第二版)》

    精通Nginx(第二版)
    《云計算:原理與范式》

     云計算:原理與范式

    《SQL技術(shù)手冊(第三版)》
    SQL技術(shù)手冊(第三版)
    《MySQL核心技術(shù)手冊(第二版)》
    MySQL核心技術(shù)手冊(第2版)
    《RESTful Web Services中文版》
    RESTful Web Services中文版

    導(dǎo)航

    留言簿(2)

    隨筆分類

    搜索

    最新評論

    主站蜘蛛池模板: 国产成人精品免费视频动漫| 久久国产精品免费观看| 亚洲国产日韩视频观看| 日韩亚洲不卡在线视频中文字幕在线观看| 在线看片免费人成视频福利| 久久久久久免费视频| 国产传媒在线观看视频免费观看| 亚洲黄片毛片在线观看| 久久夜色精品国产亚洲AV动态图 | 7777久久亚洲中文字幕| 日韩精品视频在线观看免费| 精品国产污污免费网站入口| 久久久久久久99精品免费 | 成人毛片18岁女人毛片免费看| 亚洲国产精品视频| 亚洲成AV人综合在线观看| 春意影院午夜爽爽爽免费| 在线观看的免费网站| 亚洲AV午夜福利精品一区二区| 亚洲码欧美码一区二区三区| 久久国产精品2020免费m3u8| 亚洲国产美女精品久久| 国产精品免费观看久久| 777亚洲精品乱码久久久久久 | 亚洲精品人成网线在线播放va| 久久久久成人精品免费播放动漫| 亚洲日产2021三区在线| 四虎影视www四虎免费| 亚洲午夜久久影院| 成人国产精品免费视频| 亚洲AV成人精品日韩一区18p| 亚洲国产综合精品| 精品久久久久久久免费人妻| 亚洲日韩区在线电影| 亚洲免费网站观看视频| 特级做a爰片毛片免费看| 亚洲国产精品SSS在线观看AV| 乱淫片免费影院观看| 久久精品a一国产成人免费网站 | 最近免费最新高清中文字幕韩国| 91麻豆国产自产在线观看亚洲 |