2022-09-16
低代碼正在成為主流技術(shù)趨勢方興未艾,而對低代碼的思考和質(zhì)疑也在行業(yè)中引起了廣泛的關(guān)注。目前質(zhì)疑之聲關(guān)注點(diǎn)更多的在于低代碼技術(shù)本身以及相關(guān)的局限性,這顯然有失偏頗,應(yīng)該在一個更大的背景中科學(xué)的評估看待主流技術(shù)的價值。
與其說低代碼是一種技術(shù),不如說是一種理念。
其實低代碼技術(shù)本身并不是新鮮事物,之所以在今天低代碼技術(shù)得以大行其道,我們認(rèn)為有兩個根本性的原因:
1.Gartner倡導(dǎo)的可組合的業(yè)務(wù)(Business Composability)已經(jīng)被認(rèn)為是應(yīng)對業(yè)務(wù)創(chuàng)新中不確定性的最佳策略和方法;
2. 由于業(yè)務(wù)邊界的逐漸模糊、融合帶來的非標(biāo)業(yè)務(wù)場景的多樣化挑戰(zhàn);
今天的市場競爭環(huán)境正在客觀上迫使企業(yè)開展以面向滿足個性訴求為目標(biāo)的更為靈活的業(yè)務(wù)變革和創(chuàng)新,但現(xiàn)實中業(yè)務(wù)創(chuàng)新失敗的概率遠(yuǎn)遠(yuǎn)大于成功的可能,所以業(yè)務(wù)創(chuàng)新的低成本化本身就是其業(yè)務(wù)價值的一個重要維度,而由此業(yè)務(wù)的可組合可拆卸的靈活性也正在成為IT架構(gòu)層面需要面臨的挑戰(zhàn),傳統(tǒng)的穩(wěn)定的信息架構(gòu)也受到了靈活需求的沖擊。
Gartner倡導(dǎo)的可組合的業(yè)務(wù)(Business Composability)其實就是將業(yè)務(wù)共性沉淀成為組件,然后通過“搭積木”的方式實現(xiàn)業(yè)務(wù)應(yīng)用的敏捷開發(fā),同時,如果這種嘗試不成功,拆除應(yīng)用也不會影響其他系統(tǒng)的運(yùn)行,甚至可以理解為“零成本試錯”,這幾乎顛覆了所有業(yè)務(wù)創(chuàng)新的技術(shù)阻礙和成本阻礙。
另一方面,非標(biāo)準(zhǔn)業(yè)務(wù)場景也正在成為典型性需求。今天的業(yè)務(wù)部門的業(yè)務(wù)邊界正呈現(xiàn)模糊化和融合化的趨勢,傳統(tǒng)由于業(yè)務(wù)部門割裂而獨(dú)立運(yùn)行的應(yīng)用系統(tǒng)也越來越成為業(yè)務(wù)發(fā)展的障礙。例如合同管理部門希望了解客戶信用情況,而銷售部門也希望能通過客戶的交易歷史了解潛在銷售機(jī)會,于是傳統(tǒng)的合同管理系統(tǒng)、客戶管理系統(tǒng)和銷售管理系統(tǒng)就需要打通接口實現(xiàn)數(shù)據(jù)共享,這本身也是一項浩大的工程。而可以想象的是,如果將三個系統(tǒng)中的共性業(yè)務(wù)如客戶、合同、訂單等沉淀形成組件,那就從根本上避免了應(yīng)用孤島和數(shù)據(jù)孤島現(xiàn)象,形成了很好的融合的非標(biāo)場景的搭建能力。
Gartner為我們揭示了業(yè)務(wù)解耦和沉淀要遵循的三條核心原則:一是可復(fù)用,二是跨系統(tǒng)的共享,三是聚焦業(yè)務(wù)邏輯而非業(yè)務(wù)執(zhí)行。業(yè)務(wù)流程的抽象和業(yè)務(wù)功能的拆分針對領(lǐng)域模型為核心的驅(qū)動設(shè)計以及服務(wù)化(微服務(wù))在平臺功能抽象拆分提供了相對值得借鑒的思路,催化了以業(yè)務(wù)功能細(xì)分作為域劃分的依據(jù)的組件化方案,主要訴求是在細(xì)分的業(yè)務(wù)功能組件服務(wù)基礎(chǔ)上,能按需快速靈活的組合,從而支撐不同的業(yè)務(wù)模式,提供業(yè)務(wù)敏捷性,支撐業(yè)務(wù)創(chuàng)新求變,這顯然是應(yīng)對業(yè)務(wù)創(chuàng)新和非標(biāo)場景的最佳實踐。
此外,不知道大家意識到?jīng)]有,低代碼另外一個巨大價值在于通過對組件化的支撐而打開了一扇重構(gòu)企業(yè)級大型應(yīng)用的可行之路。
以企業(yè)最為廣泛應(yīng)用的ERP系統(tǒng)為例,傳統(tǒng)套裝軟件系統(tǒng)的沉重、繁瑣和高昂的學(xué)習(xí)、運(yùn)維成本都正在為企業(yè)帶來難以承受的負(fù)擔(dān),也制約著企業(yè)業(yè)務(wù)的創(chuàng)新和發(fā)展。
而通過低代碼技術(shù)支撐業(yè)務(wù)組件化的思路為更為彈性的業(yè)務(wù)架構(gòu)帶來了希望!看起來前景無限光明的業(yè)務(wù)組件化,其前提條件毫無疑問是組件對業(yè)務(wù)的支撐能力,而這種能力,就來自于對業(yè)務(wù)科學(xué)規(guī)范的解耦和映射的方法。
如上圖所示,業(yè)務(wù)元素應(yīng)該包括業(yè)務(wù)對象、業(yè)務(wù)要素、業(yè)務(wù)邏輯和業(yè)務(wù)規(guī)則等,將業(yè)務(wù)元素封裝在組件中的核心技術(shù)就是對象建模。應(yīng)該說,對象建模本身并不是高不可攀的技術(shù),通過各維度的數(shù)據(jù)從邏輯和屬性上對業(yè)務(wù)實體做出科學(xué)準(zhǔn)確的表達(dá)是可以實現(xiàn)的。這其中最大的挑戰(zhàn)在于對于對象的定義和分級,由此梳理清晰對象的邊界和組件之間的協(xié)作模式,為后續(xù)的敏捷開發(fā)奠定基礎(chǔ)。
例如,傳統(tǒng)的生產(chǎn)管理系統(tǒng)需要如下圖所包含的各個組成部分:
而組件化的思想其實就是將其中的各個共性模塊通過對象建模并組裝成組件模型,對象、組件和模型其實都是有層級的,是必須嚴(yán)謹(jǐn)對應(yīng)到業(yè)務(wù)上的,也只有這樣的嚴(yán)謹(jǐn),才能將業(yè)務(wù)中那些最難發(fā)現(xiàn)的隱藏在實際業(yè)務(wù)中的業(yè)務(wù)邏輯和業(yè)務(wù)規(guī)則完整繼承下來。并且,這種分析和梳理的過程,也是對IT核心資產(chǎn)的完整繼承。IT的核心資產(chǎn),其實應(yīng)該是現(xiàn)有系統(tǒng)中已經(jīng)在運(yùn)行并證明對業(yè)務(wù)有真實支撐能力的業(yè)務(wù)模型和數(shù)據(jù)模型,而上述解耦和封裝的過程,是完全基于對業(yè)務(wù)模型和數(shù)據(jù)模型科學(xué)嚴(yán)謹(jǐn)?shù)膶W(xué)習(xí)和理解的過程。
于是,可以得出的結(jié)論是,最小業(yè)務(wù)組件顆粒其實就是描述最小業(yè)務(wù)實體所對應(yīng)的業(yè)務(wù)對象,而組件要素就是描述最小業(yè)務(wù)對象所對應(yīng)的元數(shù)據(jù)!而將該元數(shù)據(jù)所對應(yīng)的所有業(yè)務(wù)邏輯要素(屬性和規(guī)則等)同業(yè)務(wù)對象一起做好封裝就形成了最小業(yè)務(wù)單元組件!這其實就是傳統(tǒng)的業(yè)務(wù)邏輯模型以組件化方式實現(xiàn)的過程。將某一業(yè)務(wù)域所有業(yè)務(wù)組件做有機(jī)整合,結(jié)合流程模型、報表模型、頁面模型和集成模型等,就完成了一個業(yè)務(wù)流、信息流和數(shù)據(jù)流三流合一的領(lǐng)域模型!
綜上所述,低代碼的價值絕不僅僅是簡單的拖拉拽和提升開發(fā)效率的淺顯層面,低代碼天然的基因就是迎合業(yè)務(wù)組件化的必然訴求和解決途徑,從而不僅滿足業(yè)務(wù)創(chuàng)新的靈活架構(gòu),也支撐了非標(biāo)業(yè)務(wù)場景的開發(fā)建設(shè),并且為重構(gòu)大型企業(yè)應(yīng)用帶來了可能,這才是低代碼成為IT技術(shù)里程碑級的核心價值!