个人软件过程4 功能说明和用户体验设计
??? 更新日線,是一項我們經(jīng)常遇到的數(shù)據(jù)導入功能。
??? 這項功能的說明文字,我是這么寫的:
??? 用戶在初次使用本系統(tǒng)的時候,需要安裝滬深兩市從開市到本年度的所有歷史數(shù)據(jù),這些數(shù)據(jù)可以從某證券行情軟件獲得,是遵循一定格式的二進制文件。此后,每天兩市交易結(jié)束之后,用戶必須更新當天的日線行情,當然,用戶也可能在幾天后一次性更新最近幾天的日線行情。用戶更新日線,才能建立完整準確的數(shù)據(jù)基礎,我們所有的分析工作都基于這些日線數(shù)據(jù)。
??? 事實上只需要這么簡單的描述,就能夠弄清楚這項功能的目標和具體的應用場景。
?
??? 不可避免的,我們需要做用戶體驗設計,這是將功能轉(zhuǎn)換為一系列開發(fā)任務的前提。所謂用戶體驗設計,我們可以簡單的理解為界面設計的一部分。界面設計包括兩個方面:1、如何更美觀;2、設置哪些最少的功能從而滿足用戶的全部要求。后者可以簡單的理解為“用戶體驗設計”。
??? 我們可以根據(jù)功能的描述按部就班的演繹,接下來就是整個思考過程。首先,我們需要列出用戶可能需要的操作、可能遇到的問題:
??? 1、 用戶每次更新日線都需要選擇一個行情文件,然后開始更新。
??? 2、用戶可能誤操作,導致選擇的文件不是一個真正的行情文件。
??? 3、用戶從分析軟件中生成行情文件的時候,可能僅包括一個市場的數(shù)據(jù)、或者包含了期貨、港股等其他市場的數(shù)據(jù)。
??? 4、用戶可能記不清最近10天是否每天的日線行情都已經(jīng)更新了。
??? 5、在更新日線的時候,用戶需要看到更新的進度
??? 6、用戶可能對系統(tǒng)中保存的數(shù)據(jù)完全沒有信心,準備重新從兩市開市的第一天開始安裝歷史數(shù)據(jù)。
??? 7、用戶可能將一個文件更新兩次,或者一些數(shù)據(jù)已經(jīng)安裝了但用戶選擇的另一個行情文件中包含了這部分數(shù)據(jù)。
?
??? 針對上述情形,我們可以簡單的對界面元素進行設計,當然這里無需考慮美觀問題,僅僅關注:1、用戶遇到的問題,是否都能夠處理;2、在能夠處理所有問題的時候,界面是否最簡單且最容易理解。經(jīng)過簡單的思考,我們可以得到界面的原型,這里用Vc 2010的對話框設計器可以簡單的繪制草圖如下:
?
?
?
????? 第一行,“日期”那部分,用戶將能夠看到目前已經(jīng)安裝的行情數(shù)據(jù)的起止日期,每次安裝數(shù)據(jù)后這里要實時刷新,這樣用戶就能夠始終做到心中有數(shù)。下面一行很容易理解,左邊是選擇文件的控件,右邊是啟動更新的按鈕。第三行是進度的文本信息報告區(qū),剛進入界面的時候顯然要提醒用戶選擇一個文件。第四行是進度條,開始更新之后進度條將報告更新的進度。接下來的兩個按鈕,第一個是刪除最新的五天日線,第二個是刪除全部的日線。
???? 這里不需要過多的分析,我們知道這種界面的形式,是能夠應付上面用戶可能遇到的所有情形的。菜鳥程序員很容易忽略的,是報告系統(tǒng)中行情的起止日期和進度文本區(qū)兩個部分。
?
???? 這樣的東西,一些資深的項目經(jīng)理可能會不屑,因為什么呢?“你好象過早的進入界面設計了”,是的,確實如此。但老實說,如果項目經(jīng)理的腦子里,不能在最快時間出現(xiàn)上面的窗體圖形的話,他會怎樣為團隊的程序員分配開發(fā)任務?所以,書生們常常說項目管理大師,未必需要懂得編程,在軟件領域甚至在其他任何領域,這簡直是十足的扯淡。做事的團隊,其實并不需要一個指手畫腳的人,每個人需要很清晰、很簡單的知道自己今天做什么、明天做什么、怎樣做是對的也就是標準是什么,外行如何用他的想象力來實現(xiàn)?一個蹩腳的程序員永遠不可能成為能干的項目經(jīng)理,就如同一個從來沒有碰過槍的人,怎么可能指揮千軍萬馬作戰(zhàn)?當然,公司經(jīng)理完全可以不懂技術,為什么,因為他可以將這一塊封裝起來,技術總監(jiān)會對他負責,公司經(jīng)理也不會對技術團隊指手畫腳的具體到每一項工作。
?
???? 那么,完成用戶體驗設計之后,我們確定開發(fā)任務其實就非常簡單了:
?
??? 上面的截圖是第一項功能的任務清單,當然Tfs的一些術語翻譯的很生硬,比如堆棧級別,其實是開發(fā)的順序,用戶情景,就是功能;不用太理會,我們簡單的將這些任務指派給團隊不同的成員,項目經(jīng)理大體上就能開始輕松的當監(jiān)工了。
??? 針對這項功能,我比較看重的是一個簡單的重復測試,也就是循環(huán)執(zhí)行安裝一個文件、刪除全部日線、安裝同一個文件,這樣循環(huán)多次,從而確定這兩項功能的穩(wěn)固性。因為顯示進度的需要,更新日線的操作最好在后臺運行,這樣界面才不會僵死,那么這種亂序測試是對這部分后臺操作的一個考驗。
??? 到現(xiàn)在,我們已經(jīng)完整的講述了從啟動項目開始,到程序員開始寫代碼之間的全過程。事實上沒有多少多余的工作量,但整個開發(fā)過程將在這種簡單的模式下,更趨規(guī)范。后面如果仍然有時間和興趣,可能會對開發(fā)過程完整描述,記錄學習VC++2010的過程。
轉(zhuǎn)載于:https://www.cnblogs.com/by1990/archive/2011/10/28/2227404.html
總結(jié)
以上是生活随笔為你收集整理的个人软件过程4 功能说明和用户体验设计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Apache Tiles的使用 前配置
- 下一篇: 简单版:带干扰线的图形验证码生成