監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設(shè)計管理系統(tǒng) | 簽約案例 | 購買價格 | 在線試用 | 手機APP | 產(chǎn)品資料
X 關(guān)閉

軟件構(gòu)架師需要什么技能?

申請免費試用、咨詢電話:400-8352-114

來源:泛普軟件

作為項目的技術(shù)主管,構(gòu)架師的技術(shù)需要非常的廣泛,這比技術(shù)深度更加重要(當然構(gòu)架師在特定的領(lǐng)域需要一定的技術(shù)深度)。

軟件構(gòu)架師是技術(shù)主管

首先,軟件構(gòu)架師是技術(shù)主管,這意味著除了他要有技術(shù)上的技能外,還要有很好的領(lǐng)導(dǎo)才能。構(gòu)架師的領(lǐng)導(dǎo)能力在團隊中和項目質(zhì)量控制中起著十分重要的作用。

在團隊中,構(gòu)架師是項目的技術(shù)總管,他需要有豐富的知識背景,以便作出技術(shù)上的決定。相對于構(gòu)架師來說,項目經(jīng)理是來管理項目的資源,時間進度和花費的。使用電影制作來做類比的話,項目經(jīng)理就是制片人(他要確定工作被完成了),而構(gòu)架師是導(dǎo)演(他需要確定工作被正確的完成)。由于他們在項目中所處的位置,構(gòu)架師和項目經(jīng)理是公眾人物,在一個團隊中,他們是整個項目所涉及的所有人員的聯(lián)系樞紐。構(gòu)架師應(yīng)該為建立軟件構(gòu)架爭取投資,并且要明確建立軟件構(gòu)架能給組織帶來的價值。

構(gòu)架師還要把團隊組織在構(gòu)架周圍,并且要積極地投入到計劃活動上,因為要把構(gòu)架轉(zhuǎn)化成為完成任務(wù)的先后順序,這樣才能及時地確定在什么位置需要什么技術(shù)。有一點需要注意,由于構(gòu)架師能否成功與團隊的整體水平有很大關(guān)系,所以構(gòu)架師應(yīng)該參與團隊新成員錄用的面試。

根據(jù)構(gòu)架師所擁有的能力,他可以同時參與其他團隊的工作。構(gòu)架師需要根據(jù)具體的實例情況來做領(lǐng)導(dǎo)決定,并且在決定過程中要展現(xiàn)出足夠的自信。一個成功的構(gòu)架師是以人為導(dǎo)向的,并且像一個教練一樣給他的團隊安排工作時間。這對于小組的成員來說是有好處的,他們可以及時得到幫助。這是整個團隊的一個巨大財富。

構(gòu)架師還要把精力放在切實工作的交付上,他是技術(shù)方面的推進力量。構(gòu)架師需要做決定(經(jīng)常需要在壓力下做決定),并且要保證這些決定是經(jīng)過成員之間的交流的,并且確保它能夠執(zhí)行。

架構(gòu)師可能是有一個小組來完成的

下面介紹一個人和一個角色的區(qū)別。一個人可以扮演很多角色(例如,Mary是一個開發(fā)人員,同時也是一個測試人員),同時,一個角色可以有很多的人扮演(例如,Mary和John都是測試人員)。構(gòu)架師的角色需要非常廣泛的技術(shù),這就為什么構(gòu)架師的角色經(jīng)常是很多人同時擔當。這樣可以使技術(shù)知識在小組中傳播開來,每一個人都把他的或者她的經(jīng)驗帶到工作中。特別是當某種技術(shù)同時被商業(yè)部門和技術(shù)小組理解的時候,這項技術(shù)就會最大程度的傳播開來。小組所作的結(jié)果,需要被"平衡。" 貫穿整個文章的術(shù)語"構(gòu)架師",是指的一個人或者整個小組的成員。

[一個小組]是一些擁有各種技術(shù)的人的集合,他們之間有共同需要完成的目標,并且之間相互負責任。

如果一個小組來擔當構(gòu)架師的角色,那么就需要有一個人作為這些構(gòu)架師的領(lǐng)導(dǎo),他要擁有整體的前景,并且需要調(diào)節(jié)構(gòu)架師小組之間的問題。如果沒有這種調(diào)節(jié),構(gòu)架師小組成員之間就會存在危險,他們可能不會建立出一個緊密地構(gòu)架或者決策不會被成功的完成。

現(xiàn)在有一個新的概念在構(gòu)架師小組中被提出:為了使成員之間達到共同的目的和目標,團隊為構(gòu)架師小組建立并發(fā)布了一個章程。 好的構(gòu)架師知道自己的強項和弱點在哪里。無論構(gòu)架師的角色被一個人還是一個小組擔當,他們背后都有"值得信賴的顧問"的支持。他們可以通過和其他構(gòu)架師協(xié)同工作來彌補自身在某些技術(shù)方面的不足。最好的構(gòu)架通常是被一個構(gòu)架師小組建立的,而不是一個人。原因很簡單,一個小組的力量總要比一個人的知識豐富的多。

