B2C自營商城的商品設(shè)計(jì)方案
去年我們的美妝社區(qū)APP,上線了自有商城。之后經(jīng)過多次版本迭代,商城系統(tǒng)的模塊已經(jīng)基本健全,值此時(shí)間分享一些經(jīng)驗(yàn)出來,希望可以共同交流。
主要講講服務(wù)端的架構(gòu)設(shè)計(jì)以及商品呈現(xiàn)邏輯??赡軐?duì)某些PM來說有點(diǎn)難理解,但是我認(rèn)為這是設(shè)計(jì)商城系統(tǒng)的PM必須具備的架構(gòu)能力,而且算是比較基礎(chǔ)和底層的部分。
一、商品的基本概念
1.1、對(duì)用戶而言
一般來說有產(chǎn)品、商品、贈(zèng)品等概念。
1.2、對(duì)數(shù)據(jù)庫而言
可能只有spu,sku兩個(gè)概念,這是最底層的實(shí)體。
- SPU(Standard Product Unit)是指標(biāo)準(zhǔn)化產(chǎn)品單元,是商品信息聚合的最小單位。比如iPhone6。
- SKU(Stock Keeping Unit)是指庫存量單位,即庫存進(jìn)出計(jì)量的基本單元。比如iPhone6國行白色16G。
1.3、對(duì)功能而言
至少有產(chǎn)品,標(biāo)準(zhǔn)化商品,下單商品3個(gè)概念。
- 下單商品??隙ㄊ且粋€(gè)spu下的sku,對(duì)應(yīng)著商品編碼。
- 標(biāo)準(zhǔn)化產(chǎn)品。對(duì)應(yīng)著spu,是幾個(gè)sku的集合。
- 產(chǎn)品。顯示在商城貨架上,可能是一個(gè)spu,可能是不同spu的組合。
注意所謂的sku可能不是單個(gè)物理實(shí)體,比如美妝行業(yè)經(jīng)常把2款化妝品用膠布綁在一起作為一個(gè)sku,存入倉庫。
二、商品的存儲(chǔ)
一般而言,B2自營商城選擇租用第三方倉庫并對(duì)接其系統(tǒng),當(dāng)規(guī)模很大的時(shí)候才會(huì)考慮自建倉庫。
目前我們業(yè)務(wù)剛剛起步?jīng)]多久,所以只有一個(gè)倉庫,比較簡(jiǎn)單。
如果倉庫有多個(gè)的時(shí)候,一般會(huì)根據(jù)“選擇最近倉庫-庫存是否足夠”的原則來處理配貨發(fā)貨,當(dāng)然可能還涉及到合并包裹的問題。
三、商品的實(shí)體關(guān)系
以上講了商品架構(gòu)中需要涉及到的實(shí)體,而他們的屬性和關(guān)系決定著數(shù)據(jù)庫中商品表該如何設(shè)計(jì)。
可以參考這篇文章《如何用ER圖繪制業(yè)務(wù)實(shí)體模型 》,了解關(guān)于實(shí)體關(guān)系模型的更多知識(shí)。
四、商品狀態(tài)機(jī)
商品的上下架狀態(tài)是用來區(qū)分商品是否展示給用戶,以及是否可以成功下單。
贈(zèng)品是一種特殊的spu,支持上架并支持用戶購買,但是建議設(shè)為已下架并且是正確價(jià)格。
需要說明的是,售完下架和我下架的,是為了方便運(yùn)營客服童鞋操作商城運(yùn)營系統(tǒng)而設(shè)計(jì)的,采用了和淘寶賣家的商品狀態(tài)機(jī)相似的做法。
可以參考這篇文章《如何繪畫狀態(tài)機(jī)來描述業(yè)務(wù)變化》來了解其原理。
五、商品的呈現(xiàn)
大部分電商的商品詳情,呈現(xiàn)邏輯是相似的。
另外京東自營會(huì)根據(jù)收貨地址和倉庫的位置進(jìn)行匹配、部分電商會(huì)在進(jìn)入該頁面的時(shí)候會(huì)選中sku并且自動(dòng)跳過庫存不足的。
六、總結(jié)
我沒有講到類目、商品標(biāo)簽、商品關(guān)鍵屬性、銷售屬性、其他屬性,包括商品庫存。
不是覺得不重要,而是我只講了最基礎(chǔ)最底層的設(shè)計(jì),其他的都是根據(jù)業(yè)務(wù)在此基礎(chǔ)上面演變而來。
更多關(guān)于商品設(shè)計(jì)的內(nèi)容,可以點(diǎn)擊DEMO。
相關(guān)閱讀
如何繪畫狀態(tài)機(jī)來描述業(yè)務(wù)變化
B2C自營商城的優(yōu)惠券設(shè)計(jì)方案(上篇)
#專欄作家#
浪子,業(yè)務(wù)型PM,浪子PRD系列51prd.com,公眾號(hào):langzisay。
本文由 @浪子 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
不是技術(shù)出身的我,沒看懂m、n、1是什么意思,能針對(duì)這點(diǎn)再解釋下嗎?
代表2個(gè)實(shí)體的數(shù)量關(guān)系,這個(gè)直接百度更清晰。
好比1個(gè)SPU肯定是M個(gè)SKU,M≥1。
而商品和SPU應(yīng)該是m:n的關(guān)系。
嗯嗯,百度百科那里有個(gè)E-R圖的條目,把那個(gè)又看了一遍,基本上了解了,謝謝你
樓主,我有個(gè)總是。既然贈(zèng)品設(shè)置為支持上架和購買,那為什么要設(shè)置為已下架呢?
滿足贈(zèng)品除了可贈(zèng)之外,也可購買的業(yè)務(wù)場(chǎng)景。
既然為滿足可購買的業(yè)務(wù)場(chǎng)景,為什么要設(shè)置為已“下”架呢?就保持已上架狀態(tài)就可以了吧?話說已下架狀態(tài)的商品應(yīng)該是無法購買的吧。
有時(shí)候部分贈(zèng)品不能賣,比如活動(dòng)前。所以需要已下架狀態(tài)?;顒?dòng)后可能又能賣了,所以使之具備普通商品的特性。
已下架狀態(tài)的商品,不可以買家選購。但是可以系統(tǒng)根據(jù)規(guī)則自動(dòng)加進(jìn)去。
哦。懂了。多謝。
多謝分享。SPU和商品應(yīng)該是nSPU > 1商品的關(guān)系吧?感覺沒見過1個(gè)SPU由多個(gè)商品組成的情況呢。
商品是一個(gè)泛泛的概念,設(shè)計(jì)商品功能底層的時(shí)候,我們只說spu,sku等精確概念。
1個(gè)spu=n個(gè)sku。
商品呈現(xiàn)那里,狀態(tài)是手動(dòng)下架,為什么顯示已下架按鈕,而不直接不顯示此商品。上下架和該商品的展示沒有關(guān)系,而是在另外的地方控制是否展示?
手動(dòng)下架的商品不能直接根據(jù)此狀態(tài)來隱藏該商品詳情,有這樣一些場(chǎng)景還是需要展示相關(guān)信息的,比如已購商品被下架了而用戶需要查看下當(dāng)時(shí)的信息(和目前沒有做商品快照也有一點(diǎn)關(guān)系)。
商品的展示狀態(tài),目前沒有做過多涉及,僅做了已刪除會(huì)用一個(gè)特殊頁面來表示,和你說的不顯示應(yīng)該是同一個(gè)意思。
一般情況 下,已下架商品的商品詳情一般會(huì)保留在store ,但是不會(huì)被用戶搜索到。也就是用戶通過搜索是搜索不到已下架商品的,但是通過URL訪問,可以進(jìn)入到已下架商品的詳情頁面, 如用戶點(diǎn)擊訂單里的商品。