軟件行業(yè)的開發(fā)效率正在迎來質(zhì)的提升。
一個明顯的趨勢是,越來越多的企業(yè)開始認(rèn)識到數(shù)字化生產(chǎn)方式給企業(yè)帶來的創(chuàng)新活力和效率增長,尤其是擁有龐大科技團隊的大型企業(yè)和互聯(lián)網(wǎng)公司。
他們在中國企業(yè)加速駛?cè)霐?shù)字化轉(zhuǎn)型深水區(qū)的過程里,既是打頭陣的先行者,也是最核心的戰(zhàn)斗力。
如IDC在《2020數(shù)字化轉(zhuǎn)型2.0》報告中所說,無處不在的AI,云與邊緣的融合,解決方案的自動化等關(guān)鍵驅(qū)動力,很可能成為企業(yè)數(shù)字化轉(zhuǎn)型中的重要加速器。
而我也在最近觀察到這些驅(qū)動力在數(shù)字時代的輕盈落地,就「解決方案的自動化」這一點而言,國內(nèi)已經(jīng)有企業(yè)研發(fā)出「全自動軟件工程平臺」,只要輸入需求流程圖,不需要敲寫一行代碼平臺,就可以自動開發(fā)并完成測試,還有自動運維支撐等全鏈條服務(wù)。
從目前的研發(fā)深度來看,軟件開發(fā)行業(yè)將迎來巨變。
我們先不去討論一個全面的自動化,或者零人工有沒有可能,從這幾年的浪潮來看,從微軟等企業(yè)布局低代碼開始,人人都是開發(fā)者的時代已然到來,但低代碼的發(fā)展還在初期,目前架構(gòu)也不夠成熟,不能滿足大型企業(yè)復(fù)雜多元,以及流程鏈條化的業(yè)務(wù)需求。
簡單而言,低代碼的模塊拖拉,還停留在前端界面設(shè)計階段,后端的全自動開發(fā)問題,始終沒有被放到臺前討論。這才是軟件開發(fā)效率能否提升的破發(fā)點。
而當(dāng)全自動軟件開發(fā)成為可能時,后端大刀闊斧的改革才真正被聚光燈照見。
01
一個神奇的流程圖
盡管企業(yè)端對使用順滑、流程合理的軟件有大量需求,但行業(yè)的痛點明顯。艾瑞咨詢《中國軟件開發(fā)行業(yè)研究報告2020》指出,項目開發(fā)成本高、開發(fā)周期長、代碼質(zhì)量低、團隊管理難幾乎是長期困擾需求者的問題。
行業(yè)不是沒做過努力。這幾年,以開發(fā)為切入口,涌現(xiàn)了一批布局低代碼業(yè)務(wù)的公司,試圖通過減少傳統(tǒng)應(yīng)用程序的代碼編寫數(shù)量,運用圖形化界面拖拽,來讓更多非IT的業(yè)務(wù)人員,直接上手參與流程優(yōu)化。
起點是在2018年。
那一年,OutSystems和Mendix兩家獨角獸,直接引爆了資本市場對低代碼平臺的關(guān)注。OutSystems隨即得到私募股權(quán)機構(gòu)KKR和高盛共同投資的3.6億美金。而后,德國工業(yè)巨頭西門子也宣布進入低代碼開發(fā)平臺市場,用6億歐元買了Mendix。
OutSystems和Mendix還不是棋局上最大的玩家。
2019年,Salesforce和微軟正式進入低代碼領(lǐng)域,前者依靠低代碼開發(fā)模式為自身的CRM應(yīng)用打造PaaS平臺,后者設(shè)計了低代碼開發(fā)組件Power Apps,并想要這個組件內(nèi)嵌到Office辦公套件里,讓其自身的企業(yè)端軟件形成一個生態(tài)。
我和幾個做程序員的朋友曾經(jīng)親測過微軟的Power Apps。發(fā)現(xiàn)他們目前能執(zhí)行的是一些比較簡單的功能,比如銷售數(shù)據(jù)的滾動統(tǒng)計、年復(fù)合增長率、訂單生成處理。
就拿訂單處理來說,大概只能停留在訂單自動下達(dá)到倉庫這一步。如果復(fù)雜到訂單生成后,這批貨物需要從俄羅斯運送至歐洲盧森堡中轉(zhuǎn),最終抵達(dá)美國顧客手里,這中間涉及到不同國家之間最優(yōu)惠的物流路線和商品稅計算,低代碼就很難做到了。
說白了,這是企業(yè)核心業(yè)務(wù)自身的復(fù)雜性導(dǎo)致的。而低代碼雖然解決了一部分開發(fā)效率低的問題,但只是局限于前端展現(xiàn)層的拖拽操作,沒有針對后端開發(fā)進行真正的改革創(chuàng)新。
對企業(yè)來說,這種步伐的邁進還遠(yuǎn)遠(yuǎn)不夠。
而最近釋放出來的消息是,國內(nèi)已經(jīng)有企業(yè)在后端實現(xiàn)了破局。只要輸入需求流程圖,平臺就能自動實現(xiàn)軟件的開發(fā)、測試和運維。在剛剛結(jié)束的發(fā)布會上,一套研發(fā)多年的「飛算全自動軟件工程平臺」全球首發(fā)。
飛算云智總裁陳定瑋在發(fā)布會上介紹產(chǎn)品
在發(fā)布會現(xiàn)場PK賽上發(fā)現(xiàn),使用該平臺做「運動計時」同一項目開發(fā),一個普通的IT工程師只需要輸入流程圖,不敲一行代碼就實現(xiàn)了后端開發(fā)。而僅僅28分鐘之后,他就完成了3個資深I(lǐng)T工程師近2個小時的開發(fā)工作。
從輸入流程圖的角度來看,飛算全自動軟件工程平臺也在做可視化。但與市面上同類工具不同的是,飛算全自動軟件工程平臺,能提供后端微服務(wù)開發(fā)。
后端微服務(wù)的邏輯就要依靠平臺組件,即通用的技術(shù)功能模塊。它們能支持循環(huán)、條件判斷、函數(shù)調(diào)用,通過拖拉拽的方式以及參數(shù)配置實現(xiàn)等同編寫復(fù)雜代碼的業(yè)務(wù)邏輯。這就是全自動開發(fā)功能實現(xiàn)的基礎(chǔ)。
換句話說,實際上你繪制流程圖的過程就是微服務(wù)(復(fù)雜代碼業(yè)務(wù)邏輯)開發(fā)的過程。圖形化的流程圖多清楚,哪里不會畫哪里。
這樣一來,項目管理上也輕松了許多。你可以減少之前繁復(fù)過多的層級溝通,從項目經(jīng)理到產(chǎn)品經(jīng)理,部分架構(gòu)師可以直接完成項目的計劃和設(shè)計,也不用RD工程師做任務(wù)分解。如此操作,溝通效率客觀上提高了不少。
自此,只需要通過一個的神奇流程圖,就可以在平臺上實現(xiàn)全自動開發(fā),項目管理、自動化測試、和自動化運維的全部功能。
02
開發(fā)的全周期覆蓋
當(dāng)然,可視化的流程圖,還只是飛算全自動軟件工程平臺的創(chuàng)新表現(xiàn)之一。從開發(fā)到測試,再到后期運維,平臺實際上形成了從前期到后期的高度統(tǒng)籌,這種全周期覆蓋的管理能力。
一個常見的誤區(qū)是,行業(yè)的開發(fā)提升大多注重功能的新增和優(yōu)化,而忽視了從產(chǎn)品設(shè)計開發(fā)、測試到交付、運營等全生命周期的質(zhì)化提升。
而全周期、全鏈條的能力之所以重要,是因為開發(fā)一套互聯(lián)網(wǎng)技術(shù)的微服務(wù)架構(gòu)體系,本來就是一環(huán)套一環(huán),哪個環(huán)節(jié)都不能出錯,不然就算代碼寫出來了,這套服務(wù)軟件最后也沒法用。
這主要是在于軟件工程行業(yè)多依靠「人治」,程序員個人或團隊在其中發(fā)揮的作用遠(yuǎn)遠(yuǎn)超過了系統(tǒng)、代碼等規(guī)定和流程的標(biāo)準(zhǔn)化作用機制。
舉例而言,傳統(tǒng)的代碼編寫工作還是采用二進制的文本邏輯。一不小心,如果少了個逗號或者逗號前面出現(xiàn)了空格,又或者全角符和半角符沒有統(tǒng)一,那整段代碼在測試時可能全崩了。每個程序員寫代碼的習(xí)慣和邏輯也不盡相同,負(fù)責(zé)測試的工程師可能要在成千上萬頁的代碼里找出這個小錯誤,耗時耗力可想而知。
但如果是在飛算全自動軟件工程平臺上,這種失誤就會很大程度上地避免。首先自動生成的后端開發(fā)會比人工代碼更加精準(zhǔn),遵循代碼規(guī)范,可讀性、可維護性也較高。其次,平臺的自動化測試功能通過測試用例跟蹤,可進行接口測試、性能測試等來讓這套代碼運行起來時盡可能穩(wěn)定順暢。
而在自動化運維功能模塊里,平臺的自帶服務(wù),注冊中心,分布式鏈路追蹤,服務(wù)發(fā)現(xiàn),服務(wù)治理等環(huán)節(jié),也可以保障新代碼push之后的順利運行。
自動化項目管理、自動化開發(fā)、自動化的測試和運維,這四項核心功能的實現(xiàn),實際上標(biāo)志著行業(yè)從「人治」到「法治」的階段躍升。
飛算云智總裁陳定瑋認(rèn)為,盡管軟件行業(yè)的發(fā)展積累大量可行的實操方式和可行制度,但人的個性化導(dǎo)致了制度落地執(zhí)行時差異很大。一旦出現(xiàn)一個有效的工具能將這些管理制度自動落實到位,由于人的個性化導(dǎo)致的一系列問題如招聘難、培養(yǎng)難、留人難、技術(shù)沉淀難等,就能迎刃而解 。
目前,飛算全自動軟件工程平臺在“項目管理”、“自動化開發(fā)”、“自動化測試”、“質(zhì)量管理”、“自動化運維”等核心板塊,涉及150多個流程節(jié)點的問題上,都能夠形成自動化和有效開發(fā),行業(yè)痛點的化解也因此水到渠成。
當(dāng)然,標(biāo)準(zhǔn)化、自動化的開發(fā)系統(tǒng)也并非完全杜絕了個性化、創(chuàng)造力的可能。比如,關(guān)鍵崗位的招聘、留人難,行業(yè)的技術(shù)沉淀,就是之前的一個遺留問題。
飛算全自動軟件工程平臺的解決方式是,引入了眾創(chuàng)中心,像社區(qū)一樣讓工程師們集聚在一起。IT狂人們在眾創(chuàng)中心根據(jù)自身經(jīng)驗提供封裝組件,大家的經(jīng)驗一起在這個平臺上沉淀,不僅能夠讓使用者快速開發(fā)和使用,也能集眾人智慧,讓開發(fā)出的軟件形成更穩(wěn)定的質(zhì)量和安全體系。
03
行業(yè)效能的天際飛躍
我們回頭來看飛算全自動軟件工程平臺的價值,為什么從發(fā)布之后就引來了巨大關(guān)注。
國際歐亞科學(xué)院院士、國際歐亞科學(xué)院中國中心副主席張景安院士期待,這種中國原創(chuàng)、擁有自主知識產(chǎn)權(quán)的平臺的出現(xiàn),可以為國民經(jīng)濟、制造業(yè)、產(chǎn)業(yè)轉(zhuǎn)型升級、智能制造和人工智能的高質(zhì)量發(fā)展作出新的貢獻。
而中國工程院院士倪光南也在視頻中指出,「如果通過實踐驗證,這個平臺對軟件行業(yè)的發(fā)展將很有意義」。
從信息技術(shù)研究和顧問公司Gartner,2019年向來自全球89個國家范圍內(nèi)的3000多名首席信息官的調(diào)查來看,通常企業(yè)內(nèi)的IT需求一定會大于IT人力的負(fù)荷量。當(dāng)時,這些首席信息官就曾預(yù)測,在數(shù)字化浪潮里,2019年全球IT預(yù)算將增長2.9%,而亞太地區(qū)的增長,有可能達(dá)到3.5%。
隨著企業(yè)數(shù)字化轉(zhuǎn)型的不斷深化,以及消費者對數(shù)字化的需求,這個市場增長還在不斷擴大。但企業(yè)的成本的確是在逐年走高。
但飛算全自動軟件工程平臺無論是項目成本還是開發(fā)效率,代碼質(zhì)量還是團隊管理和穩(wěn)定性,都讓行業(yè)效能得到了飛躍天際線的提升。
我們來舉個例子。
如果有個科技公司,想要開發(fā)一套互聯(lián)網(wǎng)技術(shù)的微服務(wù)架構(gòu)體系,包括前端系統(tǒng)體系、業(yè)務(wù)系統(tǒng)體系和大數(shù)據(jù)體系等,且需版本高頻率迭代。需要多大的人力和物力呢?
首先,IT團隊要做需求分析,系統(tǒng)架構(gòu)設(shè)計,微服務(wù)開發(fā)、系統(tǒng)測試和運維保障系統(tǒng)。其中光是微服務(wù)開發(fā)就包括:前端界面開發(fā)、技術(shù)服務(wù)支撐系統(tǒng)開發(fā)、業(yè)務(wù)系統(tǒng)開發(fā)、人工智能分析系統(tǒng)開發(fā)、大數(shù)據(jù)系統(tǒng)開發(fā)。如果這時團隊還要兼顧對外合作項目開發(fā),涉及項目超30個,業(yè)務(wù)量需要容納的用戶超過千萬,這個工作量就更大了。
在這種配置要求下,「傳統(tǒng)開發(fā)模式」和「飛算全自動軟件工程平臺」兩者人力成本的相關(guān)費用對比是很鮮明的。
如果使用后者,每年可節(jié)省75%以上的研發(fā)費用。尤其在人力成本方面,一個平臺ID人員可替代傳統(tǒng)開發(fā)模式下包含項目經(jīng)理,系統(tǒng)架構(gòu)師,軟件設(shè)計師,軟件工程師,測試工程師,運維工程師等六個崗位人員的全部工作,而人力成本僅占后者的30%。
這是人員配置上的項目成本優(yōu)勢,開發(fā)效率的提升我們之前也提過了,至于團隊和系統(tǒng)穩(wěn)定性,當(dāng)操作者降低軟件工程對技術(shù)的依賴時,技術(shù)選型、技術(shù)綁架、技術(shù)趟坑等問題也隨之減少;而標(biāo)準(zhǔn)化、減少人工輸入的環(huán)節(jié)也提高了代碼質(zhì)量。
之前我看過一本書叫《人月神話》,作者是Fred Brooks。按照他的劃分,軟件開發(fā)的復(fù)雜度大概有兩種,本質(zhì)復(fù)雜度(Essential complexity )和偶然復(fù)雜度(Accidental complexity)。前者有點兒類似于企業(yè)的這個業(yè)務(wù)需求,本身的復(fù)雜程度,和工程師用什么樣的工具寫代碼、經(jīng)驗是否豐富、架構(gòu)好不好都沒什么關(guān)系。而后者就是實際開發(fā)過程中引入的復(fù)雜度,就是技術(shù)細(xì)節(jié)的復(fù)雜度。
業(yè)務(wù)的復(fù)雜度是企業(yè)決定的,給開發(fā)者和企業(yè)方提供服務(wù)的平臺本身是改變不了的,能動的,就是技術(shù)細(xì)節(jié)復(fù)雜度的降低。這就好比,烹飪一份食材特殊、流程復(fù)雜、技術(shù)高超的美食,平臺方要把菜挑選好了,都洗好切好,火候也掌握好,每一道工序的時間都明確寫好,廚師自己照著做就可以。
平臺承擔(dān)的事情越多,在平臺上開發(fā)軟件的工程師就越輕松,這和做一個快樂的廚師,沒什么不同。當(dāng)然,也不是說這個工程師誰都可以做,每個人承擔(dān)的角色不同,發(fā)揮的作用機制自然也不一樣。
目前,我國軟件和信息技術(shù)服務(wù)業(yè)規(guī)模以上企業(yè)在2019年就超過了4萬家,累計完成軟件業(yè)務(wù)收入71768億元,同比增長15.9%。在中國企業(yè)從信息化時代全面轉(zhuǎn)向數(shù)字化的階段里,軟件開發(fā)作為企業(yè)數(shù)字化轉(zhuǎn)型的重要環(huán)節(jié),很有可能成為中堅力量。
一個美好的想象是,我希望未來企業(yè)家也不用再高喊996的口號,碼農(nóng)們也不用徹夜敲代碼,當(dāng)機器代替人類創(chuàng)造出更多價值時,基于科技和人文之上的,就是人類不斷發(fā)掘需求痛點,并解決問題的創(chuàng)造思維和無窮想象了。
責(zé)任編輯:xj
-
互聯(lián)網(wǎng)
+關(guān)注
關(guān)注
54文章
11077瀏覽量
102632 -
軟件
+關(guān)注
關(guān)注
69文章
4721瀏覽量
87099 -
自動化
+關(guān)注
關(guān)注
29文章
5497瀏覽量
79015
發(fā)布評論請先 登錄
相關(guān)推薦
評論