當(dāng)我們在進行產(chǎn)品設(shè)計的時候,設(shè)計師會優(yōu)先考慮理想狀況下的各種場景,而理想的用戶流程是沒有任何問題和障礙的。但是人們很少按照我們期望的方式使用我們的產(chǎn)品。超出預(yù)期之外的情況,就是我們通常所說的「邊緣情況」,或者說「極端情況」。
事實上,針對不太理想的情況進行設(shè)計同樣重要。如果沒有計劃界面如何處理異常情況,整個體驗可能很快就會令人崩潰。
作為一名職場中合格的用戶體驗設(shè)計師,避免在工作中遺漏各種邊緣情況的考慮,與規(guī)避在方案評審的時候會遭到評審會中其他同學(xué)的各種diss的尷尬,有時候業(yè)內(nèi)也會將“解決邊緣情況問題”的能力作為一個產(chǎn)品經(jīng)理或交互設(shè)計師是否有經(jīng)驗是否資深的一個評判標準。。
所以,
設(shè)計方案的完整程度需要看是否有對邊緣情況的對應(yīng)處理方案。
產(chǎn)品設(shè)計其實是“向好避壞”并行的設(shè)計過程
,向好設(shè)計是要追求絕對的好,結(jié)合實際情況盡可能保證產(chǎn)品體驗的舒適和驚喜,這是產(chǎn)品設(shè)計一定要為用戶的極致體驗需要負責(zé)的;避壞設(shè)計是相對的壞,結(jié)合實際情況盡可能為一些低頻場景的極端情況做好容錯方案和機制,這就是產(chǎn)品設(shè)計中常常提到的邊緣情況處理設(shè)計。
針對用戶體驗中的邊緣情況進行設(shè)計至關(guān)重要,
因為這些特殊場景雖然不太常見,但可能會對用戶體驗產(chǎn)生重大影響。
通過解決邊緣情況,可以確保產(chǎn)品設(shè)計能夠滿足更廣泛的用戶需求和情況,從而提高可用性、可訪問性和用戶滿意度。主要有以下幾個方面的好處:
-
提高產(chǎn)品質(zhì)量和可靠性
: 考慮邊界情況可以幫助發(fā)現(xiàn)并解決潛在的問題和漏洞,從而提高產(chǎn)品的質(zhì)量和可靠性。通過深入挖掘極端情況,可以發(fā)現(xiàn)在正常使用中可能不會遇到的問題。
-
增強用戶體驗
: 處理邊界情況可以確保產(chǎn)品在各種情況下都能提供良好的用戶體驗。當(dāng)用戶遇到邊界情況時,如果產(chǎn)品能夠正確處理并給予合適的反饋,用戶將感到滿意,并且對產(chǎn)品的信任感會增強。
-
降低風(fēng)險
: 不考慮邊界情況可能會導(dǎo)致嚴重的問題,甚至是安全漏洞。通過在設(shè)計和開發(fā)過程中考慮邊界情況,可以降低產(chǎn)品出現(xiàn)故障或安全漏洞的風(fēng)險,從而減少潛在的損失和責(zé)任。
-
滿足法律和標準要求
: 在某些行業(yè)中,產(chǎn)品必須符合特定的法律法規(guī)或行業(yè)標準??紤]到邊界情況是滿足這些要求的一部分,因為它們通常要求產(chǎn)品能夠在各種情況下都能夠安全可靠地運行。
-
增強產(chǎn)品競爭力
: 在當(dāng)今競爭激烈的市場環(huán)境中,提供穩(wěn)健、可靠的產(chǎn)品可以幫助企業(yè)贏得用戶信任并提升競爭力??紤]到邊界情況可以幫助企業(yè)開發(fā)出更具有吸引力和競爭力的產(chǎn)品。
所以考慮邊界情況對于確保產(chǎn)品的質(zhì)量、用戶體驗和安全性至關(guān)重要,并且有助于降低風(fēng)險并提高產(chǎn)品競爭力
處理文本極限值在 UI 設(shè)計中是一個重要的考慮因素,特別是當(dāng)設(shè)計涉及到文本輸入框、文本區(qū)域或文本標簽等元素時。以下是一些處理文本極限值的常見方法:
對于文本輸入框,可以設(shè)置最大字符數(shù)限制,以確保用戶輸入的文本不會超過預(yù)期的長度。這可以通過前端或后端驗證來實現(xiàn),避免用戶輸入過長的文本。
在文本輸入框旁邊或下方顯示一個字符計數(shù)器,實時顯示用戶已輸入的字符數(shù)和允許的最大字符數(shù)。這可以幫助用戶了解他們輸入的文本長度,并且知道何時達到了極限值。
當(dāng)用戶輸入超過最大字符數(shù)限制時,及時向用戶提供友好的錯誤提示,說明他們已經(jīng)超出了文本長度限制,并且指導(dǎo)他們?nèi)绾芜M行修正。
對于一些 UI 元素,可以自動修剪或截斷超出限制的文本。例如,可以在顯示文本的區(qū)域中截斷超出限制的字符,并在末尾添加省略號。
對于可調(diào)整大小的文本輸入框,可以根據(jù)用戶輸入的文本長度動態(tài)調(diào)整輸入框的大小,以確保用戶能夠看到他們輸入的所有內(nèi)容。
在用戶輸入長文本時,提供一個預(yù)覽功能,讓用戶可以在輸入之前查看他們輸入的文本在 UI 中的最終顯示效果,從而避免超過極限值。
如果用戶需要輸入大段文本,可以提供一個多行文本輸入框,允許用戶自由輸入任意長度的文本,但也需要在適當(dāng)?shù)臅r候提醒用戶輸入的文本長度限制。
綜上所述,處理文本極限值需要綜合考慮用戶體驗和界面美觀性,通過設(shè)置限制、提供實時反饋、自動修剪或截斷文本等方式,以確保用戶能夠方便地輸入和管理文本內(nèi)容。
處理空狀態(tài)是指在應(yīng)用程序或網(wǎng)站中,當(dāng)沒有數(shù)據(jù)或內(nèi)容可顯示時所呈現(xiàn)的界面狀態(tài)。這種情況下,用戶可能會感到困惑或失望,因此設(shè)計空狀態(tài)界面非常重要,以提供清晰的信息和引導(dǎo)。
以下是常見的空狀態(tài)使用場景以及處理建議:
主要分為「內(nèi)容被清空/已完成」和「搜索結(jié)果為空」兩種情況。
這種空狀態(tài)是用戶自主刪除所有數(shù)據(jù)或完成了所有任務(wù)的情況。一般此類場景不需要進行操作引導(dǎo),只需要用「插圖+正文」或「僅正文」的形式說明情況即可
當(dāng)用戶搜索關(guān)鍵字后沒有對應(yīng)的結(jié)果顯示時出現(xiàn)的空狀態(tài)。此場景需要用「插圖+正文」的形式說明情況,并視情況增加行動連接引導(dǎo)用戶進行下一步操作,例如:添加、查看等
友好的提示信息: 當(dāng)搜索結(jié)果為空時,向用戶顯示友好的提示信息,說明搜索未返回任何結(jié)果,并且可能提供一些建議或建議用戶修改搜索條件。
相關(guān)建議或推薦: 在搜索結(jié)果為空時,向用戶提供一些相關(guān)的建議或推薦,以幫助他們找到他們感興趣的內(nèi)容。這可以是熱門搜索、相關(guān)主題、或類似內(nèi)容的推薦。
主要分為「暫無消息/內(nèi)容/權(quán)限」、「初始狀態(tài)(新手指引)」兩種情況。
這種情況表示頁面暫時無數(shù)據(jù)的狀態(tài),一般情況下使用「插圖+正文」的形式,必要時可增加行動連接來引導(dǎo)用戶進行下一步操作
對于首次使用復(fù)雜流程功能的用戶來說,一個新手指引可以幫助用戶快速上手,也可以填充原本為空的界面。
除了空狀態(tài)之外,向用戶提供有關(guān)如何開始的說明非常有幫助。
教程是讓人們輕松了解應(yīng)用程序功能的好方法。在普通用戶界面中使用微妙的動畫或提示可以讓用戶開始執(zhí)行一些關(guān)鍵任務(wù)。
最好的教程是不引人注目的。與其展示超長的視頻或幻燈片說明,不如將提示置于體驗本身的背景中,這可能非常有效。這有助于用戶邊做邊學(xué),而不是被動地接受大量信息。
僅在必要時才應(yīng)使用教程。如果您的界面是不言自明的,則可能不需要它。是否包含教程是您需要考慮的設(shè)計因素。另一種方法是引導(dǎo)用戶直接進入他們的第一個任務(wù),讓他們“邊做邊學(xué)”。
多鄰國的這個很棒的示例展示了如何將教程構(gòu)建到應(yīng)用程序體驗中。它有助于指導(dǎo)用戶設(shè)置應(yīng)用程序,并直接進入使用過程。
每當(dāng)發(fā)生某種用戶輸入時,通常都有可能出現(xiàn)錯誤??紤]一下輸入長表單的時候。這些是潛在用戶錯誤的雷區(qū)。
即使我們盡力讓事情變得直觀,也很難完全消除發(fā)生錯誤的可能性,這些都需要在設(shè)計階段進行規(guī)劃。
驗證。
用戶沒有按照系統(tǒng)期望的方式輸入信息。
提交。
出現(xiàn)的問題不是用戶的錯,但我們需要讓他們知道。
在設(shè)計產(chǎn)品時,您需要考慮可能發(fā)生錯誤的每種情況。然后,您應(yīng)該為其設(shè)計一個狀態(tài),以確保系統(tǒng)正常處理該錯誤。
這可能很耗時,但正是對細節(jié)的關(guān)注才造就了設(shè)計精良的產(chǎn)品。
錯誤是如何出現(xiàn)的。
我們應(yīng)該使用動畫或?qū)Ρ榷葋砦脩舻淖⒁饬Α?/div>
樣式和位置。
錯誤通知應(yīng)直觀地鏈接到問題發(fā)生的位置。
語言。
錯誤應(yīng)該以清晰、用戶友好且品牌化的方式編寫。不惜一切代價避免“技術(shù)演講”。
明確的解決方案。
在通知用戶錯誤之后,我們還應(yīng)該提及解決方案。這可能是一條說明,或者是其他可能對他們有幫助的內(nèi)容的鏈接。
輸入錯誤的密碼后,該字段會左右輕微晃動(就像有人搖頭一樣)。這會引起用戶對問題的注意,但不會顯得突兀
服務(wù)器異常、無訪問權(quán)限、 網(wǎng)絡(luò)異常(斷網(wǎng)、網(wǎng)速過慢、加載失敗、網(wǎng)絡(luò)連接失敗)、瀏覽器異常、數(shù)據(jù)出錯;
異常狀態(tài)用來提醒用戶發(fā)生了未指定的系統(tǒng)錯誤,需要用戶了解此情況,并且提供下一步引導(dǎo)或解決建議,為用戶解釋異常狀態(tài)的原因,解決困惑,提供解決辦法,引導(dǎo)用戶繼續(xù)產(chǎn)品流程而不是關(guān)閉窗口離開
還有一種情況就是頁面內(nèi)容過多的情況,這里我們不考慮頁面展示只考慮進入頁面的加載,大家平時估計遇到過點開一個列表頁面,就一直在觀看“菊花轉(zhuǎn)”(頁面內(nèi)容加載狀態(tài)),等的時間如果超過5秒可能就會產(chǎn)生焦慮了,再多點時間直接就和產(chǎn)品說拜拜了,那么這種極端情況一般怎么處理呢?
骨架屏是一個可選方案,也就是說不一定要有,有了會更好。
骨架屏適合頁面布局固定的頁面,目前很多APP都會使用骨架屏,常用的頁面有列表頁、詳情頁等。
一般骨架屏由開發(fā)寫,如果我們要做骨架屏,需要定義好骨架屏的樣式,讓開發(fā)照著寫,骨架屏實現(xiàn)難度我也跟開發(fā)同學(xué)咨詢過,很簡單,所以可以放心大膽用。
占位圖應(yīng)該是許多新人容易忽視的地方,提及占位圖就不得不提到加載,為了減少用戶感知加載時間,應(yīng)用加載一般會先加載文字后加載圖片,可以緩解用戶等待的焦慮情緒。
如果這么做就涉及到一個問題:原本放圖片的位置拿什么來占位?
所以就出現(xiàn)了占位圖這個東西,當(dāng)圖片還沒有加載出來的時候,使用一個占位圖進行占位,讓用戶知道這里是有東西的
占位圖一般有帶logo的圖片和純色圖,如果是加載視頻,一般還會在圖片上做一個視頻的圖標,讓用戶知道這里是視頻。
當(dāng)一個頁面向上滾動時,頁面的元素會發(fā)生什么變化,場景的變化有導(dǎo)航欄置頂、標簽欄置頂?shù)?,這些都是我們需要提前定義好的。
處理頁面上滑的交互是指當(dāng)用戶向上滑動頁面時所觸發(fā)的交互效果或行為。這種交互可以增強用戶體驗,并使用戶更輕松地瀏覽頁面內(nèi)容。以下是一些處理頁面上滑交互的方法:
即將導(dǎo)航欄固定在頂部,其余內(nèi)容上滑,我個人比較傾向于這種方式,當(dāng)頁面比較長的時候可以讓用戶隨時可以看到導(dǎo)航欄,不僅僅是給習(xí)慣了導(dǎo)航欄的用戶增添一份安全感,更是因為當(dāng)導(dǎo)航欄有功能入口(比如設(shè)置)的時候,用戶可以隨時看到并隨時點擊
這就是一種內(nèi)容遷移到導(dǎo)航欄區(qū)域的情況,這種交互方式不僅能提升用戶的操作體驗,也能提升產(chǎn)品的數(shù)據(jù),比如當(dāng)關(guān)注入口曝光更多,點擊關(guān)注的概率就會有一定上升。
篩選欄的固定方式也極為常見,很多地方為了用戶可以方便做切換,都會把篩選欄固定在頂部,那么這時候就需要我們對交互進行詳細的定義。
如果此時我們需要讓篩選欄固定在頂部,那么可以這么說明:
頁面上滑時,導(dǎo)航欄和篩選欄固定在頂部,其余內(nèi)容向上滑動。
這時候有兩種情況,一種是篩選欄隨頁面一起上滑不做固定,另一種是篩選欄需要做固定。具體使用哪種需要視具體場景來定,下面說一下當(dāng)篩選欄需要固定時我們該如何描述交互。
頁面整體上滑(一般情況下導(dǎo)航欄當(dāng)然始終固定在頂部)
② 當(dāng)篩選欄的位置到達導(dǎo)航欄下方時
篩選欄固定,篩選欄下方內(nèi)容繼續(xù)向上滑動
有些設(shè)計師認為,極端情況往往是意料之外的情況,但是實際上,絕大多數(shù)的極端情況是可以提前預(yù)測的。有兩種方法可以幫你找到極端情況:
為了創(chuàng)造出色的設(shè)計,你應(yīng)當(dāng)主動尋找極端情況。設(shè)計評審是一個非常有用的環(huán)節(jié),它可以幫助產(chǎn)品團隊找到許多潛在的優(yōu)勢案例。在產(chǎn)品設(shè)計的早期,就應(yīng)該進行設(shè)計評審。為了獲得更好的結(jié)果,最好邀請開發(fā)人員和其他的團隊成員參與此類會議。
盡早在其他的團隊成員的幫助下尋找極端情況是一種很好的辦法,但是它不能保證你會發(fā)現(xiàn)所有的問題來源。只有在真正的用戶進行測試的時候,才能幫你了解用戶使用你的產(chǎn)品的時候所面臨的問題。同時,值得一提的是,嚴格且有節(jié)制的可用性測試,用戶可能會因為經(jīng)常被指示要做什么而很難暴露極端情況的存在。所以,最好創(chuàng)建一個讓用戶可以嘗試和探索的體系,在靈活的測試和充足的時間下,更容易找到問題。
正是這種針對每種場景進行設(shè)計的承諾,才使出色的體驗與普通體驗區(qū)分開來。作為設(shè)計師,你有責(zé)任針對這些邊緣情況進行規(guī)劃。無論您是否為它們進行設(shè)計,它們都會發(fā)生,所以最好做好準備!
以上僅僅舉了幾個極端情況的例子,實際上還會有很多,若想盡量覆蓋全極端情況,在設(shè)計時可以多多思考,將自己切換成“找茬兒模式”,也可以尋求QA同學(xué)的幫助,因為他們在寫用例時會考慮的更多。即使努力去想可能發(fā)生的極端情況,但是有些極端情況還是可能會遺漏,到真正遇到了才知道,不過其實也說明了那些想不到的極端情況可能發(fā)生的概率更小。
總之,有些極端情況一定要處理,盡量做到給用戶一個好的體驗,但是有些情況其實并不需要投入過多精力去思考該如何提升體驗,因為本身就不是正常的產(chǎn)品使用場景,只要在發(fā)生的時候保證產(chǎn)品可用性即可,因為還有更重要的產(chǎn)品主線體驗需要不斷去迭代提升。