B端系統(tǒng)配置功能設(shè)計(jì)的思考

2022-1-5    資深UI設(shè)計(jì)者

在大型B端產(chǎn)品中,不可避免的出現(xiàn)各種配置,配置如同一個(gè)個(gè)控制閥,決定著業(yè)務(wù)的走向,并實(shí)現(xiàn)saas產(chǎn)品的千人千面,以滿足不同客戶的訴求,適應(yīng)不同行業(yè)的業(yè)務(wù)場(chǎng)景。但在隨著產(chǎn)品的發(fā)展,配置項(xiàng)也越來(lái)越多,逐漸變的不可設(shè)計(jì)與維護(hù)。給什么做的配置?配置是如何生效的?好的配置具有什么特點(diǎn)?如何確定配置的維度?針對(duì)這些問(wèn)題,筆者就以自身的工作經(jīng)驗(yàn),來(lái)給大家說(shuō)一下如何進(jìn)行復(fù)雜B端系統(tǒng)的配置功能設(shè)計(jì)。

一、給什么在做配置?

在開(kāi)始配置之前,我們要想清楚,我們到底在為什么在做配置。

軟件系統(tǒng)是現(xiàn)實(shí)世界的抽象,在《THINK IN UML》一書中,表述了現(xiàn)實(shí)運(yùn)行的機(jī)制:人驅(qū)動(dòng)系統(tǒng)、事體現(xiàn)過(guò)程、物記錄結(jié)果、規(guī)則控制運(yùn)行。由于我們不可能利用一套固定的規(guī)則滿足所有客戶的業(yè)務(wù)場(chǎng)景,故我們需要支持規(guī)則可調(diào)整,調(diào)整規(guī)則的功能,就是配置功能。

我們習(xí)慣用用例(use case)的方法來(lái)抽象現(xiàn)實(shí)世界的需求,一個(gè)完整的用例定義由參與者、前置條件、場(chǎng)景、后置條件構(gòu)成,其中:

  • 參與者通過(guò)系統(tǒng)輸入物與系統(tǒng)交互,可以是輸入的一段指令,一筆訂單,一個(gè)商品信息等;
  • 前置條件:發(fā)生這個(gè)用例的前提條件,即輸入物滿足什么條件才可以發(fā)生這個(gè)用例
  • 后置條件:發(fā)生這個(gè)用例之后的結(jié)果,會(huì)產(chǎn)生哪些影響

那么當(dāng)我們翻譯成UML的語(yǔ)言時(shí),配置就是定義前置條件和后置條件的系統(tǒng)功能。

那么當(dāng)我們判斷輸入物滿足什么條件時(shí),還是分兩類:

  • 當(dāng)輸入物存在時(shí),即滿足條件。如:當(dāng)OMS系統(tǒng)發(fā)出打印指令時(shí),即調(diào)用配置中指定的打印機(jī)進(jìn)行打印;
  • 當(dāng)輸入物的屬性和預(yù)設(shè)規(guī)則滿足時(shí),即滿足條件。如:當(dāng)ERP推送商品價(jià)格數(shù)據(jù)到OMS中,由于商品價(jià)格數(shù)據(jù)這一個(gè)輸入物的所屬類別分類屬性,滿足預(yù)設(shè)規(guī)則1,則自動(dòng)加價(jià)5%;

當(dāng)我們分析會(huì)產(chǎn)生哪些影響時(shí),我們可以分三類:

  • 邊界類:影響操作界面是否可查看可操作,或者接口是否可用。權(quán)限控制RBAC設(shè)計(jì)模型和接口的訂閱配置,就是典型的對(duì)邊界類造成影響的配置設(shè)計(jì);
  • 實(shí)體類:影響數(shù)據(jù)庫(kù)表,文檔或其他具有持久化特征的數(shù)據(jù)的格式、內(nèi)容;如OMS系統(tǒng)設(shè)計(jì)中的審單功能中,會(huì)根據(jù)配置在訂單上加上贈(zèng)品商品行;
  • 控制類:影響控制程序,工作流,算法體是否起作用;如OMS系統(tǒng)中,訂單會(huì)根據(jù)配置來(lái)決定是否直接跳轉(zhuǎn)到某個(gè)狀態(tài),如退單長(zhǎng)時(shí)間未審核,則自動(dòng)同意的配置

