□文/張曉博 元 棟
(河南省煙草公司新鄉(xiāng)市公司 河南·新鄉(xiāng))
[提要] 面對越來越多個性化、多樣化的應用軟件開發(fā)需要,傳統(tǒng)的全代碼開發(fā)方式日漸乏力,無論是專業(yè)人員還是業(yè)務人員,都迫切呼喚更加敏捷的開發(fā)手段,在此背景下,低代碼平臺應運而生。本文從時代背景出發(fā),首先介紹低代碼平臺相關概念,然后從易用性、周期、質量、成本等方面將低代碼平臺與傳統(tǒng)開發(fā)方式對比,概述采用低代碼平臺的優(yōu)勢所在,接著將企業(yè)信息系統(tǒng)進行抽象,從業(yè)務實體、流程活動、操作權限、統(tǒng)計圖表等四個方面論述低代碼平臺的賦能邏輯,最后結合煙草企業(yè)信息化現(xiàn)狀,論述低代碼平臺對信息化建設的啟發(fā)和思考。
隨著大數(shù)據(jù)、云計算、互聯(lián)網(wǎng)等新一代信息技術價值的顯現(xiàn),數(shù)字化轉型成為了當下的熱門話題,越來越多的企業(yè)寄希望于通過數(shù)字化轉型激發(fā)創(chuàng)新活力、把握市場機遇、應對風險挑戰(zhàn)、重塑競爭優(yōu)勢。突如其來的新冠肺炎疫情,為數(shù)字化轉型按下了加速鍵,網(wǎng)絡強國、數(shù)字中國、智慧社會等戰(zhàn)略決策,深刻揭示了未來數(shù)字化發(fā)展的廣闊前景,信息系統(tǒng)作為數(shù)字化轉型的重要載體,其建設需求也將不斷持續(xù)。以往,信息系統(tǒng)通常由程序員通過編寫程序代碼開發(fā),開發(fā)周期長、投資金額大,交付的軟件產(chǎn)品往往存在可維護性低、需求被侵蝕等問題,面對數(shù)字化轉型帶來的個性化、多樣化的開發(fā)需求,傳統(tǒng)的開發(fā)方式越來越捉襟見肘,人們迫切需要一種更加快捷、易用的開發(fā)工具。2014 年,F(xiàn)orrester 提出了“低代碼/零代碼”概念,伴隨著“互聯(lián)網(wǎng)+”“云計算”“數(shù)字化轉型”等時代風口,“低代碼/零代碼”被引入國內并成為新寵,提供低代碼支撐能力的開發(fā)平臺應運而生,為煙草企業(yè)應對日益多樣化的信息系統(tǒng)建設需求、緩解數(shù)字化轉型焦慮提供了又一路徑。
(一)低代碼平臺概念和細分。所謂低代碼,是一種通過對軟件通用功能的高度提煉,將手寫代碼封裝為功能組件,使開發(fā)者可以通過拖拉拽的方式對功能組件進行編排,從而實現(xiàn)快速構建應用軟件的開發(fā)方式。廣義上講,低代碼概念涵蓋所有能夠為實現(xiàn)軟件交付而減少代碼開發(fā)的技術和服務,包括在20 世紀90 年代就已流行的可視化IDE(集成開發(fā)環(huán)境),這些IDE 借助功能組件雖然減少了開發(fā)人員對代碼的編寫,但其仍主要面向“專業(yè)開發(fā)者”,與目前的低代碼概念有本質區(qū)別。目前,IT 界廣泛認同的低代碼特指定位于滿足企業(yè)業(yè)務端應用需求,通過可視化界面,利用少量代碼或者無代碼即可搭建簡單應用或復雜應用的開發(fā)技術,主要面向“平民開發(fā)者”。低代碼開發(fā)一般需要依托特定的開發(fā)平臺,根據(jù)集成性、擴展能力、專注領域的不同,低代碼開發(fā)平臺又進一步細分為兩類,第一類是具有企業(yè)核心業(yè)務承載能力,具有高集成性、擴展性的狹義低代碼平臺,國內以葡萄城、金蝶、奧哲等平臺商為代表;第二類是針對小型場景,具有有限集成和擴展能力但交付更加迅速的零代碼(又稱無代碼)開發(fā)平臺,此類平臺商有明道云、輕流、簡道云等。相較于前者,零代碼的使用門檻更低、用戶面更為廣泛、成本更加低廉,這也是本文討論的重點。
(二)低代碼平臺的內在優(yōu)勢。據(jù)機構研究,“2020 年中國低代碼行業(yè)市場規(guī)模為15.9 億元,行業(yè)整體仍將維持50%以上的復合增長”,低代碼產(chǎn)業(yè)快速發(fā)展,受到用戶與資本的廣泛青睞,這其中既有信息化、數(shù)字化浪潮的外力推動,但更與低代碼的高效率、低門檻、云原生等內在優(yōu)勢密不可分。與傳統(tǒng)的全代碼開發(fā)方式相比,低代碼開發(fā)的優(yōu)勢主要體現(xiàn)在以下幾點:
1、降低軟件開發(fā)門檻。傳統(tǒng)模式下,開發(fā)人員需要學習編程語法、函數(shù)庫、開發(fā)框架、數(shù)據(jù)庫等多種技術,技術門檻高、實現(xiàn)難度大。而低代碼開發(fā)平臺將原本需要編碼才能實現(xiàn)的軟件功能(例如UI 組件、流程控制、角色控制、報表引擎)封裝成組件,再利用可視化、拖拉拽、自動化等方式實現(xiàn)流程搭建,使非專業(yè)IT 人員、業(yè)務人員等“平民開發(fā)者”經(jīng)過簡單的培訓就可具備軟件開發(fā)能力,從而大大降低了軟件開發(fā)的技術門檻。
2、顯著縮短開發(fā)周期。傳統(tǒng)的軟件開發(fā)專業(yè)性強、效率低、采購周期長,IT 部門很難在短期內對業(yè)務需求完成響應。低代碼平臺利用圖形化的功能組件和拖拉拽式的流程編排,一方面避免了冗長的底層代碼開發(fā),使開發(fā)工作量可節(jié)約34%~70%;另一方面也讓研發(fā)人員可以以類似“搭積木”的方式靈活組織軟件功能,加快版本迭代,從而大大縮短開發(fā)周期,實現(xiàn)技術對業(yè)務的快速響應,也加速了企業(yè)的信息化進程。筆者曾利用無代碼平臺實現(xiàn)過在一個上午完成從需求收集到應用上線的案例,這在傳統(tǒng)的開發(fā)模式下幾乎是不可實現(xiàn)的。
3、準確對接業(yè)務需求。軟件項目中,40%~60%的問題都是在需求分析階段埋下的“禍根”。因此,能否正確地獲取、理解、確認需求,就成為了影響軟件質量的關鍵。傳統(tǒng)的軟件開發(fā)模式下,首先業(yè)務部門提出需求,然后產(chǎn)品經(jīng)理(或需求分析人員)將業(yè)務需求轉化為開發(fā)需求,接著由開發(fā)人員編碼落地,這個過程每一步都伴隨著信息衰減。這是因為業(yè)務人員往往只專注于局部問題,很難從系統(tǒng)角度提出建設性的軟件需求,而IT人員又因為遠離業(yè)務,看不到問題全貌,很難理解業(yè)務人員的真實意圖,導致需求不斷地被遺漏、曲解、侵蝕。低代碼平臺降低了開發(fā)門檻,使得開發(fā)人員能夠更加專注于對業(yè)務的理解而非技術細節(jié)。此外,有些“平民開發(fā)者”本身就有一定的業(yè)務背景,他們的參與進一步縮短了需求信息的傳遞路徑,減少了信息衰減,從而使開發(fā)人員能夠對業(yè)務需求作出精準回應,最終保障軟件質量。
4、節(jié)約項目成本投入。在一般的軟件開發(fā)項目中,項目成本主要是人力資源成本,軟件功能越復雜、開發(fā)人員越多,則開發(fā)周期越長,項目成本越高,并且在后期的版本迭代和運維過程中,這種成本還會不斷增加,這是由傳統(tǒng)軟件開發(fā)模式的自身特性決定的。與傳統(tǒng)模式不同,低代碼開發(fā)平臺通常按照訂閱數(shù)量收費,這種模式類似于會員制,企業(yè)投入的成本與所購買的會員數(shù)量有關,一旦成為會員,便可使用平臺上的所有資源,利用平臺開發(fā)的軟件越多,每個會員攤薄的成本越低。所以對于用戶數(shù)量不高但需求場景頗多的企業(yè)來說,采用低代碼開發(fā)平臺進行信息化建設的成本優(yōu)勢尤其明顯。
(三)低代碼平臺的賦能邏輯。與硬件產(chǎn)品的“摩爾定律”(即:硬件的性能每隔約18 個月翻番,而價格下降)類似,軟件產(chǎn)業(yè)也有相似的“摩爾定律”,即:類似功能的軟件產(chǎn)品的規(guī)模每隔18 個月(如,代碼行)會翻倍,而用戶獲取該軟件或者服務的代價將會下降。為應對越來越龐大的軟件規(guī)模,降低軟件開發(fā)難度,化解“軟件危機”,模塊化、組件化、低耦合逐漸成為軟件開發(fā)領域的共同行為準則,軟件產(chǎn)品的搭建也從最開始的原生代碼開發(fā)到SaaS(軟件即服務)租用再到低代碼平臺的嘗試,都是人們?yōu)榱私档烷_發(fā)成本、控制項目風險、提高開發(fā)效率不斷努力的結果,人們期望能找到更通用更高效的解決方案。低代碼平臺之所以能被企業(yè)和用戶接受,就是因為它從底層思維出發(fā)找到了絕大多數(shù)企業(yè)軟件的通用特性,即絕大部分企業(yè)的軟件由業(yè)務實體、流程和活動、操作權限、統(tǒng)計圖表這幾個要點組成。(圖1)
圖1 簡道云的數(shù)據(jù)、流程、圖表定制功能圖
1、業(yè)務實體。業(yè)務實體簡單理解就是操作對象,以煙草企業(yè)為例,可以是人(客戶、客戶經(jīng)理、涉案人員等)或物(卷煙、車輛等物品)。軟件系統(tǒng)需要建立數(shù)據(jù)模型以維持業(yè)務實體,記錄實體的特征(例如客戶許可證號、案發(fā)時間、卷煙價格等)。低代碼平臺提供了豐富的可視化組件,使用戶可以方便地通過拖拽搭建數(shù)據(jù)模型,同時自動生成該數(shù)據(jù)模型的“增刪改查”頁面,這也是低代碼平臺中常說的表單引擎。
2、流程和活動?;顒涌梢岳斫鉃橛脩粼谲浖到y(tǒng)中進行的某種操作,例如事項申請、事項審批、數(shù)據(jù)的“增刪改查”等,流程是指活動開展的先后順序。開發(fā)人員利用頁面設計引擎可以方便地設置頁面元素及元素屬性,進而搭建出活動操作頁面,并通過設置觸發(fā)條件、處理節(jié)點,實現(xiàn)對流程的自定義。
3、操作權限。操作權限包括數(shù)據(jù)權限、頁面訪問權限、業(yè)務權限等。低代碼平臺通常采用基于角色的訪問控制管理用戶權限,例如只有具有部門負責人角色的用戶才能進行審批操作、客戶經(jīng)理只能查看自己客戶的訂單等。
4、統(tǒng)計圖表。統(tǒng)計圖和統(tǒng)計表為用戶提供了觀察數(shù)據(jù)的多種視角,用戶可以從不同側面掌握業(yè)務運行現(xiàn)狀、洞察業(yè)務問題。統(tǒng)計圖和統(tǒng)計表通常由數(shù)據(jù)來源、計算規(guī)則、展現(xiàn)形式定義,低供碼平臺也是遵循這種方式,實現(xiàn)了統(tǒng)計圖表的可視化配置,甚至可以讓用戶方便地做出BI、儀表板等專業(yè)應用程序。
正是由于低代碼平臺對業(yè)務實體、活動流程、操作權限、統(tǒng)計圖表等軟件系統(tǒng)的基本特性進行了高度的封裝和概括,才使“平民開發(fā)者”得以邁過技術門檻,以更低的成本付出構建軟件系統(tǒng),進而賦能企業(yè)數(shù)字化轉型。
作為在最近十年才發(fā)展起來的概念,低代碼必將在軟件開發(fā)領域產(chǎn)生深遠影響。綜合前文的概述和討論,同時結合煙草企業(yè)信息化現(xiàn)狀,筆者從中得出了以下啟發(fā),以期為企業(yè)信息化建設提供參考:
(一)低代碼平臺在某種程度上撐起業(yè)務中臺。中臺的核心在于“能力復用”,業(yè)務中臺對企業(yè)業(yè)務進行抽象形成通用的服務能力,將規(guī)則、流程、邏輯等通過微服務、組件化等方式封裝成面向前臺的友好型服務,推動實現(xiàn)后臺資源到前臺應用的敏捷轉化,提高整體業(yè)務的靈活性和響應速度。從這個角度理解,低代碼平臺儼然已經(jīng)具備了業(yè)務中臺的基本特征,各種通用的功能組件完成了業(yè)務的抽象,建立了復用能力,使開發(fā)人員不必“從零開始”或“再造輪子”,可視化的開發(fā)環(huán)境和自身APaaS(應用程序平臺即服務)的定位降低了開發(fā)門檻,讓柔性定制軟件成為可能,進而實現(xiàn)了對業(yè)務需求的快速響應。
(二)數(shù)字化轉型中的“長尾需求”將更容易滿足?!伴L尾”一詞原本用于描述商業(yè)活動中那些需求量少但種類繁多,價值總和又十分可觀的商品。煙草企業(yè)在數(shù)字化轉型過程中,卷煙營銷、專賣管理、財務管理等頭部業(yè)務轉型較為充分,已經(jīng)實現(xiàn)了數(shù)字化、網(wǎng)絡化、智能化,但同時又有部分業(yè)務由于業(yè)務價值相對較低(如辦公用品管理、就餐管理、車輛管理等),采用傳統(tǒng)方式開展信息化建設的投入與產(chǎn)出不成比例,以至于對數(shù)據(jù)仍處在手工記錄階段,構成了“長尾”。低代碼平臺催生了“平民開發(fā)者”,降低了開發(fā)門檻,簡化了開發(fā)流程,“長尾”需求將更易于被實現(xiàn),一些個性化、短小精悍的應用將不斷涌現(xiàn),信息化觸角將進一步延伸,從而彌補企業(yè)數(shù)字化轉型的短板和空白。
(三)使用低代碼平臺開發(fā)同樣需要項目管理。信息系統(tǒng)項目管理是綜合運用相關知識、技能、工具和技術在一定的時間、成本、質量等要求下為實現(xiàn)預定的系統(tǒng)目標而進行的管理活動。低代碼平臺雖然降低了軟件開發(fā)的復雜性,但并不意味著期間的需求、風險、質量等問題的消除,例如軟件需求問題、低代碼平臺部署在云環(huán)境帶來的安全問題、平臺的租用成本等,如果不對這些問題進行科學管理,項目同樣會面臨失敗的風險。
(四)“魚和熊掌”不可兼得?!棒~和熊掌”分別指低代碼平臺的靈活性和技術門檻。要降低技術門檻,勢必要對組件做更為徹底的封裝、隱藏更多細節(jié),減少開發(fā)者的干預,那么平臺的靈活性和適應性就會降低,反之亦然。所以,企業(yè)在使用低代碼平臺之前,應當對開發(fā)人員的技術水平、需求類型、復雜性進行評估,選擇合適的低代碼平臺產(chǎn)品。
(五)人才建設仍不可忽視。一方面技術門檻的降低不等于對技術的要求為零,開展學習培訓對使用平臺來說仍不可或缺,企業(yè)需加強能力建設,培養(yǎng)這方面的人才和團隊;另一方面低代碼平臺只是解決了工具問題,而數(shù)字化轉型的頂層設計和具體細節(jié)仍需要人去謀劃、付諸實施。
綜上,低代碼平臺作為近十年才誕生的概念,目前仍處在導入和成長階段,從筆者周圍使用情況看,采用低代碼進行信息系統(tǒng)開發(fā)的案例鳳毛麟角,熟知并準確理解低代碼平臺概念的群體仍局限于專業(yè)開發(fā)人員。不久前,筆者利用低代碼平臺實施了一些小型項目,深刻回味,將認識和體會形成此文,以期為走在數(shù)字化轉型之路上的探路者們拓寬前行道路、緩和轉型焦慮。最后,從全代碼開發(fā)到低代碼平臺,從實物載體到ASaaS,無論哪種軟件開發(fā)方式,其本身并沒有絕對的優(yōu)劣之分,變化的是軟件開發(fā)模式,不變的是讓技術賦能業(yè)務,為企業(yè)創(chuàng)造價值。