如何采用MVC架構設計一款后端產(chǎn)品?

3 評論 8685 瀏覽 148 收藏 9 分鐘

大多數(shù)設計產(chǎn)品的時候,比較注重前端產(chǎn)品的頁面設計和用戶體驗交互等,而忽略了后端產(chǎn)品流程的設計,導致后端業(yè)務流程不暢,一直在原有的流程上打補丁,有可能影響業(yè)務工作流的整體效率。尤其對于新創(chuàng)公司業(yè)務流程經(jīng)常變更的情況下,沒有一個可擴展的基礎業(yè)務核心的話,冒出的狀況層出不窮,導致業(yè)務停滯不前。這就需要剛開始的時候就確定一個基礎工作流,再不斷進行迭代,建立一個完整的、可擴展的后臺系統(tǒng),避免一條路走到黑,費時費力的重構流程(另:模塊化思維很重要,低耦合高內(nèi)聚,可以降低需求變更時的開發(fā)成本,便于敏捷開發(fā)、及時響應)。

1、梳理業(yè)務場景

以眼鏡零售為例吧,場景:公司采購商品→線上展示→用戶購買。業(yè)務場景主要區(qū)分2C(面向用戶)和2B(面向公司)兩塊。面向用戶的業(yè)務類型主要是:銷售下單、售后、主動營銷等;面向公司的業(yè)務類型主要是采購、供貨、開票等。針對用戶的核心業(yè)務場景再進行細分:挑選完商品后,用戶配鏡的度數(shù)怎么提交,訂單完成后怎么怎么支付,付了錢以后怎么獲得商品,商品損壞的退換貨流程等。所有業(yè)務串聯(lián)以后形成一條完整的工作流,這時候再開始設計業(yè)務流程和后臺框架,就得心應手了少走很多彎路。互聯(lián)網(wǎng)商城的訂單后臺模式了相關例子有很多,本文就不一一贅述。核心流程是:

流程

此文主要介紹下2B的設計模式,更像一個小型的進銷存結合財務報表的企業(yè)信息系統(tǒng)。相對于ERP而言更輕便,更適合小團隊。(如有不對和改進建議歡迎交流指正)

首先要明確的是產(chǎn)品銷售的商業(yè)模式,線上商超+門店銷售相結合的方式,線上做銷售減少成本,線下門店做服務和體驗打造品牌。目前據(jù)調(diào)查,眼鏡零售業(yè)現(xiàn)在主流的有2種銷售方法:

  1. 輕庫存,備貨后上架庫存商品向消費者展示;
  2. 0庫存,不備貨將供應商的貨直接銷售給顧客。鏡架更適合輕庫存的供貨方式,而鏡片更適合0庫存的供貨方式,各類型的鏡片有幾十種,每種鏡片對應度數(shù)有800個以上的sku,全部備庫存的情況下需要10000種以上的sku。這時候針對產(chǎn)品就需要對應的供應屬性(直接采購和工廠供貨),以滿足供貨需求。

2、業(yè)務場景轉化成功能模塊

根據(jù)商業(yè)模式制定工作流:

門店

  • 鏡架:供貨→銷售
  • 鏡片:采購→銷售

線上(總部)

  • 鏡架:采購→銷售
  • 鏡片:采購→銷售

根據(jù)業(yè)務的工作流程方式和財務的記賬方式確定核心流程需求,然后轉化成具體的各個模塊:1、采購,2、倉管(供貨)3、銷售4、財務記賬。

針對財務記賬原則(本人根本不懂財務)多采用復式記賬的方式,有出有進、借貸必相等;故設計后臺票據(jù)這塊的原則就是每一步操作都會生成對應的票據(jù),每一張票據(jù)都會生成對應的會計分錄。

3、設計各模塊的連接和串聯(lián)關系

零售業(yè)的核心是商品和服務,商品是實物有價值的可通過庫存將采購、供貨和銷售串聯(lián),而服務是無形價值,也可通過服務商品來進行計算各部分價值,鑒于現(xiàn)在公司的驗光配鏡服務全部免費,此部分等可不納入銷售、財務等的考慮(有時候精簡需求更利于提升效率)。

如果將采購、供貨和銷售的需求進行抽象、剝離、提煉后發(fā)現(xiàn),就是庫位的移動需求。

  • 采購:供應商庫位→總部庫位/門店庫位
  • 倉管:總部庫位→門店庫位/門店庫位→總部庫位
  • 銷售:門店庫位/總部庫位→客戶庫位
  • 財務:每一筆的庫位移動進行記錄,生成對應的會計分錄。

此時就完成從供應商到客戶的銷售閉環(huán),客戶需求的提出到采購、供貨、銷售,環(huán)環(huán)相扣,每一步操作系統(tǒng)進行記錄,步步可追溯,哪個環(huán)節(jié)出錯,一目了然。由于是根據(jù)商品庫存的數(shù)據(jù)進行記錄每一步操作,通過大數(shù)據(jù)分析對供應商、客戶、商品進行透視,可得出供貨周期、庫存占比、庫存周轉率等。

4、功能模塊可視化

之前提到的各模塊功能的闡述、鏈接主要是MVC架構中的model的概念,將各業(yè)務邏輯建立成對應的模型,以下簡要介紹一下VC即view(視圖)和controller(控制器)。視圖和控制器更多是用戶能看到什么界面(數(shù)據(jù)表的展示),每一步操作會觸發(fā)什么(數(shù)據(jù)的讀出寫入傳遞)。后端產(chǎn)品視圖相對于外觀更注重的是邏輯性和易操作性,對于操作的每個環(huán)節(jié)需要清晰的認識,流程形成閉環(huán)。

你從采購到鋪貨進行分解后有幾個操作:詢價→打樣→確認采購→預付→質(zhì)檢→運輸→入庫→支付尾款→鋪貨到門店;每一步操作的視圖就是對應的view,每一步操作觸發(fā)到下一步就是對應的controller。詢價和確認采購過程中需要哪些東西,就需要哪些展示在視圖上,從詢價到采購單的確認又需要哪些操作,又需要哪些事件觸發(fā)和回退就是controller。業(yè)務邏輯理順,采購員能看到什么,財務能看到什么,采購員怎么確認,確認后采購單怎么連接到倉管,用戶購買后倉管怎么打包、組裝、包裝運輸?shù)娇蛻簟?/p>

借助思維導圖梳理業(yè)務邏輯,最初的業(yè)務需求邏輯轉化成最后的事件觸發(fā)的邏輯(controller),在細化每個事件的各個分支和其他路徑,就算是完成整個方案了。

內(nèi)部導圖

5、在各模塊上進行優(yōu)化,完善用戶體驗

  • 用戶下單后,對應產(chǎn)品根據(jù)訂單自動生成采購單、
  • 采購單自動通過郵件發(fā)送給供應商確認
  • 庫存商品有預警機制
  • 門店庫存不足自動從總部補貨等

……

總結

針對后端產(chǎn)品的產(chǎn)品設計,核心思路是業(yè)務邏輯,用業(yè)務邏輯規(guī)范所有流程;實施過程中各功能拆分到各模塊,各模塊再通過事件觸發(fā)鏈接到一起,形成閉環(huán)。

 

本文由 @saber 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理?,未經(jīng)許可,禁止轉載。

更多精彩內(nèi)容,請關注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 學習后臺設計,希望能夠梳理自己的邏輯能力

    來自廣東 回復
  2. 贊一個,支持下作者。

    來自北京 回復
  3. 后臺產(chǎn)品介紹很少,評論也少

    來自福建 回復