在復(fù)雜的B端系統(tǒng)中,我們往往發(fā)現(xiàn)一個(gè)業(yè)務(wù)無(wú)法用一個(gè)用例就描述清楚,導(dǎo)致配置設(shè)計(jì)還是無(wú)法進(jìn)行,如這個(gè)業(yè)務(wù)場(chǎng)景:

ERP將商品資料同步到OMS,OMS加工后,同步至各商城。

由于用例體現(xiàn)了參與者的愿望,用例的執(zhí)行結(jié)果應(yīng)對(duì)參與者來(lái)說(shuō)是可觀測(cè)和有意義的,那么顯然,同步商品資料到各商城,對(duì)于業(yè)務(wù)的起點(diǎn)ERP來(lái)說(shuō),并不是其愿望,也不可觀測(cè),但是不存在沒(méi)有參與者的用例,用例不應(yīng)該自動(dòng)啟動(dòng)。由于參與者可以是非人的,換句話說(shuō),參與者可以是用戶的一個(gè)指令,或者是上游系統(tǒng)的通知,故我們往往將用例根據(jù)參與者的不同進(jìn)行拆分。以筆者參與的OMS產(chǎn)品為例,我們根據(jù)長(zhǎng)期的實(shí)踐,習(xí)慣根據(jù)參與者的不同,劃分為三種不同的用例。不同種類的用例,配置一般影響的類別也不一樣:

  • 輸入用例:比如上游訂單系統(tǒng)同步訂單至OMS、ERP系統(tǒng)同步商品資料至OMS。配置一般影響邊界類;
  • 處理用例:比如訂單打印、訂單拆單合單、訂單履約、商品價(jià)格加價(jià)處理。配置一般影響控制類;
  • 輸出用例:比如OMS輸出訂單發(fā)貨清單至ERP、OMS系統(tǒng)同步商品價(jià)格至上游平臺(tái)。配置一般影響實(shí)體類;

我們可以整理出下圖:

二、配置設(shè)計(jì)要求

上文我們了解了在給什么在做配置,那么一個(gè)好的配置應(yīng)該滿足什么條件呢?

第一:配置邏輯自洽

1、根據(jù)輸入物屬性識(shí)配自己的規(guī)則時(shí),規(guī)則之間不能相互沖突;

我們拿商品價(jià)格策略配置舉例:

當(dāng)我們識(shí)別商品的價(jià)格屬性去適配規(guī)則時(shí),我們應(yīng)使用MECE分析法,按照完全窮盡,相互獨(dú)立的原則,將屬性的枚舉值整理出來(lái),當(dāng)無(wú)法完全窮盡時(shí),應(yīng)設(shè)置默認(rèn)規(guī)則;

2、配置與配置之間不能互相沖突;

我們?nèi)阅蒙唐穬r(jià)格策略配置舉例:通過(guò)識(shí)別商品的價(jià)格、所屬平臺(tái)、所屬門店等屬性去適配規(guī)則時(shí),可能會(huì)出現(xiàn)同一個(gè)商品同時(shí)滿足多個(gè)配置的情況;

這種情況下,我們需要先判斷多個(gè)配置是否可以疊加:

可以疊加:當(dāng)對(duì)實(shí)體類進(jìn)行配置設(shè)計(jì)時(shí),一般策略是可以疊加的。在這種情況下,可以增加配置疊加規(guī)則,如設(shè)置上限\下限:加價(jià)策略都是以輸入的原價(jià)為基準(zhǔn)進(jìn)行加價(jià),累次加價(jià)不能超過(guò)原價(jià)的8%

不可以疊加:需要增加策略沖突時(shí)的應(yīng)用規(guī)則

  • 應(yīng)用最新的配置:適用最后更新的配置;
  • 指定策略優(yōu)先級(jí):為配置分配優(yōu)先級(jí),在配置不可疊加時(shí),選擇優(yōu)先級(jí)最高的生效;

