版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、軟件工程習(xí)題課,4-1 從供選擇的答案中選出正確的答案填入下列敘述中的( ) 內(nèi)。 模塊內(nèi)聚性用于衡量模塊內(nèi)部各成份之間彼此結(jié)合的緊密程度。 (1) 一組語句在程序中多處出現(xiàn),為了節(jié)省內(nèi)存空間把這些語句放在一個模塊中,該模塊的內(nèi)聚性是( A )的。 (2) 將幾個邏輯上相似的成分放在同一個模塊中,通過模塊入口處的一個判斷決定執(zhí)行哪一個功能。該模塊的內(nèi)聚性是( B )的。 (3) 模塊中所有成分引用共同的數(shù)據(jù),該模塊的內(nèi)聚性是( C )的。 (4) 模塊內(nèi)的某成份的輸出是另一些成份的輸入,該模塊的內(nèi)聚性是( D )的。 (5) 模塊中所有成份結(jié)合起來完全一項任務(wù),該模塊的內(nèi)聚性是( E )的。它
2、具有簡明的外部界面,由它構(gòu)成的軟件易于理解、測試和維護。 供選擇的答案: A E: 功能內(nèi)聚 信息內(nèi)聚 ?(順序) 通信內(nèi)聚 過程內(nèi)聚 巧合內(nèi)聚 時間內(nèi)聚 邏輯內(nèi)聚,A 5 B 7 C 3 D 4 ?2 E 1,4-2 從供選擇的答案中選出正確的答案填入下面的( )中。 塊間聯(lián)系和塊內(nèi)聯(lián)系是評價程序模塊結(jié)構(gòu)質(zhì)量的重要標(biāo)準(zhǔn)。聯(lián)系的方式、共用信息的作用、共用信息的數(shù)量和接口的( A )等因素決定了塊間聯(lián)系的大小。在塊內(nèi)聯(lián)系中,( B )的塊內(nèi)聯(lián)系最強。 SD方法的總的原則是使每個模塊執(zhí)行( C )功能,模塊間傳送( D )參數(shù),模塊通過( E )語句調(diào)用其它模塊,而且模塊間傳送的參數(shù)應(yīng)盡量( F
3、)。 此外,SD方法還提出了判定的作用范圍和模塊的控制范圍等概念。SD方法認(rèn)為,( G )應(yīng)該是( H )的子集。 供選擇的答案: A: 友好性 健壯性 簡單性 安全性 B: 巧合內(nèi)聚 功能內(nèi)聚 通信內(nèi)聚 信息內(nèi)聚 C: 一個 多個 D: 數(shù)據(jù)型 控制型 混合型 E: 直接引用 標(biāo)準(zhǔn)調(diào)用 中斷 宏調(diào)用 F: 少 多 G H: 作用范圍 控制范圍,A. , B. , C. , D. , E. , F. , G. , H. 模塊之間的耦合(塊間聯(lián)系)和模塊的內(nèi)聚(塊內(nèi)聯(lián)系)是評價程序模塊結(jié)構(gòu)質(zhì)量的重要標(biāo)準(zhǔn)。聯(lián)系的方式、共用信息的作用、共用信息的數(shù)量和接口的簡單性等因素決定了塊間聯(lián)系的大小。在塊內(nèi)聯(lián)
4、系中,以功能內(nèi)聚模塊的塊內(nèi)聯(lián)系最強。 SD方法的總的原則是使每個模塊只做一件事,就是說,只執(zhí)行一個功能。模塊之間盡可能傳送簡單的數(shù)據(jù)型參數(shù)。模塊要通過標(biāo)準(zhǔn)調(diào)用語句調(diào)用其它模塊,不要直接引用另一個模塊內(nèi)部的數(shù)據(jù)。同時模塊之間傳送的參數(shù)應(yīng)盡量少。此外,SD方法還提出了判定的作用范圍和模塊的控制范圍等概念。SD方法認(rèn)為,模塊的作用范圍應(yīng)該是其控制范圍的子集。,4-3 舉例說明你對概要設(shè)計與詳細(xì)設(shè)計的理解。有不需要概要設(shè)計的情況嗎? 軟件設(shè)計是一個把軟件需求變換成軟件表示的過程。最初這種表示只是描繪出軟件的總的框架,然后進一步細(xì)化,在此框架中填入細(xì)節(jié),把它加工成在程序細(xì)節(jié)上非常接近于源程序的軟件表示。
5、正因為如此,所以從工程管理的角度來看,軟件設(shè)計分兩步完成。首先做概要設(shè)計,將軟件需求轉(zhuǎn)化為數(shù)據(jù)結(jié)構(gòu)和軟件的系統(tǒng)結(jié)構(gòu)。然后是詳細(xì)設(shè)計,即過程設(shè)計。通過對結(jié)構(gòu)表示進行細(xì)化,得到軟件的詳細(xì)的數(shù)據(jù)結(jié)構(gòu)和算法。 由于概要設(shè)計建立起整個系統(tǒng)的體系結(jié)構(gòu)框架,并給出了系統(tǒng)中的全局?jǐn)?shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫接口,人機接口,與其它硬、軟件的接口。此外還從系統(tǒng)全局的角度,考慮處理方式、運行方式、容錯方式、以及系統(tǒng)維護等方面的問題,并給出了度量和評價軟件質(zhì)量的方法,所以它奠定了整個系統(tǒng)實現(xiàn)的基礎(chǔ)。沒有概要設(shè)計,直接考慮程序設(shè)計,就不能從全局把握軟件系統(tǒng)的結(jié)構(gòu)和質(zhì)量,實現(xiàn)活動處于一種無序狀態(tài),程序結(jié)構(gòu)劃分不合理,導(dǎo)致系統(tǒng)處于一種
6、不穩(wěn)定的狀態(tài),稍一做改動就會失敗。所以,不能沒有概要設(shè)計。,4-4說明并比較概要設(shè)計說明書與需求分析說明書的內(nèi)容。 (1)兩個說明書都包括引言,內(nèi)容基本相同; (2)任務(wù)概述部分概要設(shè)計說明比需求說明增加了需求概述; (3)需求說明主要通過靜態(tài)、動態(tài)數(shù)據(jù),數(shù)據(jù)庫描述,數(shù)據(jù)字典和數(shù)據(jù)采集等內(nèi)容進行數(shù)據(jù)描述; (4)需求說明中的主要部分是功能要求、性能要求、運行需求以及其他要求,它的目的是全面地、精確地描述了系統(tǒng)要“做什么”。需求說明書中還可能包括數(shù)據(jù)流圖、數(shù)據(jù)字典、IPO圖等描述的系統(tǒng)邏輯模型。 (5)概要設(shè)計說明則對系統(tǒng)的總體結(jié)構(gòu)、各個接口、數(shù)據(jù)結(jié)構(gòu)、運行、出錯、安全、維護進行具體設(shè)計,它的目
7、的是描述系統(tǒng)“怎樣做”,往往包含了各模塊的處理說明和接口說明以及系統(tǒng)結(jié)構(gòu)圖。 (6)概要設(shè)計說明是建立在需求說明的基礎(chǔ)上的。,4-5設(shè)計SC圖 根據(jù)下圖所示的變換型DFD圖,用面向數(shù)據(jù)流的設(shè)計方法設(shè)計出SC圖。,(1)第一級分解(建立初始SC框架) 設(shè)計頂層和第一層模塊,MC,MT,MA,ME,c,e,c,e,u,w,u,w,傳送信息,第一級分解后的SC(另一種畫法),MC,MA1,c,e,u,w,c,p,MA2,Q,P,R,ME1,ME2,e,p,r,r,w,u,w,變換分析設(shè)計方法步驟:,(2)第二級分解(分解SC各分支) 自頂向下分解,設(shè)計出每個 分支的中、下層模塊,輸入分支的分解(1)
8、,MA,C,B,A,b,a,c,E,D,d,e,c,e,輸入分支的分解(2),MA,Get C,b,a,c,Read D,d,e,c,e,B to C,b,c,d,e,a,b,Get E,Get B,D to E,A to B,Read A,輸出分支的分解,ME,W,Write V,u,u,w,u,v,v,v,Put U,U to V,ME,U,Write W,w,w,u,w,u,V,(1),(2),中心加工分支的分解,MT,P,Q,R,e,c,p,r,u,w,p,r,5-1 下圖是使用Basic語言編寫的一個打印A,B,C三數(shù)中最小者的程序的流程圖。其中出現(xiàn)了6個GOTO語句,一個向前,5個
9、向后,程序可讀性很差。 if ( A = B and B C ) then print B else print C; 分析:理清程序流程圖中每一條執(zhí)行路徑,適當(dāng)利用復(fù)合的條件測試于判斷語句,對每一個最終的打印處理,保留一個分支進入它。這樣可以消除眾多的GOTO語句,甚至可以消除嵌套的判斷語句結(jié)構(gòu)。這種程序結(jié)構(gòu)清晰,可讀性好。,5-2. 試說明下面的兩個程序段的功能是什么?可否用另一些等效的程序段來代替它,以提高其可讀性。 (1) AI = AI + AT; (2) for ( i = 1; i = n; i + ) AT = AI - AT; for ( j = 1; j = n; j +
10、) AI = AI - AT; Vij = ( i / j ) * ( j / i ); (1) 的功能是對換AI 與AT 的內(nèi)容。等效的程序段可以是: WORK = AT; AT = AI; AI = WORK; (2) 的功能是建立一個單位矩陣V。等效的程序段可以是: for ( i = 1; i = n; i + ) for ( j = 1; j = n; j + ) if ( i = j ) Vij = 1; else Vij = 0; 分析:閱讀這兩段程序,讀者可能不易看懂,有時還需用實際數(shù)據(jù)試驗一下。對于(1),如果我們給AI 賦值3,給AT 賦值5,在運算后發(fā)現(xiàn)AI 中變成了5,
11、AT 中變成了3。這段程序就是交換AI 和AT 中的內(nèi)容。目的是為了節(jié)省一個工作單元。如果改一下: WORK = AT; AT = AI; AI = WORK; 就能讓讀者一目了然。 對于(2),除法運算()在除數(shù)和被除數(shù)都是整型量時,其結(jié)果只取整數(shù)部分,而得到整型量。因此, i / j為0, 當(dāng)i j時 j / i為0, 當(dāng)j i時得到的數(shù)組 Vij = ( ij ) * ( ji ) = 0,當(dāng)i j時 ( ij ) * ( ji ) = 1,當(dāng)i j時這樣得到的結(jié)果V是一個單位矩陣。如果直截了當(dāng)?shù)卣f明作者的意圖: if ( i = j ) Vij = 1; else Vij = 0; 讓
12、讀者可以很容易地理解。所以,在程序設(shè)計時,應(yīng)當(dāng)首先考慮清晰性,不要玩技巧。,5-3.用Jackson圖表示下圖所示的二維表格: 該學(xué)生名冊由表頭和表體兩部分組成。其中表頭又順序包括表名和字段名。表體可由任意行組成,每行包括學(xué)生的姓名、性別、年齡和學(xué)號。,學(xué)生名冊,5-4.根據(jù)偽碼畫出NS圖。 START IF A THEN X1 DO UNTIL B ELSE X2 Y END IF Z STOP,5-5.根據(jù)偽碼畫出PAD圖。 START SWITCH P CASE 1: A; break; CASE 2: B; break; CASE 3: C; break; Default; STOP,
13、5-6.移動電信公司為促進業(yè)務(wù)的發(fā)展發(fā)行各種優(yōu)惠卡,其中包括鉆石卡、金卡、銀卡3種,用戶可以依據(jù)其信用度享受不同額度的透支。其中鉆石卡、金卡和銀卡允許透支的額度分別為800元、500元和100元。發(fā)卡的規(guī)則為:從未發(fā)生過話費拖欠,且每月通話費在500元(含)以上者可獲得鉆石卡,每月通話費在200元(含)以上者可獲得金卡,每月通話費在100元(含)以上者可獲得銀卡;發(fā)生過話費拖欠,能在規(guī)定的時間內(nèi)繳清欠款,且每月通話費在300元(含)以上者可獲得金卡,每月通話費在200元(含)以上者可獲得銀卡;發(fā)生過話費拖欠,并未能在規(guī)定時間內(nèi)補清欠款,無論每月話費多少均不能獲得優(yōu)惠卡。,6-2根據(jù)下面給出的規(guī)
14、格說明,利用等價類劃分的方法,給出足夠的測試用例。 “一個程序讀入三個整數(shù)。把此三個數(shù)值看成是一個三角形的三個邊。這個程序要打印出信息,說明這個三角形是三邊不等的、是等腰的、還是等邊的?!?解:設(shè)三角形的三條邊分別為A, B, C。如果它們能夠構(gòu)成三角形的三條邊,必需滿足:A 0,B 0,C 0,且A + B C,B + C A,A + C B。如果是等腰的,還要判斷是否A = B,或B = C,或A = C。對于等邊的,則需判斷是否A = B,且B = C,且A = C。列出等價類表:,6-3.某一報表處理系統(tǒng),要求用戶輸入處理報表的日期。 假設(shè)日期限制在1990年1月至1999年12月,即
15、系統(tǒng)只能對該段時期內(nèi)的報表進行處理。如果用戶輸入的日期不在此范圍內(nèi),則顯示輸入錯誤信息。該系統(tǒng)規(guī)定日期由年、月的 6 位數(shù)字字符組成,前 4 位代表年,后兩位代表月?,F(xiàn)用等價類劃分法設(shè)計測試用例,來測試程序的“日期檢查功能”。 解:劃分等價類并編號: 劃分成 3 個有效等價類,7 個無效等價類, 如表5 - 3所示。 為合理等價類設(shè)計測試用例,對于表中編號為1, 5, 8對應(yīng)的 3 個合理等價類, 用一個測試用例覆蓋。 為每一個不合理等價類至少設(shè)計一個測試用例: 測試數(shù)據(jù) 期望結(jié)果 覆蓋范圍 199002 輸入有效 1,5,8 99MAY 輸入無效 2 19995 輸入無效 3 1999005 輸入無效 4 198912 輸入無效 6 200001 輸入無效 7 199900 輸入無效 9
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑工程內(nèi)部經(jīng)濟承包合同書
- 鄉(xiāng)村公路施工合同
- 二中教學(xué)區(qū)消防安全制度(2篇)
- 三年教育質(zhì)量提升方案例文(二篇)
- 精神科醫(yī)療工作制度(3篇)
- 2025年有關(guān)我的理想演講稿模版(2篇)
- 打拔鋼板樁安全技術(shù)規(guī)定范文(2篇)
- 客運隱患排查實施方案例文(5篇)
- 水質(zhì)化驗員安全職責(zé)(3篇)
- 小記者站工作方案(6篇)
- 八大危險作業(yè)檢查表
- 工程項目管理(三控三管一協(xié)調(diào))
- 初三家長會語文教師發(fā)言
- 游戲機策劃方案
- 2024消防安全基礎(chǔ)知識培訓(xùn)課件
- 《小兒留置導(dǎo)尿管》課件
- 粵教版科學(xué)四年級上冊全冊試卷(含答案)
- 宮腔鏡診治規(guī)范
- 安全管理計劃指標(biāo)和指標(biāo)體系
- 倉庫物料盤點作業(yè)規(guī)范培訓(xùn)課件
- 六年級《牽手兩代-第二講-乖孩子為什么會厭學(xué)》家長課程培訓(xùn)
評論
0/150
提交評論