漫談低代碼(一)流程表單驅(qū)動(低代碼工作流)
低代碼/無代碼平臺,近兩年很火,不管是互聯(lián)網(wǎng)大廠還是,傳統(tǒng)領(lǐng)域軟件廠商都在大手筆投入,廠商間也是百花齊放,低代碼無所不能,人人皆可開發(fā),沒有什么不是托拉拽不能解決的。在大多數(shù)廠商在推出實戰(zhàn)實例的時候都會以類似于“請假審批”來做一個“零基礎(chǔ)3分鐘”開發(fā)來開始。
一,傳統(tǒng)流程定制過程
流程定制
在開篇的介紹中,一般會有兩個上鏡率比較高的兩個工具“流程定義工具”,“自定義表單工具”,
在更多的篇幅中,則開始描述。根據(jù)各種場景:
流程模型:流程和權(quán)限的變化的各種組合方式,流程上支持,單人、多人串行并行。
權(quán)限模型:權(quán)限上支持,角色、崗位、部門等多種方式授權(quán)方式,可以細(xì)粒度到每個字段的讀、寫、隱藏等基本操作。
表單繪制:
單選、多選、附件組件、審批意見組件等等。
工作箱
二,表單驅(qū)動優(yōu)勢
上述流程表單定制中,其優(yōu)勢還是有的:
1,通用流程定制支持:
通過針對流程過程中的抽象充分考慮到了流轉(zhuǎn)過程中的權(quán)限分配模型。在一定程度上可以更靈活的完成審批業(yè)務(wù)上的定制。瞞住大部分流轉(zhuǎn)業(yè)務(wù)。
,2,權(quán)限集成化設(shè)計:
根據(jù)業(yè)務(wù)特點(diǎn),以表單和流程為中心,最大程度的集成權(quán)限模型,實現(xiàn)更細(xì)粒度的權(quán)限授權(quán)。
3,表單可視化:
在表單方面,系統(tǒng)最大程度的提取通用組件,增加拖拽設(shè)計抽取通用屬性方便用戶選擇。同時在部分腳本動作中實現(xiàn)可以話處理。在一定程度上減少代碼工作量。實現(xiàn)簡單業(yè)務(wù)邏輯。
三,實際應(yīng)用中遇到的問題和不足
在流程表單驅(qū)動中,針對一些通用業(yè)務(wù)做了抽象和工具能力的提升。但在實際應(yīng)用中還是存在了很多的問題。
(1)系統(tǒng)集成能力不足
在企業(yè)實際應(yīng)用中,很少有獨(dú)立存在的業(yè)務(wù)審批業(yè)務(wù),多數(shù)情況下,組織機(jī)構(gòu)需要從釘釘、或企業(yè)微信讀取、而各種業(yè)務(wù)審批則需要跟響應(yīng)的業(yè)務(wù)系統(tǒng)完成數(shù)據(jù)交互。即使是簡單的“請銷假流程”也需要和企業(yè)微信、企業(yè)的HR(讀取員工剩余假期)系統(tǒng),CRM等系統(tǒng)進(jìn)行接口交互,才能很好的完成業(yè)務(wù)流轉(zhuǎn)。而這些系統(tǒng)接口交互使得業(yè)務(wù)表單驅(qū)動的模式很難以以輕量級的模式來運(yùn)行。而在這些系統(tǒng)集成領(lǐng)域則過度的依賴傳統(tǒng)編程。
(2)無法處理復(fù)雜數(shù)據(jù)關(guān)系
表單驅(qū)動模型,大多數(shù)表單起始于通用模板,但通用模板中更多可選擇的不同業(yè)務(wù)種類以及風(fēng)格樣式。但實際應(yīng)用中,數(shù)據(jù)間都會存在一定的數(shù)據(jù)勾稽關(guān)系。特別是一些專有領(lǐng)域類似于,財務(wù)、人事政府事務(wù)審批中其表單及流程的核心還是在于數(shù)據(jù)的流轉(zhuǎn),在這些領(lǐng)域模板就略顯雞肋。而大多數(shù)模板在勾稽關(guān)系運(yùn)算方面過渡的依賴二次開發(fā)實現(xiàn)。
(3)開放及交互能力較弱只能局限于內(nèi)部系統(tǒng)使用
表單驅(qū)動模型,大多數(shù)主要還是來自于業(yè)務(wù)系統(tǒng)內(nèi)部系統(tǒng)(企業(yè)OA,CRM),或者作為釘釘、企業(yè)微信等平臺的附屬部分即使有業(yè)務(wù)集成也絕大多數(shù)局限于內(nèi)部自有業(yè)務(wù)系統(tǒng)集成。在跨系統(tǒng)或領(lǐng)域應(yīng)用中鮮有成功的案例。
(4)部署復(fù)雜維護(hù)困難
流程表單驅(qū)動本身部署及維護(hù)并不困難,但在真正融合業(yè)務(wù)后會進(jìn)行大量的業(yè)務(wù)和接口定制。這些定制使得大量的混合代碼(模板和原生開發(fā))存在。在業(yè)務(wù)變更或者架構(gòu)升級時,維護(hù)開發(fā)會出現(xiàn)超乎現(xiàn)象的復(fù)雜。多數(shù)系統(tǒng)在選擇技術(shù)升級或架構(gòu)改變時會拋棄替換性的升級。這也是很多成熟的行業(yè)軟件即使?fàn)奚鼧I(yè)務(wù)的靈活度也要也選擇避免流程引擎表單定制之類的應(yīng)用存在已便于架構(gòu)的間接性。
四,小結(jié)
傳統(tǒng)表單模型,在系統(tǒng)內(nèi)部及早期的企業(yè)信息化中具有一定的低代碼特性。也確實在一定程度上減輕了開發(fā)者的工作量。但其流水賬模式的數(shù)據(jù)方式,很難以滿足現(xiàn)代企業(yè)針對數(shù)據(jù)層面的需求。但過時的是技術(shù)實現(xiàn)而不是需求本身。表單驅(qū)動模型會長期存在但其最大的肯能行會退化為低代碼領(lǐng)域的一個重要組成部分。