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