詳細設計課件_第1頁
詳細設計課件_第2頁
詳細設計課件_第3頁
詳細設計課件_第4頁
詳細設計課件_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第五章詳細設計第1頁,共38頁。詳細設計(過程設計、模塊設計)目標:確定如何實現所要求的系統(tǒng)對目標系統(tǒng)的精確描述邏輯上正確實現每個模塊的功能處理過程簡單易懂第2頁,共38頁。5.1 結構程序設計程序的三種基本控制結構第3頁,共38頁。5.1 結構程序設計結構程序設計如果一個程序的代碼塊僅僅通過順序、選擇和循環(huán)這三種控制結構進行連接,并且每個代碼塊只有一個入口和一個出口,則稱這個程序是結構化的結構程序設計本質上并不是無GO TO語句的編程方法,而是一種使程序代碼容易閱讀、容易理解的編程方法。根據實際情況靈活掌握goto的使用 結構程序設計是盡可能少用GO TO語句的程序設計方法。最好僅在檢測出錯

2、誤時才使用GO TO語句,而且應該總是使用前向GO TO語句。如果只允許使用順序、IF-THEN-ELSE型分支和DO-WHILE型循環(huán)這三種基本控制結構,則稱為經典的結構程序設計;第4頁,共38頁。5.1 結構程序設計如果除了上述三種基本控制結構之外,還允許使用DO-CASE型多分支結構和DO-UNTIL型循環(huán)結構,則稱為擴展的結構程序設計;如果再加上允許使用LEAVE(或BREAK)結構,則稱為修正的結構程序設計。第5頁,共38頁。5.2 詳細設計過程為每個模塊確定采用的算法,寫出模塊的詳細描述確定模塊使用的數據結構確定模塊接口的詳細描述對系統(tǒng)外部的接口和用戶界面對系統(tǒng)內部其他模塊的接口關

3、于模塊輸入數據、輸出數據和局部數據的全部細節(jié)第6頁,共38頁。5.2 詳細設計過程設計原則清晰第一、效率第二結構化的控制結構控制結構應一個入口、一個出口允許使用 DO-UNTIL和DO-CASE允許循環(huán)跳出逐步細化的實現方法在一組數中找出其中的最大數1,輸入一組數2,找出其中最大的數3,輸出最大數2.1,任取一數,假設它就是最大數2.2,將該數與其余各數逐一比較2.3,若發(fā)現有任意數大于該假設最大數,則取而代之1,輸入一個數組2.1,令最大數=數組中第一個數2.2,從第二個數到最后一個數依次做2.3,如果最大數,則最大數=新數3,輸出最大數第7頁,共38頁。5.3 過程設計工具程序流程圖程序流

4、程圖又稱為程序框圖,歷史最悠久使用最廣泛的描述過程設計的方法然而它也是用得最混亂的一種方法任意跳轉第8頁,共38頁。5.3 過程設計工具程序流程圖中使用的符號(a) 選擇(分支);(b) 注釋;(c) 預先定義的處理;(d) 多分支;(e) 開始或停止;(f) 準備;(g)循環(huán)上界限;(h) 循環(huán)下界限;(i) 虛線;(j) 省略符;(k) 并行方式;(l) 處理;(m) 輸入/輸出;(n) 連接;(o) 換頁連接;(p) 控制流第9頁,共38頁。5.3 過程設計工具盒圖第10頁,共38頁。5.3 過程設計工具PAD圖的基本符號順序(先執(zhí)行P1后執(zhí)行P2);(b) 選擇(IF C THEN P

5、1 ELSE P2);(c) CASE型多分支;(d) WHILE型循環(huán)(WHILE C DO P)(e) UNTIL型循環(huán)(REPEAT P UNTIL C);(f) 語句標號;(g) 定義第11頁,共38頁。5.3 過程設計工具使用PAD圖提供的定義功能來逐步求精的例子(a) 初始的PAD圖;(b) 使用def符號細化處理框P2第12頁,共38頁。5.3 過程設計工具第13頁,共38頁。5.3 過程設計工具第14頁,共38頁。Jackson方法(1)分析并確定輸入數據和輸出數據的邏輯結構,并用Jackson結構圖來表示這些數據結構。 (2)找出輸入數據結構和輸出數據結構中有對應關系的數據單

