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