2020-9-8 資深UI設(shè)計者
編輯導語:導出功能我們經(jīng)常能夠使用到,看似一個很簡單的功能,實則在設(shè)計的過程中需要考慮很多的因素。本文作者對導出功能的全過程進行了思考,為我們分析了兩種解決方案,拆解了導出前和導出時的設(shè)計,并且進行了總結(jié)。
功能(百度釋義):功能是一個漢語詞語,拼音為gōng néng,意指事物或方法所發(fā)揮的有利作用;效能。
綜合以上釋義,我們再從產(chǎn)品的角度對其理解:功能的好壞不僅僅關(guān)乎其本身,更重要的要看是否為解決實際問題而服務(wù)。
那導出功能,解決了什么樣的問題?我們先來看一個場景。
小A作為一名銷售人員,需要每月向領(lǐng)導匯報一次銷售情況,為了更直觀的讓領(lǐng)導看到銷售情況,小A要對銷售訂單數(shù)據(jù)進行不同維度展示與分析。而目前系統(tǒng)只能查看訂單列表與銷售總額,不支持不同維度的數(shù)據(jù)分析。
從場景中我們可以看到這樣一個問題,由于系統(tǒng)只能查看訂單列表與銷售總額,不支持更全面的數(shù)據(jù)分析,導致小A每次向領(lǐng)導匯報前,只能人工將一個月近5000筆的訂單(此處不考慮后續(xù)不斷增加的訂單量)統(tǒng)計在excel中,從客戶維度計算出銷售額、銷售量,完成客戶維的銷售情況分析。
從產(chǎn)品SKU維度計算出銷售額、銷售量,完成產(chǎn)品SKU維銷售情況分析,導致小A的工作效率很低,同時人工抄錄導致數(shù)據(jù)錯誤的的情況也常會出現(xiàn),最終導致數(shù)據(jù)分析結(jié)果錯誤。
針對該問題,我們深入思考一下,小A想要進行更全面的數(shù)據(jù)分析,可以采用以下2種解決方案:
目前我們有兩種解決方案可供選擇,那我們采用哪一種解決方案會更好呢?
1)采用“新增銷售數(shù)據(jù)分析頁面”的解決方案
通過與小A的繼續(xù)溝通發(fā)現(xiàn)數(shù)據(jù)分析的需求并不穩(wěn)定,處于變化的狀態(tài)。當依據(jù)小A的需求完成分析頁面后,過了一段時間發(fā)現(xiàn)產(chǎn)品隨著季節(jié)變化導致銷售額也不穩(wěn)定,從時間維度的分析數(shù)據(jù)沒有參考價值,可能要舍棄這種分析方式。
此時我們發(fā)現(xiàn),小A的需求可持續(xù)的時間極為短暫,不足以支撐一個長期存在的功能,但已經(jīng)將其實現(xiàn)為功能,則意味著功能白做了或沒有產(chǎn)生與成本對應的價值。
2)采用“導出銷售數(shù)據(jù)到excel,通過excel的數(shù)據(jù)透視功能完成數(shù)據(jù)分析”解決方案
導出銷售數(shù)據(jù)到excel,可以規(guī)避因手動抄錄導致的數(shù)據(jù)分析結(jié)果錯誤問題,同時也會節(jié)省抄錄數(shù)據(jù)的時間,提高小A工作效率。
數(shù)據(jù)導出后,小A可以通過excel的數(shù)據(jù)透視功能或者其他第三方軟件完成定制化的數(shù)據(jù)分析,即使不開發(fā)數(shù)據(jù)分析功能,也可以滿足小A的“更全面的數(shù)據(jù)分析”需求。
例如,當小A導出如下圖所示的數(shù)據(jù)后:
小A第一步可以先完成不同月份的匯總,在表中添加“月份”字段,添加公式為“=MONTH(A2)”;
第二步:再點擊表格中任意單元格–插入–透視表–新建工作表,將省份拖入數(shù)據(jù)透視表字段的【篩選器】,將月份拖入【行】中,將A、B、C、D產(chǎn)品銷售額(元)拖入【值】中;將行標簽改為月份,每個字段以求和方法計算并修改字段名稱。
第三步:選中透視表中數(shù)據(jù),調(diào)整格式為加千分位逗號,保留0位小數(shù)。
第四步:為了讓數(shù)據(jù)展現(xiàn)可視化,插入透視圖。
通過公式篩選、透視表、透視圖的使用,小A可以點擊查看不同地區(qū)、月份、產(chǎn)品的分類匯總數(shù)據(jù),可以很直觀地反映出時間維度的銷售情況、不同地區(qū)的銷售情況、很好地為產(chǎn)品選擇、地域選擇做出數(shù)據(jù)依據(jù)支撐。
數(shù)據(jù)分析功能會從數(shù)據(jù)源、數(shù)據(jù)處理、數(shù)據(jù)的可視化來實現(xiàn),而Excel的透視表對應了數(shù)據(jù)明細(數(shù)據(jù)源),公式能夠完成較多的數(shù)據(jù)計算任務(wù)(數(shù)據(jù)處理)。
透視圖可以直觀、清晰的展示各類產(chǎn)品在不同月份、不同地區(qū)的銷售情況及總的銷售情況分析,為產(chǎn)品布局提供指導性參考依據(jù)(數(shù)據(jù)可視化)。
另外當小A從數(shù)據(jù)透視圖看到某個月份銷售額過高,可以直接點擊查看透視表中的數(shù)據(jù)明細是否存在錯誤,當小A想查看每個產(chǎn)品銷售額的占比,可以新建數(shù)據(jù)透視表并將透視圖切換成餅狀圖查看。
由此可見,用Excel來做數(shù)據(jù)分析不僅可以很靈活的滿足需求,而且還很實用、很方便,也不會因功能的限制導致對數(shù)據(jù)無法分析。
通過以上論證,我們發(fā)現(xiàn),既要能夠解決問題又要支撐一個長期存在的功能,還要用較低成本以及最快的方式來完成,我們采用最佳的解決方案:“導出”。
既然已經(jīng)明確最佳解決方案是“導出”,那接下來就從導出的全生命周期看看,如何設(shè)計導出功能?
1)明確導出數(shù)據(jù)限制
無論當前的系統(tǒng)數(shù)據(jù)量是多少,建議都要做導出條數(shù)限制。
因2003版的excel 一個sheet表最多導出65535條數(shù)據(jù),2007版的excel是10萬4000多條。如果不設(shè)限,當用戶導出的數(shù)據(jù)量超過excel單個sheet的數(shù)據(jù)量時,會出現(xiàn)導出失敗的情況,影響用戶的正常使用,且產(chǎn)生對系統(tǒng)的不信任情緒。
那應該限制到多少條數(shù)據(jù)?
我們先來了解一下導出的技術(shù)原理,當用戶點擊導出后,數(shù)據(jù)會被以excel的形式下載到服務(wù)器,服務(wù)器再通過網(wǎng)絡(luò)將文件發(fā)送給用戶。
在這個過程中,導出條數(shù)受限制的原因一個是服務(wù)器性能,另一個是用戶的電腦性能以及所使用excel版本,在實際產(chǎn)品設(shè)計時,根據(jù)實際情況,制定一個合理的數(shù)據(jù)限制即可。
回到開頭的場景中,用戶不僅要導出數(shù)據(jù)還要做數(shù)據(jù)透視表,假設(shè)用戶使用的03版excel,導出30多個字段,使用大量excel公式,最穩(wěn)妥的是限制到1萬條數(shù)據(jù)以內(nèi)。
做了一組極限測試數(shù)據(jù)供大家參考,使用一臺2核4G的服務(wù)器、1個用戶使用、導出條數(shù)是1048576條(導出最大條數(shù))、導出3個字段、使用2010版excel,導出后當使用一個sum公式時,出現(xiàn)了如下圖的錯誤,導致excel異常退出。
2)明確導出格式
數(shù)據(jù)導出格式有.xls和.csv,.xls是二進制的文件用excel才能打開;.csv是文本文件,用記事本就能打開。而當前用戶導出數(shù)據(jù)后要進行的是數(shù)據(jù)分析,故只需支持.xls導出。
3)明確導出需求
導出一個excel一個sheet,還是一個excel多個sheet?
考慮到用戶導出數(shù)據(jù)后要對訂單數(shù)據(jù)進行分析,可以與用戶明確是否需要按某一維度如客戶維度將數(shù)據(jù)拆分成多個sheet,減少用戶操作數(shù)據(jù)的時間以便能把更多精力放在數(shù)據(jù)分析。
如果用戶不需要按照某一維度拆分數(shù)據(jù),則采用導出一個excel一個sheet的方式。
表頭是否需要增加序號列?
當用戶導出訂單數(shù)據(jù)后,為了讓用戶準確操作某一行數(shù)據(jù),需要有唯一代表一行數(shù)據(jù)的標記,而在訂單導出前是以數(shù)據(jù)庫的主鍵來標記,對于導出后的訂單,則需要自動增加序號列方便用戶操作。
是否有內(nèi)容需要用顏色標注區(qū)別?
在導出訂單數(shù)據(jù)中,為了快速掌握銷售情況,有些數(shù)據(jù)是需要特別關(guān)注的、而有些不需要。因此,可以使用顏色標注來做區(qū)別,讓查看人員快速找到自己想要的數(shù)據(jù),如可以標注總計快速查看總銷售額。
是否需要合并單元格?
對于導出后進行數(shù)據(jù)分析,不建議使用合并單元格,因excel中合并單元格后僅保留左上角的值如下圖所示,這樣會使得篩選出現(xiàn)錯誤,也影響批量的公式使用導致透視表無法分析。
如果導出后只查看數(shù)據(jù),可以考慮使用合并單元格。
1)是否需要導出維度
百度釋義:維度是事物“有聯(lián)系”的抽象概念的數(shù)量,如時間維度是以時間作為描述、表達變量的度量尺度。
導出維度是指的按照特定場景下,導出以某個字段為主導數(shù)據(jù)且與該字段相關(guān)的其他字段數(shù)據(jù)。
一般來說,財務(wù)和倉庫的導出業(yè)務(wù)場景不同,財務(wù)需要以訂單維度導出,倉庫需要按商品為維度導出,如果無需導出維度,則不需要過度設(shè)計。
2)設(shè)置表頭導出字段
由于訂單的一條記錄數(shù)據(jù)字段會很多,包括:訂單號、銷售類型、客戶名稱、產(chǎn)品名稱、數(shù)量、單價、收貨人、聯(lián)系電話、賬期、發(fā)貨時間、預約到倉時間、發(fā)貨基地名稱、發(fā)貨方式、合同折讓率、應收款、已收款、未收款、產(chǎn)季等近30個字段。
而訂單分析時,收貨人、聯(lián)系電話、發(fā)貨時間等字段則無需導出。
因此選擇字段導出,可以讓客戶能夠更快速使用并完成分析。導出和查詢均要使用篩選,但呈現(xiàn)結(jié)果的方式不同,兩者的使用場景是可以借鑒的,建議可以放置篩選區(qū)。
3)是否需要支持選擇行導出
一般來說,導出數(shù)據(jù)為全量數(shù)據(jù),如果用戶通過字段選擇不出需要的數(shù)據(jù),此時要支持用戶勾選某些行數(shù)據(jù),提示用戶當前勾選數(shù)據(jù)明細及數(shù)據(jù)條數(shù)。
4)其他處理
為了讓客戶清晰的明白訂單是如何導出的,需要在導出時給予導出規(guī)則、導出圖片、附件形式說明文字提示。
5)根據(jù)導出數(shù)據(jù)量,明確數(shù)據(jù)處理方式
從技術(shù)的角度說,針對較大數(shù)據(jù)量的導出場景,可以采用異步的處理方式,降低客戶的焦急心理。
所謂異步,就是用戶點擊導出按鈕后,后端接收請求并執(zhí)行讀取任務(wù),用戶可以不用停留在原處等待,離開當前頁面去處理其它工作任務(wù),之后再打開任務(wù)頁面查看導出結(jié)果。
如果有數(shù)據(jù)可以預先計算,后端可以直接預先計算,同時避免了因采用同步的處理方式導致長時間等待的結(jié)果,客戶體驗會更好,工作效率也會更高。
6)是否需要任務(wù)頁面
如果用戶點擊“導出”按鈕后,10秒鐘內(nèi)不能完成文件打開,會讓用戶產(chǎn)生焦慮心理。為了讓用戶使用體驗更佳,需要有一個固定頁面即任務(wù)頁面來承載導出任務(wù)列表。
功能,是為解決問題而生,而功能的起源是需求,需求是從場景中找到問題。
由此可見,功能設(shè)計流程一定會包含場景選定、問題分析并找準需求、解決方案分析、選定功能、功能設(shè)計這5個階段。
做功能設(shè)計時,時刻問自己三個為什么:為什么這是一個問題(問題具備危害性)?為什么要解決這個問題(被解決的價值)?為什么我選定的功能可以解決這個問題(功能的價值)?
導出不僅可以解決文中的“需要更全面的數(shù)據(jù)分析”的問題,還可以解決“數(shù)據(jù)離線使用”的問題,導出后,數(shù)據(jù)以本地文件的形式存在,可離線使用。
另外導出還能解決“數(shù)據(jù)交付系統(tǒng)外部人員”的問題,導出后,數(shù)據(jù)以獨立文件的形式存在,可以復制,傳遞。
文章來源:人人都是產(chǎn)品經(jīng)理 作者:努力的小妖
藍藍設(shè)計( www.wnxcall.com )是一家專注而深入的界面設(shè)計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計、BS界面設(shè)計 、 cs界面設(shè)計 、 ipad界面設(shè)計 、 包裝設(shè)計 、 圖標定制 、 用戶體驗 、交互設(shè)計、 網(wǎng)站建設(shè) 、平面設(shè)計服務(wù)
藍藍設(shè)計的小編 http://www.wnxcall.com