當你設計一個新的功能模塊新症,服務端童鞋一定會追問你具體有哪幾種實體以及之間的關系贪薪,如果你沒想清楚或者描述含糊璃饱,那么就有必要學習一下ER圖骏全。
你是否碰到過類似的問題苍柏?
設計優(yōu)惠券模塊,有幾個概念容易混淆吟温。比如運營新建的一批優(yōu)惠券序仙,然后用戶領了其中一張優(yōu)惠券突颊,而這一張有可能可以多次使用(比如uber)鲁豪。請問這3種分別是什么,之間的關系律秃,以及如何區(qū)分這3者……
設計商品模塊爬橡,spu、sku棒动、商品很容易混淆糙申,更進一層有商品條形碼、商品編碼等等船惨。怎么和服務端童鞋解釋清楚他們是一件很頭疼的事情柜裸。
更復雜一點,如果設計商城系統(tǒng)粱锐,服務端童鞋會問你這個商城的怎么搭建疙挺,核心有哪些東西。
這些問題該怎么解決怜浅?
其實這些看似復雜的問題铐然,作為PM先用ER圖來梳理清楚,再和服務端確認是最合適的工作方法恶座。你要知道文字很難描述清楚搀暑。而原型線框圖無法直接表現(xiàn)這些。
ER圖是什么跨琳?
先說概念自点,ER圖是用來描述現(xiàn)實世界中的實體關系模型,所謂實體是指客觀上或者邏輯上存在并且可以區(qū)分的人事物脉让。
ER圖有什么作用桂敛?
ER圖會促使你以最適合技術理解實現(xiàn)的方法,來規(guī)范的描述功能模塊的核心要素侠鳄,其實就是數(shù)據(jù)庫的物理結構埠啃。而這種描述是無二義的,最清晰傳達PM的設計思想伟恶。
優(yōu)惠券的ER圖
拿上面的案例1來畫一張ER圖碴开,這樣子表述就很清晰,其中聯(lián)系“生成”屬性可以不畫。
當然如果業(yè)務不一樣潦牛,比如限定每張領到的券和線下商場一樣只能用一次眶掌。那圖應該是這樣,注意區(qū)別巴碗。
ER圖包含哪幾種要素朴爬?
實體
是指客觀上或者邏輯上能夠相互區(qū)分的事物。
在ER圖中用矩形表示橡淆,矩形框內(nèi)寫明實體名召噩。
屬性
實體所具有的某一特性,一個實體可由若干個屬性來刻畫逸爵。
在ER圖中用橢圓形表示具滴,并用無向邊將其與相應的實體連接起來。
聯(lián)系
也稱關系师倔,反映實體內(nèi)部或?qū)嶓w之間的關聯(lián)构韵。實體內(nèi)部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系;實體之間的聯(lián)系通常是指不同實體集之間的聯(lián)系趋艘。
在ER圖中用菱形表示疲恢,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關實體連接起來瓷胧,同時在無向邊旁標上聯(lián)系的類型(1 : 1显拳,1 : n或m : n)。
連接線
實體與屬性之間抖单;實體與聯(lián)系之間萎攒;聯(lián)系與屬性之間均用直線相連,并在直線上標注聯(lián)系的類型矛绘。
ER圖該怎么畫耍休?
要素如何表示
畫圖步驟
首先確定這個模塊有哪幾個核心的對象以及具體有哪些特征,
其次思考這些對象之間的關系货矮,如何相互轉(zhuǎn)變羊精。
最后把他們用ER圖的方法表述出來。
當然需要盡量精簡實體以及優(yōu)化屬性囚玫。
接下來把最開始的2個案例也畫一下喧锦,方便大家理解。
B2C商城的商品模塊
B2C商城的系統(tǒng)
注意里面有個倉庫的概念抓督。
總結
ER圖是一種高效傳達功能的手段燃少,狀態(tài)機也是。千萬不要以為不學會就沒辦法做產(chǎn)品铃在,但是學會了這些方法之后阵具,對于設計和實現(xiàn)層面會有極大的效率提升碍遍。