實用軟件課件第3章_第1頁
實用軟件課件第3章_第2頁
實用軟件課件第3章_第3頁
實用軟件課件第3章_第4頁
實用軟件課件第3章_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章結構化設計主要內容:軟件設計步驟軟件結構設計軟件結構設計的圖形工具面向數(shù)據(jù)流設計方法過程設計工具系統(tǒng)人機界面設計數(shù)據(jù)代碼設計面向數(shù)據(jù)結構的設計方法軟件設計文檔本章重點:l

軟件結構設計l

過程設計工具l

人機界面設計《實用軟件工程(第4版)》13.1軟件設計步驟

概要設計和詳細設計概要設計的基本任務1.

確定設計方案2.軟件結構設計3.數(shù)據(jù)文件設計4.制定測試計劃5.書寫概要設計文檔3.1.1概要設計步驟

1、確定設計方案設計供選擇的方案

推薦最佳實現(xiàn)方案

2、軟件結構設計(功能分解、軟件結構設計)3、數(shù)據(jù)文件設計:數(shù)據(jù)代碼設計和數(shù)據(jù)庫設計

4、制定測試計劃:主要根據(jù)系統(tǒng)功能來設計,稱為黑盒法測試。

5、書寫概要設計文檔系統(tǒng)說明、用戶手冊、測試計劃、軟件工程進度計劃、數(shù)據(jù)文件設計結果(數(shù)據(jù)代碼、數(shù)據(jù)庫設計)?!秾嵱密浖こ蹋ǖ?版)》23.1.2詳細設計的基本任務1、數(shù)據(jù)結構設計和數(shù)據(jù)庫設計(進一步細化)2、接口設計3、過程設計4、代碼設計、輸入輸出設計和網(wǎng)絡設計5、編寫詳細設計說明書、軟件操作手冊等6、復審?!秾嵱密浖こ蹋ǖ?版)》33.2軟件結構設計

3.2.1軟件結構設計的基本原理

1、模塊:能單獨命名、單獨完成一定功能的程序元素。

2、抽象和逐步求精

3、信息隱蔽和局部化等。3.2.2模塊化模塊化(Modularization)是把系統(tǒng)分割成能完成獨立功能的模塊。1.模塊化的效果2.模塊分割方法①橫向分割

②縱向分割

先確定中心控制模塊,由控制模塊指示從屬模塊,逐次進行分解。3.模塊分割順序《實用軟件工程(第4版)》43.2.3模塊獨立性

1.模塊的耦合軟件結構中模塊之間互相依賴的程度用耦合來度量。數(shù)據(jù)耦合控制耦合特征耦合公共環(huán)境耦合內容耦合總之,應:在盡量使用數(shù)據(jù)耦合,少用控制耦合和特征耦合,用參數(shù)傳遞信息,不采用內容耦合,盡量控制公共環(huán)境耦合?!秾嵱密浖こ蹋ǖ?版)》52.模塊的內聚

一個模塊內各個元素彼此結合的緊密程度用內聚來度量。(1)偶然內聚(2)邏輯內聚(3)時間內聚(4)過程內聚(5)通信內聚(6)順序內聚(7)功能內聚內聚按緊密程度從高到低排列:功能內聚、順序內聚、通信內聚、過程內聚、時間內聚、邏輯內聚、偶然內聚?!秾嵱密浖こ蹋ǖ?版)》陸惠恩編著63.2.4模塊設計啟發(fā)規(guī)則1.提高模塊獨立性2.注意模塊的可靠性、通用性、可維護性、簡單性3.模塊的大小應適中4.模塊的深度、寬度、扇出和扇入應適當5.模塊接口簡單清晰設計得好的軟件結構,頂層扇出高,中間扇出較少,下層調用公共模塊。

《實用軟件工程(第4版)》7

3.3軟件結構設計的圖形工具

3.3.1層次圖(或HIPO圖)[例3.1]醫(yī)療管理系統(tǒng)的HIPO圖《實用軟件工程(第4版)》83.3.2結構圖

1.結構圖的符號(1)方框代表模塊,框內注明模塊的名字和主要功能。(2)方框之間的大箭頭或直線表示模塊的調用關系。(3)帶注釋的小箭頭表示模塊調用時傳遞的信息及其傳遞方向。尾部加空心圓的小箭頭表示傳遞數(shù)據(jù)信息。尾部加實心圓的小箭頭表示傳遞控制信息。(4)選擇結構(5)循環(huán)結構,模塊H循環(huán)調用模塊A,B,C,《實用軟件工程(第4版)》92.繪制結構圖

