軟件研發(fā)面臨的主要挑戰(zhàn):系統(tǒng)復(fù)雜度的無限膨脹
目前華為公司面臨的主要問題,第一個是規(guī)模,系統(tǒng)復(fù)雜度已經(jīng)是代碼倉有上千億行,雖然公司自身只有幾十萬行,但是開源代碼加起來有上千億。版本是以千為單位,這不是全公司的,有些產(chǎn)品線一個產(chǎn)品在線上活躍的版本就是幾千個。
第二是軟件集成發(fā)布流程復(fù)雜,不管是用共主干開發(fā),還是用分成流水線發(fā)布,使得整個軟件集成和發(fā)布特別復(fù)雜。另外一個很大的問題,定位定結(jié)越來越困難,不管是自己的模塊、開源、第三方,系統(tǒng)的定位定界是難的問題。
從開源軟件整個層次也可以看出企業(yè)軟件越來越復(fù)雜,在這么多軟件里面,選擇你要的東西,這時候還要考慮資源利用率、性能、可靠性、安全隱私等等,全局的復(fù)雜性使得軟件開發(fā)越來越困難。
2019年公司變革時候的調(diào)研,從代碼量增加到團(tuán)隊規(guī)模的增加從組織流程的復(fù)雜度再到工具環(huán)境的復(fù)雜度到管理度,人力成本是下降的。
另外是交付節(jié)奏,希望按月交付、按天交付,公司是八個月一個版本,現(xiàn)在能做到6個月一個版本,所以交付節(jié)奏的加快也使得系統(tǒng)復(fù)雜度越來越大。
再看現(xiàn)在做的一些事情,大模型是否能提升軟件開發(fā)效率,不管是工業(yè)界還是學(xué)術(shù)界,尤其是微軟講多少人在用大模型,公司內(nèi)部也在用這個東西,做這個事情。華為大模型的使用是從設(shè)計開發(fā)到測試交付、維護(hù),都有可能在用這個模型。目前的規(guī)劃是做知識管理和代碼生成,這是兩個最重要的實踐。
另外智能生成實踐,大模型輔助OM開發(fā)自動化,提升OM資源研發(fā)效率70%。這個挑戰(zhàn)在于內(nèi)容特別多、步驟特別長,整個Mini行要26個步驟,非常容易遺漏。學(xué)習(xí)曲線特別陡峭,有380多種模型屬性,落到腳本有246個API的函數(shù),應(yīng)用邏輯很復(fù)雜,這么一個復(fù)雜的東西特別容易出問題。
我記得2020年在產(chǎn)品線團(tuán)隊調(diào)查,一個新員工進(jìn)來學(xué)這個東西,大概兩個月做一個MINI行,現(xiàn)在通過大模型和各種方法,把中間的某些步驟自動化,目標(biāo)是能夠爭取在天級,就是兩三天做一個。
另外整個研發(fā)工具鏈中,剛才AI For SE與SE For AI,這些都是可以做的,包括知識獲取、AI應(yīng)用、模型與服務(wù)等。在數(shù)據(jù)這塊也是非常重要的,我們自己有教訓(xùn),很多都是用開源模型去搭,如果開源模型混上自己的數(shù)據(jù)不一定能力是提升的,如果數(shù)據(jù)沒有弄好,或者沒有對齊,經(jīng)常有時候模型訓(xùn)出來是變差的,或者某些方面的能力好了,另外方面的能力差了,所以數(shù)據(jù)是很重要的。

現(xiàn)在主要的工作重心包括模型開發(fā)、模型運行和模型運維運營,這是我們正在關(guān)注的幾個方面。還有華為公司有很多內(nèi)源項目,最近有一百多個內(nèi)源項目出來,比較有名的項目,一個是AICoder,全球技術(shù)服務(wù)部搞的一個框架。還有一個小魯班機器人,可以自動回答公司每一個員工日常問的問題,當(dāng)然后面有很多引擎,不一定是大模型。
面向未來,我們期望面對軟件的復(fù)雜性方面來解決這些問題,一個是怎么優(yōu)化研發(fā)過程;第二是怎么做知識積累;第三是怎么幫助個人提升能力;最后一個是在組織團(tuán)隊方面怎么促進(jìn)協(xié)作。
