軟件項(xiàng)目的詳細(xì)設(shè)計(jì)精_第1頁
軟件項(xiàng)目的詳細(xì)設(shè)計(jì)精_第2頁
軟件項(xiàng)目的詳細(xì)設(shè)計(jì)精_第3頁
軟件項(xiàng)目的詳細(xì)設(shè)計(jì)精_第4頁
軟件項(xiàng)目的詳細(xì)設(shè)計(jì)精_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、軟件工程項(xiàng)目4軟件項(xiàng)目的詳細(xì)設(shè)計(jì)軟件設(shè)計(jì)的任務(wù)從工程管理的角度來看,軟件設(shè)計(jì)分商步完成:。,將軟件需求轉(zhuǎn)化為數(shù)據(jù)結(jié)構(gòu)和軟件的系統(tǒng)結(jié)構(gòu)。-,即過程設(shè)計(jì),又稱為程序設(shè)計(jì)。通過對(duì)結(jié)構(gòu)表示進(jìn)行細(xì)化,得到軟件詳細(xì) 的數(shù)據(jù)結(jié)構(gòu)和算法。詳細(xì)設(shè)計(jì)的目標(biāo)是構(gòu)造一個(gè)高內(nèi)聚、低耦詳細(xì)設(shè)計(jì)的任務(wù)Program Design 工 Coding為SC圖的每個(gè)模塊確定算法和數(shù)據(jù)結(jié)構(gòu)進(jìn)行詳細(xì)設(shè)計(jì)的原則在保證正確可靠前提下,盡量提高算法可讀性采用結(jié)構(gòu)化設(shè)計(jì)方法,改善控制結(jié)構(gòu),降低程序復(fù)雜度, 提高可測(cè)試性和可維護(hù)性自頂向下逐步求精:具有單入、單岀的控制結(jié)構(gòu)(取消GOTO語句)用工具無二義的描述模塊算法詳細(xì)設(shè)計(jì)的任務(wù)詳細(xì)設(shè)計(jì)過程

2、1 確定每個(gè)模塊的算法選擇適當(dāng)工具表達(dá)算法執(zhí)行過程2. 確定每一個(gè)模塊的數(shù)據(jù)組織3 為每一個(gè)模塊設(shè)計(jì)一組測(cè)試用例輸入數(shù)據(jù)、預(yù)期輸出結(jié)果4.編寫詳細(xì)設(shè)計(jì)說明書5 設(shè)計(jì)評(píng)審詳細(xì)設(shè)計(jì)的任務(wù)詳細(xì)設(shè)計(jì)內(nèi)容用圖表列出系統(tǒng)的每個(gè)程序,包括每個(gè)模塊和子程序名稱、 標(biāo)識(shí)符.層岀結(jié)構(gòu)關(guān)系對(duì)程序的功能、性能、輸入、輸岀、算法、流程、接口等 進(jìn)行描述內(nèi)容包括程序描述:程序簡(jiǎn)要描述,意義和特點(diǎn)功能:程序應(yīng)具備的功能性能:精度、靈活性和時(shí)間特性等輸入項(xiàng)輸岀項(xiàng)詳細(xì)設(shè)計(jì)的任務(wù)詳細(xì)設(shè)計(jì)內(nèi)容。內(nèi)容包括算法:具體的計(jì)算步驟和過程接口:模塊的隸屬關(guān)系、調(diào)用方式和參數(shù)、與模塊直接關(guān)聯(lián) 的數(shù)據(jù)結(jié)構(gòu)(如數(shù)據(jù)庫(kù)表、文件等)存儲(chǔ)分配(根據(jù)需要

3、)注釋設(shè)計(jì):程序注釋說明限制條件:程序運(yùn)行中所受的限制條件詳細(xì)設(shè)計(jì)的任務(wù)詳細(xì)設(shè)計(jì)優(yōu)化在不考慮時(shí)間因素的前提下開發(fā)并楮化軟件結(jié)構(gòu)選出最耗時(shí)的模塊,仔細(xì)設(shè)計(jì)處理算法孤立出大量占有處理機(jī)資源的模塊必要時(shí)重新設(shè)計(jì)或用依賴于機(jī)器的語言重寫大量占有資源 的模塊結(jié)構(gòu)程序設(shè)計(jì)> 1結(jié)構(gòu)程序設(shè)計(jì)的提出結(jié)構(gòu)程序設(shè)計(jì)概念最早1965年由E.W.Dijkstra提出 “可以從髙級(jí)語言中取消goto語句”“程序的質(zhì)呈與程序中所包含的GOTO語句的數(shù)星成反比”1 966年 bohm 和Jacopini 證明了 :只用三種基本的控制結(jié)構(gòu)能實(shí)現(xiàn)任何單入口單出口的程序1 968年人們認(rèn)識(shí)要?jiǎng)?chuàng)立一種新的程序設(shè)計(jì)思想以顯著地

