2023-12-8 周周
引言
售賣軟件服務的公司,最理想的狀態(tài)就是開發(fā)一套通用的解決方案或產品,而幾乎不用接收任何定制化需求(定制化需求大多會被內化成通用產品的新功能)。這種經營模式下,公司全部的業(yè)務和技術力量都可以集中在這一套標準化產品上。因為人力充足,那些為了提升體驗滿意度而做的努力就很容易有結果,設計師基本不用太過擔心投入的成本。但很多公司面向的客戶形態(tài)無法做到這種理想狀態(tài),這些公司對外交付的版本一般都是基于主線版本的定制化版本。為了效益,客戶當然越多越好,交付肯定越快越好,這就意味著評審交互設計師輸出的交互設計方案時,體驗至上不再是首肯的目標,按時交付才是。所以支撐外包項目的時候,交互設計師如果沒有邊界感,輸出的交互設計方案在后面的評審階段將會被不斷推翻,無法落地。前面雖然說了標準化產品維護過程中設計師不用過多考慮實現(xiàn)成本,但標準化產品也會有迭代周期,在一個有限的迭代周期內,也同樣需要考慮邊界問題按時完成版本迭代任務。那么交互設計師支撐外包項目或版本迭代項目時都需要有哪些邊界感呢?今天我們來談談需求邊界和技術邊界。
1. 什么是需求邊界
需求邊界是指在一個明確的目標或產品版本中,為交付具有規(guī)定特性與功能的產品、服務或成果而必須完成的有限工作范圍。該范圍可控,不會在外力驅使下隨意更改。
2. 為什么要有需求邊界
試想,如果項目經理對客戶的需求來者不拒,會有什么后果?項目無法按時交付,造成虧損。如果在開發(fā)階段,需求依然充滿變數(shù),會有什么后果?開發(fā)人員可能會暴走繼而影響團隊士氣。如果提前定義好需求邊界,就等于給下游制定了明確的工作目標,也利于項目排期和進度把控,從而避免出現(xiàn)上述問題。
3. 如何找到需求邊界
① 如何找到項目中的需求邊界
項目在啟動階段,對外需要一份正式的合同來確立合作關系,對組織內部一般都會有《項目工作說明書》《商業(yè)論證》《項目章程》等文件來建立內部協(xié)議拉通內部目標。其中,《項目章程》會對整個項目的需求范圍做出最原始的定義,一般包含概括性的項目描述、項目產品描述及項目的總體范圍要求,此時定義的需求顆粒度最大。就比如,某銀行項目在此階段的需求就是“上線企業(yè) OA 產品”,這就明確了需求邊界,我們要做企業(yè) OA,而不是做企業(yè)網(wǎng)銀。如果項目進行到一半,客戶忽然要求我們做企業(yè)網(wǎng)銀產品,那完全可以拒絕,因為超出了需求邊界。(不過站在商業(yè)角度,遇到這種情況商務員應該會無比激動,因為來年的 kpi 在向他招手。)
接著,在項目規(guī)劃階段最重要的前置工作就是進行項目范圍管理,項目成員需要收集需求、定義范圍、創(chuàng)建 WBS(工作結構分解)。這個階段的 WBS 就是為了打造項目章程中定義的最終產品、服務或成果而進行的需求細化。此時,定義的范圍就可以作為我們進行交互設計工作的指導性文件。(因為在這個階段不細化需求和分解任務,就無法進行準確合理的項目時間管理、成本管理等的規(guī)劃工作)。
接著上面的例子,項目啟動階段,《項目章程》里定義的需求邊界為“上線企業(yè) OA 產品”,接著在項目規(guī)劃階段,就需要跟客戶溝通確認具體的《功能清單》(見圖 1-1,此文件是項目管理過程中非常重要的文件,如果沒有此文件,項目監(jiān)控過程將無法進行)。比如說我方通用解決方案里該產品是包含 18 個功能,但客戶可能只需要其中 15 個,然后還要補充幾個我方通用解決方案里沒有的定制化功能。這個功能清單就是需求邊界,也是我們開展交互設計工作的立足點。
《功能清單》示例
如果設計師在設計過程中為了提升體驗而增加了額外的功能,比如說客戶的需求是對發(fā)票拍照存檔,交互設計方案中拍完照還能 OCR 識別發(fā)票信息,這個設計方案就超出了需求邊界。單純站在體驗的角度上看,真是個很棒的點子,但站在項目管理的角度上看,這是“愚蠢”的,要知道,項目經理時刻擔心項目進度不可控,一定不會讓需求蔓延。
但如果評審交互設計方案時是客戶提出了增加發(fā)票 OCR 識別的功能,設計師了解需求邊界的話就不會一口答應導致后面落子悔棋的尷尬局面。(如果客戶提出了任何非交互設計的變更提議,我們都不要一口答應,可以說會后跟項目組討論下再給您答復。)我們也可以了解一些項目經理針對需求變更的處理技巧:需重新評估需求的變動成本,跟客戶說明,修改合同;尋找其他簡單易實現(xiàn)的方案替代;告知用戶在下一迭代版本中進行規(guī)劃。
當然,也會有特殊情況,為了維護客戶關系或者按投入結算或者有什么需要達到的 kpi,項目對時間和成本沒有特別要求,對需求變更有很好的包容度,那我們可以盡情發(fā)揮我們的設計才能,而不用受需求邊界的約束。
② 如何找到小迭代需求的需求邊界
上面講項目規(guī)劃階段的《功能清單》就可以當作項目的需求邊界,但是一般這份功能清單中的功能顆粒度較大,還是需要把一個個功能看成一個個需求,分別進行業(yè)務需求、用戶需求、功能需求的剖析和拆解。另外,公司標準化產品的維護過程中,需求往往是市場聲音或是公司上層產品規(guī)劃策略亦或是專家走查的待優(yōu)化問題,這時候如果沒有專門的需求分析師或產品經理,交互設計師接收到的往往不是拆解后的業(yè)務需求、用戶需求、功能需求,而是“一句話需求”。我們如何找到這種需求的邊界呢?
我們先了解幾個概念:業(yè)務需求、用戶需求、功能需求。
業(yè)務需求描述的是用戶為什么需要這個產品,用戶需求描述的是用戶使用該產品必須要完成的任務,功能需求描述的是開發(fā)人員必須實現(xiàn)的軟件功能。下面舉個例子來說明 3 個維度的需求,真正的需求邊界就會浮出水面。某個項目的《功能清單》中,有一個“碼上付”的功能,進行客戶調研時,客戶說“因為當前系統(tǒng)跟另一個系統(tǒng)無法進行數(shù)據(jù)交互,所以在當前系統(tǒng)不知道用戶有沒有申請成功,希望點了碼上付申請彈出一個彈窗,提示用戶不要重復申請。”按照客戶的需求描述,方案如圖 1-2:
客戶描述的方案
該方案違背了交互設計的“防錯原則”,增加了用戶的“試錯成本”,那必須按照客戶的要求做嗎?再次分析客戶的描述,可以發(fā)現(xiàn)客戶描述的是功能需求而非業(yè)務需求。運用需求分析方法和技巧挖掘它的上層需求(因篇幅有限不再講述分析過程),可以得出以下結論,業(yè)務需求是:“防止用戶重復提交碼上付申請”。
接著分析,能滿足以上業(yè)務需求的用戶需求是:1.用戶申請成功后不能再進行申請操作(系統(tǒng)阻斷用戶的重復申請行為);2.用戶能看到“請勿重復申請”的文字提示(靠提示讓用戶自主停止重復申請行為)。
這些用戶需求對應的功能需求是:用戶提交過申請后,將“碼上付”入口置灰禁用,并在入口處打上標簽“已申請”,如果申請成功該入口就一直置灰禁用,如果申請不成功該入口需要變?yōu)閱⒂脿顟B(tài)以便用戶再次申請。
但是客戶的描述給出了技術邊界(后面會詳細講解此概念):當前系統(tǒng)跟另一個系統(tǒng)無法進行數(shù)據(jù)交互,所以當前系統(tǒng)不知道用戶有沒有申請成功,這就導致上面分析的用戶需求的第 1 點是無法滿足的,除非我們要求客戶去改造關聯(lián)系統(tǒng)而且客戶愿意配合,否則我們只能去修改用戶需求:讓用戶看到“請勿重復申請”的文字提示??坑脩糇约阂?guī)避重復操作行為。用戶需求一旦修改,對應的功能需求也會隨之變化:在申請碼上付的按鈕附近給出醒目提示“如果您已申請過碼上付,請勿重復申請”。最后的交互設計方案如圖 1-3:
修改后的方案
通過以上案例分析,我們可以把業(yè)務需求、用戶需求、功能需求抽象為依次耦合并依次包含的關系。用戶需求和功能需求可能會根據(jù)技術邊界或其他約束而改變,但業(yè)務需求不會改變,也就是說小迭代需求的業(yè)務需求才是真正的需求邊界。
從圖 1-4 可以看到,一開始設計師輸出的方案肯定是滿足業(yè)務需求的前提下,用戶體驗最好的方案,但有些用戶需求+功能需求組合超越了技術邊界和其他邊界。我們評審設計稿的過程,其實就是不斷將用戶需求+功能需求修正到各種邊界內的過程。(業(yè)務需求一般是在描述需要解決的問題,至于如何解決,就是交互設計師可以發(fā)揮的空間。如果業(yè)務需求都變了,那就是需求變更,需要走需求變更申請流程。)
備注:以上案例將業(yè)務需求描述為“防止用戶重復提交碼上付申請”而不是“阻止用戶重復提交碼上付申請”,大家可以思考一下有何不同?
用戶需求+功能需求修正前后對比
1. 什么是技術邊界
技術邊界是指在現(xiàn)有技術水平可以被實施運用的有限范圍。
2. 設計師為什么要了解技術邊界
一個合格的交互設計師,能靈活運用各種交互設計方法輸出體驗最佳的概念方案是基本要求,但只站在體驗最佳角度考慮問題所出的設計方案會是最終方案嗎?顯然經常不是。
為什么會出現(xiàn)這種情況?除了一開始的需求不清晰不準確導致評審交互設計方案時還需要不斷反向修正需求的原因,還有一大部分原因是體驗最佳的方案無法用現(xiàn)有技術條件實現(xiàn)且重新開發(fā)成本太大。
設計方案評審的過程,其實就是一撥需求干系人在不斷尋找業(yè)務需求、技術邊界、最佳體驗之間的安全區(qū)(見圖 2-1)的過程。如果交互設計師能熟悉技術邊界,一開始輸出的方案就往安全區(qū)里靠近,會大大縮短設計周期,否則只能一遍又一遍被按在地上摩擦。
安全區(qū)示意
3. 如何獲知技術邊界
① 新產品項目的技術邊界
新產品項目的技術邊界受制于上面提到的《功能清單》,比如設計的過程中,設計師覺得界面上展示一下頭像會使信息更具識別度,這時候就需要去查閱功能清單中有沒有上傳頭像的功能,如果沒有該功能項目經理也不允許增加該功能,我們只能修改設計方案:去掉頭像或者改用通用頭像。其他更細節(jié)的邊界幾乎是無法提前預知的,只能在設計方案評審階段或開發(fā)階段暴露出來,反向修正設計方案。因此,設計師支撐新產品項目,一定要提前熟知功能清單,有的放矢。
② 已有產品升級項目的技術邊界
如果是舊產品的升級項目,技術邊界相對就多一些,因為要考慮現(xiàn)有系統(tǒng)的兼容性和現(xiàn)有技術的復用性。設計師動手前要體驗產品,瀏覽客戶提供的產品資料、用戶手冊等,盡可能多地提前預知和確認技術邊界,這樣可以減少設計方案的修改次數(shù),提高效率。
還有一些明顯的技術邊界,在需求溝通階段就能暴露出來,比如上面的案例中,客戶一開始就提出“兩個系統(tǒng)目前無法進行數(shù)據(jù)交互”這個技術邊界,但還有一些邊界只能邊溝通邊發(fā)現(xiàn)。比如設計師覺得通用頭像區(qū)分性別更具情感化,所以設計方案中女性用粉色通用頭像,男性用藍色通用頭像,評審的時候就需要詢問客戶系統(tǒng)能不能區(qū)分性別,如果沒有又無法增加該功能,我們只能修改設計方案:所有人員用同一個顏色的通用頭像。如果評審時沒有確認此細節(jié),開發(fā)實現(xiàn)的時候就會找設計師溝通,影響開發(fā)進度。
③ 界面結構體現(xiàn)出來的技術邊界
界面結構能反映技術邊界。如果已經確認是在現(xiàn)有的技術能力范圍內補充新功能,那設計師就需要分析已有同類功能的界面結構,以免隨意變更界面結構導致新功能界面結構無法跟已有同類功能界面結構匹配,加大變更成本。
舉例說明,某銀行要上線公司的一套主線產品,且要增加一個功能模塊,該功能模塊的審批流程需要復用基線產品的技術。一開始考慮用戶可能出于催辦等目的,需要在表單申請界面看到完整的審批流程,所以設計新功能模塊時,將審批流程平鋪顯示在了申請表單頁面上(見圖 )。
基于交互經驗輸出的方案
中間多次設計評審會也未提及這樣設計有何不妥,最后開發(fā)做到這里,查看原有功能申請表單頁的代碼,發(fā)現(xiàn)同類功能的實現(xiàn)邏輯是將審批流程顯示在了彈窗里(見圖 2-3,顯示在彈窗里而非當前頁面上的歷史原因是為了不破壞原有表單的界面結構)。
現(xiàn)有實現(xiàn)的樣式
開發(fā)急轟轟來找設計師:“你這個界面實現(xiàn)不了啊”、“我們之前是這么實現(xiàn)的啊”、“要改也是主線產品改,但肯定來不及呀”,項目經理也急轟轟來找設計師:“按照現(xiàn)有技術實現(xiàn)的方式改下交互設計方案吧”、“項目交付時間快到了,別發(fā)散了啊”,在多重壓力下設計師就得硬著頭皮按照彈窗的樣式,把所有表單申請頁面全部改一遍(不改干凈,新加入項目的開發(fā)人員會思考半天,然后來問你:這里為什么跟其他頁面不一樣,是有什么考慮嗎?或是碰到“直男”開發(fā),真的就按錯誤的交互界面實現(xiàn))。
按照現(xiàn)有實現(xiàn)修正后的方案
如果對已有產品不熟悉,對已有的界面結構不熟悉,類似的情況會經常發(fā)生,這無疑增加了時間成本和溝通成本,是項目大忌。所以,設計師一定要會識別界面結構體現(xiàn)出來的技術邊界。
“國家制度、法律法規(guī)、行業(yè)標準”也是設計工作的重要邊界。
比如,理財產品界面一定要打上“市場有風險,投資需謹慎”的提示字樣,不可用高回報高收益宣傳口號誘導用戶;再比如,保險產品宣傳時必須明示是保險產品,且不得與銀行儲蓄、基金、國債等進行收益比較。
硬件設備的操作方式也是設計工作的重要邊界,比如說使用遙控器操作的終端界面,要特別考慮遙控器操作的局限性,不可讓用戶輸入大段文字,可通過手機掃碼填寫的方式替代;再比如,操作觸摸屏時,不能像操作 pc 一樣出現(xiàn)右擊操作。還有,設計規(guī)范也是設計工作的重要邊界,如果不考慮設計規(guī)范一致性,會增加用戶的學習成本。
除了上面展開討論的需求邊界和技術邊界,還有后面提到的“制度法規(guī)”、“硬件設備”、“設計規(guī)范”,還有很多因素共同決定最終的交互設計方案。設計師可以在平時的工作中培養(yǎng)自己洞察邊界的能力,以便輸出更加成熟的方案。
1. 須具備需求分析的能力
設計師接收到需求之后,要能判斷接收到的是不是業(yè)務需求,最好把業(yè)務需求用自己的語言描述出來拿給需求方確認。(如果團隊分工明確,一般產品經理會把基于各種邊界條件分析好的業(yè)務需求和用戶需求給到設計師。如果團隊無此角色,就得靠設計師自己識別。)就像前面提到的例子,如果業(yè)務需求是“阻止用戶重復提交碼上付申請”,而不是“防止用戶重復提交碼上付申請”,那性質就不一樣了,阻止是不允許用戶重復提交,那就得逼著客戶和開發(fā)調整技術邊界。但客戶實際的意圖是提醒用戶最好不要重復提交,但允許重復提交。
確認好業(yè)務需求,如果時間充裕,可以先不考慮技術邊界,輸出一個體驗最佳的方案,然后再根據(jù)自己已知的不可抗力約束逐漸修正方案,如果時間緊張,這一過程可以在腦海里構思,直接輸出修正后的方案組織評審。
2. 具有洞察邊界的能力但又有打破邊界的勇氣
考慮各種約束久了,我有時候設計方案首先考慮的是開發(fā)能不能實現(xiàn),好不好實現(xiàn),這真的大錯特錯。設計師需要有技術邊界感,但不能讓技術邊界感凌駕于體驗設計之上,否則交互設計師就失去了存在的意義。
例如,之前提到的發(fā)票 OCR 識別功能為例,應客戶要求,要在主線產品的發(fā)票夾功能基礎上增加發(fā)票 OCR 識別的子功能,該需求還要內化成主線功能。其中添加發(fā)票的界面,原來的界面結構是左圖所示,頁面的主體信息是發(fā)票照片的預覽圖像,加入發(fā)票 OCR 識別功能后,我考慮到萬一將來有些客戶不上發(fā)票 OCR 識別功能,或者識別不出信息的情況下,還是得按 4-1 左圖展示,所以基于新舊系統(tǒng)和無數(shù)據(jù)場景的兼容性,我沒有改變原有的界面結構,只是在預覽圖下面增加了識別信息的展示區(qū)域,即 右圖展示。
不破壞原有界面結構輸出方案(左圖為原有頁面)
但對用戶來說,識別出來的發(fā)票信息才是他重點關注的內容,預覽圖只是個輔助信息,按照這個心智模型,首屏的主體信息應該是識別出來的發(fā)票信息,但上面的方案,首屏的主體信息是預覽圖。
后來 UI 同事在進行視覺設計的時候,詢問了開發(fā)能不能改變預覽圖的樣式,得到開發(fā)負責人同意后,UI 同事按照信息層級關系優(yōu)化頁面(見 4-2 左圖),而且跟開發(fā)溝通增加了一個擴展功能:沒有成功識別到信息場景下和沒有上線發(fā)票 OCR 識別功能的場景下,預置幾個各種發(fā)票類型都會有的主要信息字段,讓用戶自動填入,見 4-2 右圖(原有的發(fā)票夾功能,只有一個備注字段)。當我還在考慮開發(fā)盡量少改動時,UI 同事打破邊界的勇氣和靈活變通的智慧深深地給我上了一課。
擴張邊界后輸出的方案
3. 總結
這篇文章講了交互設計應具備的幾個邊界感,希望能幫助設計師快速輸出安全區(qū)內方案以縮短評審修改周期,但請切記不可完全被邊界束縛住手腳。交互設計師仍要站在體驗最佳的立場,去爭取擴張技術邊界和其他邊界,給設計打造更大的安全區(qū)和發(fā)揮空間。
文章來源:優(yōu)設網(wǎng) 作者:兆日UCD
分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯(lián)系,我們立即更正或刪除。
藍藍設計(www.wnxcall.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業(yè)提供卓越的大數(shù)據(jù)可視化界面設計、B端界面設計、桌面端界面設計、APP界面設計、圖標定制、用戶體驗設計、交互設計、UI咨詢、高端網(wǎng)站設計、平面設計,以及相關的軟件開發(fā)服務,咨詢電話:01063334945。
關鍵詞:UI設計公司、界面設計公司、UI設計服務公司、數(shù)據(jù)可視化設計公司、UI交互設計公司、高端網(wǎng)站設計公司、用戶體驗公司、軟件界面設計公司、軟件qt開發(fā)、軟件wpf開發(fā)、軟件vue開發(fā)。