電商、O2O行業的產品線中,后端的業務支持系統占據了很大的比重,比如訂單系統、供應鏈系統等。不同于純線上的產品,電商、O2O領域的產品基本都是后端大于前端,這些后端產品覆蓋了公司的核心數據,作為公司業務運行的基礎。而且因為每個公司的業務形式不同,通常需要有一套自己的或者定制化的系統作為公司獨特的業務支持。
供應鏈系統是為公司提供商品進銷存業務的管理系統。大部分以交易為核心業務的公司,都有自己商品進貨發貨的供應鏈業務,而各個不同的行業和領域又有自己獨特的供應鏈業務形態。供應鏈系統通常包含采購、庫存管理、出入庫、物流等多個模塊,是公司后臺產品線重要的一環。
作為一個后端產品的產品經理,日常工作的核心在于深入地挖掘業務,梳理流程,產出模塊化的系統設計方案,和C端產品有著不小的差別。本文主要寫我在公司設計供應鏈系統的實操記錄,根據我所在公司的業務模式,介紹供應鏈系統整個設計過程的思路、方法和核心要點。由于供應鏈具體的業務和流程每個公司不一樣,這類后臺產品并不像C端產品那樣能直接用來參考,因此本文不是一篇介紹供應鏈系統應有的流程和功能的文章,核心在于思路和方法的分享,功能細節僅供參考。
在上一篇描述采購模塊的文章中,已介紹了公司的基本業務模式,可移步參考。
庫存管理即對倉庫中所有貨品庫存和出入庫操作的管理。倉庫庫存是供應鏈的核心,所有供應鏈的業務都是圍繞著庫存進行。庫存管理涉及到的業務模塊很多,包含各項與庫存變動有關的業務,采購、調撥、使用、退貨、盤點、報損等。供應鏈系統的庫存管理模塊用于倉庫基礎設置和倉庫庫存的管理,對業務的價值為:
1. 系統賬面庫存和實體庫存的一致性
庫存一致性有兩個階段:
第一階段是庫存數量一致,即做到所有類型出入庫業務的流程閉環,對出入庫進行物、錢和人的管控。這點是基礎的業務保障;
第二階段是每個貨品的唯一id識別和跟蹤,一物一碼體系的基礎;
(2)不同角色之間業務流轉的信息同步
各項出入庫操作在各個角色質檢的流轉和信息同步,提高業務效率,如調撥業務中分倉、總倉、pmc等各角色的操作流轉。這一點同樣是基礎;
(3)通過數據分析對庫存進行智能計算和管控
實現基礎流程后,通過數據分析,對倉庫的庫存數量和流動的智能計算以輔助決策,如安全庫存設置,庫存數量預警,根據訂單自動計算要貨數量等。如果說前面幾條價值只是對業務的支持,那么這一點即是系統數據對業務的推動。
調撥是倉庫日常業務最多的一種業務模式。廣義上的調撥,指的是由某個倉庫將貨品調撥至另一倉庫。
本文主要介紹調撥中的訂貨業務。訂貨是庫存調撥中的核心,由各個地區的倉庫在固定日期向總部申請庫存,由總部的pmc統一進行審核,然后通過總倉發貨,以及提交采購申請至采購后由供應商發貨這兩種形式滿足各倉庫的需求。
很多通用的電商供應鏈系統通常只是用調撥模塊來支持這塊業務,然而調撥只能支持庫存的流動,沒法涵蓋整個業務流程。針對訂貨業務單獨制作一個模塊的作用在于:
業務流程和操作的支持,將分倉、總倉和采購三個角色,從申請、到審核、配貨,再到發貨和采購申請串起來;
庫存數據的智能計算和輔助參考,包含各倉庫理論申請量的計算,總倉對多個倉庫配貨量的分配策略,采購申請量的自動計算等。
1. 第一步,梳理流程,確定基本流程節點:
2. 第二步,確定參與業務的人員角色:
(1)申請倉庫,通常是各地區分倉,發出訂貨申請,以及發貨后進行收貨;
(2)總倉pmc(或區域倉庫pmc),協調各分倉的訂貨申請進行配貨,并根據配貨結果向采購發起采購申請
(3)總倉倉管(或區域倉庫倉管),負責發貨;
(4)采購,提交采購申請后由采購接收,接入采購流程。
3. 第三步,確定各流程節點的具體操作:
(1)申請
各地區倉庫在固定日期提出訂貨申請;
(2)審核
由pmc對各倉庫的申請進行審核。由于各個分倉人員的專業性不夠強,因此專業人員的審核這一步必不可少。pmc歸屬于總部或者區域倉儲中心;
(3)配貨
將各個地區的申請單合并,由pmc將總倉(或者區域倉儲)的庫存,分配給各個申請的倉庫;
這里會有三種情況:
總倉庫存充足,這時全部滿足即可;
總倉庫存為0,這時需要將申請的數量全部轉為采購申請;
還有一種是總倉庫存只能滿足一部分需求,這時需要按照一定的規則,將總倉的庫存分配給各分倉,然后將剩余的訂貨申請缺口轉為采購申請;
針對一個訂貨單,可以通過多次配貨操作,進行多批次發貨;
(4)轉采購申請
配貨完成后,根據配貨結果生成待采購申請的庫存數量,pmc將所有有缺口的申請單合并后,轉化為采購申請單,然后由采購根據采購申請單進行采購操作,接上采購流程,在采購發貨的環節,由供應商直接發給各個分倉;
(5)發貨
配貨完成后生成每個分倉的發貨單,由倉管進行發貨;
(6)收貨
完成發貨后,各分倉即可進行收貨操作。收貨包含兩種:一種是針對總倉的發貨單進行收貨,一種是在采購流程中,針對供應商的直發進行收貨。由于兩類發貨分屬兩個流程,因此收貨時需要針對這兩類收貨單分別進行收貨;
(8)完結
指整個訂貨申請單完結的判定。發貨收貨的環節結束,后續會有三種情況:
所有申請的貨品都已發貨,這時整個流程自動判定為完結;
由于倉庫數量不夠,有部分申請的貨品沒有滿足,并且不需要再發貨,可以手動完結申請單;
如果申請單未滿足,但其他倉庫有多余庫存,可以交給該倉庫進行發貨,這種情況下,通過拆單操作由系統將部分訂貨拆出來,基于原單生成一個新的申請單,然后再走一遍流程。
字段梳理,整個流程中一共包含的字段為申請的倉庫,審核發貨的倉庫,和貨品的類型數量;
確定各個環節的單據,和它們之間的關聯關系;
整個流程中包含三種單據:
(1)訂貨申請單,申請、審核和配貨環節的單據;
(2)發貨單,由配貨操作產生,發貨和收貨環節的單據。由于一次申請可以分多批次發貨,因此訂貨申請單和發貨單之間是一對多的關系;
(3)采購申請單,由轉采購申請操作產生,用于采購申請環節的單據。轉采購申請是將多條配貨結果合并為一條采購申請單,因此訂貨申請單和采購申請單之間是多對一關系,按照倉庫進行合并;
在采購流程中,采購申請和采購單之間的關系是一對多,采購單又按照倉庫分拆為采購子單,采購子單和采購發貨單是一對多。將兩個流程結合,可以將訂貨申請單和采購子單之間進行關聯,兩者之間的關系為一對多,區別的字段為采購子單中的供應商;由此得出訂貨申請單和采購發貨單之間的關系為一對多。
各環節的數據操作方式,這一步是整個流程中的難點:
(1)申請和審核環節
比較簡單,每個分倉一條申請單,以每類貨品為一條記錄;
(2)配貨環節
業務場景為總倉將所有申請單匯總,然后根據每一類貨品,對比各分倉的申請數量和總倉的庫存數量進行配貨,一類貨品配貨完成后開始下一類。配貨是一個實時進行中的操作,而不是列表,操作的數據基礎仍是訂貨申請單,可以把它理解為一個待配貨的庫存池。
在系統中,配貨環節的操作需要兩級結構,首先匯總當前所有待配貨的申請單,然后統一按照貨品類型拆分,作為第一級,接下來每個貨品類型的詳情中,再按照倉庫拆分為第二級,嵌套各個倉庫的申請量;
(3)發貨環節
同樣比較復雜。配貨后,得出了各個分倉需要發貨的數量。發貨也是實時操作,可以看做待發貨的倉庫池。在發貨時,先選擇一個倉庫,匯總所有待發貨的庫存進行發貨操作,然后進行下一個倉庫的發貨。
在系統中,發貨環節的操作同樣是兩級結構,和配貨環節相反,第一級為各個倉庫,在倉庫中嵌套貨品詳情作為第二級;
(4)轉采購申請環節
同樣是實時操作,配貨后,按照每個分倉形成待轉采購申請的列表,操作時,選擇分倉后進行合并即可。由于不需要關注貨品詳情,因此只需一級結構;
(5)收貨環節
比較簡單,直接針對發貨單進行收貨。
數量的展示、分配和計算規則,這一步同樣很重要,承載了系統對業務標準的提高和效率的推進作用。
整個訂貨申請流程主要包含 3 個數量關系,訂貨申請量、配貨量和采購申請量,三者之間的關系為:各倉庫的訂貨申請量之和≥配貨量+采購申請量,理想狀態為兩邊相等;
數量的分配主要體現在申請/審核,和配貨這兩個環節:
(1)申請/審核
提供相關數據的展示,并計算建議申請量。展示的數據為申請倉庫當前的庫存量、在途庫存量、近一周的消耗量,以及安全庫存量,用于申請和審核時的協助參考;
建議申請量的計算規則為:|最近x天的消耗量-庫存量-在途庫存量|,其中x表示庫存周轉周期,根據庫存類型進行判斷。
(2)配貨
提供相關數據的展示,并自動進行數量分配,完成分配后可以進行人工調整。展示的數據為每個貨品當前庫存量、配貨后的庫存量,用于配貨實時的參考;
配貨一共有前文提到的三種情況,其中庫存充足和庫存為 0 這兩種情況,默認全部配貨以及全部轉采購申請即可;針對總倉庫存只能滿足部分申請的情況,需要自動計算配貨量,規則為根據各個分倉申請數量的比例,乘以庫存的比例,計算出每個分倉理想的配貨數量,然后剩余未滿足的申請數量,轉為采購申請數量。
最后一步,界面和操作的設計,和原型的產出:
狀態需要參考當前所處環節和數量變動情況這兩個情況,給出用戶需要了解的動態描述。整個流程很復雜,配貨、發貨、收貨這幾個節點都會同時進行,因此狀態的設置需要考慮到各種情況。流程找那個包含申請的分倉和配貨發貨的總倉兩個角色,經過思考后,設置了兩個狀態,一個面向分倉,一個面向總倉。具體頁面的狀態如下:
(1)分倉
待審核;
待發貨,即完成了至少一種貨品的配貨操作,可以開始發貨;
待收貨,即完成了至少一種貨品的發貨操作,分倉可以開始進行收貨;
部分收貨,即完成了至少一種貨品的收貨操作,但沒有收完,需要繼續收貨;
全部收貨,即流程結束;
(2)總倉
待審核;
待配貨,即已審核完,可以開始配貨;
部分配貨,即完成了至少一種貨品的配貨操作,但需要繼續配貨;
待發貨,即全部配貨完成,可開始發貨;
部分發貨,即完成了至少一種貨品的發貨操作,分倉可以開始進行收貨;
全部發貨,即所有訂貨都以發貨或者轉采購申請。
核心操作為配貨、發貨和轉采購申請三項,前文已經詳細介紹過。其他的操作為審核、取消、重新配貨、完結,對應到每個頁面的每個狀態節點中即可,細節不再展開。