當你設計一個新的功能模塊,服務端童鞋一定會追問你具體有哪幾種實體以及之間的關系,如果你沒想清楚或者描述含糊,那麼就有必要學習一下ER圖。
你是否碰到過類似的問題?
- 設計優惠券模塊,有幾個概念容易混淆。比如運營新建的一批優惠券,然後用戶領了其中一張優惠券,而這一張有可能可以多次使用(比如uber)。請問這3種分别是什麼,之間的關系,以及如何區分這3者……
- 設計商品模塊,spu、sku、商品很容易混淆,更進一層有商品條形碼、商品編碼等等。怎麼和服務端童鞋解釋清楚他們是一件很頭疼的事情。
- 更複雜一點,如果設計商城系統,服務端童鞋會問你這個商城的怎麼搭建,核心有哪些東西。
這些問題該怎麼解決?
其實這些看似複雜的問題,作為PM先用ER圖來梳理清楚,再和服務端确認是最合适的工作方法。你要知道文字很難描述清楚。而原型線框圖無法直接表現這些。
ER圖是什麼?
先說概念,ER圖是用來描述現實世界中的實體關系模型,所謂實體是指客觀上或者邏輯上存在并且可以區分的人事物。
ER圖有什麼作用?
ER圖會促使你以最适合技術理解實現的方法,來規範的描述功能模塊的核心要素,其實就是數據庫的物理結構。而這種描述是無二義的,最清晰傳達PM的設計思想。
優惠券的ER圖
拿上面的案例1來畫一張ER圖,這樣子表述就很清晰,其中聯系“生成”屬性可以不畫。
當然如果業務不一樣,比如限定每張領到的券和線下商場一樣隻能用一次。那圖應該是這樣,注意區别。
ER圖包含哪幾種要素?
實體
是指客觀上或者邏輯上能夠相互區分的事物。
在ER圖中用矩形表示,矩形框内寫明實體名。
屬性
實體所具有的某一特性,一個實體可由若幹個屬性來刻畫。
在ER圖中用橢圓形表示,并用無向邊将其與相應的實體連接起來。
聯系
也稱關系,反映實體内部或實體之間的關聯。實體内部的聯系通常是指組成實體的各屬性之間的聯系;實體之間的聯系通常是指不同實體集之間的聯系。
在ER圖中用菱形表示,菱形框内寫明聯系名,并用無向邊分别與有關實體連接起來,同時在無向邊旁标上聯系的類型(1 : 1,1 : n或m : n)。
連接線
實體與屬性之間;實體與聯系之間;聯系與屬性之間均用直線相連,并在直線上标注聯系的類型。
ER圖該怎麼畫?
要素如何表示
畫圖步驟
- 首先确定這個模塊有哪幾個核心的對象以及具體有哪些特征,
- 其次思考這些對象之間的關系,如何相互轉變。
- 最後把他們用ER圖的方法表述出來。
- 當然需要盡量精簡實體以及優化屬性。
接下來把最開始的2個案例也畫一下,方便大家理解。
B2C商城的商品模塊
B2C商城的系統
注意裡面有個倉庫的概念。
總結
ER圖是一種高效傳達功能的手段,狀态機也是。千萬不要以為不學會就沒辦法做産品,但是學會了這些方法之後,對于設計和實現層面會有極大的效率提升。
#專欄作家#
浪子,公衆号langzishuo,人人都是産品經理專欄作家。業務型PM。
本文原創發布于人人都是産品經理。未經許可,禁止轉載。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!