后臺設計基礎:字段設計

13 評論 33375 瀏覽 323 收藏 7 分鐘

各位好,通過虛擬賬戶這個點,簡單介紹了虛擬賬戶數據結構、賬務數據結構、交易基礎體系以及相關應用場景,其中核心展示了賬戶數據結構、賬務數據結構、交易流水數據結構,數據結構中最重要的就是字段設計。那么在后續的幾個章節,我們就重點說一下后臺產品設計工作中的幾個基礎工作,希望不了解后臺設計思路或者是對剛入行做后臺產品小白提供一些借鑒意義。

后臺產品經理在設計工作中,有四個基本對象需要設計:

  1. 存儲數據的字段;
  2. 梳理業務的流程;
  3. 規則設計(業務規則、輸入規則、邏輯規則等);
  4. 頁面設計(主要是后臺系統)。

其中字段設計是其中最基礎的部分,是我們后臺設計最核心的部分。首先我們設計后臺系統展現的表單信息來源于字段設計、業務流程中提現的業務信息載體是字段設計、規則設計中相關規則控制對象也是字段,因此設計好字段是后臺產品設計最基礎也是最核心的工作。

所謂字段就是后臺相關數據的載體,根據來源不一樣我們可以定義如下四種類型字段:業務型字段、系統型字段、管理型字段、規則型字段。

相關字段類型說明請看下表:

因此,我們在梳理某一個對象管理字段時可以按照這四個維度去設計字段,來保證我們的字段設計是全面、完善的。

字段類型相關字段我們找好了,就需要針對某一個字段維度進行字段表格的設計了。

字段維度涉及如下維度:

  1. 字段所屬對象:就像后臺按照模塊分類一樣 ,字段也有所屬對象的分類,比如商品、用戶、訂單、結算單、提現單、紅包、獎勵券、客戶等,這些對象是字段承載的載體。
  2. 字段值類型:字段值類型常用的包括:字符串(比較常用)、枚舉(審核狀態、是否項目等)、日期時間、浮點數(金額類型、定義小數點后位數、小數點前位數)、數字(正整數、是否可以為負等)。
  3. 字段是否必填:這個是指字段在寫入值的時候是必須有值的還是可以為空,比如新增一個商品,商品編碼、商品名稱是必填,商品關鍵字可以為空等。
  4. 字段值來源:字段值來源是指字段在寫入的時候來源于哪里,常見的包括以下幾種:來源于輸入(就是通過前段某一個頁面通過用戶輸入或是選擇獲取的值)、系統自動生成(比如:創建時間、業務編號等字段)、來源于其他數據(比如:訂單里面的商品編碼字段,就來源商品里面的商品編碼字段)。
  5. 字段值長度:字段值長度是存儲在數據庫中值的最長長度是多少,比如:字符串類型,可以規定長度32位,這個一般根據業務需求制定的一個最長長度,便于開發設計表結構。

我們舉個案例,來看一下字段設計是如何設計的。

假如:我們有一個新手發紅包的場景,需求可以是這樣:新手用戶注冊我們的產品,我們就給新手用戶發新手紅包。此紅包可以在購買產品時可以抵扣訂單金額,我們就基于紅包這個業務,來設計一下字段。

延續第一章、第二章的思路,紅包是一個虛擬賬戶場景,首先我們要定義紅包這個“賬戶”的結構數據;其次我們要定義發完紅包后“賬務流水”的數據結構。

因此我們要設計兩個對象的字段:

  • 一個紅包類,就是存儲了紅包基本信息的對象;
  • 一個是紅包流水,就是紅包發放情況信息的對象。

具體可以參見如下兩個表格【表1 紅包類字段(僅供參考,具體業務字段具體設計);表2 紅包發放情況字段(僅供參考,具體業務字段具體設計)】:

通過以上兩個對象的字段表格設計,那基本上關于字段設計一個流程就出來了:

  • 首先,確定字段所歸屬的對象,根據業務需求,我們需要建立那幾個對象來承載字段;
  • 然后,我們需要哪些類型的字段,業務型的、系統型的、管理型的、規則型的;
  • 其次確定字段相關值的屬性;
  • 最后通過字段設計將業務通過表格形式展示出來,同時也確定了表格之間的關系。

這樣表格的設計本質上跟技術人員設計數據庫很類似,所以,我們也就解答了這樣一個問題——產品經理如何跟技術人員溝通的問題,通過字段設計基本上實現了產品與技術人員最核心的溝通。

相關閱讀:

虛擬賬戶應用說明

虛擬賬戶如何設計?

 

本文由 @羅飛 原創發布于人人都是產品經理。未經許可,禁止轉載

題圖來自Unsplash,基于CC0協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 感謝分享~

    來自上海 回復
  2. 字段名稱

    字段值類型:字符串、枚舉、日期時間、浮點數、數字

    字段是否必填

    字段值來源:取值、生成、輸入、默認值

    備注:示例、邏輯說明

    來自上海 回復
  3. 理解起來有點難啊。。一般to b的產品經理需要了解這些嗎?

    來自北京 回復
  4. 字段設計和程序員的設計表結構有什么區別?對于產品經理來說要做到什么程度?我是后臺程序員轉產品經理,有點懵。

    回復
    1. 沒有多大區別,區別在于成員員可能會考慮一些日志、緩存、快照、流水、關系表等。產品的表數據是用來幫助程序員更好理解業務,更好的知道自己業務主表、關系表、流水表是什么,功能上需要哪些字段。但是有些情況下產品說的報表數據可能需要程序員設計出來更多的子表才可以。這也是產品和程序員用來交流的最好的橋梁。

      來自北京 回復
  5. 還需要有字段定義,說明字段是干什么用的,要有數據來源,比如XX時間是怎么產生的,什么事件產生,是否更新等等;再一個,日期和時間是不一樣的,前者是年月日,后者是年月日時分秒

    來自浙江 回復
    1. 多謝補充!對的,是的,涉及到某個具體業務需要備注一下字段含義,關于日期時間,您說的也很對,我這邊也是比價懶一些,就直接把日期時間展示出來,其實目的也是告訴大家,日期和時間是不一樣的!

      來自北京 回復
    2. 來自廣東 回復
  6. 作者和我同名,看到名字點進來的

    回復
    1. ??

      來自北京 回復
    2. 回復
  7. 這些字段可不可以編輯不需要定義么?

    來自廣東 回復
    1. 這個也可以定義上,但是一般情況下那些唯一的ID,編碼什么的一旦字段值生成了是不能再編輯修改的,所以這個看情況,如果有一些字段的值存儲在數據庫中只能只讀,不能編輯的話也是可以定義出來的,我上面介紹的是一種通用的模板

      來自北京 回復