構(gòu)架師小組的概念有一個缺陷,他們有時被團隊中的其他人認為是在"象牙塔"里工作,因為他們的產(chǎn)品經(jīng)常是很有智慧的但卻沒有使用價值。這種誤解可以從開始就把它減到最?。?)確保所有的涉眾都能積極地協(xié)商,2)不斷的交流構(gòu)架和它的價值,3)在執(zhí)行過程中要有組織策略的意識。

構(gòu)架師應(yīng)該理解軟件開發(fā)過程

構(gòu)架師應(yīng)該對軟件開發(fā)過程有正確的估計,因為這個過程確保小組中的所有成員使用同等的方式工作。一個好的過程需要定義各個角色的工作承擔責任, 產(chǎn)品的建立,不同角色之間的協(xié)同工作等等。由于構(gòu)架師每天的工作都需要和很多小組成員打交道,所以對于他們來說了解工作的職責是非常重要的。在每天的工作中,開發(fā)小組經(jīng)常要找到構(gòu)架師,了解該做什么工作以及怎么去做。這就是軟件構(gòu)架師和項目經(jīng)理之間的細微差別。

軟件構(gòu)架師需要有商業(yè)領(lǐng)域的知識

盡管擁有了豐富的軟件開發(fā)經(jīng)驗,但是我們還期望(或者是要求)構(gòu)架師擁有一定商業(yè)領(lǐng)域的知識。[一個領(lǐng)域]是在一個范圍內(nèi)工作的從業(yè)人員使用一系列特定的概念和術(shù)語來表達這個領(lǐng)域內(nèi)的知識。

這種知識將會使構(gòu)架師更好的理解系統(tǒng)的需求,并把精力投身于其中,確保系統(tǒng)的需求是合適的——例如,從構(gòu)架師領(lǐng)域的角度出發(fā),需求是要被準確捕獲的。經(jīng)常會出現(xiàn)這樣的情況,一個特定系列的構(gòu)架樣式可以被應(yīng)用到與它相聯(lián)系的一個特定的領(lǐng)域中。如果構(gòu)架師知道這種映射關(guān)系,那么對他的工作將是很大的幫助。

因此,一個好的構(gòu)架師將會在軟件開發(fā)和商業(yè)領(lǐng)域的知識上面做出權(quán)衡。如果一個構(gòu)架師具有很好的軟件開發(fā)經(jīng)驗但是不了解商業(yè)領(lǐng)域,那么他的解決方案可能不會解決實際的問題,而僅僅只能反映出構(gòu)架師是多么精通他的專業(yè)。

另外一個構(gòu)架師需要精通商業(yè)領(lǐng)域知識的原因是,構(gòu)架師要能夠預(yù)見軟件構(gòu)架隨時可能出現(xiàn)的變化。由于軟件構(gòu)架受它被配置的環(huán)境的影響非常大,所以對商業(yè)領(lǐng)域有正確理解的構(gòu)架師,可以從軟件構(gòu)架的角度,對不斷變化的情況做出更有遠見的決策。例如,如果構(gòu)架師發(fā)覺哪種新的標準在未來很可能成為主流,那么他將會使自己的軟件構(gòu)架在可用壽命內(nèi)符合這種標準。

軟件構(gòu)架師應(yīng)該擁有技術(shù)知識

軟件構(gòu)架的一個特定方面需要有一定的專業(yè)知識,因此一個構(gòu)架師必須具備這個水平的知識才能夠勝任他的工作。可是構(gòu)架師不必成為技術(shù)專家,這體現(xiàn)了這篇文章第一部分的思想——構(gòu)架師宏觀上的決策。因此,構(gòu)架師只需要了解宏觀上的問題,而不必關(guān)心細節(jié)化的事情。由于技術(shù)的變化過于頻繁,所以構(gòu)架師要隨時與這些變化保持同步。

軟件構(gòu)架師應(yīng)該擁有很好的設(shè)計技巧

雖然軟件構(gòu)架并不僅僅是設(shè)計,但是設(shè)計無疑是很重要的一個組成部分。構(gòu)架師應(yīng)該擁有很好的設(shè)計技巧,因為軟件的構(gòu)架包含整個軟件的關(guān)鍵性設(shè)計決策。這種決定包括軟件主要結(jié)構(gòu)的設(shè)計決策,特定部分的選擇以及指導(dǎo)的說明文檔等等。為了確保系統(tǒng)構(gòu)架的完整性,上面那些要素都要被特別的應(yīng)用到設(shè)計中,這對整個系統(tǒng)的成功完成有很大的作用。因此這些要素需要有固定的擁有設(shè)計技巧的人來負責——這個人就是構(gòu)架師。

軟件構(gòu)架師需要擁有很好的程序設(shè)計技巧

