表格改變字段時(shí),該如何兼容歷史數(shù)據(jù)?
當(dāng)原有產(chǎn)品無法滿足當(dāng)前業(yè)務(wù)發(fā)展時(shí),有時(shí)候我們會(huì)通過改動(dòng)表格中的字段設(shè)計(jì)滿足業(yè)務(wù)新需要、服務(wù)新場(chǎng)景。而改動(dòng)“數(shù)據(jù)表格”的字段很容易引發(fā)數(shù)據(jù)沖突的情況,所以我們有必要去解決“表格改變字段”后產(chǎn)生的數(shù)據(jù)沖突,去兼容歷史數(shù)據(jù),減少改動(dòng)對(duì)數(shù)據(jù)產(chǎn)生的負(fù)面影響。那么問題來了,我們?cè)撛趺慈ゼ嫒輾v史數(shù)據(jù)呢?
業(yè)務(wù)是不斷變化發(fā)展的,產(chǎn)品也是會(huì)隨之不停迭代的,數(shù)據(jù)表格作為基本組件也常常需要變動(dòng),這在我們的日常工作中是非常常見的。
比如下面這個(gè)例子,一款分析淘寶商家移動(dòng)端店鋪數(shù)據(jù)的產(chǎn)品,其中菜單“流量來源”是對(duì)店鋪流量的分析,在店鋪發(fā)展初期“淘內(nèi)免費(fèi)”、“付費(fèi)流量”、“自主訪問”能夠支撐業(yè)務(wù)方對(duì)于店鋪數(shù)據(jù)的分析,但是隨著店鋪業(yè)務(wù)不斷發(fā)展做大做強(qiáng),對(duì)于流量分析的顆粒度要求越來越細(xì),只是對(duì)流量的簡(jiǎn)單劃分已經(jīng)無法滿足業(yè)務(wù)方的需求。希望能對(duì)于淘內(nèi)流量能有更細(xì)的分類,幫助業(yè)務(wù)方對(duì)店鋪流量有更細(xì)致的了解,從而根據(jù)不同流量大小調(diào)整運(yùn)營(yíng)策略,促進(jìn)店鋪銷售數(shù)據(jù)的發(fā)展。
- 現(xiàn)狀:淘內(nèi)免費(fèi) 付費(fèi)流量 自主訪問
- 期望:手淘搜索 我的淘寶 淘內(nèi)免費(fèi)其他 手淘微淘 手淘掃一掃等
- 需求:改動(dòng)“流量來源”數(shù)據(jù)表格中的字段
當(dāng)原有產(chǎn)品無法滿足當(dāng)前的業(yè)務(wù)發(fā)展時(shí),為了滿足業(yè)務(wù)的新需要,服務(wù)于新的場(chǎng)景。不得不要求我們?nèi)ジ淖冏畛醯漠a(chǎn)品設(shè)計(jì),改動(dòng)表格中的字段設(shè)計(jì)。而改動(dòng)“數(shù)據(jù)表格”的字段很容易引發(fā)數(shù)據(jù)沖突的情況,包括數(shù)據(jù)類型沖突、數(shù)據(jù)格式?jīng)_突等。
如果在改動(dòng)表格字段時(shí),不去考慮數(shù)據(jù)沖突的影響,不去考慮如何兼容歷史數(shù)據(jù),會(huì)導(dǎo)致產(chǎn)品內(nèi)的數(shù)據(jù)在完整性和一致性上出現(xiàn)問題,比如上文中案例如果不進(jìn)行歷史數(shù)據(jù)兼容處理,選擇在3.19號(hào)上線新的統(tǒng)計(jì)功能,關(guān)于流量的劃分就會(huì)存在兩種不一樣的統(tǒng)計(jì)方式,19號(hào)前的流量數(shù)據(jù)劃分方式和19號(hào)之后不一致,按月維度下沒有辦法對(duì)3月的流量數(shù)據(jù)做一個(gè)統(tǒng)一劃分。
歷史數(shù)據(jù)一定意義上成為了“臟數(shù)據(jù)”,有句話說的好叫“垃圾數(shù)據(jù)進(jìn)垃圾數(shù)據(jù)出”,數(shù)據(jù)質(zhì)量對(duì)于分析結(jié)果的重要性甚至高于分析方式和模型?;烊肱K數(shù)據(jù)后產(chǎn)出的結(jié)果對(duì)業(yè)務(wù)造成嚴(yán)重的影響,甚至做出了錯(cuò)誤的決策,帶來不可磨滅的損失
因此,我們有必要去解決“表格改變字段”后產(chǎn)生的數(shù)據(jù)沖突,去兼容歷史數(shù)據(jù),減少改動(dòng)對(duì)數(shù)據(jù)產(chǎn)生的負(fù)面影響。那么問題來了,我們?cè)撛趺慈ゼ嫒輾v史數(shù)據(jù)呢?
01 歷史數(shù)據(jù)都是需要保留的嗎
表格改變字段出現(xiàn)數(shù)據(jù)沖突的情況后,在我們?nèi)ゼ嫒輾v史數(shù)據(jù)之前可以先思考一個(gè)問題:歷史數(shù)據(jù)都是需要保留的嗎?一起來看下下面的兩個(gè)場(chǎng)景。
場(chǎng)景1
某電商to b產(chǎn)品,在一次迭代中,對(duì)“店鋪銷售”菜單增加了“客單價(jià)”字段,那么歷史數(shù)據(jù)中的客單價(jià)對(duì)我們有意義嗎?
場(chǎng)景2
我們?cè)O(shè)計(jì)了一套問卷用于統(tǒng)計(jì)“國(guó)內(nèi)大學(xué)生的不同專業(yè)的就業(yè)情況”,投放問卷一段時(shí)間后對(duì)問題就行了修改,那么收集的歷史數(shù)據(jù)對(duì)我們還有意義嗎?
通過兩個(gè)具體的場(chǎng)景,我們可以發(fā)現(xiàn)“歷史數(shù)據(jù)”在不同的場(chǎng)景下的保留策略是不同的:
場(chǎng)景1中的“客單價(jià)”能幫助復(fù)盤店鋪歷史的客單價(jià)情況,和當(dāng)前時(shí)間的“客單價(jià)”進(jìn)行對(duì)比,對(duì)店鋪策略起到數(shù)據(jù)指導(dǎo)作用,在此場(chǎng)景下歷史數(shù)據(jù)具有重要意義,需要保留。
而場(chǎng)景2中收集的“你的國(guó)家是什么”和場(chǎng)景題干“國(guó)內(nèi)大學(xué)生”矛盾,問卷的修改也是為了解決這一矛盾才修改題目的,所以該題目收集來的歷史數(shù)據(jù)無效,不需要保留可以直接廢棄。
歷史數(shù)據(jù)是對(duì)過去業(yè)務(wù)情況的記錄和反饋,但并不是所有的歷史數(shù)據(jù)都是有意義的,也不是所有歷史數(shù)據(jù)都需要保留的。當(dāng)需要考慮歷史數(shù)據(jù)兼容問題前,建議先從實(shí)際的場(chǎng)景出發(fā)去分析一下“歷史數(shù)據(jù)”對(duì)于業(yè)務(wù)的價(jià)值和意義,如果關(guān)聯(lián)不大或者本身就是錯(cuò)誤的數(shù)據(jù),直接廢棄歷史數(shù)據(jù)就OK了。對(duì)于要保留的歷史數(shù)據(jù),才需要去考慮沖突在哪里,以及怎么去兼容
02 怎么去兼容歷史數(shù)據(jù)
在我們思考了歷史數(shù)據(jù)的價(jià)值和意義之后,確定要保留歷史數(shù)據(jù),那么我們?cè)趺慈ゼ嫒輾v史數(shù)據(jù)呢?首先,我們需要區(qū)分不同的數(shù)據(jù)表格改變方式,會(huì)帶來怎么樣的數(shù)據(jù)沖突,再根據(jù)不同的沖突情況去提出相對(duì)應(yīng)的兼容方案
1. 增加字段
我們經(jīng)常會(huì)遇到在表格上“增加字段”的情況,比如增加了新的業(yè)務(wù)字段,增加了新的統(tǒng)計(jì)項(xiàng)。
如果不做兼容處理,就會(huì)出現(xiàn)增加的字段有增加后的新數(shù)據(jù),但是沒有歷史數(shù)據(jù)。這種情況下,需要我們判斷歷史數(shù)據(jù)能否被補(bǔ)全,若能,則補(bǔ)全歷史數(shù)據(jù);若無法補(bǔ)全,新增的字段歷史數(shù)據(jù)空白展示。
2. 減少字段
當(dāng)出現(xiàn)“減少字段”的情況,如果不做處理,會(huì)出現(xiàn)減少的字段沒有新數(shù)據(jù),但是有歷史數(shù)據(jù)。這種情況下,我們的處理方式是保留歷史數(shù)據(jù),減少統(tǒng)計(jì)后該字段空白展示。
3. 原字段統(tǒng)計(jì)邏輯或規(guī)則改變
統(tǒng)計(jì)邏輯或規(guī)則被改變時(shí),不進(jìn)行數(shù)據(jù)兼容的話,因?yàn)樾聰?shù)據(jù)和歷史數(shù)據(jù)的統(tǒng)計(jì)方式不一致,會(huì)導(dǎo)致數(shù)據(jù)結(jié)果出現(xiàn)差異。這個(gè)時(shí)候,需要我們?nèi)ヅ袛鄽v史數(shù)據(jù)能否按新的統(tǒng)計(jì)邏輯換算,若能,則按新邏輯重新統(tǒng)計(jì);若不能保留歷史數(shù)據(jù),并記錄統(tǒng)計(jì)邏輯的改變記錄。
4. 原字段下鉆或合并統(tǒng)計(jì)
這種改變會(huì)出現(xiàn)新字段和歷史字段是包含或者被包含的關(guān)系,需要我們?nèi)パa(bǔ)全歷史數(shù)據(jù),比如字段A被下鉆成了新字段B+新字段C,根據(jù)下鉆規(guī)則補(bǔ)全新字段B和C的歷史數(shù)據(jù)值。
而在實(shí)際的場(chǎng)景中,數(shù)據(jù)沖突會(huì)同時(shí)存在多種,所采用的方案也是多個(gè)解決手段組合的。
比如下面這個(gè)案例,我們對(duì)“客戶管理”模塊進(jìn)行迭代,通過調(diào)研發(fā)現(xiàn)內(nèi)部銷售團(tuán)隊(duì)希望能在“客戶管理”菜單中增加“客戶微信”字段,并提供根據(jù)客戶等級(jí)自動(dòng)計(jì)算出“下次回訪時(shí)間”,為此我們對(duì)“客戶管理”的字段進(jìn)行了調(diào)整。
表格改動(dòng)為:增加“客戶微信”、“下次回訪時(shí)間”字段,減少“創(chuàng)建時(shí)間”字段。這里就涉及到了“增加字段”和“減少字段”兩種情況,通過分析“客戶微信”和“下次回訪”字段對(duì)存量客戶具有重要意義,收集到客戶的微信聯(lián)系方式和具體的回訪時(shí)間,方便業(yè)務(wù)員展開業(yè)務(wù),兩個(gè)字段的數(shù)據(jù)也有被補(bǔ)全的條件;而減少的“創(chuàng)建時(shí)間”字段對(duì)于業(yè)務(wù)影響不大,可以廢棄?;谏厦娴目紤],我們對(duì)“客戶管理”菜單做了如圖處理。
迭代發(fā)布上線后,產(chǎn)品同學(xué)提出“下次回訪時(shí)間”直接展示時(shí)間,對(duì)銷售團(tuán)隊(duì)來說不夠直觀,可以對(duì)“下次回訪時(shí)間”進(jìn)一步處理,更加直接明了,因?yàn)椤跋麓位卦L時(shí)間”字段中原有的時(shí)間格式是支持現(xiàn)在的規(guī)則換算的,就可以對(duì)時(shí)間進(jìn)行了換算處理。
對(duì)“下次回訪時(shí)間”的展示進(jìn)行處理,計(jì)算“下次回訪時(shí)間”和當(dāng)前時(shí)間的差值:
- 原統(tǒng)計(jì)格式:yyyy-mm-dd
- 新統(tǒng)計(jì)格式:X天后回訪;已過期X天
隨著業(yè)務(wù)的發(fā)展又遇到了“字段統(tǒng)計(jì)邏輯和規(guī)則無法轉(zhuǎn)化”的情況,“客戶管理”中“意向產(chǎn)品”的可選項(xiàng)從“商品1,商品2,商品3”變成了“商品5,商品6,商品7”,改動(dòng)前后的數(shù)據(jù)沒有辦法去簡(jiǎn)單的進(jìn)行兼容,而前后數(shù)據(jù)對(duì)于業(yè)務(wù)來說都是具有意義的,那么我們需要在保留兩者數(shù)據(jù)格式的前提下,做一些文案上的提示,例如在操作日志記錄系統(tǒng)對(duì)于規(guī)則的更改。
從上面這個(gè)案例中我們發(fā)現(xiàn),表格的變動(dòng)不單單只有出現(xiàn)一種沖突,我們采取的解決方案也是多樣的。
03 兼容歷史數(shù)據(jù)的價(jià)值和場(chǎng)景
表格字段的改動(dòng)會(huì)導(dǎo)致歷史數(shù)據(jù)和改動(dòng)后數(shù)據(jù)的沖突,而數(shù)據(jù)沖突會(huì)導(dǎo)致在產(chǎn)品層面的數(shù)據(jù)沒有連貫性,進(jìn)一步導(dǎo)致了用戶無法理解前后數(shù)據(jù),對(duì)產(chǎn)品產(chǎn)生了疑問,以至于產(chǎn)生了負(fù)面情緒。
簡(jiǎn)單的對(duì)表格字段進(jìn)行增減,對(duì)于用戶的影響相對(duì)于較少,降低了用戶對(duì)數(shù)據(jù)的可讀性,比如上文案例中增加減少字段,不做處理的話,用戶會(huì)對(duì)部分情況有數(shù)據(jù)部分情況無數(shù)據(jù)產(chǎn)生疑惑增加了理解成本。
但是對(duì)于更改統(tǒng)計(jì)邏輯的,就不只是簡(jiǎn)單用戶體驗(yàn)上的問題了,會(huì)給業(yè)務(wù)帶來實(shí)際的影響,比如上文中意向產(chǎn)品中可選擇的產(chǎn)品變更了,如果不及時(shí)對(duì)于歷史數(shù)據(jù)進(jìn)行兼容,做相關(guān)的變動(dòng)說明處理,很容易給業(yè)務(wù)員帶來之前的商品仍然可以進(jìn)行銷售的誤判,最終導(dǎo)致下錯(cuò)訂單甚至下單后無法發(fā)貨,給公司業(yè)務(wù)帶來實(shí)質(zhì)的虧損
由此可見,兼容歷史數(shù)據(jù)的價(jià)值,在于解決這一系列的數(shù)據(jù)沖突,既保證了產(chǎn)品層面的數(shù)據(jù)連貫性,也讓用戶了解到數(shù)據(jù)變動(dòng)的原因,降低了用戶的負(fù)面情緒和理解成本。更重要的是,不僅可以 能幫助用戶復(fù)盤業(yè)務(wù)情況,對(duì)業(yè)務(wù)起到指導(dǎo)作用,而且避免事故和損失的發(fā)生
但是兼容歷史數(shù)據(jù)也不是在所有場(chǎng)景都適用的,當(dāng)我們涉及到的改動(dòng)非常大的時(shí)候,比如業(yè)務(wù)發(fā)生巨大的變化導(dǎo)致原有表格字段全部推翻重新設(shè)計(jì)時(shí),就不建議采用上文的兼容方案,可以選擇新老數(shù)據(jù)交替過渡,原有的表格提供對(duì)老數(shù)據(jù)的支持,新建一個(gè)表格用于支持新字段的展示,通過這種方式,完成從歷史存量業(yè)務(wù)到新業(yè)務(wù)的過渡;又比如整體項(xiàng)目需要重構(gòu),可以選擇數(shù)據(jù)遷移方案
現(xiàn)在當(dāng)我們?cè)俅斡龅綒v史數(shù)據(jù)沖突需要兼容的情況時(shí),可以判斷如何選擇了嗎?
本文由 @晌午 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于CC0協(xié)議。
請(qǐng)問當(dāng)新建項(xiàng)目表單頁增加了一個(gè)必填字段,歷史數(shù)據(jù)無法統(tǒng)一賦值時(shí)該如何處理,如果為空又不能滿足必填要求
個(gè)人建議看下歷史數(shù)據(jù)下的該“必填字段”是否有業(yè)務(wù)意義,如果有的話,需要進(jìn)行歷史數(shù)據(jù)的補(bǔ)全;如果沒有的話,是不是可以考慮歷史數(shù)據(jù)展示空,當(dāng)對(duì)歷史數(shù)據(jù)進(jìn)行重新編輯時(shí)才需要填寫該字段
謝謝解答~,受教了