我用低代碼平臺,搭建了一套管理系統(tǒng)(我用低代碼平臺,搭建了一套管理系統(tǒng)英語)
結(jié)合低代碼平臺,企業(yè)或者不那么懂代碼的業(yè)務(wù)人員可以相對快速地搭建新的應(yīng)用系統(tǒng)。那么具體如何用低代碼平臺來做好系統(tǒng)搭建呢?這篇文章里,作者結(jié)合具體案例做了步驟梳理,并對低代碼平臺中的關(guān)鍵要素做了總結(jié),一起來看看吧。
一、什么是低代碼
低代碼平臺是一套期望通過拖拽配置,就能實現(xiàn)一套業(yè)務(wù)型軟件系統(tǒng)的開發(fā)平臺,并能無縫的部署上線運行。通過表單、控件、流程等應(yīng)用組件,避免代碼開發(fā),實現(xiàn)所見即所得。
應(yīng)用場景
a. 幫助成熟的軟件產(chǎn)品,低成本的支持個性化需求(協(xié)助乙方快速解決甲方需求)
場景舉例:
假設(shè)你經(jīng)營著一個成熟的電商平臺,你的網(wǎng)站已經(jīng)運行良好,但客戶開始提出一些特定的個性化需求,比如增加一個“最新折扣”頁面,允許用戶根據(jù)特定標(biāo)準(zhǔn)過濾商品。
在傳統(tǒng)的軟件開發(fā)模式下,這可能需要花費相當(dāng)?shù)臅r間和資源,包括前端和后端開發(fā)人員的參與,以及測試和部署過程。在低代碼平臺的幫助下,你可以在幾小時內(nèi)實現(xiàn)創(chuàng)建自定義發(fā)布模板,配置自動化規(guī)則,用戶自定義字段,用戶權(quán)限管理。
b. 幫助甲方企業(yè),低成本的快速搭建全新的應(yīng)用系統(tǒng),讓業(yè)務(wù)人員也能自主搭建數(shù)字化工具(讓甲方自己解決低成本需求)
場景舉例:
一家零售連鎖店希望建立一個內(nèi)部應(yīng)用系統(tǒng),以簡化庫存管理流程和員工排班。通過低代碼平臺,這家店不用采購軟件也能實現(xiàn)庫存管理應(yīng)用,庫存報告和通知,員工排班應(yīng)用,審批工作流程。
二、用低代碼平臺搭建系統(tǒng)
1. 需求調(diào)研
某服裝廠隨著生產(chǎn)規(guī)模的擴大,各項成本不斷升高,在管理上也遇到了不少問題,導(dǎo)致經(jīng)營效率有所下降,問題主要存在以下幾方面:
- 客戶跟進情況不透明,開單慢;
- 生產(chǎn)跟單麻煩,需要反復(fù)催問,多次溝通;
- 成衣庫存不清晰,容易造成庫存積壓。
為了達到這些訴求,已經(jīng)嘗試了各種方法,如通過微信群和在線文檔進行統(tǒng)計和作業(yè),但還是會出現(xiàn)溝通不及時和文檔信息無法同步等問題。
如果找軟件公司定制軟件,成本又太高,而且還存在培訓(xùn)使用人員等問題,對于傳統(tǒng)服裝廠來說,使用門檻太高。
其實需求并不復(fù)雜,使用低代碼平臺搭建一套簡單的管理系統(tǒng),不需要開發(fā)并且以極低的成本就能幫他們解決這些問題。
2. 業(yè)務(wù)對象梳理(流程圖 結(jié)構(gòu)圖)
通過第一步的需求調(diào)研,可以確定用戶的主要訴求在3個方面:客戶管理、生產(chǎn)訂單管理和庫存管理,圍繞這三個方面可判斷出這套系統(tǒng)涉及的主要利益方和他們的工作場景。
- 業(yè)務(wù)員:主要工作內(nèi)容是和客戶談單,給客戶提供產(chǎn)品信息進行下單,根據(jù)客戶選擇的產(chǎn)品通知生產(chǎn)或直接出庫,能夠及時了解訂單的生產(chǎn)信息。
- 跟單員:銷售開單后通知生產(chǎn),根據(jù)制單要求跟蹤訂單制作的整個流程,負(fù)責(zé)檢查各個工序生產(chǎn)進度,確認(rèn)出貨工期和數(shù)量,生產(chǎn)完成后通知大貨入庫。
- 倉庫作業(yè)人員:管理大貨的出庫以及倉庫盤點。
- 老板:審核出貨單,關(guān)鍵節(jié)點通知。
根據(jù)工作內(nèi)容梳理出流程圖大概如下:
根據(jù)流程圖抽象出主要的實體,繪制出ER圖。
基于流程圖可以梳理出所需的頁面及主要功能。
梳理生產(chǎn)單狀態(tài)與訂單狀態(tài)間的關(guān)系。
3.低代碼實現(xiàn)
1)建立數(shù)據(jù)表
在產(chǎn)品開發(fā)設(shè)計過程中,通常會使用數(shù)據(jù)表來實現(xiàn)ER模型中的實體關(guān)系,所謂實體其本質(zhì)就是所謂的“對象”,也就是最終會存儲在數(shù)據(jù)庫中的表。因此低代碼平臺也沿用了這一概念,需要先創(chuàng)建一系列基本的數(shù)據(jù)表,在此基礎(chǔ)上搭建系統(tǒng)。
我使用的是明道云的低代碼平臺來實現(xiàn)上述管理系統(tǒng)的搭建,在前面抽象ER圖的過程中,抽象出了4個實體,因此這個系統(tǒng)最基礎(chǔ)的4張數(shù)據(jù)表即:客戶列表、訂單列表、產(chǎn)品列表和生產(chǎn)列表。
建立數(shù)據(jù)表時要考慮先后順序,比如客戶信息、產(chǎn)品信息都是訂單管理的基礎(chǔ)數(shù)據(jù),應(yīng)該先建立。生產(chǎn)信息的數(shù)據(jù)依賴于訂單信息,所以應(yīng)該最后建立。
2)表間關(guān)聯(lián)
根據(jù)ER圖可以看出這4張數(shù)據(jù)表間的關(guān)聯(lián)關(guān)系,有一對多和多對多,比如在客戶信息詳情中,可以看到這個客戶歷史所有下過的訂單信息;在訂單詳情中可以看到所有產(chǎn)品的生產(chǎn)進度,這在B端產(chǎn)品設(shè)計中是一種非常常見的設(shè)計形態(tài),那么在低代碼平臺中是如何實現(xiàn)的呢。
低代碼平臺中專門提供了一系列的關(guān)聯(lián)控件,支持各種關(guān)聯(lián)關(guān)系,下圖是為了實現(xiàn)查看當(dāng)前客戶的所有訂單記錄,在客戶信息這一數(shù)據(jù)表中關(guān)聯(lián)訂單信息。
建立好關(guān)聯(lián)關(guān)系后,在數(shù)據(jù)表的詳情頁會顯示出所需要的關(guān)聯(lián)數(shù)據(jù),如下圖。
在新建訂單時,需要從已有的客戶列表中選擇客戶,因此也需要在訂單信息這一關(guān)聯(lián)表中關(guān)聯(lián)客戶信息。當(dāng)兩個表的數(shù)據(jù)需要雙向同步時,可以使用雙向關(guān)聯(lián)控件來實現(xiàn)效果。
3)建立工作流
每項業(yè)務(wù)背后都有一套業(yè)務(wù)流程,它包含了一系列活動(可細(xì)分為任務(wù)),這些活動之間具有相互銜接的邏輯順序或因果關(guān)系,流程最終會有一個產(chǎn)出。工作流主要用來解決以下問題:
- 數(shù)據(jù)的自動化處理:滿足條件時,自動修改數(shù)據(jù)。
- 審批流程。
- 通知成員查看或進行操作。
- 和外部系統(tǒng)進行數(shù)據(jù)對接。
在低代碼平臺中,通過流程編輯器,來實現(xiàn)上述這類功能。一個工作流由觸發(fā)器和若干個動作節(jié)點組成。觸發(fā)器是流程啟動的開關(guān),通過多種類型的動作節(jié)點來完成各種任務(wù),以此實現(xiàn)流程自動化。
本套系統(tǒng)中需要設(shè)計的工作流有:
- 訂單通知:新增訂單時,向生產(chǎn)負(fù)責(zé)人發(fā)送通知,方便及時安排生產(chǎn);
- 生產(chǎn)狀態(tài)與訂單狀態(tài)的相互影響(見前文狀態(tài)機圖);
- 訂單出貨審批:訂單出貨時需要管理者審批通過后方可出庫并減少相應(yīng)庫存。
拿訂單狀態(tài)更新為“生產(chǎn)完畢”這一流程來舉例,當(dāng)訂單下的生產(chǎn)單全部生產(chǎn)完成后,訂單狀態(tài)自動更新為“生產(chǎn)完畢”。具體實現(xiàn)過程如下:
由于訂單狀態(tài)是根據(jù)該訂單下的所有生產(chǎn)單狀態(tài)決定的,因此工作流觸發(fā)節(jié)點是由生產(chǎn)記錄的狀態(tài)來控制的。
第一步:當(dāng)某一條生產(chǎn)記錄中的狀態(tài)被更新為“已完成”時觸發(fā)該工作流,流程開始執(zhí)行;
第二步:找到該條生產(chǎn)記錄對應(yīng)的訂單記錄
第三步:創(chuàng)建子流程,找到該條訂單記錄下的所有生產(chǎn)記錄
第四步:統(tǒng)計所有生產(chǎn)記錄中狀態(tài)為“生產(chǎn)中”的數(shù)量,判斷數(shù)量是否為0,若為0,說明該訂單下的所有產(chǎn)品均已生產(chǎn)完成,則將訂單狀態(tài)更新為“生產(chǎn)完畢”,若不為0,說明該訂單下的產(chǎn)品還未生產(chǎn)完畢,則不做修改。
工作流實現(xiàn)效果如下圖。
三、總結(jié)低代碼平臺的關(guān)鍵要素
在體驗完低代碼平臺的功能后,可以總結(jié)一下低代碼平臺中的關(guān)鍵要素了,也是低代碼平臺之所以能夠如此靈活的滿足各種需求的核心所在。
1. 表單引擎
首先需要實現(xiàn)對底層數(shù)據(jù)對象的定義,將底層數(shù)據(jù)理解為多張Excel數(shù)據(jù)表即可,每個表單獨立采集數(shù)據(jù),用戶使用不同的控件對數(shù)據(jù)進行操作和關(guān)聯(lián),除了編輯字段,還能在表單內(nèi)自定義操作功能,所見即所得,大大降低了操作門檻,對非技術(shù)人員十分友好。
2. 流程引擎
基礎(chǔ)數(shù)據(jù)定義好后,進行工作流的定義,業(yè)務(wù)運行的核心就是一個個工作流的執(zhí)行。簡單的工作流如審批流程處理的是單一數(shù)據(jù)對象,復(fù)雜的工作流則需要支持多個數(shù)據(jù)對象的自動化處理能力。
比如說在訂單管理系統(tǒng)中,當(dāng)一條訂單被確認(rèn)時,需要自動生成待支付賬單和待發(fā)貨單,同時鎖定庫存,向客戶發(fā)送通知,在自動化工作流中,涉及到了5個實體數(shù)據(jù)的增刪改查(訂單、賬單、發(fā)貨單、庫存、客戶)。低代碼平臺需要提供一系列控件來滿足這些需求。作為平臺除了需要有強大的自定義流程控件支撐外,還需要支持其他平臺的集成。
3. 報表和門戶
對于業(yè)務(wù)型軟件產(chǎn)品,主要功能是對數(shù)據(jù)的增刪改查,而涉及到的交互頁面,多數(shù)也都是底層數(shù)據(jù)對象對應(yīng)的列表頁、詳情頁,除此以外,還包括報表、儀表盤,以及其他類型頁面。
本文由 @guoguook 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。