軟件架構(gou)師是(shi)(shi)軟件行業(ye)中(zhong)一種新興職(zhi)業(ye),工作職(zhi)責是(shi)(shi)在一個(ge)軟件項目開發過程中(zhong),將客戶的(de)(de)(de)需求(qiu)轉換為(wei)規范的(de)(de)(de)開發計(ji)(ji)劃及文本,并(bing)制定(ding)這個(ge)項目的(de)(de)(de)總體架構(gou),指(zhi)導(dao)整個(ge)開發團隊完成這個(ge)計(ji)(ji)劃。主導(dao)系(xi)統全局分析設(she)計(ji)(ji)與(yu)實施(shi)、負(fu)責軟件架構(gou)和(he)關鍵技術(shu)決策(ce)的(de)(de)(de)人員。軟件架構(gou)師應能迅速抓(zhua)住(zhu)問題要(yao)害,并(bing)做出合理(li)的(de)(de)(de)關鍵決定(ding)的(de)(de)(de)能力(li),具(ju)備戰略性(xing)和(he)前(qian)瞻性(xing)思(si)維能力(li),善(shan)于(yu)把握(wo)全局,能夠(gou)在更高抽象(xiang)級(ji)別上進行思(si)考(kao)。
(1)對項目開(kai)發涉及(ji)的所有問題領域(yu)都有經驗,包括徹(che)底(di)地理(li)解項目需求(qiu),開(kai)展(zhan)分析設(she)計之類軟件工程活動等;
(2)具備領導(dao)素質,以(yi)在各小組(zu)之間(jian)推進技術工作,并在項目(mu)壓力下做出牢(lao)靠的關鍵決(jue)策;
(3)擁有優秀的溝(gou)通(tong)能(neng)力,用(yong)以進行說(shuo)服、鼓(gu)勵和(he)指(zhi)導等(deng)活動(dong),并贏得項目成員的信任(ren);
(4)以目標導向(xiang)和主動(dong)的方(fang)式來(lai)不(bu)帶(dai)任何感(gan)情色彩地關注項目結(jie)果,構架師應當是項目背后的技術推動(dong)力,而非構想者或夢想家(追求完美);
(5)精通構(gou)架(jia)設計的(de)理論、實踐和(he)工具(ju),并(bing)掌握多種參(can)考構(gou)架(jia)、主要的(de)可(ke)重用構(gou)架(jia)機制和(he)模式(例如J2EE架(jia)構(gou)等);
(6)具(ju)備系(xi)統(tong)設(she)計員的(de)所有(you)技能(neng),但涉及面更廣、抽象級(ji)別更高;活(huo)動確定用例或需求(qiu)的(de)優先級(ji)、進行(xing)構(gou)(gou)架分析、創(chuang)建構(gou)(gou)架的(de)概(gai)念(nian)驗證原(yuan)型(xing)、評估構(gou)(gou)架的(de)概(gai)念(nian)驗證原(yuan)型(xing)的(de)可行(xing)性、組(zu)織系(xi)統(tong)實(shi)施模(mo)型(xing)、描(miao)述(shu)系(xi)統(tong)分布結(jie)構(gou)(gou)、描(miao)述(shu)運(yun)行(xing)時(shi)刻構(gou)(gou)架、確定設(she)計機(ji)制、確定設(she)計元(yuan)素(su)、合并已有(you)設(she)計元(yuan)素(su)、構(gou)(gou)架文檔、參(can)考構(gou)(gou)部署模(mo)型(xing)、構(gou)(gou)架概(gai)念(nian)驗證原(yuan)型(xing)、接口、事件、信號與協議等(deng)。架、分析模(mo)型(xing)、設(she)計模(mo)型(xing)、實(shi)施模(mo)型(xing)。
架(jia)構師的(de)主要(yao)任務不是從事(shi)具體的(de)軟(ruan)件程(cheng)序的(de)編(bian)寫,而是從事(shi)更高層次的(de)開發(fa)構架(jia)工(gong)作。他(ta)必須對開發(fa)技術非常了解,并且需要(yao)有(you)良好(hao)的(de)組織管理能力。可(ke)以這樣說,一(yi)個架(jia)構師工(gong)作的(de)好(hao)壞(huai)決(jue)定了整個軟(ruan)件開發(fa)項目的(de)成敗。
1、領導與協調整個項目中的技術(shu)活動(dong)(分(fen)析、設計和實施等)。
2、推動(dong)主要的技(ji)術決策,并最(zui)終表(biao)達為(wei)軟(ruan)件構架(jia)。
3、確(que)定和文檔化系統(tong)(tong)的相對構架而言意(yi)義重(zhong)大的方面(mian),包括系統(tong)(tong)的需求、設計(ji)、實施和部署等(deng)“視圖(tu)”。
4、確定設(she)計元素的分組(zu)以及這些(xie)主要分組(zu)之間的接口(kou)。
5、為技術(shu)(shu)決策提供規則,平衡各類涉眾的(de)不同關(guan)注點,化解技術(shu)(shu)風(feng)險,并(bing)保證相關(guan)決定被有效的(de)傳達和貫(guan)徹。
6、理解、評(ping)價并接收系統(tong)需求。
7、評價(jia)和確認(ren)軟件架(jia)構(gou)的實現 專業(ye)技能。
軟件(jian)(jian)(jian)架(jia)構(gou)(gou)(gou)師一般都(dou)是具備計(ji)算機科學(xue)或(huo)軟件(jian)(jian)(jian)工程(cheng)的知識,由程(cheng)序員做起(qi),然(ran)后再(zai)慢慢發展(zhan)為架(jia)構(gou)(gou)(gou)師的。在國內,很多大(da)學(xue)還沒有設立軟件(jian)(jian)(jian)架(jia)構(gou)(gou)(gou)的學(xue)位課(ke)程(cheng),雖然(ran)IT業(ye)(ye)界對設計(ji)和(he)(he)架(jia)構(gou)(gou)(gou)的興趣日漸高漲,但各學(xue)校還是無法在課(ke)程(cheng)中增加相應的內容(rong)來體現(xian)這一趨勢(shi)。從這個方面(mian)來說,學(xue)校教育已經(jing)遠(yuan)遠(yuan)落(luo)后于(yu)產業(ye)(ye)發展(zhan)。因此,促進(jin)和(he)(he)發展(zhan)軟件(jian)(jian)(jian)架(jia)構(gou)(gou)(gou)學(xue)課(ke)程(cheng)的任(ren)務將(jiang)落(luo)在軟件(jian)(jian)(jian)架(jia)構(gou)(gou)(gou)師身(shen)上。軟件(jian)(jian)(jian)架(jia)構(gou)(gou)(gou)師應該(gai)幫助各大(da)院校建(jian)立相關課(ke)程(cheng)體系,一旦教育課(ke)程(cheng)建(jian)立起(qi)來,知識體將(jiang)不(bu)僅(jin)通過新畢業(ye)(ye)生的工作(zuo)成(cheng)果來得到擴展(zhan),同時(shi)也(ye)會從適合軟件(jian)(jian)(jian)架(jia)構(gou)(gou)(gou)的教育研究(jiu)和(he)(he)出版物中得到擴展(zhan)。
雖然(ran)大學(xue)(xue)(xue)要(yao)加強軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)架構(gou)(gou)(gou)學(xue)(xue)(xue)課程(cheng)的(de)(de)(de)建設(she),但(dan)是,軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)架構(gou)(gou)(gou)師(shi)(shi)的(de)(de)(de)成長應該有(you)一(yi)個實踐的(de)(de)(de)教育過(guo)程(cheng),并(bing)不是簡單的(de)(de)(de)學(xue)(xue)(xue)校的(de)(de)(de)理論學(xue)(xue)(xue)習或者通(tong)過(guo)大型軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)公司的(de)(de)(de)認證就能成為(wei)合格(ge)的(de)(de)(de)軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)架構(gou)(gou)(gou)師(shi)(shi)。除了信息(xi)系統(tong)綜合知(zhi)識在(zai)學(xue)(xue)(xue)校學(xue)(xue)(xue)習外(wai),軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)架構(gou)(gou)(gou)師(shi)(shi)的(de)(de)(de)大部分知(zhi)識和經驗(yan)將(jiang)來自實際(ji)開(kai)發工作。根據軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)架構(gou)(gou)(gou)師(shi)(shi)的(de)(de)(de)任職條(tiao)件(jian),一(yi)名合格(ge)的(de)(de)(de)軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)架構(gou)(gou)(gou)師(shi)(shi)的(de)(de)(de)成長應該經歷8年以上的(de)(de)(de)軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)項目開(kai)發實際(ji)工作經驗(yan)。一(yi)般需要(yao)經歷程(cheng)序員、軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)設(she)計師(shi)(shi)等階段,然(ran)后再發展成為(wei)軟(ruan)(ruan)(ruan)(ruan)(ruan)(ruan)件(jian)架構(gou)(gou)(gou)師(shi)(shi)。
當然,并不是每一位程序員經過8年后都(dou)可(ke)以(yi)成長為(wei)軟(ruan)件架(jia)構(gou)(gou)師的(de)。一個(ge)軟(ruan)件工(gong)程師在(zai)充分掌握了軟(ruan)件架(jia)構(gou)(gou)師工(gong)作所(suo)必需的(de)基本理論和(he)(he)技能后,如何(he)得到和(he)(he)利用機會、如何(he)利用所(suo)掌握的(de)技能進(jin)行(xing)應用系統的(de)合理架(jia)構(gou)(gou)、如何(he)不斷(duan)的(de)抽象和(he)(he)總結自己的(de)架(jia)構(gou)(gou)模(mo)式(shi)、如何(he)深入(ru)行(xing)業成為(wei)能夠勝任分析、架(jia)構(gou)(gou)為(wei)一體的(de)精英人才,這(zhe)就(jiu)在(zai)于機遇、個(ge)人的(de)努力和(he)(he)天(tian)賦了。
國(guo)內軟件架構師的培(pei)養途徑主要有(you)兩種方式(shi),一種是大學(軟件學院)教育方式(shi),另一種是個(ge)人自(zi)我培(pei)養然(ran)后再進(jin)行相(xiang)應的培(pei)訓和(he)認證。但是,不(bu)管(guan)哪種方式(shi)都有(you)其不(bu)足之處。
軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)學(xue)(xue)院(yuan)(yuan)的(de)(de)(de)培養方式能(neng)夠系(xi)統的(de)(de)(de)學(xue)(xue)習軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)架構師(shi)必(bi)需的(de)(de)(de)知(zhi)(zhi)識體(ti)系(xi),但是(shi),軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)架構師(shi)不(bu)是(shi)簡單(dan)的(de)(de)(de)通過理(li)論學(xue)(xue)習就能(neng)夠培養出(chu)來的(de)(de)(de),軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)學(xue)(xue)院(yuan)(yuan)的(de)(de)(de)學(xue)(xue)生可能(neng)缺(que)乏必(bi)要的(de)(de)(de)設計(ji)、開發經驗和相關的(de)(de)(de)領域知(zhi)(zhi)識。盡管軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)學(xue)(xue)院(yuan)(yuan)也強(qiang)調給予學(xue)(xue)生實(shi)踐的(de)(de)(de)機(ji)會,但畢(bi)竟這種機(ji)會是(shi)有(you)限(xian)的(de)(de)(de)。有(you)關“三分之一的(de)(de)(de)師(shi)資(zi)來自企業”的(de)(de)(de)規定(ding),在部分軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)學(xue)(xue)院(yuan)(yuan)中(zhong)也沒有(you)得(de)到真正落實(shi),導(dao)致(zhi)傳授給學(xue)(xue)生的(de)(de)(de)還是(shi)一些(xie)純理(li)論知(zhi)(zhi)識。
自我(wo)培(pei)養(yang)方(fang)式的(de)(de)(de)(de)(de)(de)(de)主要(yao)對象是(shi)具有一定年限的(de)(de)(de)(de)(de)(de)(de)軟(ruan)(ruan)件(jian)開(kai)發(fa)和設計(ji)人員(yuan),如Microsoft、IBM、Sun等(deng)公(gong)司的(de)(de)(de)(de)(de)(de)(de)軟(ruan)(ruan)件(jian)架(jia)構師(shi)認(ren)證(zheng)(zheng)(zheng)對學(xue)(xue)員(yuan)的(de)(de)(de)(de)(de)(de)(de)基礎并沒有具體的(de)(de)(de)(de)(de)(de)(de)要(yao)求,只(zhi)要(yao)交納規(gui)定的(de)(de)(de)(de)(de)(de)(de)費(fei)用,然后進(jin)行(xing)幾(ji)天(tian)(tian)的(de)(de)(de)(de)(de)(de)(de)集中培(pei)訓,通過(guo)(guo)考試就(jiu)發(fa)給學(xue)(xue)員(yuan)證(zheng)(zheng)(zheng)書,甚至不(bu)(bu)需要(yao)考試就(jiu)直(zhi)接發(fa)放證(zheng)(zheng)(zheng)書。這些(xie)開(kai)發(fa)人員(yuan)在自我(wo)培(pei)養(yang)的(de)(de)(de)(de)(de)(de)(de)過(guo)(guo)程中不(bu)(bu)一定能夠系統的(de)(de)(de)(de)(de)(de)(de)學(xue)(xue)習軟(ruan)(ruan)件(jian)架(jia)構師(shi)的(de)(de)(de)(de)(de)(de)(de)理論知識,他們只(zhi)具有一定的(de)(de)(de)(de)(de)(de)(de)開(kai)發(fa)和設計(ji)經驗,僅僅經過(guo)(guo)幾(ji)天(tian)(tian)的(de)(de)(de)(de)(de)(de)(de)培(pei)訓,是(shi)不(bu)(bu)太可能培(pei)養(yang)出合格的(de)(de)(de)(de)(de)(de)(de)軟(ruan)(ruan)件(jian)架(jia)構師(shi)的(de)(de)(de)(de)(de)(de)(de)。而且(qie),作為某(mou)個廠商的(de)(de)(de)(de)(de)(de)(de)培(pei)訓和認(ren)證(zheng)(zheng)(zheng),其(qi)最終目的(de)(de)(de)(de)(de)(de)(de)是(shi)培(pei)育自己的(de)(de)(de)(de)(de)(de)(de)市場,培(pei)養(yang)一批(pi)忠誠的(de)(de)(de)(de)(de)(de)(de)用戶(hu),而不(bu)(bu)是(shi)為中國培(pei)養(yang)軟(ruan)(ruan)件(jian)架(jia)構師(shi)。因(yin)此,也(ye)存(cun)在很大的(de)(de)(de)(de)(de)(de)(de)問題和缺陷。
針對(dui)軟件架(jia)構(gou)師在(zai)軟件組織中的(de)作用和其在(zai)國內的(de)培養現狀,有分(fen)析家認(ren)為(wei)有必要將軟件架(jia)構(gou)師的(de)教育(yu)、培訓和認(ren)證作為(wei)發(fa)展(zhan)民族(zu)軟件產(chan)業(ye)的(de)一(yi)個基本決策,制定詳細的(de)軟件架(jia)構(gou)師培養方案。因此,提出以(yi)下一(yi)些關于(yu)軟件架(jia)構(gou)師培養的(de)基該方法和途徑。
⑴確(que)(que)定軟(ruan)件(jian)架(jia)構師在軟(ruan)件(jian)組織中的(de)(de)職(zhi)責(ze)和充當的(de)(de)角色(se),確(que)(que)定其相(xiang)應的(de)(de)必須(xu)具(ju)備(bei)的(de)(de)知識體系,確(que)(que)定軟(ruan)件(jian)架(jia)構師的(de)(de)職(zhi)業及其相(xiang)關制(zhi)度,制(zhi)定軟(ruan)件(jian)架(jia)構師的(de)(de)培(pei)養(yang)目標和培(pei)養(yang)方案。
⑵堅持以大(da)學(xue)(xue)教(jiao)育(yu)為(wei)主(特別是(shi)各軟(ruan)(ruan)件(jian)學(xue)(xue)院在這(zhe)方面可以大(da)施身手(shou)),以項(xiang)目實(shi)踐(jian)(jian)為(wei)輔(fu)的(de)(de)教(jiao)育(yu)方針(zhen)。大(da)學(xue)(xue)可以聘請(qing)現有的(de)(de)軟(ruan)(ruan)件(jian)架構(gou)師(shi)(shi)擔任核心課程的(de)(de)講師(shi)(shi),通過(guo)學(xue)(xue)校教(jiao)育(yu),系(xi)統學(xue)(xue)習(xi)軟(ruan)(ruan)件(jian)架構(gou)師(shi)(shi)所必需的(de)(de)知(zhi)識體系(xi);通過(guo)項(xiang)目實(shi)踐(jian)(jian)使其具(ju)有初步的(de)(de)軟(ruan)(ruan)件(jian)開發(fa)和設計(ji)經驗,逐步成(cheng)長為(wei)一名合(he)格的(de)(de)軟(ruan)(ruan)件(jian)架構(gou)師(shi)(shi)。
⑶作位第(di)2條的(de)補充(chong),聘請(qing)現(xian)有的(de)軟件架(jia)構師,個(ge)人認為(wei)適(shi)合以講座(zuo)的(de)形式在學校開展。
⑷對(dui)國(guo)外一些大公司的(de)軟件架構(gou)師的(de)培訓和認證(zheng)予以支持,但是在認證(zheng)的(de)過程中必(bi)須堅(jian)持符(fu)合中國(guo)實際情況的(de)原(yuan)則。例如,在認證(zheng)考(kao)試(shi)之前(qian)對(dui)考(kao)生的(de)知識體系進行系統(tong)的(de)測試(shi)和評估,在通過認證(zheng)后的(de)適當時間(jian)內進行重(zhong)新認證(zheng)和繼續教育。
⑸建立(li)完善的(de)軟件架構師(shi)(shi)教育和認證(zheng)制度,使得通過認證(zheng)的(de)人員(yuan)能夠(gou)在(zai)實(shi)際的(de)軟件開(kai)發中成為稱職的(de)和優秀的(de)軟件架構師(shi)(shi)。并通過此(ci)制度能夠(gou)為國(guo)家培養出更多、更優秀的(de)軟件架構師(shi)(shi),解(jie)決當前軟件架構師(shi)(shi)急缺問題。
好的(de)(de)(de)(de)軟件(jian)(jian)(jian)(jian)架(jia)(jia)構師(shi)不(bu)只是(shi)(shi)(shi)一(yi)位受到(dao)尊敬的(de)(de)(de)(de)資深技術人員(yuan)(yuan),通常(chang)也是(shi)(shi)(shi)策略制定和組織協調的(de)(de)(de)(de)高手(shou)(shou)(shou),稱職的(de)(de)(de)(de)顧問與領(ling)導者。這(zhe)(zhe)是(shi)(shi)(shi)因為(wei)軟件(jian)(jian)(jian)(jian)架(jia)(jia)構規(gui)(gui)劃(hua)(hua)與設(she)計(ji)(ji)主(zhu)要(yao)是(shi)(shi)(shi)以宏觀(guan)(guan)(guan)的(de)(de)(de)(de)角(jiao)(jiao)度(du)切入系統(tong)架(jia)(jia)構,一(yi)般(ban)所謂(wei)的(de)(de)(de)(de)設(she)計(ji)(ji)則是(shi)(shi)(shi)以微觀(guan)(guan)(guan)的(de)(de)(de)(de)角(jiao)(jiao)度(du)切入。軟件(jian)(jian)(jian)(jian)工程(cheng)師(shi)和程(cheng)序員(yuan)(yuan)所考(kao)慮的(de)(de)(de)(de)是(shi)(shi)(shi)單個構件(jian)(jian)(jian)(jian)的(de)(de)(de)(de)功能(neng),而(er)軟件(jian)(jian)(jian)(jian)架(jia)(jia)構師(shi)必須從全局的(de)(de)(de)(de)角(jiao)(jiao)度(du)理(li)解軟件(jian)(jian)(jian)(jian)項目的(de)(de)(de)(de)業(ye)務目的(de)(de)(de)(de)和期望結果(guo),能(neng)夠定義不(bu)同的(de)(de)(de)(de)構件(jian)(jian)(jian)(jian)是(shi)(shi)(shi)如何(he)組裝(zhuang)在一(yi)起的(de)(de)(de)(de)。軟件(jian)(jian)(jian)(jian)架(jia)(jia)構師(shi)規(gui)(gui)劃(hua)(hua)系統(tong)的(de)(de)(de)(de)角(jiao)(jiao)度(du)主(zhu)要(yao)是(shi)(shi)(shi)從自上而(er)下(xia)的(de)(de)(de)(de)方式著(zhu)手(shou)(shou)(shou),而(er)軟件(jian)(jian)(jian)(jian)設(she)計(ji)(ji)師(shi)則多(duo)半從自下(xia)而(er)上的(de)(de)(de)(de)方式著(zhu)手(shou)(shou)(shou)。這(zhe)(zhe)種(zhong)從宏觀(guan)(guan)(guan)/微觀(guan)(guan)(guan)的(de)(de)(de)(de)角(jiao)(jiao)度(du)進行劃(hua)(hua)分,在其他(ta)學科也常(chang)看見,如宏觀(guan)(guan)(guan)經濟學與微觀(guan)(guan)(guan)經濟學等。這(zhe)(zhe)種(zhong)宏觀(guan)(guan)(guan)角(jiao)(jiao)度(du)的(de)(de)(de)(de)本(ben)質,就是(shi)(shi)(shi)軟件(jian)(jian)(jian)(jian)架(jia)(jia)構師(shi)專業(ye)領(ling)域與其他(ta)軟件(jian)(jian)(jian)(jian)開(kai)發(fa)人員(yuan)(yuan)最根本(ben)的(de)(de)(de)(de)區別。
從(cong)宏(hong)觀的(de)(de)(de)(de)角(jiao)度,舉凡(fan)架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)規(gui)格與決策(ce)、排定(ding)架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)審閱時(shi)程(cheng)、解決所(suo)有架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)相關的(de)(de)(de)(de)問題、所(suo)有主要技術決策(ce)的(de)(de)(de)(de)核準、維護架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)規(gui)格等都是架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)設計(ji)的(de)(de)(de)(de)主要工作(zuo)(zuo)。通常在項目(mu)一開始,需求與初始分析等工作(zuo)(zuo)流程(cheng)會(hui)產(chan)生規(gui)劃的(de)(de)(de)(de)企(qi)業流程(cheng)與預期系統完(wan)成(cheng)的(de)(de)(de)(de)功能。有了(le)這些信息,軟(ruan)件(jian)架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)師就能草擬(ni)最初的(de)(de)(de)(de)高層架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)藍圖,并列出影晌架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)的(de)(de)(de)(de)可能的(de)(de)(de)(de)因(yin)素清單。另外(wai),軟(ruan)件(jian)架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)師也(ye)要擔負估算(suan)項目(mu)成(cheng)本(ben)的(de)(de)(de)(de)職責,評(ping)估項目(mu)計(ji)劃對系統既有基礎結構(gou)(gou)(gou)(gou)與架(jia)(jia)(jia)構(gou)(gou)(gou)(gou)的(de)(de)(de)(de)沖擊,以及計(ji)算(suan)可能付出的(de)(de)(de)(de)成(cheng)本(ben)與所(suo)帶來(lai)的(de)(de)(de)(de)效益。
除了上(shang)述任(ren)務以外(wai),檢(jian)查初期(qi)架構(gou)(gou)規劃設計、影響因素(su)與(yu)(yu)(yu)(yu)成本,維持與(yu)(yu)(yu)(yu)組織架構(gou)(gou)決(jue)(jue)(jue)(jue)策的(de)(de)一致性(xing)也(ye)是(shi)架構(gou)(gou)設計師的(de)(de)重(zhong)要(yao)職責之一。這(zhe)通(tong)常要(yao)找出(chu)制定項(xiang)目的(de)(de)架構(gou)(gou)決(jue)(jue)(jue)(jue)策與(yu)(yu)(yu)(yu)其(qi)優先級的(de)(de)判斷(duan)基(ji)準、定義問題領域(yu)、決(jue)(jue)(jue)(jue)定可(ke)能解(jie)(jie)決(jue)(jue)(jue)(jue)方案(an)的(de)(de)制約條件(jian)(jian)、確(que)認有關(guan)可(ke)能解(jie)(jie)決(jue)(jue)(jue)(jue)方法的(de)(de)假設狀況(kuang)以及(ji)辨(bian)識模塊重(zhong)用的(de)(de)可(ke)能性(xing)。軟(ruan)件(jian)(jian)架構(gou)(gou)師也(ye)必須負(fu)責確(que)保需求的(de)(de)達成,以及(ji)硬(ying)件(jian)(jian)、軟(ruan)件(jian)(jian)、基(ji)礎結構(gou)(gou)、性(xing)能、安全性(xing)、容(rong)量、可(ke)用性(xing)和(he)系(xi)(xi)統(tong)運行、管理與(yu)(yu)(yu)(yu)維護等(deng)屬于(yu)系(xi)(xi)統(tong)層次相(xiang)關(guan)技術之間的(de)(de)協(xie)調(diao)與(yu)(yu)(yu)(yu)平衡(heng)(heng)。在某些(xie)關(guan)鍵時刻(ke),軟(ruan)件(jian)(jian)架構(gou)(gou)師也(ye)要(yao)做出(chu)系(xi)(xi)統(tong)與(yu)(yu)(yu)(yu)架構(gou)(gou)在協(xie)調(diao)、平衡(heng)(heng)上(shang)種種必須當(dang)機立斷(duan)但又(you)很(hen)難判斷(duan)的(de)(de)決(jue)(jue)(jue)(jue)策。
軟件(jian)架(jia)(jia)構(gou)(gou)(gou)師(shi)必須設(she)法降低可(ke)能(neng)的(de)(de)(de)技術風(feng)(feng)險(xian)(xian)對系統(tong)的(de)(de)(de)沖(chong)擊(ji)。在規(gui)劃初期(qi),技術風(feng)(feng)險(xian)(xian)對一般人來(lai)說(shuo)通常都(dou)是(shi)不(bu)(bu)可(ke)知、不(bu)(bu)可(ke)驗證也(ye)(ye)不(bu)(bu)可(ke)測的(de)(de)(de)。風(feng)(feng)險(xian)(xian)大多與(yu)系統(tong)層次的(de)(de)(de)需求有關,有時(shi)也(ye)(ye)會與(yu)組織需求有關。不(bu)(bu)論任何(he)類型的(de)(de)(de)風(feng)(feng)險(xian)(xian),有經驗的(de)(de)(de)架(jia)(jia)構(gou)(gou)(gou)設(she)計師(shi)都(dou)可(ke)在項目的(de)(de)(de)先期(qi)也(ye)(ye)就(jiu)是(shi)構(gou)(gou)(gou)建架(jia)(jia)構(gou)(gou)(gou)時(shi)期(qi),預先列出這(zhe)些可(ke)能(neng)的(de)(de)(de)風(feng)(feng)險(xian)(xian),然后在后續的(de)(de)(de)開(kai)(kai)發時(shi)期(qi)配合開(kai)(kai)發人員(yuan)予以適(shi)當地(di)處理與(yu)解決。另外,架(jia)(jia)構(gou)(gou)(gou)設(she)計師(shi)也(ye)(ye)必須領(ling)導開(kai)(kai)發團隊,保持與(yu)其他成員(yuan)的(de)(de)(de)良好互動,確(que)保開(kai)(kai)發人員(yuan)是(shi)根(gen)據架(jia)(jia)構(gou)(gou)(gou)藍圖來(lai)構(gou)(gou)(gou)建系統(tong)。
總(zong)之,軟件架構(gou)師(shi)(shi)的(de)(de)(de)主要(yao)任務(wu)就是規劃與系(xi)(xi)統架構(gou)層(ceng)次相關的(de)(de)(de)事(shi)務(wu),評估(gu)可(ke)能(neng)的(de)(de)(de)風險與成本,并有效(xiao)運用(yong)有限的(de)(de)(de)人(ren)力(li)、物(wu)力(li)資源滿足系(xi)(xi)統層(ceng)次的(de)(de)(de)需求。優(you)秀的(de)(de)(de)軟件架構(gou)師(shi)(shi)是保(bao)證軟件系(xi)(xi)統強大生命力(li)的(de)(de)(de)核(he)心人(ren)物(wu)。專業架構(gou)師(shi)(shi)能(neng)夠幫助組(zu)織(zhi)全面研(yan)究現有架構(gou)和(he)設(she)計(ji)模式(shi)、評估(gu)系(xi)(xi)統設(she)計(ji)的(de)(de)(de)優(you)缺點(dian)和(he)可(ke)能(neng)存(cun)在(zai)(zai)的(de)(de)(de)風險,通過一系(xi)(xi)列(lie)的(de)(de)(de)專題指(zhi)導和(he)具體案例(li)幫助組(zu)織(zhi)掌(zhang)握先進(jin)的(de)(de)(de)、成熟的(de)(de)(de)設(she)計(ji)模式(shi),簡化復雜的(de)(de)(de)業務(wu)邏(luo)輯(ji)和(he)需求,確定系(xi)(xi)統最佳方案。在(zai)(zai)必(bi)要(yao)的(de)(de)(de)情況下,還可(ke)就特定領域或課題,為開發人(ren)員提供定制指(zhi)導。