李 飛,趙 龍,馮強(qiáng)中,范文斌,李凌悅
(科大國(guó)創(chuàng)云網(wǎng)科技有限公司,安徽 合肥 230088)
當(dāng)下海量的應(yīng)用業(yè)務(wù)需求與低下的軟件開發(fā)生產(chǎn)力間的鴻溝造成供需失衡,而需求方對(duì)于敏捷迭代的要求進(jìn)一步提高,傳統(tǒng)開發(fā)模式的工時(shí)與這個(gè)一切強(qiáng)調(diào)效率的時(shí)代顯得格格不入。如何改變開發(fā)模式、提高效率、降低成本、縮短周期正成為困擾業(yè)界的難題。雖然目前傳統(tǒng)軟件開發(fā)能夠在一段時(shí)間內(nèi)支撐業(yè)務(wù)發(fā)展,但從長(zhǎng)遠(yuǎn)來看已成為行業(yè)信息化發(fā)展的瓶頸。
低代碼開發(fā)模式的興起,為解決問題帶來可能。低代碼(Low-Code)的概念早在2014 年由Forrester 提出,而低代碼開發(fā)平臺(tái)提供更高維和易用的可視化IDE,無需或少量編寫代碼,即可快速搭建各種應(yīng)用系統(tǒng)。
低代碼領(lǐng)域的許多廠商在低代碼概念誕生之前就已存在,如領(lǐng)域巨頭Mendix、OutSystems 等,但早些年間未能獲得市場(chǎng)與業(yè)界的廣泛關(guān)注。主要原因是在當(dāng)時(shí)技術(shù)背景下能力不完備、過于理想化、技術(shù)門檻高,缺乏快速變化的IT 業(yè)務(wù)場(chǎng)景來推動(dòng)持續(xù)集成與快速交付,整體的投入產(chǎn)出比很低,不足以讓企業(yè)大面積采納低代碼解決方案。
在技術(shù)成熟度漸高、業(yè)務(wù)需求龐大且變更迅速的當(dāng)下,低代碼帶來的產(chǎn)業(yè)分工、商業(yè)模式、開發(fā)方式與流程的變革,使得它漸漸成為很多企業(yè)IT 建設(shè)的最優(yōu)解。國(guó)內(nèi)各類低代碼廠商也蜂擁入場(chǎng),紛紛開始布局。
科大國(guó)創(chuàng)軟件股份有限公司(以下簡(jiǎn)稱科大國(guó)創(chuàng))以中國(guó)科技大學(xué)為技術(shù)依托,以擅長(zhǎng)的基于網(wǎng)絡(luò)的軟件技術(shù)、數(shù)據(jù)庫(kù)技術(shù)、云計(jì)算技術(shù)、移動(dòng)互聯(lián)技術(shù)、系統(tǒng)集成技術(shù)、智能控制技術(shù)、網(wǎng)絡(luò)終端產(chǎn)品的研究與開發(fā)技術(shù),面向國(guó)內(nèi)、國(guó)際提供優(yōu)質(zhì)的產(chǎn)品和服務(wù)??拼髧?guó)創(chuàng)在現(xiàn)有技術(shù)和產(chǎn)品的基礎(chǔ)上進(jìn)行低代碼平臺(tái)的深入研究、構(gòu)建與應(yīng)用。
Forrester 的分析師曾估計(jì),2021 年75%的企業(yè)軟件將使用低代碼技術(shù)來構(gòu)建,行業(yè)觀察人士將2021 年稱為“低代碼年”。而業(yè)界對(duì)于低代碼的發(fā)展方向則有以下幾點(diǎn)預(yù)測(cè):代碼平臺(tái)將超越應(yīng)用程序開發(fā);計(jì)算能力大規(guī)模向邊緣遷移;超越網(wǎng)絡(luò)和移動(dòng)設(shè)備的多重體驗(yàn);增強(qiáng)現(xiàn)實(shí)推動(dòng)新常態(tài)下的商業(yè)成功;無需訓(xùn)練的人工智能;可組合企業(yè)使得工業(yè)界能夠大規(guī)模創(chuàng)新;一體化和發(fā)展日益成為同義詞。
低代碼的能力要素包含全??梢暬幊獭⑷芷诠芾?、低代碼擴(kuò)展能力等,根據(jù)對(duì)低代碼行業(yè)的觀察和理解,可以將低代碼平臺(tái)核心能力分為開發(fā)、擴(kuò)展、體驗(yàn)和管制4 個(gè)方面。
(1)開發(fā)。模型驅(qū)動(dòng)開發(fā),目前低代碼平臺(tái)采用的主流開發(fā)模式,模型包含數(shù)據(jù)模型、業(yè)務(wù)模型、交互界面三個(gè)部分。數(shù)據(jù)模型根據(jù)數(shù)據(jù)庫(kù)設(shè)計(jì)范式制作,由數(shù)據(jù)表、關(guān)系、約束等構(gòu)成。業(yè)務(wù)模型(也稱領(lǐng)域模型)是將業(yè)務(wù)邏輯構(gòu)建在數(shù)據(jù)模型之上,形成完整的業(yè)務(wù)描述。交互界面是基于業(yè)務(wù)模型設(shè)計(jì)交互頁(yè)面,編排業(yè)務(wù)模型以實(shí)現(xiàn)業(yè)務(wù)操作??梢暬芰?,指全棧、端到端的可視化編程,覆蓋一個(gè)完整應(yīng)用開發(fā)所涉及的各個(gè)技術(shù)層面,包含可視化UI 設(shè)計(jì)、可視化業(yè)務(wù)處理邏輯開發(fā)、可視化運(yùn)營(yíng)與運(yùn)維。
(2)擴(kuò)展。API 集成,現(xiàn)代的軟件系統(tǒng)和SaaS 服務(wù)越來越多地以WebAPI 形式對(duì)外提供服務(wù)。通過集成API 可以讓低代碼開發(fā)平臺(tái)具備更強(qiáng)大的適應(yīng)能力和更廣泛的應(yīng)用場(chǎng)景。編程環(huán)境集成,軟件需求和IT 環(huán)境的變化通常會(huì)超過開發(fā)平臺(tái)的迭代速度,編程環(huán)境集成為個(gè)性化需求和復(fù)雜功能邏輯的實(shí)現(xiàn)提供了便利。組件/插件集成,在提供編程環(huán)境的基礎(chǔ)上,提供能力和組件的集成與復(fù)用功能,促進(jìn)擴(kuò)大平臺(tái)生態(tài)體系和降低開發(fā)成本的正向反饋循環(huán)。
(3)體驗(yàn)。響應(yīng)式頁(yè)面支持,分為流式布局和網(wǎng)格布局兩種。支持響應(yīng)式頁(yè)面意味著用戶無需針對(duì)特定的屏幕尺寸做專門的設(shè)計(jì),可以大幅提升UI 的開發(fā)效率。多端兼容支持,低代碼平臺(tái)需要具備與移動(dòng)端應(yīng)用無縫對(duì)接的能力。
(4)管制。安全管控,平臺(tái)的開放性使得安全問題更為險(xiǎn)峻,安全控制需要體現(xiàn)在平臺(tái)使用的各個(gè)方面及生命周期的各個(gè)階段,包含代碼安全、平臺(tái)使用、資產(chǎn)安全、應(yīng)用訪問等。版本管理,企業(yè)級(jí)應(yīng)用的高復(fù)雜度和頻繁的需求變更決定了版本管理的重要性。在專業(yè)開發(fā)領(lǐng)域,版本管理已經(jīng)成了標(biāo)配,并基于此衍生出了完整的項(xiàng)目管理方法論。私有化部署,很多企業(yè)對(duì)數(shù)據(jù)和應(yīng)用程序的可控性提出嚴(yán)苛要求,低代碼平臺(tái)需要具備私有化部署能力,在完全沒有互聯(lián)網(wǎng)的情況下也可以開發(fā)、部署和使用。
(1)加強(qiáng)開發(fā)過程的溝通協(xié)作。各角色可以在同一個(gè)低代碼開發(fā)平臺(tái)上緊密協(xié)作,這種全新的協(xié)作模式不僅打破了職能豎井,還能輕松對(duì)齊項(xiàng)目各方對(duì)應(yīng)用形態(tài)和項(xiàng)目進(jìn)度的理解,實(shí)現(xiàn)更終極的敏捷開發(fā)模式。
(2)降低業(yè)務(wù)應(yīng)用的開發(fā)成本。低代碼開發(fā)在軟件全生命周期流程上的投入都要更低,代碼編寫大幅減少,環(huán)境配置和部署成本大幅降低,技術(shù)升級(jí)和維護(hù)零成本。
(3)實(shí)現(xiàn)業(yè)務(wù)應(yīng)用的快速交付。開發(fā)效率提升5~10 倍,節(jié)省工作量34%~70%。
(4)擴(kuò)大應(yīng)用開發(fā)者規(guī)模。低代碼開發(fā)顯著降低開發(fā)人員的使用門檻,非專業(yè)開發(fā)者經(jīng)過簡(jiǎn)單的IT 基礎(chǔ)培訓(xùn)就能快速上崗。目前中國(guó)低代碼使用者規(guī)模達(dá)42.6 萬人,潛在使用者較多,至少有4 倍增長(zhǎng)空間。
(5)統(tǒng)一開發(fā)平臺(tái)后的聚合效應(yīng)。低代碼嘗試將所有與應(yīng)用開發(fā)相關(guān)活動(dòng)都收斂到同一個(gè)平臺(tái)上后,將會(huì)使人員、應(yīng)用、生態(tài)方面產(chǎn)生聚合效應(yīng)與規(guī)模收益。
科大國(guó)創(chuàng)利用自身在多個(gè)行業(yè)十余年的業(yè)務(wù)與技術(shù)積累,通過對(duì)低代碼需求與應(yīng)用方向的敏銳洞察,開展對(duì)低代碼平臺(tái)的建設(shè)。通過對(duì)組件能力的高度抽象,提供拖拽式可視化開發(fā)界面及豐富的編程擴(kuò)展點(diǎn),可以同時(shí)支持通過可視化開發(fā)和代碼開發(fā)構(gòu)建應(yīng)用,促成業(yè)務(wù)與技術(shù)深度協(xié)作的終極敏捷形態(tài)。
低代碼平臺(tái)由平臺(tái)門戶、可視化設(shè)計(jì)平臺(tái)、核心引擎、業(yè)務(wù)能力管理、在線開發(fā)環(huán)境、平臺(tái)運(yùn)營(yíng)模塊組成,總體架構(gòu)如圖1 所示。
圖1 總體架構(gòu)圖
(1)平臺(tái)門戶包含首頁(yè)、開發(fā)者論壇、組件商店、案例中心、學(xué)習(xí)中心、資訊中心,使用者可以利用門戶渠道快速獲取所需的開發(fā)資源。使用者也可通過門戶提供的便捷入口,進(jìn)入各業(yè)務(wù)場(chǎng)景的工作空間。(2)可視化設(shè)計(jì)平臺(tái)提供數(shù)據(jù)模型設(shè)計(jì)器、流程設(shè)計(jì)器、表單設(shè)計(jì)器、頁(yè)面設(shè)計(jì)器、邏輯設(shè)計(jì)器、規(guī)則設(shè)計(jì)器、BI 設(shè)計(jì)器等,封裝大量組件并屏蔽其底層復(fù)雜性,為使用者提供便捷友好的拖拉拽開發(fā)形式。(3)核心引擎包含數(shù)據(jù)模型引擎、流程引擎、表單引擎、頁(yè)面引擎、規(guī)則引擎、BI 引擎和權(quán)限引擎等,為業(yè)務(wù)運(yùn)行和過程控制提供支撐。(4)業(yè)務(wù)能力管理對(duì)業(yè)務(wù)應(yīng)用的生命周期、組件庫(kù)、模板庫(kù)和各種能力庫(kù)進(jìn)行管理。(5)在線開發(fā)環(huán)境為專業(yè)開發(fā)者提供在線IDE,可利用編碼開發(fā)復(fù)雜邏輯和場(chǎng)景。(6)平臺(tái)運(yùn)營(yíng)包含多種監(jiān)控與運(yùn)營(yíng)視圖,同時(shí)可對(duì)租戶、權(quán)限、運(yùn)營(yíng)內(nèi)容等進(jìn)行管理。(7)低代碼平臺(tái)的底層有安全中臺(tái)、數(shù)據(jù)中臺(tái)、AI 中臺(tái)、運(yùn)維平臺(tái)等支撐,可以為使用者提供安全保障、數(shù)據(jù)和AI 集成與開放等能力。平臺(tái)支持部署在多云環(huán)境中,支持應(yīng)用運(yùn)行環(huán)境隔離。
科大國(guó)創(chuàng)低代碼平臺(tái)通過建立開放式架構(gòu),使得組件和業(yè)務(wù)應(yīng)用模板得以不斷積累復(fù)用,兼容軟件工程師和業(yè)務(wù)人員使用,為不同角色提供不同層次的開發(fā)模式。以數(shù)據(jù)模型設(shè)計(jì)為基礎(chǔ),拉通表單、規(guī)則、流程設(shè)計(jì),基于可視化在線低代碼設(shè)計(jì)模式進(jìn)行業(yè)務(wù)場(chǎng)景快速設(shè)計(jì)、驗(yàn)證及發(fā)布。支持訂閱組件庫(kù)中的模板,裝配生成業(yè)務(wù)需求新組件。
(1)軟件工程師低代碼開發(fā)。面向的使用者為入門級(jí)或初級(jí)軟件工程師,應(yīng)用形態(tài)為使用可視化邏輯開發(fā)與前臺(tái)/后臺(tái)編排功能,結(jié)合拖拽設(shè)計(jì)與編碼開發(fā)的優(yōu)勢(shì),可通過腳本與服務(wù)編排靈活實(shí)現(xiàn)業(yè)務(wù)邏輯。開發(fā)流程如圖2 所示。首先創(chuàng)建業(yè)務(wù)場(chǎng)景,平臺(tái)會(huì)為該業(yè)務(wù)場(chǎng)景創(chuàng)建一個(gè)獨(dú)立的工作空間,后續(xù)使用到的資源(數(shù)據(jù)模型、各類組件和邏輯)、環(huán)境(沙箱測(cè)試、生產(chǎn)部署)、狀態(tài)(發(fā)布、升級(jí)、下線等)等均與該場(chǎng)景綁定。再進(jìn)行可視化組件設(shè)計(jì),對(duì)于可視化無法滿足的功能通過編碼開發(fā)來實(shí)現(xiàn)。然后進(jìn)行組件裝配,例如為API 關(guān)聯(lián)后端邏輯、綁定表單與流程人工任務(wù)環(huán)節(jié)、綁定API 與流程自動(dòng)任務(wù)環(huán)節(jié)等。開發(fā)完成后在平臺(tái)提供的沙箱環(huán)境進(jìn)行測(cè)試驗(yàn)證,驗(yàn)證通過后即可通過平臺(tái)進(jìn)行自動(dòng)部署及發(fā)布。
圖2 低代碼開發(fā)流程
(2)業(yè)務(wù)人員無代碼開發(fā)
面向的使用者為具備少量IT 知識(shí)的業(yè)務(wù)人員,應(yīng)用形態(tài)為使用已沉淀的業(yè)務(wù)流程和模板,用平臺(tái)豐富的行業(yè)模塊、卡片,實(shí)現(xiàn)積木式搭建應(yīng)用。開發(fā)流程如圖3 所示。業(yè)務(wù)人員可充分利用平臺(tái)能力共享體系實(shí)現(xiàn)無代碼開發(fā)??赏ㄟ^組件或模板訂閱方式直接使用平臺(tái)已有的組件或模板,包含API、數(shù)據(jù)服務(wù)、流程環(huán)節(jié)組件、頁(yè)面組件、后端規(guī)則邏輯等。訂閱后這些組件或模板將生成新的副本,可以對(duì)其進(jìn)行個(gè)性化修改以貼合該業(yè)務(wù)場(chǎng)景需求。
圖3 無代碼開發(fā)流程
平臺(tái)通過先進(jìn)的架構(gòu)設(shè)計(jì),將各功能模塊充分解耦,可根據(jù)不同業(yè)務(wù)場(chǎng)景組裝功能模塊,呈現(xiàn)不同應(yīng)用形態(tài),包括輕型管理類應(yīng)用、數(shù)據(jù)填報(bào)與分析、業(yè)務(wù)工單流程處理等。
(1)輕型管理類應(yīng)用
使用低代碼平臺(tái)開發(fā)出輕量級(jí)管理項(xiàng)目,以應(yīng)用形式部署并提供服務(wù),涉及的領(lǐng)域包括OA 管理、人事管理、資產(chǎn)管理、合同管理、項(xiàng)目管理、運(yùn)營(yíng)推廣等。應(yīng)用可以實(shí)現(xiàn)對(duì)管理對(duì)象的增刪改查、列表展現(xiàn)、詳情信息展現(xiàn)、報(bào)表及儀表板展示等基礎(chǔ)功能,還可以結(jié)合流程組件實(shí)現(xiàn)管理類審批流。
(2)數(shù)據(jù)填報(bào)與分析
使用低代碼平臺(tái)開發(fā)出數(shù)據(jù)填報(bào)表單及儀表板。人員填報(bào)數(shù)據(jù)后,平臺(tái)通過模型引擎的數(shù)據(jù)存儲(chǔ)服務(wù)自動(dòng)存儲(chǔ)數(shù)據(jù),并通過BI 引擎的數(shù)據(jù)加工能力對(duì)數(shù)據(jù)進(jìn)行清洗、指標(biāo)提取和自動(dòng)匯總,最終以報(bào)表和儀表板方式呈現(xiàn)給用戶,并支持在報(bào)表和儀表板上進(jìn)行可視化數(shù)據(jù)分析。其應(yīng)用形態(tài)如圖4 所示。
圖4 數(shù)據(jù)填報(bào)分析場(chǎng)景示意
(3)業(yè)務(wù)工單流程處理
使用低代碼平臺(tái)開發(fā)出來各個(gè)工單處理業(yè)務(wù)場(chǎng)景,發(fā)布至業(yè)務(wù)系統(tǒng)中運(yùn)行使用。低代碼平臺(tái)提供工單引擎,對(duì)于不同類型工單的處理,使用統(tǒng)一后臺(tái)服務(wù)+自定義腳本的方式實(shí)現(xiàn)建單、派單、回單、竣工等工單操作的統(tǒng)一封裝與服務(wù)。工單引擎將表單、流程、規(guī)則等關(guān)鍵組件進(jìn)行連接與驅(qū)動(dòng),從而完成業(yè)務(wù)工單處理。其應(yīng)用形態(tài)如圖5 所示。
圖5 業(yè)務(wù)工單處理運(yùn)行示意
具體應(yīng)用過程為,用戶填寫表單并提交,平臺(tái)的建單服務(wù)解析表單提交的數(shù)據(jù)并提取關(guān)鍵參數(shù),通過規(guī)則識(shí)別出工單類型和對(duì)應(yīng)流程,自動(dòng)保存工單實(shí)體后啟動(dòng)流程。平臺(tái)的派單服務(wù)可以根據(jù)流程環(huán)節(jié)信息,結(jié)合參與者規(guī)則和調(diào)度規(guī)則進(jìn)行自動(dòng)派單,可靈活派單至分公司、工位或人員。在處理人對(duì)工單進(jìn)行處理并提交后,平臺(tái)的回單服務(wù)將處理表單數(shù)據(jù)并計(jì)算流程參數(shù),自動(dòng)進(jìn)行工作項(xiàng)提交并記錄處理信息。待工單事務(wù)全部處理完成后,流程結(jié)束自動(dòng)觸發(fā)竣工服務(wù),此時(shí)將更新工單狀態(tài)為竣工,更新其他關(guān)聯(lián)數(shù)據(jù),并可按既定策略對(duì)工單及流程相關(guān)實(shí)例數(shù)據(jù)進(jìn)行轉(zhuǎn)儲(chǔ)。
多個(gè)研究機(jī)構(gòu)的預(yù)測(cè)均表明,作為亞太地區(qū)的經(jīng)濟(jì)大國(guó)與IT 強(qiáng)國(guó),中國(guó)的低代碼市場(chǎng)將會(huì)引來一個(gè)爆發(fā)期,未來幾年內(nèi)的增速都會(huì)超過全球平均水平?,F(xiàn)階段低代碼平臺(tái)的應(yīng)用形態(tài)主要仍集中于業(yè)務(wù)人員日常工作,更貼近且更易于市場(chǎng)化的辦公類與管理類場(chǎng)景。為了使低代碼平臺(tái)的適用場(chǎng)景進(jìn)一步擴(kuò)充、應(yīng)用形態(tài)進(jìn)一步豐富,低代碼平臺(tái)下一階段的演進(jìn)方向主要在于“跨越描述性業(yè)務(wù)邏輯與程序性IT 邏輯之間的鴻溝”,要繼續(xù)深化的能力包括插件式靈活開發(fā)、支持大規(guī)模復(fù)制與擴(kuò)展、實(shí)現(xiàn)業(yè)務(wù)與數(shù)據(jù)價(jià)值鏈閉環(huán)、全域可視化、高級(jí)別安全保障等。