4、提高軟件生產(chǎn)率和降低軟件維護(hù)代價(jià)結(jié)構(gòu)程序設(shè)計(jì)>1結(jié)構(gòu)程序設(shè)計(jì)的提岀1971年IBM公司成功地使用了結(jié)構(gòu)程序設(shè)計(jì)技術(shù)紐約時(shí)報(bào)信息庫(kù)管理系統(tǒng)美國(guó)宇航局空間實(shí)驗(yàn)室飛行模擬系統(tǒng)1972年IBM公司的Mills進(jìn)一步補(bǔ)充了結(jié)構(gòu)程序設(shè)計(jì)的 規(guī)則結(jié)構(gòu)程序設(shè)計(jì)> 2結(jié)構(gòu)程序設(shè)計(jì)分類只允許使用順序、IF-THEN-ELSE分支和DO-WHILE型循 環(huán)這三種基本控制結(jié)構(gòu),稱為 廠;辛代計(jì)還允許使用DO-CASE多分支結(jié)構(gòu)和DO-UNTIL循環(huán)結(jié)構(gòu). 稱為獷11的結(jié)構(gòu)程序設(shè)計(jì)如果再加上允許使用LEAVE(或BREAK)結(jié)構(gòu),稱為:I 結(jié)構(gòu) 程序設(shè)計(jì)人機(jī)界面設(shè)計(jì)人機(jī)界面的設(shè)計(jì)四個(gè)方面1:1系統(tǒng)響應(yīng)時(shí)間

5、用戶幫助設(shè)施 出錯(cuò)信息處理 命令交互1. 系統(tǒng)響應(yīng)時(shí)間系統(tǒng)響應(yīng)時(shí)間指從用戶完成某個(gè)控制動(dòng)作(例如,按回車鍵或點(diǎn)擊鼠標(biāo)),到軟件 給岀預(yù)期響應(yīng)(輸岀信息或做動(dòng)作)之間的時(shí)間。人機(jī)界面設(shè)計(jì)1.系統(tǒng)響應(yīng)時(shí)間系統(tǒng)響應(yīng)時(shí)間有兩個(gè)重要屬性。響應(yīng)長(zhǎng)度系統(tǒng)響應(yīng)時(shí)間過長(zhǎng),用戶就會(huì)感到緊張和沮喪系統(tǒng)響應(yīng)時(shí)間過短,會(huì)迫使用戶加快操作節(jié)奏.從而可能會(huì)犯錯(cuò) 誤易變性(系統(tǒng)響應(yīng)時(shí)間的更重要的屬性)指系統(tǒng)響應(yīng)時(shí)間相對(duì)于平均響應(yīng)時(shí)間的偏差響應(yīng)時(shí)間易變性低也有助于用戶建立起穩(wěn)定的工作節(jié)奏例如,穩(wěn)定在1秒的響應(yīng)時(shí)間比從0.1秒到2.5秒變化的響應(yīng)時(shí)間要好人機(jī)界面設(shè)計(jì)2 用戶幫助設(shè)施常見的幫助設(shè)施可分為和I; 兩類集成的幫助設(shè)施從

6、一開始就設(shè)計(jì)在軟件里面它對(duì)用戶工作內(nèi)容是敏感的可縮短用戶獲得幫助的時(shí)間.增加界面的友好性附加的幫助設(shè)施是在系統(tǒng)建成后再添加到軟件中的實(shí)際是一種查詢能力有限的聯(lián)機(jī)用戶手冊(cè)人們普遍認(rèn)為.集成的幫助設(shè)施優(yōu)于附加的幫助設(shè)施設(shè)計(jì)幫助設(shè)施時(shí)必須解決下述問題(】)交互期間是否在任何時(shí)候都能獲得關(guān)于任何功能的幫助?有兩種選擇:提供功能的幫助信息和提供全部功能的幫助信息(2) 用戶怎樣謂求幫助?有3種選擇:幫助菜單.特殊功能鍵和HELP命令(3) 怎樣顯示幫助信息?有3種選擇:在獨(dú)立的窗口中.指岀參考其個(gè)文檔和在屏幕固定位 畫顯示簡(jiǎn)短提示(4) 用戶怎樣返回到正常的交互方式中?有兩種選擇:屏算上的返回按鈕和功能

