種種現(xiàn)象表明,敏捷開發(fā)的工具和流程理念正越來越深地深入到企業(yè)日常開發(fā)工作中。隨著企業(yè)業(yè)務(wù)需求的增加與人力等成本的上升,找到一個(gè)支點(diǎn),以更少的支出撬動(dòng)更優(yōu)質(zhì)的技術(shù)支持與迭代顯得尤為重要。縱觀行業(yè)發(fā)展,自動(dòng)化軟件開發(fā)運(yùn)動(dòng)已然來臨,DevOps 平臺(tái)也正在集成各類敏捷等工具,盡可能減少客戶的工作量,驅(qū)動(dòng)行業(yè)創(chuàng)新、角色分工創(chuàng)新,提供一站式需求解決服務(wù)。
數(shù)字化轉(zhuǎn)型理想解決方案
數(shù)字化轉(zhuǎn)型被認(rèn)為是驅(qū)動(dòng)敏捷開發(fā)的重要因素,如果企業(yè)要將所有部門的整個(gè)流程數(shù)字化,那么他們需要采用可以快速啟動(dòng)上手的工具。數(shù)字化轉(zhuǎn)型并不是一個(gè)“一勞永逸”的過程,而是基于創(chuàng)新的新業(yè)務(wù)或是戰(zhàn)略,一次次地重構(gòu)應(yīng)用程序和工具,以跟上不斷變化的市場動(dòng)態(tài)和客戶/員工的需求。這就需要企業(yè)采用一個(gè)長期有效的工具來做數(shù)字化轉(zhuǎn)型,而敏捷開發(fā)本身易維護(hù),易上手等等特性,恰恰可以成為企業(yè)的長期解決方案。
我國企業(yè)的數(shù)字化轉(zhuǎn)型也被放到重要戰(zhàn)略位置。進(jìn)入“十四五”以來,我國數(shù)字化轉(zhuǎn)型逐步加快,“十四五規(guī)劃綱要”中將打造數(shù)字經(jīng)濟(jì)新優(yōu)勢放到了突出地位。2021 年 1-5 月,我國軟件業(yè)完成軟件業(yè)務(wù)收入 33893 億元,同比增長 22.6%。作為建設(shè)制造強(qiáng)國和網(wǎng)絡(luò)強(qiáng)國的核心支撐,我國的軟件和信息技術(shù)產(chǎn)業(yè)規(guī)模不斷擴(kuò)大,中商產(chǎn)業(yè)研究院預(yù)測,2021 年我國軟件和信息技術(shù)服務(wù)行業(yè)收入規(guī)模可達(dá) 88908 億元。
當(dāng)下還有兩個(gè)短期現(xiàn)象加速了數(shù)字化轉(zhuǎn)型的長期趨勢。首先,新冠疫情影響之下,企業(yè)想要生存,就需要使用遠(yuǎn)程辦公,輔以新的管理和協(xié)作模式,創(chuàng)建新的應(yīng)用程序和工作流程。敏捷開發(fā)工具可以幫助企業(yè)以非常快的速度響應(yīng)市場變化,并且讓企業(yè)直觀體驗(yàn)應(yīng)用程序和工作流開發(fā)的可能性。
其次,缺乏熟練的開發(fā)人員也是一大問題。艾瑞咨詢最新發(fā)布的《中國軟件開發(fā)行業(yè)研究報(bào)告(2020)》指出,軟件行業(yè)的作業(yè)方式依然十分落后,過度依賴人工,缺乏標(biāo)準(zhǔn)化,導(dǎo)致軟件行業(yè)存在明顯的四大痛點(diǎn):項(xiàng)目成本高、開發(fā)周期長、代碼質(zhì)量低、團(tuán)隊(duì)管理難。
過往在項(xiàng)目成本控制上,傳統(tǒng)的開發(fā)模式中往往是依靠疊加人力來提升效率,但這也導(dǎo)致了企業(yè)人力成本負(fù)擔(dān)的不斷積壓,最終讓企業(yè)難以為繼;同時(shí),行業(yè)內(nèi)人才素質(zhì)參差不齊,個(gè)別工程師的代碼質(zhì)量可能會(huì)影響整個(gè)項(xiàng)目的進(jìn)展;人才管理難、招聘難、溝通成本高、知識(shí)經(jīng)驗(yàn)積累沉淀難等實(shí)際問題也在困擾著很多企業(yè)主。
全球 2400 萬個(gè)開發(fā)者勞動(dòng)者數(shù)量僅占整體勞動(dòng)力的 1%,企業(yè)缺兵少將,更傾向?qū)で蟮烷T檻全流程的應(yīng)用開發(fā)管理工具。同時(shí),敏捷開發(fā)工具在填補(bǔ)技能差距之外,滿足員工對(duì)更多自主權(quán)、運(yùn)營、項(xiàng)目和工作的控制。
從敏捷開發(fā)到DevOps
工欲善其事必先利其器,對(duì)于很多致力于數(shù)字化轉(zhuǎn)型的企業(yè)而言,借助合適的項(xiàng)目管理工具無疑可以提升敏捷開發(fā)的效率,但在實(shí)際的落地過程中卻面臨重重困難。日前飛算云智總裁陳定瑋曾在公開演講時(shí)提到,當(dāng)下軟件和信息技術(shù)是建設(shè)制造強(qiáng)國和網(wǎng)絡(luò)強(qiáng)國的核心支撐,行業(yè)體量巨大。但是軟件工程作業(yè)模式仍然處在手工作坊式的階段,創(chuàng)新意識(shí)薄弱,行業(yè)自主研發(fā)意識(shí)薄弱,缺乏中國原創(chuàng)技術(shù)。同時(shí),大多數(shù)企業(yè)在做應(yīng)用層相關(guān)工作,很少有企業(yè)在做新基建,建設(shè)軟件行業(yè)的基礎(chǔ)設(shè)施。
那么我們?cè)撊绾巫鲂禄?制造優(yōu)秀軟件?陳定瑋分析了當(dāng)下軟件開發(fā)領(lǐng)域的一些挑戰(zhàn)之后提出:應(yīng)該思考技術(shù)該如何服務(wù)企業(yè),讓企業(yè)有更好的發(fā)展。包括人力方面,無論是招聘、溝通還是高級(jí)技術(shù)人員的更換,對(duì)企業(yè)來說都是不菲的支出。不僅如此,代碼的質(zhì)量、系統(tǒng)的穩(wěn)定度安全度都掌握在個(gè)人開發(fā)者身上,這使得企業(yè)在很多方面都需要依賴研發(fā)人員。軟件也是遇到這樣的先創(chuàng),以前的軟件工程概念后來發(fā)展到 CMMI 概念,再到敏捷開發(fā),DevOps。但 DevOps 雖然概念很多,卻沒有很好的實(shí)戰(zhàn)案例。
陳定瑋認(rèn)為,DevOps 現(xiàn)在的發(fā)展有一個(gè)很大的問題,即高度依賴人,對(duì)人的基本素質(zhì)要求非常高,一個(gè)研發(fā)人員通常要全流程技術(shù)都了解一些。那么,如何解決這個(gè)問題,就可以通過讓某個(gè)平臺(tái)代替那些重復(fù)性的工作,形成系列標(biāo)準(zhǔn)規(guī)范。比如目前 Java 的開發(fā)工具,70% 左右在使用 IDEA,所以飛算自己做了一個(gè)針對(duì) Java 的開發(fā)工具 SoFlu 全自動(dòng)軟件工程平臺(tái),涵蓋可視化開發(fā)、平臺(tái)組件、管理方式三大核心技術(shù),可為企業(yè)提供低代碼模式下的軟件開發(fā)管理服務(wù)。
讓 DevOps 真正落地
實(shí)際上,在如今很多企業(yè)的認(rèn)知中,低代碼平臺(tái)本質(zhì)只能解決簡單的工作流,很多低代碼平臺(tái)均基于 BPM 這種流程引擎實(shí)現(xiàn),以設(shè)計(jì)表單作為應(yīng)用數(shù)據(jù)來玩轉(zhuǎn),無法實(shí)現(xiàn)復(fù)雜功能和邏輯;開發(fā)的內(nèi)容需要綁定已有的體系或系統(tǒng),通過低代碼平臺(tái)產(chǎn)生的服務(wù)或應(yīng)用則都必須與平臺(tái)綁定,導(dǎo)致諸多的特性都需依賴于特定的低代碼平臺(tái)才可以實(shí)現(xiàn),這樣一來,很大程度上無法保證系統(tǒng)的品質(zhì)及安全;而且大部分低代碼平臺(tái)都是在做前端,使用的都是腳本類的語言。
相較之下,飛算 SoFlu 全自動(dòng)軟件工程平臺(tái)可以實(shí)現(xiàn)一次開發(fā)、到處部署,后續(xù)不與平臺(tái)本身強(qiáng)綁定,且整個(gè)平臺(tái)使用可視化的模式面向 Java 開發(fā),單從外表看與 BPM 模式類似,但內(nèi)在邏輯有很大不同,平臺(tái)上提供的每個(gè)組件都是一個(gè)技術(shù)點(diǎn),類似于代碼塊。飛算 SoFlu 全自動(dòng)軟件工程平臺(tái)的出發(fā)點(diǎn)是想讓 DevOps 真正的落地。
當(dāng)然,對(duì)于開發(fā)者來說,這些“自動(dòng)化”的工具也引發(fā)了諸多問題:如采用自動(dòng)工具之后,受過專業(yè)培訓(xùn)的工程師的作用將在哪里?隨著“公民開發(fā)者”的出現(xiàn),DevOps 會(huì)消失嗎?但實(shí)際上,面對(duì)這些問題,自動(dòng)化的解決工具已經(jīng)被證明非常有用的,以下是幾個(gè)關(guān)鍵原因。
減少工作量/壓力。借助自動(dòng)化工具,企業(yè)能在無需雇傭更多技術(shù)人員的情況下擴(kuò)展技術(shù)能力。更重要的是,通過在整個(gè)組織中傳播基本的應(yīng)用程序和工作負(fù)載開發(fā)任務(wù),開發(fā)人員時(shí)間也大大節(jié)省下來。對(duì)于人手不足的團(tuán)隊(duì),這可使開發(fā)人員更專注在交付高質(zhì)量的軟件上。
在企業(yè)中扮演更具戰(zhàn)略意義的角色。通過在業(yè)務(wù)部門內(nèi)部進(jìn)行戰(zhàn)略軟件開發(fā),開發(fā)人員可以將更多時(shí)間花在更重要的事情上,量子計(jì)算、人工智能等等。開發(fā)人員和 IT 團(tuán)隊(duì)可以充當(dāng)“未來科學(xué)家”,評(píng)估最適合業(yè)務(wù)的新工具,并知道采購決策以確保最佳結(jié)果。
新的角色和機(jī)會(huì)。自動(dòng)化工具將對(duì)企業(yè)產(chǎn)生深遠(yuǎn)而廣泛的影響,改變工作方式并在工作流程中創(chuàng)建新角色,創(chuàng)造新的職業(yè)發(fā)展機(jī)會(huì),比如企業(yè)做圍繞優(yōu)化流程、構(gòu)建解決方案和自動(dòng)化、簡化組織日常工作的職責(zé)等等。
另外,對(duì)于 DevOps 團(tuán)隊(duì)來說,DevOps 一直是數(shù)字化轉(zhuǎn)型的推動(dòng)者,現(xiàn)在這些努力終于有了成果。在敏捷開發(fā)工具普及的未來,使用工具來為快速變化的業(yè)務(wù)需求構(gòu)建解決方案,使得開發(fā)人員拜托了創(chuàng)新守門人的傳統(tǒng)角色,軟件工程師可以專注于戰(zhàn)略技術(shù)決策,并使用他們的專業(yè)技能將其引導(dǎo)至將產(chǎn)生最大影響的領(lǐng)域。
這些自動(dòng)化工具的興起對(duì)每個(gè)人來說都是好消息,它不僅加速數(shù)字化轉(zhuǎn)型并且能夠挖掘員工的創(chuàng)新潛力,讓開發(fā)人員的工作更加有趣,減輕壓力創(chuàng)造新的機(jī)會(huì)。更重要的是,自動(dòng)化無疑可以為所有的企業(yè)提供增長動(dòng)力,并為早期采用者顯著提升競爭優(yōu)勢。