版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2021-7-10 軟件工程軟件工程 任課教師:任課教師:郭雷勇郭雷勇 E-mail: 2021-7-11 q一、詳細(xì)設(shè)計(jì)的概述 q二、詳細(xì)設(shè)計(jì)方法二、詳細(xì)設(shè)計(jì)方法 q三、詳細(xì)設(shè)計(jì)過(guò)程三、詳細(xì)設(shè)計(jì)過(guò)程 q四、案例分析四、案例分析 2021-7-12 詳細(xì)設(shè)計(jì)是將概要設(shè)計(jì)的框架內(nèi)容具 體化、明細(xì)化,將概要設(shè)計(jì)轉(zhuǎn)化為 可以操作的軟件模型. . 2021-7-13 q模塊描述:描述模塊的功能以及需要 解決的問(wèn)題,該模塊在什么時(shí)候被 調(diào)用,為什么需要這個(gè)模塊等。 q算法描述 q數(shù)據(jù)描述 2021-7-14 q一、詳細(xì)設(shè)計(jì)的概述一、詳細(xì)設(shè)計(jì)的概述 q二、詳細(xì)設(shè)計(jì)方法 q三、詳細(xì)設(shè)計(jì)過(guò)程三、詳細(xì)設(shè)計(jì)過(guò)程
2、q四、案例分析四、案例分析 2021-7-15 q結(jié)構(gòu)化的詳細(xì)設(shè)計(jì)方法 q面向?qū)ο蟮脑敿?xì)設(shè)計(jì)方法 2021-7-16 q圖形符號(hào)的設(shè)計(jì)方式 q表格的設(shè)計(jì)方式 q偽代碼 2021-7-17 2021-7-18 圖圖2 盒圖的基本符號(hào)盒圖的基本符號(hào) 2021-7-19 2021-7-110 圖圖3 PAD圖的基本符號(hào)圖的基本符號(hào) 2021-7-111 圖圖4 使用使用PAD圖提供的定義功能圖提供的定義功能 來(lái)逐步求精的例子來(lái)逐步求精的例子 2021-7-112 描述不同條件集合下采取行動(dòng)的若干組合的情況描述不同條件集合下采取行動(dòng)的若干組合的情況 條件樁條件樁條件條目條件條目 行動(dòng)樁行動(dòng)樁行動(dòng)條目行
3、動(dòng)條目 指定所有輸入可能 滿(mǎn)足的條件 指定可能發(fā)生的 不同行為的集合 2021-7-113 C1:a、b、c構(gòu)成三角形構(gòu)成三角形 C2:a=b? C3 : a=c? C4 : b=c? A1 :非三角形:非三角形 A2:不等邊三角形:不等邊三角形 A3:等腰三角形:等腰三角形 A4:等邊三角形:等邊三角形 A5:不可能:不可能 N X Y y y y X Y y y N X Y y N N X Y y N Y X Y N N N X 2021-7-114 程序設(shè)計(jì)語(yǔ)言(),也稱(chēng)為結(jié) 構(gòu)化英語(yǔ)或者偽代碼,它是一種混合語(yǔ) 言,它采用一種語(yǔ)言(例如英語(yǔ))的詞匯同 時(shí)采用類(lèi)似另外一種語(yǔ)言(例如,結(jié)構(gòu)化
4、 程序語(yǔ)言)的語(yǔ)法。 2021-7-115 q算法和數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì) q算法是設(shè)計(jì)對(duì)象中每個(gè)方法的實(shí)現(xiàn)規(guī)格算法是設(shè)計(jì)對(duì)象中每個(gè)方法的實(shí)現(xiàn)規(guī)格 q數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)與算法是同時(shí)進(jìn)行的數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)與算法是同時(shí)進(jìn)行的 q模塊和接口 q將對(duì)象定義為模塊將對(duì)象定義為模塊 q定義對(duì)象之間的接口和對(duì)象的總的結(jié)構(gòu)定義對(duì)象之間的接口和對(duì)象的總的結(jié)構(gòu) 2021-7-116 q一、詳細(xì)設(shè)計(jì)的概述一、詳細(xì)設(shè)計(jì)的概述 q二、詳細(xì)設(shè)計(jì)方法二、詳細(xì)設(shè)計(jì)方法 q三、詳細(xì)設(shè)計(jì)過(guò)程 q四、案例分析四、案例分析 2021-7-117 詳細(xì)設(shè)計(jì)過(guò)程 2021-7-118 詳細(xì)設(shè)計(jì)階段設(shè)計(jì)出的模塊質(zhì)量如何呢詳細(xì)設(shè)計(jì)階段設(shè)計(jì)出的模塊質(zhì)量如何
5、呢? 定量化度量程序復(fù)雜程度的方法很有價(jià)值:定量化度量程序復(fù)雜程度的方法很有價(jià)值: 把程序的復(fù)雜程度乘以適當(dāng)常數(shù)即可估算出軟把程序的復(fù)雜程度乘以適當(dāng)常數(shù)即可估算出軟 件中錯(cuò)誤的數(shù)量以及軟件開(kāi)發(fā)需要用的工作量件中錯(cuò)誤的數(shù)量以及軟件開(kāi)發(fā)需要用的工作量; 定量度量的結(jié)果可以用來(lái)比較兩個(gè)不同的設(shè)計(jì)定量度量的結(jié)果可以用來(lái)比較兩個(gè)不同的設(shè)計(jì) 或兩個(gè)不同算法的優(yōu)劣;或兩個(gè)不同算法的優(yōu)劣; 程序的定量的復(fù)雜程度可以作為模塊規(guī)模的精程序的定量的復(fù)雜程度可以作為模塊規(guī)模的精 確限度。確限度。 主要方法:主要方法:McCabe方法和方法和Halstead方法。方法。 2021-7-119 1. 流圖流圖 McCab
6、e方法根據(jù)程序控制流的復(fù)雜程度定方法根據(jù)程序控制流的復(fù)雜程度定 量度量程序的復(fù)雜程度,這樣度量出的結(jié)果量度量程序的復(fù)雜程度,這樣度量出的結(jié)果 稱(chēng)為程序的稱(chēng)為程序的環(huán)形復(fù)雜度環(huán)形復(fù)雜度。 為了突出表示程序的控制流,人們通常使為了突出表示程序的控制流,人們通常使 用用流圖流圖(也稱(chēng)為程序圖也稱(chēng)為程序圖)。 所謂流圖實(shí)質(zhì)上是所謂流圖實(shí)質(zhì)上是“退化了的退化了的”程序流程序流 程圖,它僅僅描繪程序的控制流程,完全不程圖,它僅僅描繪程序的控制流程,完全不 表現(xiàn)對(duì)數(shù)據(jù)的具體操作以及分支或循環(huán)的具表現(xiàn)對(duì)數(shù)據(jù)的具體操作以及分支或循環(huán)的具 體條件。體條件。 2021-7-120 在流圖中用圓表示結(jié)點(diǎn),一個(gè)圓代表一
7、條或多條語(yǔ)句。在流圖中用圓表示結(jié)點(diǎn),一個(gè)圓代表一條或多條語(yǔ)句。 程序流程圖中的一個(gè)順序的處理框序列和一個(gè)菱形判程序流程圖中的一個(gè)順序的處理框序列和一個(gè)菱形判 定框,可以映射成流圖中的一個(gè)結(jié)點(diǎn)。定框,可以映射成流圖中的一個(gè)結(jié)點(diǎn)。 流圖中的箭頭線(xiàn)稱(chēng)為邊,它和程序流程圖中的箭頭線(xiàn)流圖中的箭頭線(xiàn)稱(chēng)為邊,它和程序流程圖中的箭頭線(xiàn) 類(lèi)似,代表控制流。類(lèi)似,代表控制流。 !在流圖中一條邊必須終止于一個(gè)結(jié)點(diǎn),即使這在流圖中一條邊必須終止于一個(gè)結(jié)點(diǎn),即使這 個(gè)結(jié)點(diǎn)并不代表任何語(yǔ)句個(gè)結(jié)點(diǎn)并不代表任何語(yǔ)句(實(shí)際上相當(dāng)于一個(gè)空語(yǔ)句實(shí)際上相當(dāng)于一個(gè)空語(yǔ)句)。 由邊和結(jié)點(diǎn)圍成的面積稱(chēng)為區(qū)域,當(dāng)計(jì)算區(qū)域數(shù)時(shí)應(yīng)由邊和結(jié)點(diǎn)圍成
8、的面積稱(chēng)為區(qū)域,當(dāng)計(jì)算區(qū)域數(shù)時(shí)應(yīng) 該包括圖外部未被圍起來(lái)的那個(gè)區(qū)域。該包括圖外部未被圍起來(lái)的那個(gè)區(qū)域。 當(dāng)過(guò)程設(shè)計(jì)中包含復(fù)合條件時(shí)當(dāng)過(guò)程設(shè)計(jì)中包含復(fù)合條件時(shí) (邏輯邏輯OR,AND, NAND,NOR),應(yīng)該把復(fù)合條件分解為若干個(gè)簡(jiǎn)單條件,應(yīng)該把復(fù)合條件分解為若干個(gè)簡(jiǎn)單條件, 每個(gè)簡(jiǎn)單條件對(duì)應(yīng)流圖中一個(gè)結(jié)點(diǎn)。包含條件的結(jié)點(diǎn)稱(chēng)為每個(gè)簡(jiǎn)單條件對(duì)應(yīng)流圖中一個(gè)結(jié)點(diǎn)。包含條件的結(jié)點(diǎn)稱(chēng)為 判定節(jié)點(diǎn),從每個(gè)判定結(jié)點(diǎn)引出兩條或多條邊。判定節(jié)點(diǎn),從每個(gè)判定結(jié)點(diǎn)引出兩條或多條邊。 程序流程圖到流圖的映射程序流程圖到流圖的映射 2021-7-121 由由PDL翻譯成的流圖翻譯成的流圖 2021-7-122 由包含復(fù)
9、合條件的由包含復(fù)合條件的PDL映射成的流圖映射成的流圖 2021-7-123 2. 2. 計(jì)算環(huán)形復(fù)雜度的方法計(jì)算環(huán)形復(fù)雜度的方法 環(huán)形復(fù)雜度定量度量程序的邏輯復(fù)雜度。環(huán)形復(fù)雜度定量度量程序的邏輯復(fù)雜度。 有了描繪程序控制流的流圖之后,可以用下有了描繪程序控制流的流圖之后,可以用下 述述3種方法中的任何一種來(lái)計(jì)算環(huán)形復(fù)雜度。種方法中的任何一種來(lái)計(jì)算環(huán)形復(fù)雜度。 (1) 流圖中的區(qū)域數(shù)等于環(huán)形復(fù)雜度。流圖中的區(qū)域數(shù)等于環(huán)形復(fù)雜度。 (2) 流圖流圖G的環(huán)形復(fù)雜度的環(huán)形復(fù)雜度V(G)=E-N+2,其中,其中,E是流是流 圖中邊的條數(shù),圖中邊的條數(shù),N是結(jié)點(diǎn)數(shù)。是結(jié)點(diǎn)數(shù)。 (3) 流圖流圖G的環(huán)形復(fù)
10、雜度的環(huán)形復(fù)雜度V(G)=P+1,其中,其中,P是流是流 圖中判定結(jié)點(diǎn)的數(shù)目。圖中判定結(jié)點(diǎn)的數(shù)目。 2021-7-124 3. 3. 環(huán)形復(fù)雜度的用途環(huán)形復(fù)雜度的用途 程序的環(huán)形復(fù)雜度取決于程序控制流的復(fù)雜程程序的環(huán)形復(fù)雜度取決于程序控制流的復(fù)雜程 度,度,也即是取決于程序結(jié)構(gòu)的復(fù)雜程度。當(dāng)程序內(nèi)也即是取決于程序結(jié)構(gòu)的復(fù)雜程度。當(dāng)程序內(nèi) 分支數(shù)或循環(huán)個(gè)數(shù)增加時(shí),環(huán)形復(fù)雜度也隨之增加,分支數(shù)或循環(huán)個(gè)數(shù)增加時(shí),環(huán)形復(fù)雜度也隨之增加, 因此它是對(duì)測(cè)試難度的一種定量度量,也能對(duì)軟件因此它是對(duì)測(cè)試難度的一種定量度量,也能對(duì)軟件 最終的可靠性給出某種預(yù)測(cè)。最終的可靠性給出某種預(yù)測(cè)。 McCabe研究大量程
11、序后發(fā)現(xiàn),環(huán)形復(fù)雜度高的研究大量程序后發(fā)現(xiàn),環(huán)形復(fù)雜度高的 程序往往是最困難、最容易出問(wèn)題的程序。程序往往是最困難、最容易出問(wèn)題的程序。實(shí)踐表實(shí)踐表 明,模塊規(guī)模以明,模塊規(guī)模以V(G)10為宜,也就是說(shuō),為宜,也就是說(shuō), V(G)=10是模塊規(guī)模的一個(gè)更科學(xué)更精確的上限。是模塊規(guī)模的一個(gè)更科學(xué)更精確的上限。 2021-7-125 Halstead方法是另一個(gè)著名的方法,它根據(jù)程方法是另一個(gè)著名的方法,它根據(jù)程 序中運(yùn)算符和操作數(shù)的總數(shù)來(lái)度量程序的復(fù)雜程度。序中運(yùn)算符和操作數(shù)的總數(shù)來(lái)度量程序的復(fù)雜程度。 令令N1為程序中運(yùn)算符出現(xiàn)的總次數(shù),為程序中運(yùn)算符出現(xiàn)的總次數(shù),N2為操作數(shù)為操作數(shù) 出現(xiàn)
12、的總次數(shù),程序長(zhǎng)度出現(xiàn)的總次數(shù),程序長(zhǎng)度N定義為:定義為:N=N1+N2 詳細(xì)設(shè)計(jì)完成之后,可以知道程序中使用的不詳細(xì)設(shè)計(jì)完成之后,可以知道程序中使用的不 同運(yùn)算符同運(yùn)算符(包括關(guān)鍵字包括關(guān)鍵字)的個(gè)數(shù)的個(gè)數(shù)n1,以及不同操作數(shù),以及不同操作數(shù) (變量和常數(shù)變量和常數(shù))的個(gè)數(shù)的個(gè)數(shù)n2。Halstead給出預(yù)測(cè)程序長(zhǎng)給出預(yù)測(cè)程序長(zhǎng) 度的公式如下:度的公式如下:H=n1 log2 n1+n2 log2 n2 多次驗(yàn)證都表明,預(yù)測(cè)的長(zhǎng)度多次驗(yàn)證都表明,預(yù)測(cè)的長(zhǎng)度H與實(shí)際長(zhǎng)度與實(shí)際長(zhǎng)度N非常非常 接近。接近。 2021-7-126 Halstead還給出了預(yù)測(cè)程序中包含錯(cuò)誤的個(gè)還給出了預(yù)測(cè)程序中包含
13、錯(cuò)誤的個(gè) 數(shù)的公式如下:數(shù)的公式如下:E=N log2 (n1+n2)/3000 有人曾對(duì)從有人曾對(duì)從300條到條到12000條語(yǔ)句范圍內(nèi)的程條語(yǔ)句范圍內(nèi)的程 序核實(shí)了上述公式,發(fā)現(xiàn)預(yù)測(cè)的錯(cuò)誤數(shù)與實(shí)序核實(shí)了上述公式,發(fā)現(xiàn)預(yù)測(cè)的錯(cuò)誤數(shù)與實(shí) 際錯(cuò)誤數(shù)相比誤差在際錯(cuò)誤數(shù)相比誤差在8%之內(nèi)。之內(nèi)。 2021-7-127 軟件項(xiàng)目詳細(xì)設(shè)計(jì)軟件項(xiàng)目詳細(xì)設(shè)計(jì) 2021-7-128 q一、詳細(xì)設(shè)計(jì)的概述一、詳細(xì)設(shè)計(jì)的概述 q二、詳細(xì)設(shè)計(jì)方法二、詳細(xì)設(shè)計(jì)方法 q三、詳細(xì)設(shè)計(jì)過(guò)程三、詳細(xì)設(shè)計(jì)過(guò)程 q四、案例分析 2021-7-129 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì) 2021-7-130 詳細(xì)設(shè)計(jì)方法詳細(xì)設(shè)計(jì)方法 q結(jié)構(gòu)化詳細(xì)設(shè)計(jì)方法 q面向?qū)ο蟮脑敿?xì)設(shè)計(jì)方法 2021-7-131 1 假設(shè)只允許使用假設(shè)只允許使用SEQUENCE和和IF-THEN-ELSE兩種控制兩種控制 結(jié)構(gòu),怎樣利用它們完成結(jié)構(gòu),怎樣利用它們完成DO-WHIL
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版商品購(gòu)銷(xiāo)合同
- 2025年度貨場(chǎng)租賃及市場(chǎng)開(kāi)發(fā)合同3篇
- 安新縣初中中考數(shù)學(xué)試卷
- 中山項(xiàng)目文化墻施工方案
- 2025年牛津上海版四年級(jí)語(yǔ)文下冊(cè)月考試卷
- 2025年北師大新版七年級(jí)英語(yǔ)上冊(cè)階段測(cè)試試卷含答案
- 2025年岳麓版七年級(jí)歷史上冊(cè)階段測(cè)試試卷含答案
- 2025年度茶餐廳試用期廚師助理聘用合同3篇
- 2024版新教師入職導(dǎo)師培養(yǎng)合同版B版
- 經(jīng)濟(jì)在線(xiàn)課程設(shè)計(jì)
- EGD殺生劑劑化學(xué)品安全技術(shù)說(shuō)明(MSDS)zj
- GB/T 23858-2009檢查井蓋
- 超分子化學(xué)-第三章 陰離子的絡(luò)合主體
- 2023年吉林電力股份有限公司招聘筆試題庫(kù)及答案解析
- 皮帶崗位題庫(kù)解讀
- 食品企業(yè)產(chǎn)品出廠(chǎng)檢驗(yàn)報(bào)告
- 鍋爐本體水壓試驗(yàn)記錄
- 綜治工作中心信訪(fǎng)穩(wěn)定和矛盾糾紛排查化解工作流程圖
- 牛初乳知識(shí)課件
- 鼻出血鼻孔填塞-臨床實(shí)踐能力訓(xùn)練考核標(biāo)準(zhǔn)
- 初中中考英語(yǔ)總復(fù)習(xí)《代詞動(dòng)詞連詞數(shù)詞》思維導(dǎo)圖
評(píng)論
0/150
提交評(píng)論