【例3.2】學生成績管理系統(tǒng)的結構圖《實用軟件工程(第4版)》103.4面向數(shù)據(jù)流設計方法結構化方法又稱面向數(shù)據(jù)流設計方法(StructuredDesign,SD)。設計步驟:先根據(jù)系統(tǒng)數(shù)據(jù)流圖建立系統(tǒng)邏輯模型,再進行結構設計。變換型數(shù)據(jù)流【例3.3】招聘考試成績管理系統(tǒng)系統(tǒng)屬于變換型數(shù)據(jù)流。2.事務型數(shù)據(jù)流【例3.4】圖書館管理系統(tǒng)屬于事務型數(shù)據(jù)流?!秾嵱密浖こ蹋ǖ?版)》11

3.5過程設計工具過程設計就是用順序、選擇和循環(huán)三種結構的有限次組合或嵌套,描述模塊功能的實現(xiàn)算法。過程設計階段的工具:流程圖、N_S圖、問題分析圖(PAD圖)、判定表、判定樹、過程設計語言(PDL)等。3.5.1流程圖1.流程圖的分類(1)數(shù)據(jù)流程圖(2)程序流程圖(3)系統(tǒng)流程圖(4)程序網(wǎng)絡圖(5)系統(tǒng)資源圖《實用軟件工程(第4版)》陸惠恩

主編122.流程圖符號《實用軟件工程(第4版)》陸惠恩編著133.流程圖使用約定

多分支結構《實用軟件工程(第4版)》陸惠恩編著14分支結構流程圖的連接流程圖(a)中B4的詳細流程圖4.流程圖的三種基本結構:

順序、選擇、循環(huán)。

《實用軟件工程(第4版)》陸惠恩編著153.5.2盒圖

盒圖是Nassi和Shneiderman提出的,又稱N_S圖。

1.盒圖的符號《實用軟件工程(第4版)》陸惠恩編著16【例3.7】學生成績管理系統(tǒng)的PAD圖

《實用軟件工程(第4版)》陸惠恩編著17【例3.5】將下述含GOTO語句的程序流程圖,改為N_S圖。

《實用軟件工程(第4版)》陸惠恩編著183.5.3PAD圖

1、基本符號《實用軟件工程(第4版)》193.5.4判定表

1.判定表的組成左上部列出所有條件。左下部列出所有可能做的工作。右上部每一列表示各種條件的一種可能組合,所有列表示條件組合的全部可能情況。右下部的每一列是和每一種條件組合所對應的應做的工作。2.判定表中的符號右上部用“T”表示條件成立,用“F”表示條件不成立,空白表示條件成立與否不影響。右下部畫“X”表示做該行左邊列出的那項工作,空白表示不做該項工作?!秾嵱密浖こ蹋ǖ?版)》20例3.8用判定表表示教師課時津貼費規(guī)定。某校對各種不同職稱教師,根據(jù)其是本校專職教師還是外聘兼職教師,決定其講課的課時津貼費。本校專職教師每課時津貼費:教授80元,副教授60元,講師50元,助教40元。外聘兼職教師每課時津貼費:教授90元,副教授80元,講師60元,助教50元?!秾嵱密浖こ蹋ǖ?版)》213.5.5判定樹

【例3.9】用判定樹表示教師課時津貼規(guī)定?!秾嵱密浖こ蹋ǖ?版)》223.5.6過程設計語言

過程設計語言(ProgramDesignLanguage,簡稱PDL),也稱偽碼,是一種混雜語言,說明某種結構化的程序設計語言的語法形式。用PDL表示的程序結構:1、

順序結構

處理1處理2

…處理32、選擇結構

IF-THEN-ELSE結構:IF條件處理1ELSE處理2ENDIFIF-THEN結構:IF條件處理1NDIF《實用軟件工程(第4版)》233.6系統(tǒng)人機界面設計