開發(fā)人員是整個項目開發(fā)過程中最重要的一個小組之一,構(gòu)架師要隨時和他們保持聯(lián)系。畢竟他們要確保軟件在最后交付使用的時候能夠成功的執(zhí)行。如果構(gòu)架師認為開發(fā)人員的工作是十分有價值的,那么他們之間的交流將會很有效用。因此,軟件構(gòu)架師需要擁有一定的程序設(shè)計技術(shù),即使不需要他們編寫程序。

大多數(shù)成功的構(gòu)架師,在一些場合中都是核心程序員,這些場合通常是他們的職業(yè)方向。即使是技術(shù)發(fā)展了,有新的程序語言出現(xiàn),一個好的構(gòu)架師可以把以前學過的設(shè)計語言的概念和新的語言聯(lián)系起來,以達到對新語言更加深入的了解。沒有這種知識,軟件構(gòu)架師就不能對需要執(zhí)行的構(gòu)架的重要元素做出完美的決策,例如執(zhí)行的組織和程序標準的采用。這會使的軟件構(gòu)架師和開發(fā)人員之間產(chǎn)生溝通上的障礙。

構(gòu)架師是一個很好的溝通員

和以上提到的幾種技術(shù)比起來,構(gòu)架師的溝通能力是最重要的。構(gòu)架師需要精通所有的溝通手段,特別是需要有一定的語言能力,包括說,寫和演講能力。交流是雙向的,所以構(gòu)架師還需要是一個很好的聆聽者與觀察者。

小組成員之間有效的溝通是項目成功的基本條件。為了更好的理解投資人的需求,與他們的溝通顯得尤為重要,同時還能夠讓所有的投資人在軟件構(gòu)架上達成共識。與項目小組的溝通同時也很重要,因為構(gòu)架師的職責不單單是把信息傳達給小組,同時還要激勵他們工作。構(gòu)架師還要負責把系統(tǒng)的構(gòu)想傳達給小組成員,使得它們讓全組人員了解,而不僅僅是構(gòu)架師自己理解。

構(gòu)架師需要做出決策

構(gòu)架師不能在自己不了解的環(huán)境中做出決策,然而項目的開發(fā)周期也沒有給他提供充足的時間去探索所有的環(huán)境,所以在很大的壓力下做的決策不太可能成功。這種環(huán)境是被期望的,成功的構(gòu)架師非常滿意這種環(huán)境,而不愿去改變它。因此構(gòu)架師需要是厚臉皮的,因為他們很可能在項目開發(fā)過程中更正自己的決定,并且按原路返回查找問題。正如Philippe Kruchten所說的:“軟件構(gòu)架師的一生是一個漫長的,在黑暗中不斷摸索并不斷改進自己的決定的過程”。

一個糟糕的決策很可能毀掉一個項目。項目小組中的其他成員會對構(gòu)架師失去信心,這時項目經(jīng)理就要參與進來,因為等待構(gòu)架的完善不會讓項目有所進展。最危險的情況是:如果構(gòu)架師沒有把自己的決策文檔化,那么小組的其它成員可能會自己制定決策,而這種決定很可能是錯誤的。

軟件構(gòu)架師需要覺察組織的政策

一個成功的構(gòu)架師不會只關(guān)心技術(shù)問題,他們還會關(guān)心組織的權(quán)力動向,時刻了解團隊的決定權(quán)在哪里。這可以保證他們正在和正確的人討論項目的決策問題。忽略團隊的權(quán)力是天真的想法?,F(xiàn)實往往是這樣的:團隊經(jīng)常會強迫項目小組在規(guī)定時間交付系統(tǒng),這需要構(gòu)架師正確的評估到這個時間。

軟件構(gòu)架師是一個談判代表

為了了解軟件構(gòu)架的很多尺度問題,構(gòu)架師需要隨時和投資人溝通。這種溝通常常需要談判技巧。例如,構(gòu)架師需要特別注意的一件事是:最小化項目中可能出現(xiàn)的風險,因為這直接關(guān)系到系統(tǒng)構(gòu)架的穩(wěn)定性。由于風險是和需求緊密相連的,所以可以通過移除或者減小這方面的需求來降低風險。因此把這種需求取消,需要構(gòu)架師和投資人達成共識的。這就需要構(gòu)架師是一個有效的談判人員,來權(quán)衡這些問題。(itpub)

發(fā)布:2007-04-23 10:59    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
貴陽OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普貴陽OA快博其他應(yīng)用

貴陽OA軟件 貴陽OA新聞動態(tài) 貴陽OA信息化 貴陽OA快博 貴陽OA軟件行業(yè)資訊 貴陽軟件開發(fā)公司 貴陽門禁系統(tǒng) 貴陽物業(yè)管理軟件 貴陽倉庫管理軟件 貴陽餐飲管理軟件 貴陽網(wǎng)站建設(shè)公司