第二:配置變更有跡可循:重要的業(yè)務(wù)配置,需要提供配置變更日志查詢,記錄配置修改人與修改時(shí)間

第三:配置影響的前后數(shù)據(jù)對(duì)應(yīng):如果配置影響的是實(shí)體類的修改,則應(yīng)在數(shù)據(jù)庫(kù)中記錄時(shí),需記錄數(shù)據(jù)原值和配置影響后的數(shù)據(jù),不應(yīng)在同一個(gè)字段,用配置影響后的數(shù)據(jù)直接覆蓋原數(shù)據(jù)。實(shí)體類的新增則不需要;

第四:高拓展性:系統(tǒng)的能力建設(shè)是持續(xù)的,配置的設(shè)計(jì)可以延續(xù)標(biāo)準(zhǔn)的工作流程不斷拓展新增;

第五:配置規(guī)則可理解:需要提供必要的功能指引,配置規(guī)則的入口和操作方式需要符合用戶的認(rèn)知;

第六:不同維度的繼承關(guān)系清晰:在不同維度設(shè)計(jì)同一個(gè)配置時(shí),需要理清楚是否要繼承父輩維度的配置,一般要支持可配置是否要繼承繼承父輩維度的配置,以免造成修改此維度的配置后, 又因?yàn)槔^承了父輩維度的配置,導(dǎo)致修改配置不生效;

三、確定配置管理的維度

我們發(fā)現(xiàn),存在配置需要對(duì)輸入物的多個(gè)屬性進(jìn)行識(shí)別以決定應(yīng)用哪個(gè)規(guī)則的情況,那么我們配置的維度如何設(shè)計(jì)呢?

當(dāng)我們只有一項(xiàng)配置時(shí),我們當(dāng)然可以如下設(shè)計(jì):

但是如果我們每次新增一個(gè)配置,就長(zhǎng)出一個(gè)新頁(yè)面,很快就會(huì)發(fā)現(xiàn):

用戶操作成本高,需要從大量的配置中,找到對(duì)應(yīng)的配置進(jìn)行操作;

配置設(shè)計(jì)拓展困難,每次新增配置,就要做一個(gè)新的頁(yè)面;

這時(shí),我們可以查看一下系統(tǒng)的領(lǐng)域模型,找到輸入物的共同屬性,來(lái)組織配置功能的架構(gòu):

這時(shí)我們發(fā)現(xiàn),雖然輸入物繁多,業(yè)務(wù)場(chǎng)景各不相同,但是他們都有一個(gè)共同的父類:渠道店鋪。如果此時(shí),渠道店鋪?zhàn)鳛檩斎胛锏囊粋€(gè)屬性,參與配置規(guī)則生效的匹配,則可以將渠道店鋪這個(gè)屬性抽離出來(lái),作為配置管理的維度,如:

這樣做的好處是,用戶可以在一個(gè)頁(yè)面,完成多個(gè)配置,而不用不停的切換頁(yè)面。

我們也可以看到,渠道店鋪可以繼承渠道、渠道商家、商家、店鋪的配置,我們可以根據(jù)真實(shí)的業(yè)務(wù)訴求,以盡量減輕用戶配置負(fù)擔(dān)為目標(biāo),靈活的選擇配置的對(duì)象。

當(dāng)某個(gè)用戶在配置時(shí),一個(gè)屬性不同的枚舉值對(duì)應(yīng)的規(guī)則一樣,例如期望所有美團(tuán)渠道的店鋪都適用自動(dòng)打印配置時(shí),我們到最小的配置維度【渠道店鋪】去一個(gè)一個(gè)配置,無(wú)疑還是增加了用戶的操作成本。這時(shí)我們就可以考慮將其父類作為配置的維度,子類繼承父類的配置規(guī)則。

四、配置的入口怎么設(shè)置

確認(rèn)配置的入口,我們一般這么做:

STEP1: 根據(jù)配置操作人確認(rèn)在哪個(gè)系統(tǒng)上做配置;

STEP2: 根據(jù)業(yè)務(wù)用例上的參與者劃分不同的配置模塊;

STEP3: 根據(jù)配置維度,聚合配置功能;

STEP4: 易用性改造

