區塊鏈編程入門(快速入門基于區塊鏈的BPM系統——匯流BPM)
基于區塊鏈的BPM系統 -- Conflux BPM
本文分為以下幾部分內容,如果不熟悉BPM那么請從頭開始閱讀,如果對BPM很熟悉,直接跳過第一章節介紹:
1. 什么是BPM
2. 什么是Conflux BPM
3. 為什么會有Conflux BPM
4. Conflux BPM特色內容追蹤
什么是BPM
Business Process Management(BPM),即業務流程管理,支持業務流程的分析、建模、模擬、優化、協同與監控等功能的新一代企業應用系統核心。
什么是Conflux BPM
Conflux BPM,中文名匯流BPM,一個開源且易用的區塊鏈BPM系統。
匯流BPM是一個集成了代碼生成器、工作流、區塊鏈智能合約和區塊鏈NoSQL數據庫的開源企業級JAVA快速開發微服務框架(BPM)。
同時使用目前流行的web2.0和新型的Web3.0技術,web2.0包括Spring Boot、MyBatis、Shiro、Redis、Jquery、BootStrap、Activiti、JWT等等;Web3.0使用具有穩妥、高速、低費用、國產自主知識產權的Conflux樹圖區塊鏈。底層數據庫支持例如MySQL、Oracle、Sqlserver、國產達夢、智能合約NoSQL數據庫等。
為什么會有Conflux BPM
上面介紹什么是Conflux BPM的內容后,你會發現Conflux BPM相對于傳統的BPM使用了最新的web3.0技術。
目前區塊鏈行業迫切需要應用落地,加上各國爭先建設數字新基建,在未來的一段時間內,各行業各類區塊鏈化信息系統的基礎建設需求也會激增;
所以Conflux BPM目標可以簡潔地概括為:不僅可以快速完成傳統信息系統開發,而且可以配置部分表單字段存儲于區塊鏈智能合約的業務邏輯。
web3.0時代的開發者們可以使用本系統方便快速且靠譜地完成各自行業的信息化項目。
Conflux BPM特色內容追蹤
目前Conflux BPM的還處在1.0版本,接下來我們將體驗一下關于區塊鏈的特色功能(項目方提供):
動態表單中增加“區塊鏈數據”控件,選擇控件字段,將在自動生成的前端代碼和自動執行的后端代碼中通過讀取系統區塊鏈管理配置,自動進行數據存取。在前端增加鏈上信息解析和查看區塊信息模塊。
配置每條表單記錄是否為nft,配置這條nft是否可交易.
工作流程模塊中,增加流程上鏈的功能和控件。
工作流節點字段權限控制增加對區塊鏈數據的可見/可填/必填等控制。
適合BPM數據管理的智能合約模板,智能合約自動生成模塊。
區塊鏈BPM數據管理邏輯,傳統數據庫和區塊鏈數據庫的配合、切換、備份方法等。
系統區塊鏈管理配置功能。
提供通用接口,用于不同系統間的數據同步。
其他可能需要做區塊鏈特性適配的模塊。
區塊鏈相關功能介紹
下面用一個具體的例子來解釋BPM中區塊鏈相關功能
表單中的“區塊鏈數據”控件
首先在動態表單中選擇表單設計,會看到如下的的界面,其中紅色圈出的兩個下拉選項:合約地址和流程上鏈,如果想將表單中的數據上鏈,需要填充這兩個選項。
其次我們增加兩個表單分別是交易信息和區塊信息,選擇交易信息之后,將“區塊鏈”和“區塊鏈是否加密”都設置為“是”(下圖中紅色框中),設置完成之后選擇應用;
然后選擇“創建菜單”,添加菜單,選擇上級菜單“動態表單演示”和圖標,完成后保存;
最后在表單設計中選擇剛才創建的表單,進行數據同步和發布,之后我們就可以在“動態表單演示”菜單中找到“區塊鏈測試1”,現在添加一條測試數據試一下,注意箭頭處的鏈接圖標,我們添加完成,鏈接會鏈接到conflux瀏覽器,圖示如下
點擊鏈接會轉到ConFlux瀏覽器
高亮部分就是我們選擇存放在區塊鏈的數據
小結
表單增加了數據存放到區塊鏈上的選項,在設計好需要保存到鏈上的數據之后,直接保存就可以將數據保存到區塊鏈上,并且通過鏈接,可以直接轉到區塊鏈瀏覽器上查看具體內容。
通常情況下,如果要將數據上傳到鏈上,可以選擇鏈項目方提供的SDK、錢包、或者瀏覽器插件等,在BPM中集成類似錢包的功能,管理者不需要關心具體上鏈的流程,只需要鼠標的拖拽就可以完成復雜的操作,真正做到了低代碼開發區塊鏈存證項目。
智能合約
這里介紹智能合約相關的特色功能,包括合約管理者、網絡參數、合約列表、合約模版、合約數據五項;
目前版本的合約管理者僅支持一個,后面的版本會做調整;
網絡參數可以自己添加,主要是P2P節點,用于和區塊鏈進行交互;
合約列表:還記得上面介紹表單設計的時候,我們選擇合約地址下拉框的時候,只有一個“系統測試合約”選項,在合約列表中我們可以自己添加合約,目前版本,需使用其他工具先行編寫和部署,使用合約管理者地址部署于區塊鏈網絡后會得到合約的哈希,之后在本頁面添加一條合約條目信息。
合約數據:在動態表單的教程中,我們在“動態表單演示”菜單中的“區塊鏈測試1”中添加過幾組數據,每一次數據的上鏈信息都會在此表中增加一條記錄
合約模板
合約模版屬于專業性質很強的內容,首先你要對智能合約有所了解,或者你需要的智能合約有現存的開源庫可以使用,否則可能會有一定的困惑;不過不用擔心不會寫合約,項目方會在1.0版本時期,會提供數據合約、表單合約、流程合約等三種簡單的合約模板的查看和編輯。
小結
通過上面的介紹,我們對BPM的智能合約部分有了一定的了解。其中合約模版是重點和難點,只要提供了豐富的合約模版,那么相應的BPM在區塊鏈的行業的優勢就會凸顯而出。
總結
可以肯定地說將區塊鏈技術和BPM技術相結合,是一種很大的創新,也是區塊鏈落地的一種實現方式;使用這種低代碼或者說無代碼開發工作流程,也是讓區塊鏈走近普通用戶的一種道路;在其他BPM還在收費的道路上越走越遠,Conflux BPM已經擁抱了區塊鏈的公平公正和開源精神。
Conflux社區論壇:https://forum.conflux.fun/
Conflux官方網站:https://confluxnetwork.org/
Conflux生態導航:https://123cfx.com/
匯流BPM論壇:https://forum.conflux.fun/t/topic/3825
匯流BPM工具和教程:https://forum.conflux.fun/t/topic/4920