做新模塊前,為什么要先做“功能框架設(shè)計(jì)”?
在做一個(gè)新模塊或是將多個(gè)已有的功能整合成一個(gè)模塊時(shí),我們一定要先設(shè)計(jì)模塊的功能框架,再來動手設(shè)計(jì)具體功能。這樣能讓我們設(shè)計(jì)的模塊中,功能與功能的關(guān)聯(lián)性與銜接性更強(qiáng),且可以避免功能遺漏。
前言
3年以上工作的產(chǎn)品經(jīng)理,在日常工作中,一定遇到過這樣的兩種情況:
- 基于公司現(xiàn)有情況,要在當(dāng)前已經(jīng)在使用的產(chǎn)品中添加一個(gè)新的模塊;
- 將現(xiàn)有產(chǎn)品中多個(gè)功能獨(dú)立成一個(gè)單獨(dú)模塊。
這個(gè)時(shí)候,產(chǎn)品小伙伴通常有兩種解決方式:
- 一種是直接開始畫原型;
- 另一種是先設(shè)計(jì)一個(gè)功能框架,然后再來做原型設(shè)計(jì)。
這兩種方式看上去似乎都是同一個(gè)結(jié)果,但實(shí)際上,結(jié)果卻截然不同。
今天我們就來聊聊,為什么要做模塊的功能框架以及怎么設(shè)計(jì)功能框架。
01 為什么要做功能框架
功能框架,就是我們對于模塊的功能進(jìn)行一層一層框架化的搭建。下面我們先來說一說不搭建功能框架的風(fēng)險(xiǎn)。
1. 功能分布零散,關(guān)聯(lián)性和銜接性差
相信很多小伙伴在工作中都經(jīng)歷過這樣一個(gè)情況,產(chǎn)品設(shè)計(jì)的時(shí)候考慮了各種細(xì)節(jié),覺得這個(gè)產(chǎn)品上線肯定是既有效又好用。
到了真正上線使用了,每個(gè)細(xì)節(jié)上確實(shí)是非常完美,可連起來使用的時(shí)候,往往總覺得有些別扭。
我們來想想以下這種場景:假如微信的聊天功能和朋友圈功能是完全獨(dú)立、無法相互跳轉(zhuǎn)的,這樣會有什么樣的結(jié)果呢?
當(dāng)我們在朋友圈看到一個(gè)好友說自己做了一道美味的菜品,這道菜恰好自己總是做不好,想要去跟他聊一聊這道菜做法的時(shí)候。
我們需要退出朋友圈,在底部導(dǎo)航欄點(diǎn)到“微信”頁面,再點(diǎn)開搜索,去搜索這個(gè)朋友的昵稱,找到這個(gè)朋友再去聊天……
這樣的路徑是不是非常長?這就是我們不設(shè)計(jì)功能框架時(shí)最容易出現(xiàn)的問題,即將每個(gè)功能分布得太過零散,功能與功能間的關(guān)聯(lián)性和銜接性會做得比較差。
這樣就會間接導(dǎo)致功能上線之后,每個(gè)單獨(dú)的功能都很好用,可是連接到一起則非常難用。
2. 容易產(chǎn)生功能遺漏
不提前設(shè)計(jì)功能框架的第二個(gè)問題,則體現(xiàn)在功能遺漏上。
我們拿到新的模塊就開始吭哧吭哧設(shè)計(jì)具體功能,難免會出現(xiàn)思維的局限性。
即我們經(jīng)常圍繞自己想到的那個(gè)點(diǎn)來進(jìn)行設(shè)計(jì),也通常只圍繞這些點(diǎn)來進(jìn)行發(fā)散。
這樣就會使我們局限在細(xì)節(jié)的問題上,而無法從整體考慮模塊所應(yīng)該安排的功能,從而產(chǎn)生功能的遺漏。
我們用設(shè)計(jì)一個(gè)CRM模塊來試想一下這兩種方式的差別:
直接設(shè)計(jì)功能:
這種情況下,我們會先想到CRM是一個(gè)客戶管理系統(tǒng),所以我們會填充客戶信息管理功能。
發(fā)散一點(diǎn),我們會想到客戶簽約有一個(gè)跟進(jìn)過程,所以會設(shè)計(jì)客戶維護(hù)功能。
再往外發(fā)散一點(diǎn),我們可能會想到客戶簽約前的線索功能、商機(jī)功能、報(bào)表功能等。
但是除此之外,我們很難通過這個(gè)點(diǎn)就發(fā)散到相應(yīng)的配置功能、活動運(yùn)營功能等。
先設(shè)計(jì)功能框架:
這種情況下,我們會先通盤考慮一個(gè)功能框架會涉及到幾類的功能。例如“業(yè)務(wù)類、數(shù)據(jù)類、運(yùn)營類、配置類”等。
有了這個(gè)大的層級,我們再慢慢往下進(jìn)行拆分:
- 業(yè)務(wù)類涵蓋客戶信息管理、維護(hù)管理等。
- 數(shù)據(jù)類涵蓋客戶報(bào)表,銷售人員業(yè)績情況報(bào)表等。
- 運(yùn)營類涵蓋活動管理等。
- 配置類涵蓋業(yè)務(wù)的配置、通知配置等。
可參見以下范例:
從上面兩種方式的對比可以看出,先設(shè)計(jì)功能框架能夠站在一個(gè)更廣闊的層面來進(jìn)行思考。
從而拓展我們的思維,讓我們不至于在設(shè)計(jì)具體功能的時(shí)候出現(xiàn)功能的遺漏。
02 怎么設(shè)計(jì)功能框架
設(shè)計(jì)功能框架最重要的要點(diǎn),是將模塊下的功能按性質(zhì)進(jìn)行拆分和整合,將相似度高或關(guān)聯(lián)度高的功能放在同一個(gè)類目下;將相似度低或關(guān)聯(lián)度低的功能拆分開來,以方便后續(xù)進(jìn)行拓展。
設(shè)計(jì)框架時(shí),一般可以將模塊的功能拆分成以下幾類:
1. 業(yè)務(wù)類
業(yè)務(wù)類功能是整個(gè)模塊需要達(dá)成的核心需求。即圍繞模塊主題所做的一系列功能。
例如CRM模塊中,圍繞客戶關(guān)系產(chǎn)生的客戶信息管理功能、客戶維護(hù)功能、商機(jī)功能等。
通過業(yè)務(wù)類功能,我們可以將業(yè)務(wù)的全過程放到線上來進(jìn)行管理,讓我們后續(xù)的管理、查詢和分析更為精準(zhǔn)方便。
因此該類型功能的設(shè)計(jì)會跟模塊本身屬性比較相關(guān),不同的功能模塊拆分都比較不一樣。
但是根本原則就是只在該分類下放置業(yè)務(wù)相關(guān)的功能,且各功能間盡量獨(dú)立,可以相互引用,但是不要在一個(gè)功能中實(shí)現(xiàn)太多用途。
以下用CRM模塊來舉例:
CRM模塊:CRM模塊的業(yè)務(wù)類功能可以拆分為客戶信息管理、客戶維護(hù)管理、線索管理、商機(jī)管理等。
我們從案例出發(fā)來想一想,CRM中的客戶信息管理和客戶維護(hù)管理這兩個(gè)功能,看上去似乎關(guān)聯(lián)非常緊密,但其實(shí)只會在某些場景中,這兩個(gè)功能才會關(guān)聯(lián)較為緊密。
例如:新找到一個(gè)客戶,一次性要填好客戶的信息和本次的維護(hù)記錄。這個(gè)時(shí)候這兩個(gè)功能關(guān)聯(lián)比較緊密。但其實(shí)在更多的場景中,這兩塊功能提供的服務(wù)區(qū)別是很大的。
例如客戶信息可以拓展延伸到客服模塊,以便于客服跟客戶溝通的時(shí)候能夠更好貼近客戶的情況。
而客戶維護(hù)功能則可以拓展到客戶簽約路徑功能中,用以分析客戶是如何跟我們簽約的,經(jīng)過了哪些必要步驟,如何縮短客戶的簽約路徑等。
由此可以看出,業(yè)務(wù)類的功能一定要考慮每個(gè)功能的本質(zhì)和可能的拓展方向,將不同性質(zhì)的功能獨(dú)立分開是非常重要的。
2. 數(shù)據(jù)類
數(shù)據(jù)類功能主要是模塊相關(guān)的數(shù)據(jù),通常以報(bào)表或圖表的形式展現(xiàn)。包含業(yè)務(wù)類功能直接產(chǎn)生的數(shù)據(jù),以及衍生數(shù)據(jù)。例如業(yè)務(wù)量趨勢圖等。
數(shù)據(jù)類的功能一般分為對外和對內(nèi)的兩塊:
- 對外的數(shù)據(jù)主要是用來指導(dǎo)現(xiàn)有業(yè)務(wù)增長,和及時(shí)解決業(yè)務(wù)出現(xiàn)的問題。
- 對內(nèi)的數(shù)據(jù)更多是為了提升內(nèi)部工作效率,達(dá)成降本增效的作用。
數(shù)據(jù)類功能:數(shù)據(jù)類功能可以從對外和對內(nèi)的報(bào)表來進(jìn)行區(qū)分,一層層拆解下去。
在數(shù)據(jù)類的功能中,需要注意的就是根據(jù)功能所起到的作用,將對外的數(shù)據(jù)和對內(nèi)的數(shù)據(jù)區(qū)分開來。
對于這兩塊數(shù)據(jù)本身沒有特別需要區(qū)分的內(nèi)容,僅需針對后續(xù)分析便利來進(jìn)行拆分即可。
3. 運(yùn)營類
運(yùn)營類功能主要是我們通過各種運(yùn)營的方式來影響用戶決策的功能。
例如淘寶的優(yōu)惠券功能等。這類功能可包含B端和C端兩類,具體根據(jù)公司業(yè)務(wù)決定。
我們可以通過使用這類功能,來促使用戶完成我們想要的行為,并以此來提升公司業(yè)績。
運(yùn)營類功能:運(yùn)營類功能通常根據(jù)功能的作用來進(jìn)行區(qū)分,例如常見的運(yùn)營類功能有活動管理、廣告位管理、消息管理等功能。
根據(jù)功能的作用來拆分運(yùn)營類功能夠適應(yīng)的場景比較廣泛。以淘寶為例:
- 活動管理主要是管理平臺發(fā)起的活動,包含對商戶發(fā)起的活動和對購買用戶發(fā)起的活動。
- 廣告位管理主要是針對于平臺的廣告進(jìn)行維護(hù)管理,包含常見的開屏廣告,banner,信息流廣告等.
- 消息管理則更多包含平臺想要用戶知曉的通知內(nèi)容,也會包含商戶和購買用戶的兩方面內(nèi)容。
由此我們可以看出,在運(yùn)營類的功能上,需要以功能作用來進(jìn)行拆分。
這樣也便于我們做功能間的關(guān)聯(lián)和銜接,可以將同一個(gè)功能跟不同的功能進(jìn)行關(guān)聯(lián),使用在更多場景中。
4. 配置類
配置類功能主要是以上3類功能的輔助型功能,例如消息通知配置等。
這類功能主要是為了使系統(tǒng)的靈活性增加,避免每次參數(shù)調(diào)整都要經(jīng)過開發(fā)修改代碼,更快速地響應(yīng)可以讓我們更容易抓住市場機(jī)會和更快速消解用戶的不滿情緒。
以短信通知配置舉例:例如在電商中,我們一開始配置短信通知的時(shí)候,配置的是用戶每領(lǐng)到一張優(yōu)惠券則會發(fā)送一條短信通知。
在用戶使用過程中我們會發(fā)現(xiàn),這樣發(fā)短信的頻次太高,讓用戶產(chǎn)生厭煩情緒,這個(gè)時(shí)候我們就可以通過配置功能馬上調(diào)整,將用戶的短信通知頻次改為1天1次或1星期1次。由此來快速響應(yīng)市場反饋。
配置類功能:配置類功能包含很多,跟運(yùn)營類功能相似,配置類的功能也需要根據(jù)作用進(jìn)行劃分。
常見的功能包括消息通知配置、功能配置、業(yè)務(wù)配置等。
配置類功能的拆分原則跟運(yùn)營類功能比較相似,就不在此過多贅述。
03 總結(jié)
通過今天的文章,我們可以知道在做一個(gè)新模塊或是將多個(gè)已有的功能整合成一個(gè)模塊時(shí),一定要先設(shè)計(jì)模塊的功能框架,再來動手設(shè)計(jì)具體功能。
這樣能讓我們設(shè)計(jì)的模塊中,功能與功能的關(guān)聯(lián)性與銜接性更強(qiáng),且可以避免功能遺漏。
功能框架的設(shè)計(jì)通常將同類型或關(guān)聯(lián)性強(qiáng)的功能放在一起。
做功能框架前,我們要根據(jù)模塊的功能性質(zhì)區(qū)分成4個(gè)類型,業(yè)務(wù)類、數(shù)據(jù)類、運(yùn)營類、配置類。
這4個(gè)類型有各自的不同點(diǎn):
- 業(yè)務(wù)類功能貼合模塊的業(yè)務(wù)性質(zhì)最緊,所以不同的模塊業(yè)務(wù)類功能都不同;業(yè)務(wù)類功能切記要考慮每個(gè)功能的本質(zhì)和未來的拓展性,將功能盡可能拆分得更細(xì)。
- 數(shù)據(jù)類功能一般是以報(bào)表或圖表類型展現(xiàn),包含對內(nèi)和對外的所有數(shù)據(jù)。
- 運(yùn)營類功能和配置類功能則一般是以功能的作用進(jìn)行劃分。以便于能更好地跟其他功能關(guān)聯(lián),復(fù)用到更多場景中。
做新模塊前一定要做功能框架,你get到了么?
作者:蜂蜜烏龍茶;微信公眾號:產(chǎn)品旅程
本文由 @蜂蜜烏龍茶 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自Unsplash,基于CC0協(xié)議
應(yīng)該先梳理業(yè)務(wù)框架吧(業(yè)務(wù)場景和業(yè)務(wù)流程),然后再設(shè)計(jì)功能框架和信息架構(gòu)
不是應(yīng)該先梳理流程再輸出功能框架圖嗎?
請問,這個(gè)框架是通用的嗎?業(yè)務(wù)、數(shù)據(jù)、運(yùn)營、配置。 除了您提到的這個(gè)框架,還有什么產(chǎn)品框架嗎?請多指導(dǎo),謝謝。
謝謝小伙伴看我的文章?( ′???` )比心~~~談不上指教,僅做討論哈~~~這篇文章主要是基于中臺的場景下。我在做這塊設(shè)計(jì)之前,也看過一些其他的產(chǎn)品框架文章,里面談到的劃分方式會有不同。我在自己設(shè)計(jì)框架的時(shí)候嘗試了不同的劃分方式,后來覺得這種劃分最適合中臺的模塊構(gòu)建,各個(gè)功能的邊界比較容易劃分,相似功能的關(guān)聯(lián)性和銜接性會做的比較好。 ??