以下為筆者負(fù)責(zé)的OMS系統(tǒng)中配置功能的統(tǒng)計(jì)(數(shù)據(jù)已脫敏):

關(guān)于易用性改造,我們一般做以下事情:

在業(yè)務(wù)或數(shù)據(jù)相關(guān)頁(yè)展示配置入口;

利用接近原則,在業(yè)務(wù)或數(shù)據(jù)相關(guān)頁(yè)展示配置入口。利用接近原則是一個(gè)心理學(xué)名詞,指對(duì)于彼此接近的事物,人們總會(huì)下意識(shí)地將他們建立某種關(guān)聯(lián)性,并視為一個(gè)整體去看待。這么設(shè)計(jì)可以減輕用戶的認(rèn)知成本。例如:

將業(yè)務(wù)流程中配置形成SOP;

如一個(gè)商家的系統(tǒng)進(jìn)行初始化時(shí),需要進(jìn)行履約相關(guān)配置、庫(kù)存價(jià)格策略配置、前臺(tái)作業(yè)系統(tǒng)配置等,如果一個(gè)一個(gè)去找相關(guān)的配置,則學(xué)習(xí)成本較高,容易出現(xiàn)配置遺漏等情況,那么我們一般將業(yè)務(wù)流程抽象為一個(gè)SOP,在SOP中,展示對(duì)應(yīng)配置的入口。例如:

3、支持查詢配置

提供全局性的查詢功能,支持查詢對(duì)應(yīng)的配置。例如:

五、示例:配置設(shè)計(jì)的流程

這天,運(yùn)營(yíng)給我反饋了一個(gè)問(wèn)題,希望可以新增訂單自動(dòng)打印的功能,以支持OMS系統(tǒng)在多個(gè)業(yè)務(wù)節(jié)點(diǎn)下,可自動(dòng)打印小票,而不用店員再去手動(dòng)點(diǎn)擊,而且要可以控制預(yù)約單在預(yù)約送達(dá)時(shí)間前1小時(shí)打印,由于門店使用的打印機(jī)型號(hào)不同,還要支持為不同的打印機(jī)配置不同的打印模板。

我識(shí)別到此需求后,我按照以下工作流程,進(jìn)行了配置的梳理:

STEP1: 識(shí)別參與者,抽象用例:抽象出用例,才能拆分配置功能。強(qiáng)行在一個(gè)配置里,將所有業(yè)務(wù)規(guī)則都體現(xiàn),是不現(xiàn)實(shí)的;

STEP2: 確定要配置的內(nèi)容,確定配置的維度;

STEP3:根據(jù)配置的操作人和配置的維度,確認(rèn)配置的入口;

最終可以整理出這個(gè)表格,接下來(lái)我們就可以根據(jù)這個(gè)表格、進(jìn)一步梳理業(yè)務(wù)流程圖、整理原型、撰寫PRD了。

六、結(jié)語(yǔ)

配置設(shè)計(jì)紛繁復(fù)雜,今天我以實(shí)際的工作經(jīng)驗(yàn),給大家介紹了我對(duì)B端配置設(shè)計(jì)的一些思考,希望可以給大家一些思路,并且引導(dǎo)大家思考功能設(shè)計(jì)背后的邏輯,權(quán)當(dāng)拋磚引玉吧,畢竟抄競(jìng)品簡(jiǎn)單,但是競(jìng)品因何發(fā)展成這個(gè)樣子,其中的邏輯判斷,與設(shè)計(jì)權(quán)衡,才是我們應(yīng)該了解的。

文章來(lái)源:人人都是產(chǎn)品經(jīng)理   作者:kathic

分享此文一切功德,皆悉回向給文章原作者及眾讀者.

免責(zé)聲明:藍(lán)藍(lán)設(shè)計(jì)尊重原作者,文章的版權(quán)歸原作者。如涉及版權(quán)問(wèn)題,請(qǐng)及時(shí)與我們?nèi)〉寐?lián)系,我們立即更正或刪除。

藍(lán)藍(lán)設(shè)計(jì)www.bouu.cn )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)



分享本文至:

日歷

鏈接

個(gè)人資料

存檔