6、元。 (3)按以下的規(guī)則由輸入、輸出的數據結構導出程序結構。 1)為每一對在輸入數據結構和輸出數據結構中有對應關系的單元畫一個處理框。 2)為輸入和輸出數據結構中剩余的數據單元畫一個處理框。 3)所有處理框在程序結構圖上的位置,應與由它處理的數據單元在數據結構Jackson圖上的位置一致。 4)必要時,可以對映射導出的程序結構圖進行進一步的細化。 (4)列出基本操作與條件,并把它們分配到程序結構圖的適當位置。 (5)用偽碼寫出程序。 第15頁,共38頁。操作對象是一種文件,該文件由三部分組成:文件頭、文件體和文件尾。文件體由特定分隔符分成許多記錄組,記錄根據其特征碼分類記錄和類記錄。文件統(tǒng)計系

7、統(tǒng)讀取以上結構的文件,顯示文件頭,計算記錄組數以及類記錄和類記錄記錄個數,并打印輸出。文件文件體記錄組記錄類記錄類記錄文件頭文件尾第16頁,共38頁。處理文件處理文件體處理記錄組處理記錄處理類記錄處理類記錄處理文件頭處理文件尾(2) (3)(3) (4) (5) (6) (7) (8) (9)(2) (10)(2)(11)(12)打開文件(1)關閉文件(8)讀文件(2)顯示總數(7)組計數器清零(4)A計數器清零(5)組計數器累加(10)終止(9)B計數器累加(12)A計數器累加(11)B計數器清零(6)顯示文件頭(3)第17頁,共38頁。Seq open file; read file; s

8、eq display file header; read file; end; seg zeroise group count(GC); zeroise group count(AC); zeroise group count(BC); iter while not EOF increment GC; iter while not EOF select record A increment AC; or record B increment BC; read file; end; end; end; close file; display total; end;第18頁,共38頁。5.4 程序

9、復雜程度的定量度量McCabe方法根據程序控制流的復雜程度度量程序的復雜程度,程序的環(huán)路復雜度符號為控制流圖的一個結點,表示一個或多個無分支的PDL語句或源程序語句。箭頭為邊,表示控制流的方向。每個包含了條件的節(jié)點稱為判定節(jié)點第19頁,共38頁。5.4 程序復雜程度的定量度量在選擇或多分支結構中,分支的匯聚處應有一個匯聚結點。邊和結點圈定的區(qū)域叫做區(qū)域,當對區(qū)域計數時,圖形外的區(qū)域也應記為一個區(qū)域第20頁,共38頁。5.4 程序復雜程度的定量度量第21頁,共38頁。5.4 程序復雜程度的定量度量如果判斷中的條件表達式是由一個或多個邏輯運算符 (OR, AND, NAND, NOR) 連接的復合

10、條件表達式,則需要改為一系列只有單個條件的嵌套的判斷。第22頁,共38頁。5.4 程序復雜程度的定量度量第23頁,共38頁。5.4 程序復雜程度的定量度量環(huán)路復雜度V(G)是對程序邏輯復雜性進行度量的尺度。可以通過流圖得到:流圖中的區(qū)域數等于V(G)V(G)=E-N+2,E為邊數,N為結點數。V(G)=P+1,P為流圖中分支結點數。第24頁,共38頁。令N=N1+N2N1 程序中運算符出現的總數N2 操作數出現的總數N 程序長度第25頁,共38頁。START LOOP:DO WHILE Z0 1,是否是結構化程序 A=B+1 2,如何改成結構化程序 IF A10 3,環(huán)形復雜度? THEN X

