界面設(shè)計方法 (2) : 活動功能的設(shè)計
編輯導語:在上篇文章中,作者從數(shù)據(jù)分類、業(yè)務功能分類以及界面分類這三個方面,為我們詳細地說明了界面設(shè)計方法。而在本篇文章中,作者又圍繞界面中活動功能的設(shè)計,為我們展開了分析,看看如何夠通過功能設(shè)計,提升客戶的工作效率、為業(yè)務正確處理把好關(guān)、解決客戶的難、關(guān)、痛點問題甚至為客戶帶來效益。
前文已介紹過了,業(yè)務功能分為4大類,其中“活動功能”是界面設(shè)計中工作量最大的部分,每個活動功能都是客戶一個/類實際工作在系統(tǒng)中的映射,客戶對包括對業(yè)務處理、管理控制方面的需求、優(yōu)化、改善等期望等大都包含在活動功能的設(shè)計中。
因此,活動功能設(shè)計的優(yōu)劣直接關(guān)系到整個系統(tǒng)的最終效果。
活動功能的設(shè)計并不簡單,設(shè)計結(jié)果不但要能做滿足客戶方面的業(yè)務需求、管理需求以及易操作需求等,還要滿足軟件商方面的結(jié)構(gòu)化、易確認、易開發(fā)、易復用等要求。
活動功能設(shè)計:是將構(gòu)成功能的界面格式、控件定義、數(shù)據(jù)結(jié)構(gòu)、操作方法以及相關(guān)規(guī)則整合在一起的設(shè)計過程。
一、活動功能的概念
- 活動:指的是客戶的實際工作、行為(注:業(yè)務流程上的節(jié)點必須是活動);
- 活動功能:除用于維護企業(yè)基礎(chǔ)數(shù)據(jù)的“字典功能”外,凡用于輸入過程數(shù)據(jù)的功能都屬于活動功能,對活動功能有以下的特點(以下簡稱為:活動)。
1. 粒度
對一個活動大小的劃分參考原則是,這個活動可以:
- 完成一個獨立的、明確的業(yè)務目標;
- 劃分的大小有利于用戶的崗位分工安排;
- 在滿足用戶業(yè)務需求的同時,也符合系統(tǒng)設(shè)計規(guī)則、運行效率等方面的要求等。
一個活動的內(nèi)容多少是由客戶的工作習慣與系統(tǒng)處理效率之間的平衡關(guān)系決定的,最終的決定需要與用戶進行商量決定。
2. 功能
活動具有的處理功能主要由兩個部分構(gòu)成:業(yè)務處理功能和管理處理功能。
- 業(yè)務處理:指對業(yè)務數(shù)據(jù)進行輸入、計算、查看、展示等的功能;
- 管理處理:指對業(yè)務處理過程中加載的管理規(guī)則,這些規(guī)則可以保證數(shù)據(jù)合乎標準。
3. 作用
- 對數(shù)據(jù)的輸入,以及包括增加、刪除、改變、查詢等的操作功能;
- 客戶業(yè)務優(yōu)化的重要對象之一(另一個是流程優(yōu)化),良好的設(shè)計結(jié)果可以帶來用戶工作效率的提升,同時活動也是設(shè)置管理規(guī)則的主要載體,用戶與設(shè)計師的想法大多數(shù)都要落實在活動的界面上。
作為窗口式的界面形式,完成一個活動需要兩個部分的設(shè)計:業(yè)務設(shè)計、應用設(shè)計,下面分別說明這兩種設(shè)計的內(nèi)容。
二、業(yè)務設(shè)計
業(yè)務設(shè)計是從客戶業(yè)務處理的視角進行的設(shè)計,這個設(shè)計的重點在如何將現(xiàn)實的工作反映到界面上來,這是活動設(shè)計的核心工作。這個部分設(shè)計又可以分為兩個層面進行,一是對業(yè)務處理層面的設(shè)計、二是管理層面的設(shè)計。
關(guān)鍵點:此時不要考慮界面的實現(xiàn)方法。
1. 業(yè)務處理層面的設(shè)計
業(yè)務層面的設(shè)計,參考包括客戶原始的實體表單格式(或全新設(shè)計),進行如下工作:
- 業(yè)務處理目標的確定、業(yè)務內(nèi)容的規(guī)劃;
- 界面選型(卡片式、主細表式、樹形表式等)、字段的布局等;
- 確定數(shù)據(jù)定義、數(shù)據(jù)標準、數(shù)據(jù)來源、數(shù)據(jù)算式等。
2. 管理層面的設(shè)計
為了保證正確地輸入數(shù)據(jù),需要對數(shù)據(jù)輸入過程加載相關(guān)的規(guī)則進行監(jiān)控,這些規(guī)則來自于企業(yè)的管理規(guī)章制度、財務規(guī)則、生產(chǎn)的工藝工法要求等(注:數(shù)據(jù)庫規(guī)則不算管理要求)。
只有加入了這些管理規(guī)則,這個系統(tǒng)才能稱之為:管理系統(tǒng)。
3. 業(yè)務設(shè)計,必須站在用戶視角進行
對活動的業(yè)務設(shè)計要點就是要從“業(yè)務”視角看界面,因為用戶對系統(tǒng)的認知主要來自于界面,而界面的核心內(nèi)容是業(yè)務數(shù)據(jù)。
因此,界面設(shè)計的優(yōu)劣就直接體現(xiàn)了設(shè)計師對用戶工作的理解,設(shè)計師要把這個界面當做與用戶進行對話的“窗口”,設(shè)計時要不斷地與“窗口后的角色”進行對話,如圖1所示。
圖1 業(yè)務設(shè)計與用戶的關(guān)系
1)對話用戶(參見圖1-①本功能用戶)
- 用戶要用功能2完成什么業(yè)務內(nèi)容?
- 用戶要向他的領(lǐng)導②提供什么信息?
- 本功能2與上游功能1、下游功能3之間的數(shù)據(jù)是什么關(guān)系?
- 用戶①、與上游用戶③和下游用戶④之間的制約關(guān)系(數(shù)據(jù)層面、管理層面)?等。
圖2 業(yè)務設(shè)計的主要內(nèi)容
2)對話領(lǐng)導(參見圖1-②用戶的領(lǐng)導)
- 功能2的工作標準什么?已有的業(yè)務數(shù)據(jù)是否滿足要求?
- 為確保①用戶的數(shù)據(jù)輸入正確,需要什么樣的管理規(guī)則來做保證措施?等。
圖3 管理設(shè)計的主要內(nèi)容
4. “功能”與“任務”的區(qū)別
可以從圖2和圖3中看出,業(yè)務設(shè)計與管理設(shè)計關(guān)注的重點完全不同。
對一個活動,是僅僅把它當用于“輸入數(shù)據(jù)的界面功能”?還是將其看成為“要完成的工作任務” ?這就看設(shè)計師具有什么樣的設(shè)計理念了,如果是前者,那么關(guān)注點放在字段的數(shù)量、定義就可以了。
如果是后者,則在關(guān)注字段數(shù)量、定義的同時,還要關(guān)注是否對業(yè)務進行了優(yōu)化?工作效率有無提升?管理規(guī)則上有無漏洞?等,這些都沒有問題時,才能確定字段和定義是否滿足要求。
三、應用設(shè)計
完成了前面的業(yè)務設(shè)計內(nèi)容,應用設(shè)計的重點就不在業(yè)務內(nèi)容了(參見圖4的核心部分“業(yè)務處理區(qū)域”),而是要考慮如何構(gòu)建一個“人-機-人”的工作環(huán)境,讓用戶工作得舒服、操作容易、處理效率高、智能化。
應用設(shè)計相當于為前述的業(yè)務設(shè)計成果外包上一層“可操作的功能”,用戶是通過這些功能來完成對業(yè)務數(shù)據(jù)的查看、輸入、控制等操作工作。
應用設(shè)計包括了菜單欄、工具欄、滾動條、按鈕(增刪改查等)、上傳/下載、其他鏈接等。
圖4 界面的應用設(shè)計內(nèi)容
可以看出,業(yè)務設(shè)計的重點(圖2、3)與應用設(shè)計的重點(圖4)的內(nèi)容完全不同。
應用設(shè)計的重點是從“應用”視角對“功能”進行設(shè)計,也就是將業(yè)務設(shè)計的功能內(nèi)容轉(zhuǎn)換成為用系統(tǒng)的構(gòu)件進行表達,可以說系統(tǒng)的客戶價值大小,用戶是通過應用設(shè)計成果感受到的,因此應用設(shè)計的結(jié)果優(yōu)劣直接關(guān)系到客戶的滿意度。
- 注1:UI設(shè)計、美工設(shè)計等,都是應用設(shè)計中的一部分;
- 注2:在實際進行軟件設(shè)計時,業(yè)務設(shè)計和應用設(shè)計的內(nèi)容可以“合二為一”一氣呵成地完成,但是在學習界面設(shè)計方法時,這兩個部分應該分開理解、掌握。
四、設(shè)計結(jié)果驗證
對上述的設(shè)計結(jié)果必須要進行驗證,驗證方法有兩個:業(yè)務驗證和應用驗證。
圖5 驗證的用例
1. 業(yè)務驗證 – 編寫業(yè)務用例
業(yè)務用例,是利用業(yè)務數(shù)據(jù)編寫出一個相當于數(shù)據(jù)的故事腳本,這個用例中使用的數(shù)據(jù)可以將全部需要驗證的活動功能關(guān)聯(lián)在一起,然后按照實際運行的流程進行推演,如圖6所示,業(yè)務用例中的數(shù)據(jù)要從“合同”流向“交付”(業(yè)務流程),同時還要包括相應的管理規(guī)則(審批流程)。
2. 應用驗證 – 編寫應用用例
應用用例,是在業(yè)務驗證的基礎(chǔ)上,對操作的過程進行檢驗,包括:按照流程和角色進行多人協(xié)同,操作過程是否易用、輸入是否智能化、處理是否會有死循環(huán)、系統(tǒng)通知、警告、終止等如何發(fā)起生效等。
注3:這里談到的業(yè)務用例和應用用例,與開發(fā)完成后檢驗時使用的測試用例不同。
- 業(yè)務/應用用例:是以用戶的實際業(yè)務處理流程為依據(jù)設(shè)計,不但有業(yè)務數(shù)據(jù)、管理規(guī)則的檢查,還要有多功能之間的推送、流轉(zhuǎn)是否順暢的檢查。關(guān)注點不是“編碼bug”的有無;
- 測試用例:重點檢查功能是否正確、有無編碼bug等。不是從“業(yè)務、管理、操作性”方面的測試。
五、記錄模板
掌握了設(shè)計的方法后,最后要說明一下記錄方法,對界面設(shè)計結(jié)果的記錄形式非常重要,傳統(tǒng)上采用長篇文字進行描述的記錄形式比較多。
我提倡采用結(jié)構(gòu)化、標準化的記錄形式,也就是用工程化的記錄形式(如同制造業(yè)、建筑業(yè)的設(shè)計相似),這種形式客戶容易理解、確認,程序員容易理解、開發(fā)。
下面推薦用一組模板記錄設(shè)計內(nèi)容的形式,由于模板4個為一組,因此也稱之為“設(shè)計4件套”,4個模板分別記錄了如下內(nèi)容:
- 模板1—界面原型:給出界面業(yè)務內(nèi)容的布局、字段的位置;
- 模板2—控件定義:用表格方式記錄所有字段的名稱、字段內(nèi)容、相關(guān)規(guī)則等;
- 模板3—規(guī)則說明:用文章體的方式對該原型內(nèi)的復雜規(guī)則進行詳細的說明;
- 模板4—邏輯圖形:用圖形方式表達該功能內(nèi)用文字難以說明的復雜邏輯關(guān)系。
圖6 設(shè)計結(jié)果的記錄模板(設(shè)計4件套)
順便說一句,利用這種方式記錄非常容易開發(fā)出一套軟件設(shè)計輔助記錄系統(tǒng),這也是結(jié)構(gòu)化記錄格式帶來的優(yōu)勢。
六、小結(jié)
可能不少人都有這樣的想法:活動功能用的界面設(shè)計最為常見,沒有什么難的地方、也沒有什么技術(shù)含量,只不過是把客戶需要的字段排列出來就可以了,從“技術(shù)實現(xiàn)”的視角看可能的確如此。
但是如果從“客戶價值”的視角看就不同了,這里要考驗設(shè)計師的是:是否能夠通過功能設(shè)計,提升客戶的工作效率?為業(yè)務正確處理把好關(guān)?能否解決客戶的難、關(guān)、痛點問題?甚至為客戶帶來效益?這才是活動功能設(shè)計的真正意義所在!
本系列的下一篇:界面設(shè)計方法(3):字典功能的設(shè)計
相關(guān)閱讀:《界面設(shè)計方法(1):界面的概念與分類》
本文由 @李鴻君 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自?Unsplash,基于 CC0 協(xié)議
強啊,作者都出書了
收藏,慢慢消化,謝謝分享
更加詳細的說明可以參考《大話軟件工程—需求分析與軟件設(shè)計》一書。