7、鍵(5) 怎樣組織幫助信息?有3種選擇平面結(jié)構(gòu)(所有信息都通過關(guān)縫字訪問).信息的層次結(jié)人機(jī)界面設(shè)計(jì)3. 岀錯(cuò)信息處理。出錯(cuò)倍患和警告借息是岀現(xiàn)問題時(shí)交互式系統(tǒng)給岀的“壞消息“看鯉亂交互式系統(tǒng)給岀的岀錯(cuò)信息或警告信息,應(yīng)該具(1 )應(yīng)該用用戶可以理解的術(shù)語描述問題(2) 應(yīng)該提供有助于從錯(cuò)誤中恢復(fù)的建設(shè)性意見(3) 信息應(yīng)該指出錯(cuò)誤可能導(dǎo)致哪些負(fù)面后果(4) 信息應(yīng)該伴隨若聽覺上或視覺上的提示例如.在顯示信息時(shí)同時(shí)發(fā)出警告鈴聲或者信息用閃爍方式顯示或者用明顯表示出錯(cuò)的顏色顯示(5) 信息不能帶有搞責(zé)色彩也就是說.不能責(zé)怪用戶4. 命令交互在提供命令交互方式時(shí),必須考慮下列設(shè)計(jì)問題(1 )是否每

8、個(gè)菜單選項(xiàng)都有對(duì)應(yīng)的命令?(2) 采用何種命令形式?有3種選擇:控制序列(例如,Ctrl+P)功能鍵和鍵入命令:(3) 學(xué)習(xí)和記憶命令的難度有多大?忘記了怎么辦?(4) 用戶是否可以定制或縮寫命令?人機(jī)界面設(shè)計(jì)人機(jī)界面設(shè)計(jì)過程 用戶界面設(shè)計(jì)是一個(gè)迭代的過程創(chuàng)建設(shè)計(jì)模型再用原型實(shí)現(xiàn)這個(gè)設(shè)計(jì)模型-由用戶試用 和評(píng)估根據(jù)用戶意見進(jìn)行修改用于界面設(shè)計(jì)和原型開發(fā)的軟件工具用戶界面工具箱用戶界面開發(fā)系統(tǒng)用戶界面的評(píng)估周期如下所述完成初步設(shè)計(jì)之后就創(chuàng)建第一級(jí)原型;用戶試用井評(píng)估該原型,向設(shè)計(jì)者表述對(duì)界面的評(píng)價(jià)設(shè)計(jì)者根據(jù)用戶意見修改設(shè)計(jì)井實(shí)現(xiàn)下一級(jí)原型人機(jī)界面設(shè)計(jì)過程 運(yùn)用下述評(píng)估標(biāo)準(zhǔn)對(duì)設(shè)計(jì)進(jìn)行早期復(fù)審:(1

9、) 系統(tǒng)及具界面的規(guī)格說明書的長(zhǎng)度和復(fù)雜程度預(yù)示了用戶學(xué)習(xí)使用該系統(tǒng)所需要的工作塑(2) 命令或動(dòng)作的數(shù)呈、命令的平均參數(shù)個(gè)數(shù)或動(dòng)作中單個(gè)操作 的個(gè)數(shù)預(yù)示了系統(tǒng)的交互時(shí)間和總體效率(3) 動(dòng)作、命令和系統(tǒng)狀態(tài)的數(shù)量預(yù)示了用戶學(xué)習(xí)使用該系統(tǒng)時(shí)需要記憶的內(nèi)容的多少(4) 界面風(fēng)格、幫助設(shè)施和出錯(cuò)處理協(xié)議人機(jī)界面設(shè)計(jì)人機(jī)界面設(shè)計(jì)指南一般交互指南涉及信息顯示、數(shù)據(jù)輸入和系統(tǒng)整體控制(1) 保持一致性應(yīng)該為人機(jī)界面中的菜單選擇、命令輸入、數(shù)據(jù)顯示以及眾 多的其他功能,使用一致的格式(2) 提供有意義的反饋應(yīng)向用戶提供視覺的和聽覺的反饋.以保證在用戶和系統(tǒng)之 間建立雙向通信。(3) 在執(zhí)行有破壞性的動(dòng)作之