11、=A ELSE Y=Z ENS IF IF Y0 THEN PRINT G ELSE PRINT KEND IFSTOP第26頁,共38頁。5.5 人機界面設計人機界面設計是接口設計的一個組成部分。對于交互式系統(tǒng)來說,人機界面設計和數據設計、體系結構設計、過程設計一樣重要。近年來,人機界面在系統(tǒng)中所占的比例越來越大,在個別系統(tǒng)中人機界面的設計工作量甚至占設計總量的一半以上。人機界面的設計質量,直接影響用戶對軟件產品的評價,從而影響軟件產品的競爭力和壽命,因此,必須對人機界面設計給以足夠重視第27頁,共38頁。5.5 人機界面設計在設計用戶界面的過程中的四個主要問題系統(tǒng)響應時間系統(tǒng)響應時間是許多

12、交互式系統(tǒng)用戶經常抱怨的問題。一般說來,系統(tǒng)響應時間指從用戶完成某個控制動作(例如,按回車鍵或點擊鼠標),到軟件給出預期的響應(輸出或做動作)之間的這段時間。系統(tǒng)響應時間有兩個重要屬性,分別是長度和易變性。用戶幫助設施幾乎交互式系統(tǒng)的每個用戶都需要幫助,當遇到復雜問題時甚至需要查看用戶手冊以尋找答案。大多數現代軟件都提供聯機幫助設施,這使得用戶可以不離開用戶界面就解決自己的問題常見的幫助設施有集成的和附加的兩類。第28頁,共38頁。5.5 人機界面設計出錯信息處理出錯信息和警告信息,是出現問題時交互式系統(tǒng)給出的“壞消息”。出錯信息設計得不好,將向用戶提供無用的或誤導的信息,反而增加了用戶的挫折

13、感。命令交互命令行曾經是用戶和系統(tǒng)軟件交互的最常用方式,而且也曾經廣泛地用于各種應用軟件中?,F在,面向窗口的、點擊和拾取方式的界面已經減少了用戶對命令行的依賴,但是,許多高級用戶仍然偏愛面向命令的交互方式。在多數情況下,用戶既可以從菜單中選擇軟件功能也可以通過鍵盤命令序列調用軟件功能。第29頁,共38頁。5.5 人機界面設計用戶界面設計是一個迭代的過程,也就是說,通常先創(chuàng)建設計模型,再用原型實現這個設計模型,并由用戶試用和評估,然后根據用戶的意見進行修改。用戶界面設計主要依靠設計者的經驗。總結眾多設計者的經驗而得出的設計指南,有助于設計者設計出友好、高效的人機界面。本節(jié)介紹三類人機界面設計指南

14、。第30頁,共38頁。5.5 人機界面設計一般交互指南:一般交互指南涉及信息顯示、數據輸入和整體系統(tǒng)控制,因此,這些指南是全局性的,忽略它們將承擔較大風險。下面敘述一般交互指南。保持一致性。為人機界面中的菜單選擇、命令輸入、數據顯示以及眾多的其他功能,使用一致的格式。 提供有意義的反饋。向用戶提供視覺的和聽覺的反饋,以保證在用戶和界面之間建立雙向通信。在執(zhí)行有較大破壞性的動作之前要求用戶確認。如果用戶要刪除一個文件,或覆蓋一些重要信息,或請求終止一個程序運行,應該給出“您是否確實要”的信息,以請求用戶確認他的命令。允許取消絕大多數操作。UNDO或REVERSE功能使眾多終端用戶避免了大量時間浪

