為什么許多項(xiàng)目的技術(shù)方案高、大、上,具體實(shí)現(xiàn)卻種種問題,代碼慘不忍睹? 

 

一、架構(gòu)師欠缺深入編程的一線工作經(jīng)歷,容易泛泛而談

許多架構(gòu)師自身并沒有長(zhǎng)時(shí)間的深入編程工作的經(jīng)歷,在技術(shù)上的沉淀不足,導(dǎo)致對(duì)于軟件工程的理解、目標(biāo)沒有清晰的認(rèn)識(shí)。在做架構(gòu)設(shè)計(jì)時(shí),非常容易泛泛而談,并且給出的方案,太過高屋建瓴,缺乏對(duì)具體實(shí)現(xiàn)的理解和把握。許多架構(gòu)設(shè)計(jì)方案,僅僅停留在PPT上,具體的落實(shí)完全依靠一線開發(fā)人員。

 

二、技術(shù)選型階段:技術(shù)選型不是出于項(xiàng)目需要,而是個(gè)人喜好

在技術(shù)選型階段,較好的團(tuán)隊(duì)第一件要做的事情,通常并不是局限在技術(shù)本身,而是深入的理解業(yè)務(wù),搞清楚自己要做的到底是什么,并且明確的給出期望的技術(shù)指標(biāo)。

在此基礎(chǔ)之上,團(tuán)隊(duì)會(huì)開展多次頭腦風(fēng)暴,共同探討業(yè)務(wù)流程中可能會(huì)涉及的技術(shù)細(xì)節(jié),以及可選的方案并制定客戶認(rèn)可的技術(shù)指標(biāo),這一點(diǎn)相當(dāng)重要,在項(xiàng)目中不能單純的追求高技術(shù)指標(biāo),而是權(quán)衡時(shí)間成本,人力成本,以及項(xiàng)目經(jīng)費(fèi),制定合理的技術(shù)指標(biāo)。

在這一階段,許多架構(gòu)師在技術(shù)的選型上,往往更傾向使用自己并不熟悉的,甚至完全沒有用過的技術(shù),借此機(jī)會(huì)提高自己,充實(shí)自己的簡(jiǎn)歷。他們可能會(huì)選擇更新,更激進(jìn)的方案,不管項(xiàng)目是不是真的需要;也不太懂得權(quán)衡技術(shù)與成本,不愿意選擇看上去好像落后一些但更穩(wěn)定,更可靠,綜合成本更低的技術(shù),片面追求高大上,到了實(shí)施階段,就非常容易出現(xiàn)種種不可控的技術(shù)因素影響項(xiàng)目的進(jìn)度及品質(zhì)。

 

三、實(shí)施階段:缺乏對(duì)開發(fā)團(tuán)隊(duì)強(qiáng)有力的管理,存在技術(shù)斷層

這一點(diǎn)幾乎在所有的項(xiàng)目中都存在,架構(gòu)師在設(shè)計(jì)好方案或搭建好開發(fā)框架之后,團(tuán)隊(duì)的開發(fā)工作與進(jìn)度管控