10、前要求用戶確認(rèn)人機(jī)界面設(shè)計(jì)指南1一般交互指南(4) 允許取消絕大多數(shù)操作 UND O或REVERSE功能曾經(jīng)使眾多終端用戶避免了大屋時(shí)間 浪費(fèi)(5) 也少在兩次操作之間必須記憶的信息屋不應(yīng)該期望用戶能記住在下一步操作中需使用的一大串?dāng)?shù)字 或標(biāo)識(shí)符(6) 提高對(duì)話、移動(dòng)和思考的效率應(yīng)該盡星減少用戶擊鍵的次數(shù) 設(shè)計(jì)屏算布局時(shí)應(yīng)該考慮盡量減少鼠標(biāo)移動(dòng)的距離應(yīng)該盡塑避免出現(xiàn)用戶問這是什么意思卞的情況人機(jī)界面設(shè)計(jì)人機(jī)界面設(shè)計(jì)指南1 一般交互指南(續(xù)上頁)(7) 允許犯錯(cuò)誤系統(tǒng)應(yīng)該能保護(hù)自己不受嚴(yán)重錯(cuò)誤的破壞.(8) 按功能對(duì)動(dòng)作分類,并據(jù)此設(shè)計(jì)屏幕布局設(shè)計(jì)者應(yīng)該盡力提高命令和動(dòng)作組織的“內(nèi)聚性(9) 提

11、供對(duì)用戶工作內(nèi)容敏感的幫助設(shè)施(10) 用簡(jiǎn)單動(dòng)詞或動(dòng)詞短語作為命令名人機(jī)界面設(shè)計(jì)指南2信息顯示指南(1) 只顯示與當(dāng)前工作內(nèi)容有關(guān)的信息聚鬍勰有關(guān)功能的信息時(shí)不必看到與之無關(guān)的數(shù)據(jù)、(2) 不要用數(shù)掃淹沒用戶應(yīng)該用便于用戶迅速吸取信息的方式來表示數(shù)據(jù)例如.可以用圖形或圖表來取代龐大的表格.(3) 使用一致標(biāo)記、標(biāo)準(zhǔn)的縮寫和可預(yù)知的顏色顯示的含義應(yīng)該非常明確.用戶無須參照其他信息源就能理 解,人機(jī)界面設(shè)計(jì)人機(jī)界面設(shè)計(jì)指南2信息顯示指南(續(xù)上頁)(4) 允許用戶保持可視化的語境(5) 產(chǎn)生有意義的出錯(cuò)信息(6) 使用大小寫、縮進(jìn)和文本分組以幫助理解(7) 使用窗口分隔不同類型的信息(8) 使用“

12、模擬”顯示表示倍息.以使信息更容易被用戶提 取(9) 高效率地使用顯示屏人機(jī)界面設(shè)計(jì)指南3數(shù)據(jù)輸入指南(1) 盡量減少用戶的輸入動(dòng)作最重要的是減少擊鍵次數(shù)(2) 保持信患顯示和數(shù)據(jù)輸入之間的一致性顯示的視覺特征(例如文字大小、顏色和位置)應(yīng)與輸入域一 致(3) 允許用戶自定義輸入(4) 交互應(yīng)該是靈活的,井且可調(diào)整成用戶最喜歡的輸入方 式人機(jī)界面設(shè)計(jì)人機(jī)界面設(shè)計(jì)指南3數(shù)據(jù)輸入指南(續(xù)上頁)(5) 使在當(dāng)前動(dòng)作語境中不適用的命令不起作用(6) 讓用戶控制交互流用戶應(yīng)該能夠跳過不必要的動(dòng)作改變所需做的動(dòng)作的順序(在應(yīng)用環(huán)境允許的前提下)以及在不退岀程序的情況下從錯(cuò)誤狀態(tài)中恢復(fù)正常(7) 對(duì)所有輸入

