編輯導語:工作流,指業務過程的部分或整體在計算機應用環境下的自動化,它主要解決的主要問題是:為了實現某個業務目標,利用計算機在多個參與者之間按某種預定規則自動傳遞文檔、信息或者任務,流程搭建線上化也是大勢所趨。接下來,本文作者對自助搭建工作流的流程引擎進行了梳理詳解。
工作流在企業中承擔着“生命血液”的作用,讓所有流程按部就班地創建、流轉、完成,是辦公線上化的重要功能。
流程引擎的作用即用户可自主搭建表單、配置/發佈流程審批節點,不需要開發參與,或給開發提供高級功能,能快速搭建複雜表單,生成用户可使用的表單與工作流,不需要從頭開發,從而達到快速上線新流程、流程功能/風格/配置統一的目的。
各大辦公協作平台都有自己的流程引擎來配置工作流,如釘釘、飛書、企業微信的審批後台,也有專門做好工作流一件事的平台,比如輕流。通過體驗、梳理這幾個平台的相關功能,以及為自己公司設計了一版流程中心後,對工作流的特性、重點逐漸清晰。
一、流程中心總體架構流程中心主要作用可分為前後端功能:
- 後台配置——流程引擎:在工作流配置中,一個流程需要有基礎信息、表單、審批流,來創造一個完整的審批表單,同時根據需要,提供一些高級功能設置。
- 前台處理——審批單據:一條流程發佈後,審批流節點上的人員將會看到表單,然後根據在審批流上配置的權限對單據進行同意、不同意、提交、轉派等處理,實現真實流程流轉。
根據前文,流程引擎的主要內容有基礎信息、表單設計、審批流設計、以及提高能力的更多設置。
1. 基礎信息- 流程名稱:即用户在使用時,看見並能創建的流程名;
- 可見/可用權限:配置哪些人及部門可以看到流程入口,配置哪些人及部門可以看見且可使用此流程,注意具體的流程實例是否可見是由審批流節點決定的;
- 流程管理員:流程在後台對其可見,且可對流程進行修改、發佈、啓用停用、刪除等操作。
還有一種比較特殊的角色,比如流程負責人,也許不會在後台修改流程,但需要能看到所有人發起的所有流程實例從而進行管理和統計,此時可提供配置字段“可查看全部流程”來配置相關人員。
2. 表單設計1)表單搭建
表單模塊往往採用拖拉拽的形式,讓用户選擇需要的組件拖拽到畫布中組成表單,至於拖拉拽的交互方式各個平台大同小異,而且也比較簡單和成熟。
但提供的組件和其附有的功能能大大提升用户在填寫表單時的體驗,在維護表單組件時,就應考慮到填寫表單時的驗證、反饋、自動鍵盤等體驗。
輕流組件示例
2)組件分類
表單組件首先可大致分為兩類:
- 基礎組件:無數據傳輸,僅供填寫的組件,常見的有輸入、單選、多選、數字、日期、時間、地點、電話、郵箱、圖片、附件等,注意要附帶相關格式驗證、鍵盤在數字、字母、郵箱及其他可能數據下的自動切換。
- 關聯組件:這是在基礎組件的基礎上,梳理出通用字段與數據庫關聯形成配置組件,可從系統獲取有組織性、正確性的數據,如部門、人員、定位,也可關聯已有字段自動獲取信息,比如關聯工號字段可帶出姓名、手機號、剩餘假期等字段。
輕流組件示例
3)組件配置
每個組件在被選擇後,即為表單中的一個字段,字段由表頭、填寫區域組成,需要配置相應的屬性:
a. 字段屬性
一個組件即表單中的一個字段,需要有字段名稱。
b. 填寫屬性
- 暗文:可用作指導用户的簡單提示;
- 內容填寫方式: 手動填寫,用户使用鍵盤輸入;掃碼,可或僅能通過掃描二維碼/條碼輸入,常會在填寫區域上防止掃碼圖標作為提示;關聯帶出,通過關聯到數據庫,再設定與前置字段的關聯公式,來自動帶出填寫內容,之前介紹的關聯組件在此處即默認幫用户配置好了關聯數據庫。
c. 填寫限制
字數限制、是否必填等。
d. 顯示邏輯
- 常在:字段默認顯示;
- 條件顯示:某些字段是在觸發條件後才出現的,比如金額字段的填寫內容大於1000時,才出現上傳憑證圖片的字段。
流程設計對普通用户來説,大概是學習成本最大的一個模塊,主要是選擇審批人和審批方式的選項繁多,而且用詞專業性較高,所以在當前的流程設計模塊中,大部分字段後都跟着説明,來告知用户選擇後的審批效果。
在流程設計模塊中,首先通過可視化界面將流程架構搭建出來,常有以下節點:發起人、審批人、辦理人、抄送、條件。
- 發起人:即可發起此流程實例的人,已有平台中有的可在這配置範圍,此時可能與流程基礎信息中的可用權限重複,建議僅保留基礎信息處,因為當後期流程基本不變,但需要經常維護可用範圍時,只需修改和發佈基礎信息中的內容,否則每次發佈都會重新發布流程,可能導致不穩定;
- 審批人:通常是隻需要檢查內容是否有問題、判斷流程是否流轉下去的決策者,在前端審批界面顯示的主要操作為同意、不同意;
- 辦理人:通常為需完成表單中任務後再繼續提交到下一個節點,任務可為填寫/修改內容、線下活動等,在前端審批界面顯示的主要操作為:提交;
- 抄送:指被通知查看錶單的人員,只能查看錶單,不可編輯;
- 條件:指同一條流程有多條分支,不同分支下可能有不同審批節點和審批人,根據條件判斷進入哪條分支,而條件通常是表單頁的金額、數字、下拉框等字段,或部門小組等固有數據。
針對審批人、辦理人、抄送人節點,需要設置每個流程實例的真實節點人員,以及該節點的權限。
1)設置審批/辦理/抄送範圍
主要可分為以下四類:
a. 發起人自選
需要發起人在創建流程實例時就填寫該節點的審批人。
b. 指定成員
直接在流程引擎中選擇審批人,所有用户創建的流程實例中節點審批人不會變化。
c. 角色
角色指一個人羣的集合,通常有一個設置頁專門維護角色裏的人員。
- 若在角色維護頁面中設置了每個人的負責範圍,就能達到條件分流的目的,如吳琪琪負責部門A,張三負責部門B,那麼部門A成員提交的單據由吳琪琪審批,部門B提交的單據由張三審批。
- 若未設置每個人的負責範圍,通常這個節點由這個角色中的所有人同時審批。
d. 動態角色
動態角色也是一羣人的集合,但不需要提供給用户配置頁來維護角色中的人員,而是從系統抓取擁有這個角色的人,同時還會賦予審批條件流,通常需要開發來維護好供用户選擇。
- 常用的動態角色會被直接放出來作為一個範圍選項,這屬於體驗優化,但根據屬性歸納都屬於動態角色,比如上級、部門負責人是存在於組織架構中已有的角色,且綁定部門形成條件流,審批節點中帶出來的審批人會根據發起人的所屬組織變化,所以我們常見的流程引擎中可直接選擇上級、連續上級、部門負責人,這就是已維護好的動態角色;
- 動態角色與角色的差異主要在於不需要用户手動維護角色中人員的負責範圍,動態角色在創建的時候往往就已經綁定好了組織,取人時層級是組織-角色-人員,而角色是取人層級是角色-負責組織-人員;
- 如果是為明確的客户或業務開發流程引擎,可以根據其需要提前維護更多的動態角色;
- 若需提供開發使用的高級版本,可直接給出動態角色的配置功能如下:
開發版流程中心設置動態角色
2)審批方式
審批方式常放在設置審批人之後,根據審批人數量決定是否顯示多人設置,當多人審批時需選擇審批方式:
- 會籤(需所有審批人同意)
- 或籤(一名審批人同意即可)
- 依次審批(按順序一次審批)
飛書設置審批人
3)表單權限
每個節點可設置審批人對錶單字段的查看/編輯權限。
釘釘設置表單權限
4)更多操作權限
常見的更多操作權限主要有是否可回退、回退節點、是否可轉發、轉派、撤回、打印等。
輕流設置節點操作權限
4. 更多流程設置在搭建完流程主體之後,可對該流程進行整體配置,根據流程重要程度、業務需要賦予相應的功能,常見設置項如下:
飛書流程高級設置
三、總結線上化辦公已達到一定覆蓋率,流程搭建線上化也是大勢所趨,無論是使用已有平台提供的流程引擎或自主設計開發,都需要先對其中的字段、功能瞭解清楚,瞭解已有流程配置方式,再根據業務目標進一步優化,甚至可結合開發需求提供高級配置版本,提高表單開發效率,保證流程操作與頁面的一致性。
作者:皮卡澈 公眾號:澈兒的交互實習日記
本文由 @皮卡澈 。 原創發佈於人人都是產品經理,未經許可,禁止轉載
題圖來自 Unsplash,基於 CC0 協議