15、費。每個交互式應用系統(tǒng)都應該能方便地取消已完成的操作。第31頁,共38頁。5.5 人機界面設計減少在兩次操作之間必須記憶的信息量。不應該期望用戶能記住一大串數字或名字,以便在下一步操作中使用它們。應該盡量減少記憶量。提高對話、移動和思考的效率。應該盡量減少擊鍵次數,設計屏幕布局時應該考慮盡量減少鼠標移動的距離,應該盡量避免出現用戶問:“這是什么意思”的情況。允許犯錯誤。系統(tǒng)應該保護自己不受致命錯誤的破壞。按功能對動作分類,并據此設計屏幕布局。下拉菜單的一個主要優(yōu)點就是能按動作類型組織命令。實際上,設計者應該盡力提高命令和動作組織的“內聚性”。提供對工作內容敏感的幫助設施用簡單動詞或動詞短語作為

16、命令名。過長的命令名難于識別和記憶,也會占據過多的菜單空間第32頁,共38頁。5.5 人機界面設計信息顯示指南:如果人機界面顯示的信息是不完整的,含糊的或難于理解的,則應用軟件顯然不能滿足用戶的需求??梢杂枚喾N不同方式“顯示”信息:用文字、圖片和聲音;按位置、移動和大??;使用顏色、分辨率和省略。下面是關于信息顯示的設計指南。只顯示與當前工作內容有關的信息。用戶在獲得有關系統(tǒng)的特定功能的信息時,不必看到與之無關的數據、菜單和圖形。不要用數據淹沒用戶,應該用便于用戶迅速地吸取信息的方式來表示數據。例如,可以用圖形或圖表來取代巨大的表格。使用一致的標記、標準的縮寫和可預知的顏色。顯示的含義應該非常明

17、確,用戶不必參照其他信息源就能理解。第33頁,共38頁。5.5 人機界面設計允許用戶保持可視化的語境。如果對圖形顯示進行縮放,原始的圖像應該一直顯示著(以縮小的形式放在顯示屏的一角),以使用戶知道當前觀察的圖像部分在原圖中所處的相對位置。產生有意義的出錯信息使用大小寫、縮進和文本分組以幫助理解。人機界面顯示的信息大部分是文字,文字的布局和形式對用戶從中吸取信息的難易程度有很大影響。使用窗口分隔不同類型的信息。利用窗口用戶能夠方便地“保存”多種不同類型的信息第34頁,共38頁。5.5 人機界面設計使用“模擬”顯示方式表示信息,以使信息更容易被用戶吸取。例如,顯示煉油廠儲油罐的壓力時,如果使用簡單

18、的數字表示壓力,則不易引起用戶注意。但是,如果用類似溫度計的形式來表示壓力,用垂直移動和顏色變化來指示危險的壓力狀況,就能引起用戶的警覺,因為這樣做為用戶提供了絕對和相對兩方面的信息高效率地使用顯示屏。當使用多窗口時,應該有足夠的空間使得每個窗口至少都能顯示出一部分。此外,屏幕大小應該選得和應用系統(tǒng)的類型相配套(這實際上是一個系統(tǒng)工程問題)。第35頁,共38頁。數據輸入指南用戶的大部分時間用在選擇命令、鍵入數據和向系統(tǒng)提供輸入。在許多應用系統(tǒng)中,鍵盤仍然是主要的輸入介質,但是,鼠標、數字化儀和語音識別系統(tǒng)正迅速地成為重要的輸入手段。下面是關于數據輸入的設計指南。盡量減少用戶的輸入動作。最重要的是減少擊鍵次數,這可以用下列方法實現:用鼠標從預定義的一組輸入中選一個;用“滑動標尺”在給定的值域中指定輸入值;利用宏把一次擊鍵轉變成更復雜的輸入數據集合。保持信息顯示和數據輸入之間的一致性。顯示的視覺特征(例如,文字大小、顏色和位置)應該與輸入域一致。第36頁,共38頁。允許用戶自定義輸入。專家級的用戶可能希望定義自己專用的命令或略去某些類型的警告信息和動作確認,人機界面應該允許用戶這樣做。交互應該是靈活的,并

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論