3.6.1人機界面設計問題1.系統(tǒng)響應時間2.用戶幫助設施3.出錯信息處理4.命令交互3.6.2人機界面設計過程用戶界面設計是一個迭代的過程,一般步驟如下:先設計和實現(xiàn)用戶界面原型。用戶試用該原型,向設計者提出對界面的評價。設計者根據(jù)用戶的意見修改設計并實現(xiàn)下一級原型。不斷進行下去,直到用戶滿意為止。3.6.3評價界面設計的標準3.6.4界面設計指南1.一般交互2.信息顯示3.數(shù)據(jù)輸入《實用軟件工程(第4版)》著243.7數(shù)據(jù)代碼設計

3.7.1代碼設計目的代碼是為了對數(shù)據(jù)進行識別、分類、排序等操作所使用的數(shù)字、文字或符號。代碼的性質

3.7.2代碼設計原則標準化:國際標準、國家標準、部頒標準或習慣標準惟一性

可擴充性

簡單性規(guī)范化

適應性

《實用軟件工程(第4版)》253.7.3代碼種類

1.順序碼

2.信息塊碼

3.歸組分類碼(如下表)

4.助記碼

5.數(shù)字式字符碼

6.組合碼

《實用軟件工程(第4版)》26信息代碼哲學100宗教200社會科學300

法律320

商法325

公司法3252

股份公司法32524

合股公司法325253.7.4代碼設計方法

基本步驟如下:1.確定編碼對象2.明確編碼目的3.確定代碼的個數(shù)4.確定代碼使用范圍和使用期限5.確定代碼體系和代碼位數(shù)6.確定編碼規(guī)則7.編寫代碼8.編寫代碼詞典《實用軟件工程(第4版)》273.8面向數(shù)據(jù)結構設計方法

Jackson把數(shù)據(jù)結構(或程序結構)分為以下三種基本類型:(a)順序(b)選擇(c)循環(huán)《實用軟件工程(第4版)》283.8面向數(shù)據(jù)結構的設計方法

Jacksan圖特點:

l

能對結構進行自頂向下分解,可清晰地表示層次結構

l

結構易讀、形象、直觀

l

既可表示數(shù)據(jù)結構也可表示程序結構

Jackson設計方法的四個步驟:1、分析并確定輸入數(shù)據(jù)和輸出數(shù)據(jù)的邏輯結構;2、找出輸入數(shù)據(jù)結構和輸出數(shù)據(jù)結構中有對應關系的數(shù)據(jù)單元;3、從描述數(shù)據(jù)結構的Jackson圖導出描述程序結構的Jackson圖;4、列出所有的操作和條件,并把它們分配到程序結構圖中去。

《實用軟件工程(第4版)》29【例3.10】用Jacksan方法對學生成績管理系統(tǒng)進行結構設計。學生成績管理系統(tǒng)在學生入學時輸入學生基本信息。每次單科成績是按班級內學生學號的順序依次輸入每位學生的平時成績和考試成績,成績輸入格式見表3.5。然后由計算機計算每位學生的單科成績總評分。輸出的學生個人成績單格式,見表3.6;班級各科成績匯總表格式,見表3.7?!秾嵱密浖こ蹋ǖ?版)》30學生成績管理系統(tǒng)結構Jacksan圖學生成績管理系統(tǒng)結構Jacksan圖《實用軟件工程(第4版)》31輸入、輸出的Jacksan圖3.9軟件設計文檔3.9.1概要設計說明書3.9.2數(shù)據(jù)庫設計說明書3.9.3詳細設計說明書3.9.4操作手冊編寫提示《實用軟件工程(第4版)》32第3章小結

概要設計階段:確定設計方案和結構設計。詳細設計階段:過程設計、接口設計和數(shù)據(jù)設計。結構化設計要點:系統(tǒng)由層次結構的模塊構成;模塊是單入口單出口的;模塊的構造和聯(lián)結的基本準則是模塊獨立。評價模塊分割的標準:(1)模塊的大?。ǎ玻┠K之間的聯(lián)系程度(耦合)(3)模塊內的聯(lián)系程度(內聚)(4)模塊信息的隱蔽程度模塊設計規(guī)則:1.盡力提高模塊獨立性。2.注意模塊的可靠性、通用性、可維護性、簡單性。3.模塊的大小應適中4.模塊的深度、寬度、扇出和扇入應適當。軟件系統(tǒng)結構設計,可用層次圖、HIPO圖和結構圖。人機界面設計的質量影響用戶對軟件產(chǎn)品的評價,應對人機界面設計重視。詳細設計工具:流程圖、N_

溫馨提示

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

評論

0/150

提交評論