如何实现和提升软件易用性
轉(zhuǎn)載本號(hào)文章請注明作者、出處和二維碼及全文信息,否則視為侵權(quán)。
今天給大家分享一個(gè)同事的工作感言。近兩三年做管理類、工具類軟件設(shè)計(jì),對軟件易用性提升和UI設(shè)計(jì)有一些體會(huì)和思考。很顯然,軟件的易用性與UI設(shè)計(jì)是直接相關(guān)的。下面,我們從軟件研發(fā)過程來看一下如何提升軟件易用性。
1、上下文梳理
上下文梳理是明確研發(fā)系統(tǒng)與哪些外部實(shí)體存在關(guān)系。在梳理軟件的上下文的時(shí)候,一般會(huì)更加關(guān)注與軟件系統(tǒng)有直接功能交互關(guān)系的實(shí)體,有時(shí)會(huì)忽略軟件系統(tǒng)的用戶,而明確軟件的用戶,是易用性提升的起點(diǎn)。
因此,在上下文梳理時(shí)需要明確軟件的目標(biāo)用戶。例如某個(gè)軟件的目標(biāo)用戶是外部客戶和內(nèi)部服務(wù)工程師,那么在上下文分析的時(shí)候,應(yīng)該明確出來,如圖
需要注意的是,在對軟件首個(gè)版本分析上下文的時(shí)候,不能只看軟件當(dāng)前版本范圍的需求,而是需要看軟件所有的需求,例如當(dāng)前版本做不面向外部客戶的特性,但在上下文分析的時(shí)候仍然需要明確出來,否則容易遺漏影響架構(gòu)的需求。
2、需求場景分析
? 使用場景定義
從易用性分析出發(fā),前面上下文分析明確了用戶角色,這里要圍繞用戶角色來梳理用戶的使用場景。使用場景表明了軟件被用戶用來干什么。
梳理使用場景,即基于對用戶對軟件業(yè)務(wù)/功能訴求的理解,進(jìn)行場景的定義。基于使用場景對軟件的各個(gè)大大小小相關(guān)的需求特性進(jìn)行歸類,便于下一步的需求分析。更重要的是,使用場景是UI設(shè)計(jì)的重要依據(jù)和輸入。
? 需求特性的易用性分析
需求特性的場景分析,通常是按業(yè)務(wù)/功能特性的維度展開,圍繞系統(tǒng)和外部實(shí)體之間,對業(yè)務(wù)/功能特性的功能交互過程進(jìn)行澄清和細(xì)化。
從易用性分析的角度出發(fā),在對需求特性進(jìn)行場景分析的時(shí)候,需要強(qiáng)調(diào)的地方是:關(guān)注業(yè)務(wù)/功能特性對易用性的特定要求,例如需要給用戶呈現(xiàn)哪些信息,呈現(xiàn)信息的要求,提供哪些操作功能等。
易用性分析只是對需求場景分析過程增加了一些要求,并非引入了另一個(gè)獨(dú)立的分析活動(dòng),在場景分析的活動(dòng)中就一次性完成了,因此易用性分析沒必要單獨(dú)拆分出來作為一項(xiàng)獨(dú)立活動(dòng),否則會(huì)帶來很多重復(fù)和工作量浪費(fèi)。
? 軟件易用性設(shè)計(jì)約束或要求梳理
除了特定需求特性在易用性方面的要求在場景分析中完成,軟件在易用性方面有一些公共的設(shè)計(jì)約束或要求需要梳理,包括:
呈現(xiàn)風(fēng)格要求:如采用網(wǎng)頁的平鋪式呈現(xiàn)風(fēng)格,或傳統(tǒng)的窗口式風(fēng)格等。
呈現(xiàn)信息要求:確定呈現(xiàn)信息的風(fēng)格,如左樹右表方式或者其它的風(fēng)格;頁面刷新速率等。
使用操作要求:如采用導(dǎo)航式組織操作、提供功能快捷入口、操作響應(yīng)延遲、操作步驟、操作集中還是分散等。
可擴(kuò)展性要求:信息和和操作功能的組織和呈現(xiàn),能夠方便軟件未來功能的擴(kuò)展,例如要求支持UI可定制或可配置驅(qū)動(dòng)頁面呈現(xiàn)等。
3、UI架構(gòu)設(shè)計(jì)
UI也是需要架構(gòu)設(shè)計(jì)的。目前架構(gòu)設(shè)計(jì)的實(shí)踐中,更多的是關(guān)注軟件功能實(shí)現(xiàn)的技術(shù)方案,基本沒有涉及UI的設(shè)計(jì)。不過,從易用性的角度出發(fā),UI也是需要架構(gòu)設(shè)計(jì)的。
軟件架構(gòu)設(shè)計(jì)除了給出功能視圖、部署視圖、運(yùn)行視圖等,還要給出UI框架視圖。
基于前面分析給出的使用場景以及易用性設(shè)計(jì)約束和要求,UI框架視圖的內(nèi)容包括:
確定UI的呈現(xiàn)模式:如采用網(wǎng)頁的平鋪式呈現(xiàn),或傳統(tǒng)的窗口式等。
確定頁面區(qū)域布局的方案:包括操作功能布局和信息組織布局,以UI框架草圖的形式呈現(xiàn)。
UI設(shè)計(jì)原則和約束。
同軟件架構(gòu)設(shè)計(jì)的其它技術(shù)方案一樣,UI架構(gòu)設(shè)計(jì)方案也需要反復(fù)權(quán)衡并做出選擇。同時(shí),UI架構(gòu)設(shè)計(jì)主要是確定后續(xù)UI設(shè)計(jì)的方向,因此在這個(gè)階段不必急于深入具體的細(xì)節(jié)。
UI的架構(gòu)設(shè)計(jì)最好由軟件設(shè)計(jì)師來負(fù)責(zé),UI設(shè)計(jì)師參與討論和評審,給出專業(yè)意見。這是因?yàn)閷I進(jìn)行架構(gòu)設(shè)計(jì),需要對軟件的產(chǎn)品概念和軟件業(yè)務(wù)功能場景有深刻的理解和認(rèn)識(shí)才行。
軟件的產(chǎn)品概念除了包括軟件是什么、能干什么,還包括軟件應(yīng)該長什么樣子。在軟件設(shè)計(jì)過程中不能破壞概念的完整性。例如打算做的是一款給專業(yè)人士用的專業(yè)軟件,需要UI體現(xiàn)專業(yè)性,讓用戶容易對軟件功能產(chǎn)生信賴感。如果在UI設(shè)計(jì)時(shí)過于花哨或娛樂化,無法體現(xiàn)專業(yè)性,這樣就破壞了軟件產(chǎn)品概念的完整性,導(dǎo)致軟件設(shè)計(jì)失敗。
另外,UI是表象,軟件業(yè)務(wù)功能是內(nèi)涵,UI服務(wù)于軟件的業(yè)務(wù)功能場景。
對軟件的產(chǎn)品概念理解最準(zhǔn)確的應(yīng)該是軟件設(shè)計(jì)師,對軟件的業(yè)務(wù)功能場景理解最準(zhǔn)確的也是軟件設(shè)計(jì)師,因此,UI的架構(gòu)設(shè)計(jì)最好由軟件設(shè)計(jì)師來負(fù)責(zé)。
由于UI設(shè)計(jì)師在其專業(yè)方面經(jīng)驗(yàn)更加豐富,對業(yè)界趨勢和友商情況更加了解,UI設(shè)計(jì)師參與設(shè)計(jì)討論和評審,給出專業(yè)意見,有助于彌補(bǔ)軟件設(shè)計(jì)師在UI設(shè)計(jì)專業(yè)領(lǐng)域方面存在的短板。
現(xiàn)實(shí)情況下存在這樣的做法:由UI設(shè)計(jì)師負(fù)責(zé)UI的設(shè)計(jì)。由于UI設(shè)計(jì)師并不熟悉軟件業(yè)務(wù),就需要軟件設(shè)計(jì)師在旁邊“指導(dǎo)”。由于存在學(xué)習(xí)和溝通的成本,自然效率不可能高的。更可能發(fā)生的情況是:軟件設(shè)計(jì)師可能忙著其它設(shè)計(jì)工作而疏于“指導(dǎo)”,UI設(shè)計(jì)師不得不自己摸著石頭過河,這樣就很容易發(fā)生設(shè)計(jì)方向偏差,從而導(dǎo)致更大的返工。
4、UI低保真/高保真設(shè)計(jì)
UI的架構(gòu)設(shè)計(jì)完成后,UI設(shè)計(jì)師就可以在UI框架視圖的基礎(chǔ)上,開展低保真以及高保真的設(shè)計(jì)活動(dòng)。
一般通過低保真設(shè)計(jì),就能展示出軟件會(huì)做成什么樣子,高保真一般是在低保真方案定稿后才進(jìn)行,在此之前低保真設(shè)計(jì)反復(fù)討論評審、迭代優(yōu)化。現(xiàn)實(shí)情況下,這個(gè)設(shè)計(jì)階段容易出現(xiàn)的問題是:容易議而不決。導(dǎo)致議而不決的原因,大致有如下幾方面:
參與評審的意見會(huì)很多,特別是如果做的是一款各方關(guān)注的軟件,那方方面面的意見最好都要征集到。
UI的評審意見很容易提:不需要很懂技術(shù),每個(gè)人都能根據(jù)自己的審美和體驗(yàn)提出意見,有些能給出與現(xiàn)有設(shè)計(jì)完全不同的建議。審美相關(guān)的意見無所謂對錯(cuò),也導(dǎo)致了很難做取舍(想以理服人很難做到)。
意見聲音的“大”和“小”,也或多或少會(huì)影響到設(shè)計(jì)方案的裁決。
從軟件研發(fā)的進(jìn)展來看,議而不決的狀態(tài)是不能接受的,無論如何UI設(shè)計(jì)都要在適當(dāng)?shù)臅r(shí)刻進(jìn)行基線化,這樣軟件的研發(fā)過程才能繼續(xù)按計(jì)劃推進(jìn)。因此,對軟件設(shè)計(jì)師和UI設(shè)計(jì)師來說,既要充分考慮各方意見,又要把握UI架構(gòu)設(shè)計(jì)確定的原則和方向不丟失、不偏離,同時(shí)仔細(xì)鑒別真正代表用戶、符合使用場景的意見。
如果實(shí)在不能和所有人達(dá)成一致,那就需要設(shè)計(jì)師果斷裁決,設(shè)計(jì)必須最終由設(shè)計(jì)師說了算。
5、軟件試用
UI低保真/高保真設(shè)計(jì)完成后,就進(jìn)入軟件開發(fā)實(shí)現(xiàn)階段。在軟件交付前盡早組織進(jìn)行軟件試用,是保證軟件易用性的一個(gè)有效手段。
前面UI設(shè)計(jì)的評審討論,基本上還是“紙上談兵”。軟件真正用起來,好不好用立刻就有感覺了,用戶可以體驗(yàn)到軟件的真實(shí)操作響應(yīng)、頁面刷新速度、信息呈現(xiàn)的效果等,這些是無法通過低保真/高保真體驗(yàn)到的。這樣軟件在交付前可以有針對性進(jìn)行優(yōu)化。
因此,盡早組織軟件試用是一個(gè)確保軟件交付時(shí)的易用性質(zhì)量的有效性手段。總之,提升軟件的易用性的有效途徑包括:
需求階段明確軟件的用戶、使用場景和易用性的設(shè)計(jì)約束和要求。
開展或加強(qiáng)UI的架構(gòu)設(shè)計(jì)活動(dòng),給出UI框架視圖。
在UI的低保真/高保真設(shè)計(jì)階段,把握UI架構(gòu)設(shè)計(jì)確定的原則和方向不丟失、不偏離,同時(shí)仔細(xì)鑒別真正代表用戶、符合使用場景的意見,果斷決策避免議而不決。
軟件開發(fā)完成后盡早組織軟件試用,在交付前可以有針對性進(jìn)行優(yōu)化,確保軟件交付時(shí)的易用性質(zhì)量。
請搜索“ICT_Architect”加入微信公眾號(hào)“架構(gòu)師技術(shù)聯(lián)盟”獲取更多精彩內(nèi)容。
總結(jié)
以上是生活随笔為你收集整理的如何实现和提升软件易用性的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 警告warning: strncpy s
- 下一篇: Qt编写的线损分析工具