《軟件工程PPT課件第6章 人機界面設計與編碼》由會員分享,可在線閱讀,更多相關《軟件工程PPT課件第6章 人機界面設計與編碼(37頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、第六章第六章 (用戶界面設計)概論概論n 按照以用戶中心主義的觀點,軟件設計的核心內(nèi)按照以用戶中心主義的觀點,軟件設計的核心內(nèi)容,不是軟件本身的功能、性能,也就是說,不是容,不是軟件本身的功能、性能,也就是說,不是技術(shù)上的東西。技術(shù)上的東西。n軟件設計的核心應該是用戶,應該是這個軟件能夠軟件設計的核心應該是用戶,應該是這個軟件能夠為用戶提供什么樣的功能和怎樣提供這些功能。為用戶提供什么樣的功能和怎樣提供這些功能。n軟件是否成功,不是由技術(shù)專家使用專業(yè)的標準來軟件是否成功,不是由技術(shù)專家使用專業(yè)的標準來評判,而是由用戶來評判,由用戶是否認可、是否評判,而是由用戶來評判,由用戶是否認可、是否喜歡來
2、評判喜歡來評判。n軟件設計應該以使用軟件的人為中心,那么使用軟軟件設計應該以使用軟件的人為中心,那么使用軟件的人有什么特點呢?件的人有什么特點呢?(1)人類感知基礎)人類感知基礎n用戶都是提供自己的感官接收來自計算機的信息,用戶都是提供自己的感官接收來自計算機的信息,然后通過自己的操作向計算機發(fā)出指令的。然后通過自己的操作向計算機發(fā)出指令的。n在計算機向用戶發(fā)出信息的方式中,目前最常用的在計算機向用戶發(fā)出信息的方式中,目前最常用的有視覺信息、聽覺信息和文字信息。有視覺信息、聽覺信息和文字信息。n視覺信息包括圖形、顏色、動畫、圖像等等,我們視覺信息包括圖形、顏色、動畫、圖像等等,我們在計算機屏幕
3、上看到的絕大多數(shù)信息都是視覺信息在計算機屏幕上看到的絕大多數(shù)信息都是視覺信息n視覺信息的特點是信息量大,人可以快速地識別和視覺信息的特點是信息量大,人可以快速地識別和反應。反應。n聽覺信息主要是聲音,包括音樂、聲響等,它的主聽覺信息主要是聲音,包括音樂、聲響等,它的主要特點是沒有方向性,即使用戶沒有關注軟件,也要特點是沒有方向性,即使用戶沒有關注軟件,也能夠感知到。能夠感知到。n文字信息其實不是單獨存在的,它可以存在于視覺文字信息其實不是單獨存在的,它可以存在于視覺信息里,就是屏幕上顯示的文本信息里,就是屏幕上顯示的文本。(2)用戶的特性:)用戶的特性: 我們上面分析了人類的感知基礎。我們說用
4、戶中心主我們上面分析了人類的感知基礎。我們說用戶中心主義,那么用戶究竟是怎么樣的呢?對于軟件設計人員義,那么用戶究竟是怎么樣的呢?對于軟件設計人員來說,必需樹立這樣幾個基本觀念:來說,必需樹立這樣幾個基本觀念:a、用戶是懶惰的用戶是懶惰的b、用戶是笨的、用戶是笨的c、用戶是容易出錯的、用戶是容易出錯的d、用戶是健忘的、用戶是健忘的e、用戶的注意力很容易渙散、用戶的注意力很容易渙散f、用戶的脾氣不好、用戶的脾氣不好g、用戶是上帝、用戶是上帝(3)任務的特殊要求)任務的特殊要求n在進行界面設計時,必需對軟件所要完成的任務在進行界面設計時,必需對軟件所要完成的任務有準確的認識。有準確的認識。n有的任
5、務是實時型任務,對每一項響應都有時間有的任務是實時型任務,對每一項響應都有時間限制;限制;n有的任務是監(jiān)察型任務,那么就要給用戶提供方有的任務是監(jiān)察型任務,那么就要給用戶提供方便的、易于觀察的顯示輸出;便的、易于觀察的顯示輸出;n有的任務是可中斷的,那么就要有兩次啟動之間有的任務是可中斷的,那么就要有兩次啟動之間的銜接問題;有的任務對可靠性要求很高,是不的銜接問題;有的任務對可靠性要求很高,是不可錯的,那么就要在容錯設計上多下工夫??慑e的,那么就要在容錯設計上多下工夫。6.1 6.1 用戶友好性設計用戶友好性設計n 用戶友好性用戶友好性一般屬軟件的性能特性一般屬軟件的性能特性,它獨立于所有具體
6、功能,卻影響著,它獨立于所有具體功能,卻影響著所有功能的重用性。所有功能的重用性。n 用戶友好性用戶友好性應體現(xiàn)在與用戶有接口應體現(xiàn)在與用戶有接口 的軟件特性上。的軟件特性上。 n 用戶友好性的根本用戶友好性的根本目的目的是為了軟是為了軟件可重用性、可維護性。件可重用性、可維護性。用戶友好性的標志用戶友好性的標志可操作性可操作性健壯性健壯性易學習性易學習性可擴展性可擴展性 界面設計的模型界面設計的模型界面設計模型界面設計模型l設計人機界面要考慮四個方面:設計人機界面要考慮四個方面:軟件工程師創(chuàng)建軟件工程師創(chuàng)建”設計模型設計模型”人機工程師建立的人機工程師建立的”用戶模型用戶模型”最終用戶在腦海
7、里對界面產(chǎn)生的映象最終用戶在腦海里對界面產(chǎn)生的映象”用戶的模型用戶的模型”系統(tǒng)的實現(xiàn)者創(chuàng)建系統(tǒng)的實現(xiàn)者創(chuàng)建”系統(tǒng)映象系統(tǒng)映象”l四種模型可能相去甚遠,界面設計人員的任務就是四種模型可能相去甚遠,界面設計人員的任務就是消除這些差距,導出一致的表示界面消除這些差距,導出一致的表示界面。6.2 6.2 用戶分析用戶分析用戶類型用戶類型: :F偶然型偶然型F生疏型生疏型F熟練型熟練型F專家型專家型影響用戶行為特性的因素影響用戶行為特性的因素F人人- -機匹配性機匹配性F人的固有技能人的固有技能F人的固有弱點人的固有弱點F用戶的知識經(jīng)驗用戶的知識經(jīng)驗F用戶對系統(tǒng)的期望和態(tài)度用戶對系統(tǒng)的期望和態(tài)度用戶對計
8、算機系統(tǒng)的要求F讓用戶靈活地使用讓用戶靈活地使用F適應不同類型用戶適應不同類型用戶F系統(tǒng)的行為及效果對用戶透明系統(tǒng)的行為及效果對用戶透明F提供聯(lián)機幫助功能提供聯(lián)機幫助功能F人機交互盡可能和人際通信相似人機交互盡可能和人際通信相似用戶技能方面的使用需求F應讓系統(tǒng)去適應用戶應讓系統(tǒng)去適應用戶F使用易于理解、掌握的準自然語言使用易于理解、掌握的準自然語言F一致性的系統(tǒng)設計一致性的系統(tǒng)設計F能通過系統(tǒng)學習能通過系統(tǒng)學習F系統(tǒng)提供演示及范例系統(tǒng)提供演示及范例用戶習性方面的使用需求F系統(tǒng)應讓用戶有耐心系統(tǒng)應讓用戶有耐心F系統(tǒng)應很好地對付人的易犯錯系統(tǒng)應很好地對付人的易犯錯誤誤F系統(tǒng)應對不同用戶提供不同交系
9、統(tǒng)應對不同用戶提供不同交互方式互方式用戶經(jīng)驗、知識方面的使用需求F系統(tǒng)應能讓未經(jīng)專門訓練的用戶使用系統(tǒng)應能讓未經(jīng)專門訓練的用戶使用F系統(tǒng)能對不同經(jīng)驗用戶做出不同反應系統(tǒng)能對不同經(jīng)驗用戶做出不同反應F提供同一系統(tǒng)的一致性,建立標準化提供同一系統(tǒng)的一致性,建立標準化人人- -機界面機界面F系統(tǒng)必須適應用戶在應用領域的知識系統(tǒng)必須適應用戶在應用領域的知識變化,提供動態(tài)的自適應的設計變化,提供動態(tài)的自適應的設計用戶對系統(tǒng)的期望方面的要求F用戶界面應提供形象、生動、美觀的用戶界面應提供形象、生動、美觀的布局顯示和操作環(huán)境布局顯示和操作環(huán)境F系統(tǒng)處理問題應盡可能簡單,提供學系統(tǒng)處理問題應盡可能簡單,提供學
10、習機制習機制F系統(tǒng)應對不同用戶提供不同交互方式系統(tǒng)應對不同用戶提供不同交互方式 6.3 6.3 界面的設計原則界面的設計原則1. 1. 分析用戶類型分析用戶類型2. 2. 應用程序和界面分離應用程序和界面分離3. 3. 一致性一致性4. 4. 盡量減少用戶工作盡量減少用戶工作5. 5. 提供反饋提供反饋6. 6. 出錯處理和幫助功能出錯處理和幫助功能7. 7. 增加可視化圖形表示增加可視化圖形表示HELPHELP系統(tǒng)設計系統(tǒng)設計 HELPHELP系統(tǒng)設計不屬于界面系統(tǒng)設計不屬于界面設計范圍,涉及系統(tǒng)整體設計范圍,涉及系統(tǒng)整體結(jié)構(gòu),是結(jié)構(gòu)級用戶友好結(jié)構(gòu),是結(jié)構(gòu)級用戶友好性設計。性設計。 ( (編
11、制應用程序,可使用編制應用程序,可使用APIAPI函數(shù)設置幫助項)函數(shù)設置幫助項)HELPHELP系統(tǒng)設計系統(tǒng)設計幫助方式:幫助方式:F 操作指南文檔操作指南文檔F 基于幫助文件的要求性幫助基于幫助文件的要求性幫助 ( (命令級幫助)命令級幫助)F 說明性幫助說明性幫助F 嵌入系統(tǒng)的要求性幫助嵌入系統(tǒng)的要求性幫助F 嵌入培訓功能的智能幫助系統(tǒng)嵌入培訓功能的智能幫助系統(tǒng)6.4 6.4 人人- -機機界面的交互方式界面的交互方式1 1 菜單界面菜單界面按顯示形象分類按顯示形象分類: :F正文菜單正文菜單F圖標菜單圖標菜單F正文圖標混合菜單正文圖標混合菜單按屏幕位置和操作風格分類按屏幕位置和操作風格
12、分類: :F固定固定F浮動浮動F下拉式下拉式F嵌入式嵌入式下拉式菜單、瀑布式菜單下拉式菜單、瀑布式菜單2 2 對話對話對話形式對話形式: :(1)(1)必須回答式必須回答式: :需要用戶的確定認可需要用戶的確定認可或參數(shù)或參數(shù)(2)(2)無需回答式:只顯示系統(tǒng)信息無需回答式:只顯示系統(tǒng)信息(3)(3)警告式:一般為出錯提示警告式:一般為出錯提示對話實現(xiàn)方式對話實現(xiàn)方式: :(1)(1)標準對話:一般提示對話方式標準對話:一般提示對話方式(2)(2)定做式對話:按實際要求設定定做式對話:按實際要求設定(1 1) 功能鍵功能鍵(2 2) 圖符界面圖符界面(3 3) 填表界面填表界面(4 4) 命令
13、語言界面命令語言界面(5 5) 查詢語言界面查詢語言界面(6 6) 自然語言界面自然語言界面4 4 控制控制界面的設計界面的設計(1)(1)用控制對話選擇操作命令用控制對話選擇操作命令(2)(2)用菜單界面進行控制用菜單界面進行控制(3)(3)用功能鍵定義操作命令用功能鍵定義操作命令(4)(4)用圖標表示對象或命令用圖標表示對象或命令6.5 6.5 界面的開發(fā)界面的開發(fā)1. 1. 界面開發(fā)模型界面開發(fā)模型瀑布式模型:古典開發(fā)模型瀑布式模型:古典開發(fā)模型原型模型:現(xiàn)代開發(fā)模型原型模型:現(xiàn)代開發(fā)模型2. 2. 導航方式導航方式線性線性6.5 6.5 界面的開發(fā)界面的開發(fā)網(wǎng)絡式網(wǎng)絡式6.6 6.6
14、數(shù)據(jù)輸入數(shù)據(jù)輸入界面設計界面設計數(shù)據(jù)輸入的規(guī)則數(shù)據(jù)輸入的規(guī)則F明確的輸入明確的輸入F明確的動作明確的動作F明確的取消明確的取消F確認刪除確認刪除F提供反饋提供反饋F允許編輯允許編輯F提供復原(提供復原(UndoUndo)F自由格式自由格式F提示輸入的范圍提示輸入的范圍6.7 6.7 數(shù)據(jù)顯示數(shù)據(jù)顯示界面設計界面設計數(shù)據(jù)顯示的規(guī)則數(shù)據(jù)顯示的規(guī)則F只顯示必要的數(shù)據(jù)只顯示必要的數(shù)據(jù)F在一起使用的數(shù)據(jù)顯示在一起在一起使用的數(shù)據(jù)顯示在一起F顯示出的數(shù)據(jù)應與用戶執(zhí)行的任務有關顯示出的數(shù)據(jù)應與用戶執(zhí)行的任務有關F每一屏數(shù)據(jù)的數(shù)量不應超過整個屏幕面積的每一屏數(shù)據(jù)的數(shù)量不應超過整個屏幕面積的30%30%屏幕布局
15、規(guī)則屏幕布局規(guī)則F盡量少用代碼和縮寫盡量少用代碼和縮寫F多個顯示畫面,應建立統(tǒng)一格式多個顯示畫面,應建立統(tǒng)一格式F提供明了的標題、標欄及其它提示信息提供明了的標題、標欄及其它提示信息F遵循用戶習慣遵循用戶習慣F采用顏色、字符大小、下劃線、不同字體等方式強化重采用顏色、字符大小、下劃線、不同字體等方式強化重要數(shù)據(jù)要數(shù)據(jù)程序編碼程序編碼1、程序的質(zhì)量主要取決于軟件設計的質(zhì)量,程序設計、程序的質(zhì)量主要取決于軟件設計的質(zhì)量,程序設計語言的特性和編碼途徑也對程序的可靠性、可讀性語言的特性和編碼途徑也對程序的可靠性、可讀性、可測試性和可維護性產(chǎn)生深遠的影響。、可測試性和可維護性產(chǎn)生深遠的影響。2 、程序設
16、計語言分類:匯編語言和高級語言、程序設計語言分類:匯編語言和高級語言高級語言分:高級語言分:基礎語言、結(jié)構(gòu)化語言、專用語言、面基礎語言、結(jié)構(gòu)化語言、專用語言、面向?qū)ο笳Z言向?qū)ο笳Z言基礎語言有:基礎語言有:BASIC、FORTRAN、COBOL、 ALGOL結(jié)構(gòu)化語言有:結(jié)構(gòu)化語言有:ALGOL、PL/1、PASCAL、C、Ada專用語言有:專用語言有:APL、LISP、PROLOG面向?qū)ο笳Z言有:面向?qū)ο笳Z言有: C+、Smalltalk、Object C、Java程序編碼程序編碼3、程序設計語言的特點及對軟件質(zhì)量影響。、程序設計語言的特點及對軟件質(zhì)量影響。1)1)一致性:表示語言所使用符號的
17、兼容性一致性:表示語言所使用符號的兼容性2) 2) 無二義性:設計對程序的正確理解。無二義性:設計對程序的正確理解。3) 3) 簡潔性:體現(xiàn)程序員掌握語言必須記憶的代碼的簡潔性:體現(xiàn)程序員掌握語言必須記憶的代碼的信息總量。信息總量。4 4)局部性:(語言的)容易聯(lián)想特性)局部性:(語言的)容易聯(lián)想特性5 5)線性:對程序容易理解)線性:對程序容易理解4 、寫程序風格應遵循的規(guī)則:、寫程序風格應遵循的規(guī)則: 簡潔化、模塊化、簡單化、簡潔化、模塊化、簡單化、 結(jié)構(gòu)化、文檔化、格式化結(jié)構(gòu)化、文檔化、格式化 程序設計風格程序設計風格1.代碼文件代碼文件n選擇有意義的標識符選擇有意義的標識符n安排注釋(
18、緒言性、功能性、標題、作者、調(diào)用形安排注釋(緒言性、功能性、標題、作者、調(diào)用形式、參數(shù)說明式、參數(shù)說明.)2.視覺形式視覺形式2.數(shù)據(jù)說明數(shù)據(jù)說明n說明次序要規(guī)范化說明次序要規(guī)范化n利用數(shù)據(jù)類型對數(shù)據(jù)值進行防范利用數(shù)據(jù)類型對數(shù)據(jù)值進行防范3.語句語句n語句應當簡明和直接了當,不要追求奇技怪巧語句應當簡明和直接了當,不要追求奇技怪巧n使用標準的控制語句使用標準的控制語句n盡量不用測試條件的盡量不用測試條件的”非非”n不要利用復雜的算符優(yōu)先級,用括號更清晰不要利用復雜的算符優(yōu)先級,用括號更清晰n對遞歸定義的數(shù)據(jù)結(jié)構(gòu)使用遞歸過程對遞歸定義的數(shù)據(jù)結(jié)構(gòu)使用遞歸過程n避免不必要的避免不必要的goto語句語句n不要修修補補不好的程序,要重新寫不要修修補補不好的程序,要重新寫4.輸入和輸出輸入和輸出n邏輯地組織輸入,有效的出錯檢查邏輯地組織輸入,有效的出錯檢查n有提示的輸入方式,自由格式輸入有提示的輸入方式,自由格式輸入n對產(chǎn)生重大后果的輸入,給出醒目的提示,待對產(chǎn)生重大后果的輸入,給出醒目的提示,待用戶確認后在執(zhí)行用戶確認后在執(zhí)行n合理,整齊,有層次,美觀的輸出形式合理,整齊,有層次,美觀的輸出形式