13、動(dòng)作都提供幫助(8) 消除冗余的輸入不要要求用戶指定輸入數(shù)據(jù)的單位盡可能提供默認(rèn)值過程設(shè)計(jì)工具在詳?shù)柙O(shè)計(jì)階段要決定冬個(gè)模塊的實(shí)現(xiàn)算法. 并精確地表達(dá)這些算法.表達(dá)過程規(guī)格說明的工具叫做評(píng)鈿設(shè)計(jì)工JU它 可以分為以下三類: 糾彩二吳(程序流淮聞)畝裕二臭(判完沅)語言工臭(PMJ過程設(shè)計(jì)工具1 程序流程圖在40年代末到70年代中期,程序流程圖一直是軟件設(shè)計(jì) 的工具它以對(duì)控制流程的描繪直觀、易于掌握而被設(shè)計(jì)人員青睞依據(jù)國(guó)家標(biāo)準(zhǔn)(CB1 526-89),列岀有關(guān)程序流程圖的 基本符號(hào)過程設(shè)計(jì)工具數(shù)據(jù) 處理待處理準(zhǔn)備 判斷循環(huán)上.卜界連接端點(diǎn)符注解符 流線 虛線 省略符 并行方式 多出口判斷過程設(shè)計(jì)工

14、具。程序流程圖也稱為程序桓程序滾程閔Q五種基本理 I站構(gòu)是:后判定塑循環(huán) (DO-INTIL)循環(huán)約桁進(jìn)符號(hào)循壞名進(jìn)入循壞條件循環(huán)體循環(huán)體衛(wèi)環(huán)名 /(a) while Off(b) until型循環(huán)過程設(shè)計(jì)工具程序流程圖優(yōu)點(diǎn):容易掌握,且歷史“悠久”,使用廣泛.缺點(diǎn):本質(zhì)上不具備逐步求精的特點(diǎn),對(duì)于提高 大型系統(tǒng)的可理解性作用甚微; 不易表示數(shù)據(jù)結(jié)構(gòu); 轉(zhuǎn)移控制太方便趨勢(shì):已停止使用過程設(shè)計(jì)工具2. 盒圖(N-S圖)N-S圖是NassinShneiderman提岀來的,它體 現(xiàn)了結(jié)構(gòu)程序設(shè)計(jì)精神,是目前過程設(shè)計(jì)中廣 泛使用的一種圖形工具?;痉?hào)過程設(shè)計(jì)工具2盒圖(N-S圖)bXxlX Cas

15、e x. /fx2x3x4x6/、x5dg1cehX7x8J圖的嵌參完火夠式過程設(shè)計(jì)工具> N-S圖的特點(diǎn)優(yōu)點(diǎn)功能域(一個(gè)特定控制結(jié)構(gòu)的作用域)明確.可以從盒圖上一眼就 看岀來.沒有箭頭不允許隨意轉(zhuǎn)移控制,不可能任意轉(zhuǎn)移控制很容易確定局部和全程數(shù)據(jù)的作用域.很容易表現(xiàn)嵌套關(guān)系,也可以表示模塊的層次結(jié)構(gòu)。缺點(diǎn)隨著程序內(nèi)嵌套的層數(shù)增多時(shí).內(nèi)層方框越來越小,這樣不僅會(huì) 增加畫圖的難度,還會(huì)影響圖形的清晰度過程設(shè)計(jì)工具3. PAD圖PAD (Problem Analysis Diagram)問題分析圖 日立公司中央研究所在1973年研究開發(fā) 使用二維樹形結(jié)構(gòu)圖描述程序的邏輯PAD圖的優(yōu)點(diǎn):程序一

16、定是結(jié)構(gòu)化的,PAD圖中豎線的總條數(shù)就是程序中的 層次數(shù),既表示程序邏輯.也描繪數(shù)據(jù)統(tǒng)構(gòu)過程設(shè)計(jì)工具THENEI-SESequentialWhile P| SIJnlil P | | S |LoopsDefinitionedefItfil說好工耳例:NS圖與PAD的轉(zhuǎn)換btXlf心/lDo-Vntilgh123Do-Whilede“3CfaUntil X5/b”Until *6“4 Jkh開始T結(jié)束T4判定表判定表能夠清晰地表示復(fù)雜的條件組合與所產(chǎn)生的動(dòng)作之 前的關(guān)系。一張判定表由四部分組成:左上部列出所有的條件I左下部是所有可能的操作111右上部是各種條件的組合矩陣II右下部是每種條件組合對(duì)應(yīng)的動(dòng)作IV過程設(shè)計(jì)工具4判定表一張判定表由四部分組成:左上部列岀所有的條件I左下部是所有可能的操作111右上部是各種條件的組合矩陣1【右下部是每種條件組合對(duì)應(yīng)的動(dòng)作KI條件II條件組合矩陣IV動(dòng)作m操作過程設(shè)計(jì)工具5判定樹表示復(fù)雜的條件組合與應(yīng)做的動(dòng)作之間的對(duì)應(yīng)關(guān)系 判定樹形式簡(jiǎn)單,長(zhǎng)期以來一直受到重視 判定樹的簡(jiǎn)潔性不如判定表經(jīng)常岀現(xiàn)同一個(gè)值重復(fù)寫多遍且葉端重復(fù)次數(shù)急劇增加由于判定樹的分枝次序?qū)τ谧罱K畫岀的判定樹的簡(jiǎn)潔程 度有較大影響所以選擇哪一個(gè)條件作為第一個(gè)分枝是至關(guān)重要的過程設(shè)計(jì)工具6偽碼和過程設(shè)計(jì)語言(PDL)是一種“混雜式語言”,也稱為結(jié)構(gòu)化英語采用了某種語言(如英語或自然

溫馨提示

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

評(píng)論

0/150

提交評(píng)論