Yina是一家數(shù)字化運營SaaS產(chǎn)品的負責人,有豐富的數(shù)字化產(chǎn)品設(shè)計經(jīng)驗,同時也是B端產(chǎn)品設(shè)計顧問和企業(yè)數(shù)字化運營顧問,每周她都會和很多企業(yè)總裁或者B端產(chǎn)品經(jīng)理做線下活動。
這天,在騰訊眾創(chuàng)空間的一次線下活動,她遇到了一個產(chǎn)品經(jīng)理,咨詢了一個這樣的問題:
“Yina,在設(shè)計產(chǎn)品的時,怎么才能降低產(chǎn)品的耦合度?都說好的產(chǎn)品架構(gòu)是低耦合高內(nèi)聚?到底如何設(shè)計呢?需要注意什么呢?”
Yina感覺這個問題非常難回答,因為沒有實際的設(shè)計場景的話,無法說清楚什么是低耦合度的設(shè)計方案。
B端產(chǎn)品設(shè)計有非常多的規(guī)則配置以及實際業(yè)務(wù)邏輯。在設(shè)計底層的權(quán)限,組織架構(gòu),規(guī)則配置時,需要考慮底層的設(shè)計邏輯以及邏輯實現(xiàn)的耦合邏輯。
我在做數(shù)字化項目時,在做復(fù)雜的業(yè)務(wù)規(guī)則邏輯時也踩過不少坑,分享下自己做幾個小功能時總結(jié)的小case,希望可以對做B端產(chǎn)品設(shè)計的同學有所幫助。
1、組織架構(gòu)遇上審批流:數(shù)據(jù)庫設(shè)計時,最小顆粒度設(shè)計存儲內(nèi)容
成熟的數(shù)字化系統(tǒng),組織架構(gòu)和審批流跑不了。當你將身份,角色,門店范圍,門店類型(直營店,加盟店,合作店,獨立店等),審批規(guī)則等等這些信息混合在一起。
設(shè)計組織架構(gòu)和審批流時,如何抽絲剝繭?找到最本質(zhì)的邏輯規(guī)則設(shè)計合理的架構(gòu)呢?如何通過低耦合的設(shè)計方式,提供簡單優(yōu)雅的設(shè)計方案?
我的建議:通過梳理,將影響業(yè)務(wù)邏輯的因素,做成橫坐標;每個因素上的狀態(tài)值(或者類型)做成縱坐標;形成2維矩陣圖;然后試著做全集的場景和方案梳理。
這種方式很慢,但是你做到三分之一的時候就會慢慢發(fā)現(xiàn)規(guī)律,做到一半的時候就知道后面的邏輯,做到最后的時候,方案呼之欲出。
圖表是最能幫助你梳理思路的工具。我在之前的文章中也分享過幾個圖表??梢钥聪隆?參考類似??
通過窮盡方案抽象出通用功能,做模塊化時保證不會耦合。
2、交互設(shè)計時,和技術(shù)溝通,避免因為交互流程的耦合影響技術(shù)方案的耦合
在產(chǎn)品設(shè)計交互架構(gòu)時,有時候會考慮不到實際的數(shù)據(jù)庫和技術(shù)實現(xiàn)方案,在設(shè)計時會出現(xiàn)頁面的實現(xiàn)方式有耦合邏輯,會導(dǎo)致技術(shù)的實現(xiàn)方案有耦合度;此時需要通過和技術(shù)團隊的溝通,找到這樣的隱形坑,優(yōu)化設(shè)計方案,更新產(chǎn)品策略,降低耦合度。這就是我經(jīng)常和技術(shù)說的“通過產(chǎn)品策略降低技術(shù)難度?!?/p>
什么意思?產(chǎn)品經(jīng)理通過業(yè)務(wù)場景的支持和技術(shù)方案實現(xiàn)的平衡,找到最優(yōu)的解決方案。以此獲取產(chǎn)品的成功。
舉一個例子:最近在做一個在途庫存的計算器邏輯(這個方案設(shè)計的特別有意思,感興趣的可以溝通),在做一個批量編輯列表頁面時,交互的設(shè)計為了降低用戶的操作繁瑣度,默認提供了打開即為編輯狀態(tài)的頁面,同時提供了單條刪除的操作。技術(shù)在實現(xiàn)時犯難了。
每一個列表數(shù)據(jù)都以數(shù)據(jù)ID為記錄;但是如果編輯和刪除操作同時存在的話,在存儲數(shù)據(jù)時,會出現(xiàn)超級大的計算量。無法確認到底是對哪個數(shù)據(jù)進行了操作。此時需要產(chǎn)品結(jié)合實際的業(yè)務(wù)場景找到平衡方案。
另外一個在配置角色和全新規(guī)則時,交互設(shè)計可能將門店-角色-權(quán)限做了耦合的交互設(shè)計,但是在底層設(shè)計數(shù)據(jù)結(jié)構(gòu)時,不能根據(jù)產(chǎn)品的設(shè)計方案設(shè)計,而是需要通過角色-全新-門店建立最小顆粒度的數(shù)據(jù)結(jié)構(gòu)。
一定避免因為交互頁面耦合邏輯導(dǎo)致數(shù)據(jù)結(jié)構(gòu)的耦合設(shè)計,產(chǎn)生耦合后,想改就要動數(shù)據(jù)庫,想想都難受?!
3、篩選邏輯:配置項目讀取配置,不要在代碼里寫過濾邏輯
在做企業(yè)數(shù)字化項目時,有的團隊為了控制成本,直接將客戶的業(yè)務(wù)邏輯放在代碼里,導(dǎo)致后面客戶想要調(diào)整一個簡單的業(yè)務(wù)邏輯都非常困難。
我們在做數(shù)字化方案時,秉承的一個原則就是能做配置項目的,能做最小顆粒度配置的,絕對不在代碼里寫死邏輯。
企業(yè)的業(yè)務(wù)變動是大概率事件,不能為了節(jié)約成本幫客戶做一個"死板的系統(tǒng)",而是要做成靈活可配置,靈活而優(yōu)雅的系統(tǒng)。
4、結(jié)合場景:不要過分設(shè)計;不要因為要解耦合做的太零散,導(dǎo)致頁面配置時太瑣碎
這條是結(jié)合3來說~有時候我們不能為了靈活而過度設(shè)計。在不必要的環(huán)節(jié)設(shè)計成太多的配置項。
比如常見的很多信息化系統(tǒng)非常靈活,各種字段可配置,各種流程可配置,甚至是數(shù)據(jù)檔案都可以配置!
最后導(dǎo)致系統(tǒng)運行起來時,對人員的操作能力要求比較高。只有充分了解的業(yè)務(wù)和系統(tǒng)的功能才能配置成功。
在考慮系統(tǒng)的解耦合程度和用戶的上手操作難度時,產(chǎn)品經(jīng)理需要注意做權(quán)衡。
以上幾個點,是做數(shù)字化系統(tǒng)時,做B端產(chǎn)品設(shè)計時,解耦合需要注意的點,希望對大家有所幫助。
-END-
【轉(zhuǎn)載說明】  若上述素材出現(xiàn)侵權(quán),請及時聯(lián)系我們刪除及進行處理:[email protected]