軟件工程導論第五版課后習題答案_第1頁
軟件工程導論第五版課后習題答案_第2頁
軟件工程導論第五版課后習題答案_第3頁
軟件工程導論第五版課后習題答案_第4頁
軟件工程導論第五版課后習題答案_第5頁
已閱讀5頁,還剩93頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、軟 件 工 程 導 論 第 五 版軟 件 工 程 導 論 第 五 版課后習題答案課后習題答案一 三 4 213:07:42作業(yè)一 基本概念(第1-2章)作業(yè)二 需求分析(第3章)作業(yè)三 系統(tǒng)設(shè)計(第5章)作業(yè)四 詳細設(shè)計(第6章)作業(yè)五 系統(tǒng)實現(xiàn)(第7章)作業(yè)六 系統(tǒng)維護(第8章)作業(yè)七 面向?qū)ο蠓椒▽W引論(第9章)作業(yè)八 面向?qū)ο蠓治觯ǖ?0章)作業(yè)九 面向?qū)ο笤O(shè)計(第11章)作業(yè)十 面向?qū)ο髮崿F(xiàn)(第12章)作業(yè)十一 軟件項目管理(第13章)作業(yè)及解答13:07:42作業(yè)及解答(第1-2章)1-5 根據(jù)歷史數(shù)據(jù)可以做出如下的假設(shè) :對計算機存儲容量的需求大致按下面公式描述的趨勢逐年增加:M=

2、4080e0.28(Y-1960) 存儲器的價格按下面公式描述的趨勢逐年下降:P1=0.30.72Y-1974(美分/位)如果計算機字長為16位,則存儲器價格下降的趨勢為:P2=0.0480.72Y-1974(美元/字)在上列公式中Y代表年份,M是存儲容量(字數(shù)),P1和P2代表價格?;谏鲜黾僭O(shè)可以比較計算機硬件和軟件成本的變化趨勢。要求計算:13:07:42(1) 在1985年對計算機存儲容量的需求估計是多少?如果字長為16位,這個存儲器的價格是多少?(2) 假設(shè)在1985年一名程序員每天可開發(fā)出10條指令,程序員的平均工資是每月4000美元。如果一條指令為一個字長,計算使存儲器裝滿程序所

3、需用的成本。(3) 假設(shè)在1995年存儲器字長為32位,一名程序員每天可開發(fā)出30條指令,程序員的月平均工資為6000美元,重復(1)、(2)題。作業(yè)及解答(第1-2章)13:07:42l(1)在1985年對計算機存儲容量的需求,估計是l如果字長為16位,則這個存儲器的價格是l(2)如果一條指令的長度為一個字,則使存儲器裝滿程序共需4474263條指令。l在1985年一名程序員每天可開發(fā)出10條指令,如果每月有20個工作日,則每人每月可開發(fā)出1020條指令。l為了開發(fā)出4474263條指令以裝滿存儲器,需要的工作量是:)19601985(28. 04080eM74080e)(263,474,

4、4字447426372. 0048. 019741985P)(7895美元,)(371222004474263人月,作業(yè)及解答(第1-2章)13:07:42l程序員的月平均工資是4000美元, 開發(fā)出4474263條指令的成本是l(3)在1995年對存儲容量的需求估計為:l如果字長為32位,則這個存儲器的價格是:l如果一條指令為一個字長,則為使存儲器裝滿程序共需73,577,679條指令。l在1995年一名程序員每天可開發(fā)出30條指令,每月可開發(fā)出600條指令,為了開發(fā)出可裝滿整個存儲器的程序,需要的工作量為)(00048489400022371美元,)19601995(28. 04080eM

5、8 . 94080e)(679,577,73字7357767972. 032003. 019741995P)(127, 7美元)(62912260073577679人月,作業(yè)及解答(第1-2章)13:07:42l開發(fā)上述程序的成本為:u1-6 什么是軟件過程?它與軟件工程方法學有何關(guān)系?軟件過程是為了開發(fā)出高質(zhì)量的軟件產(chǎn)品所需完成的一系列任務的框架,它規(guī)定了完成各項任務的工作步驟。軟件過程定義了運用技術(shù)方法的順序、應該交付的文檔資料、為保證軟件質(zhì)量和協(xié)調(diào)軟件變化必須采取的管理措施,以及標志完成了相應開發(fā)活動的里程碑。軟件過程是軟件工程方法學的3個重要組成部分之一。)(790,776,73560

6、00122629美元作業(yè)及解答(第1-2章)13:07:422-4 目前住院病人主要由護士護理,這樣做不僅需要大量護士,而且由于不能隨時觀察危重病人的病情變化,還會延誤搶救時機。某醫(yī)院打算開發(fā)一個以計算機為中心的患者監(jiān)護系統(tǒng),請分層次地畫出描述本系統(tǒng)功能的數(shù)據(jù)流圖。 醫(yī)院對患者8監(jiān)護系統(tǒng)的基本要求是隨時接收每個病人的生理信號(脈搏、體溫、血壓、心電圖等),定時記錄病人情況以形成患者日志,當某個病人的生理信號超出醫(yī)生規(guī)定的安全范圍時向值班護士發(fā)出警告信息,此外,護士在需要時還可以要求系統(tǒng)印出某個指定病人的病情報告。作業(yè)及解答(第3章)作 業(yè) 及 解 答 ( 第 3 章 )一三420113:07:

7、42l從問題陳述可知,本系統(tǒng)數(shù)據(jù)源點是“病人”和“護士”,他們分別提供生理信號和要求病情報告的信息。進一步分析問題陳述,從系統(tǒng)應該“定時記錄病人情況以形成患者日志”這項要求可以想到,還應該有一個提供日期和時間信息的“時鐘”作為數(shù)據(jù)源點。l從問題陳述容易看出,本系統(tǒng)的數(shù)據(jù)終點是接收警告信息和病情報告的護士。l系統(tǒng)對病人生理信號的處理功能主要是“接收信號”、“分析信號”和“產(chǎn)生警告信息”。l此外,系統(tǒng)還應該具有“定時取樣生理信號”、“更新日志”和“產(chǎn)生病情報告”的功能。l為了分析病人生理信號是否超出了醫(yī)生規(guī)定的安全范圍,應該存儲“患者安全范圍”信息。此外,定時記錄病人生理信號所形成的“患者日志”,

8、顯然也是一個數(shù)據(jù)存儲。作業(yè)及解答(第3章)13:07:4213:07:4213:07:4213:07:422-5 北京某高??捎玫碾娫捥柎a有以下幾類:校內(nèi)電話號碼由4位數(shù)字組成,第1位數(shù)字不是0;校外電話又分為本市電話和外地電話兩類,撥校外電話需先撥0,若是本市電話則再接著撥8位數(shù)字(第1位不是0),若是外地電話則撥3位區(qū)碼再撥8位電話號碼(第1位不是0)。請用定義數(shù)據(jù)字典的方法,定義上述的電話號碼。作業(yè)及解答(第3章)13:07:42l數(shù)據(jù)結(jié)構(gòu)的描述l 符 號 含 義 舉 例l 被定義為l 與 x = abl.,. 或 .|. 或 x = a , b,x = a | bl . 或 m.n 重

9、復 x = a, x = 3a8l(.) 可選 x = (a)l“.” 基本數(shù)據(jù)元素 x = “a”l . 連結(jié)符 x = 1.9作業(yè)及解答(第3章)13:07:42l電話號碼=校內(nèi)電話號碼|校外電話號碼l校內(nèi)電話號碼=非零數(shù)字+ 3 位數(shù)字 /后面繼續(xù)定義l校外電話號碼=本市號碼|外地號碼l本市號碼=數(shù)字零+8位數(shù)字l外地號碼=數(shù)字零+3位數(shù)字+8位數(shù)字l非零數(shù)字=1|2|3|4|5|6|7|8|9l數(shù)字零0l3位數(shù)字3數(shù)字3 /3至3個數(shù)字l8位數(shù)字=非零數(shù)字+7位數(shù)字l7位數(shù)字=7數(shù)字7l數(shù)字0|1|2|3|4|5|6|7|8|9作業(yè)及解答(第3章)13:07:423-3 銀行計算機儲蓄

10、系統(tǒng)的工作過程大致如下:儲戶填寫的存款單或取款單由業(yè)務員鍵入系統(tǒng),如果是存款則系統(tǒng)記錄存款人姓名、住址(或電話號碼)、身份證號碼、存款類型、存款日期、到期日期、利率及密碼(可選)等信息,并印出存單給儲戶;如果是取款而且存款時留有密碼,則系統(tǒng)首先核對儲戶密碼,若密碼正確或存款時未留密碼,則系統(tǒng)計算利息并印出利息清單給儲戶。 請用數(shù)據(jù)流圖描繪本系統(tǒng)的功能,并用實體-聯(lián)系圖描繪系統(tǒng)中的數(shù)據(jù)對象。作業(yè)及解答(第3章)作業(yè)及解答(第3章)一三420113:07:4213:07:42作業(yè)及解答(第3章)13:07:42lER模型本問題中共有兩類實體,分別是“儲戶”和“儲蓄所”,在它們之間存在“存取款”關(guān)系

11、。因為一位儲戶可以在多家儲蓄所存取款,一家儲蓄所擁有多位儲戶,所以“存取款”是多對多(M:N)關(guān)系。儲戶的屬性主要有姓名、住址、電話號碼和身份證號碼,儲蓄所的屬性主要是名稱、地址和電話號碼,而數(shù)額、類型、到期日期、利率和密碼則是關(guān)系類型存取款的屬性。作業(yè)及解答(第3章)13:07:42作業(yè)及解答(第3章)13:07:42l3-6 復印機的工作過程大致如下:未接到復印命令時處于閑置狀態(tài),一旦接到復印命令則進入復印狀態(tài),完成一個復印命令規(guī)定的工作后又回到閑置狀態(tài),等待下一個復印命令;如果執(zhí)行復印命令時發(fā)現(xiàn)沒紙,則進入缺紙狀態(tài),發(fā)出警告,等待裝紙,裝滿紙后進入閑置狀態(tài),準備接收復印命令;如果復印時發(fā)

12、生卡紙故障,則進入卡紙狀態(tài),發(fā)出警告等待維修人員來排除故障,故障排除后回到閑置狀態(tài)。l請用狀態(tài)轉(zhuǎn)換圖描繪復印機的行為。 作業(yè)及解答(第3章)13:07:42l從問題陳述可知,復印機的狀態(tài)主要有“閑置”、“復印”、“缺紙”和“卡紙”。引起狀態(tài)轉(zhuǎn)換的事件主要是“復印命令”、“完成復印命令”、“發(fā)現(xiàn)缺紙”、“裝滿紙”、“發(fā)生卡紙故障”和“排除了卡紙故障”。 作業(yè)及解答(第3章)13:07:424-3 一個浮點二進制數(shù)的構(gòu)成是:一個可選的符號(+或-),后跟一個或多個二進制位,再跟上一個字符E,再加上另一個可選符號(+或-)及一個或多個二進制位。例如,下列的字符串都是浮點二進制數(shù):110101E-10

13、1-100111E11101+1E0更形式化地,浮點二進制數(shù)定義如下:floatingpoint binary=signbitstringEsignbitstringsign=+-bitstring=bitbitstringbit=01作業(yè)及解答(第4章)13:07:42其中,符號=表示定義為;符號.表示可選項;符號ab表示a或b。 假設(shè)有這樣一個有窮狀態(tài)機:以一串字符為輸入,判斷字符串中是否含有合法的浮點二進制數(shù)。試對這個有窮狀態(tài)機進行規(guī)格說明。 作業(yè)及解答(第4章)13:07:42該有窮狀態(tài)機的初態(tài)是“等待字符串輸人”。在初態(tài)若接收到字符十、或字符一、或二進制位,則進人“輸人尾數(shù)”狀態(tài);在

14、初態(tài)若接收到其他字符,則進人終態(tài)“非浮點二進制數(shù)”。在“輸人尾數(shù)”狀態(tài)若接收到二進制位,則保持該狀態(tài)不變;若接收到字符 E ,則進人“等待輸人指數(shù)”狀態(tài);若接收到其他字符,則進人終態(tài)“非浮點二進制數(shù)”。在“等待輸人指數(shù)”狀態(tài)若接收到字符、或字符一、或二進制位,則進人“輸人指數(shù)”狀態(tài);若接收到其他字符,則進人終態(tài)“非浮點二進制數(shù)”。在“輸人指數(shù)”狀態(tài)若接收到二進制位,則保持該狀態(tài)不變;若輸人其他字符,則進人終態(tài)“非浮點二進制數(shù)”;若輸人結(jié)束,則進人終態(tài)“浮點二進制數(shù)”。作業(yè)及解答(第4章)13:07:42仔細研究圖示的有窮狀態(tài)機可以發(fā)現(xiàn),它還有不夠嚴格的地方。有興趣的同學請進一步改進它,畫出更嚴

15、格的、與浮點二進制數(shù)定義完全一致的有窮狀態(tài)機。作業(yè)及解答(第4章)13:07:42補充1:請為某倉庫的管理設(shè)計一個ER模型。該倉庫主要管理零件的訂購和供應等事項。倉庫向工程項目供應零件,并且根據(jù)需要向供應商訂購零件。作業(yè)及解答(第5章)13:07:42l本問題中共有三類實體,分別是“零件”、“工程項目”和“供應商”。l一種零件可供應多個工程項目,一個工程項目需要使用多種零件,因此,零件與工程項目之間的聯(lián)系“供應”,是多對多( M N )聯(lián)系;類似地,零件與供應商之間的聯(lián)系“訂購”,也是多對多( M N )聯(lián)系。l實體類型“零件”的主要屬性是:零件編號,零件名稱,顏色,重量。實體類型“工程項目”

16、的屬性主要是:項目編號,項目名稱,開工日期。實體類型“供應商”的屬性主要有:供應商編號,供應商名稱,地址。聯(lián)系類型“供應”的屬性是,向某工程項目供應的某種零件的數(shù)量。聯(lián)系類型“訂購”的屬性是,向某供應商訂購的某種零件的數(shù)量。作業(yè)及解答(第5章)13:07:4213:07:42作業(yè)及解答(第5章)補充2:某火車售票系統(tǒng)的數(shù)據(jù)流程圖如下所示錄入員 1接受查詢查詢信息查詢信息 2分析查詢 4按班次查詢 6查詢顯示 3按日期查詢 5按線路查詢旅客班次日期線路查詢結(jié)果查詢結(jié)果查詢結(jié)果查詢結(jié)果13:07:42作業(yè)及解答(第5章)接受查詢輸入信息查詢信息列車查詢主模塊查詢顯示分析查詢按日期查詢按班次查詢按線

17、路查詢查詢信息查詢信息查詢結(jié)果查詢結(jié)果日期班次線路13:07:42補充3、已知某定貨系統(tǒng)的需求分析DFD圖如下,請按SD方法的設(shè)計步驟畫出結(jié)構(gòu)圖。顧客編輯定貨單確定顧客訂貨產(chǎn)生暫存訂貨單開發(fā)貨單并改庫存業(yè)務員顧客D1配件D2顧客文件D3配件庫存D4暫存訂貨單D4暫存訂貨單D5銷售歷史D6應收款明細帳發(fā)貨單可發(fā)貨不合格訂貨單訂貨單合格訂貨單不滿足訂貨單作業(yè)及解答(第5章)13:07:4213:07:42補充4、已知某系統(tǒng)的需求分析給出的系統(tǒng)數(shù)據(jù)流程圖如下,畫出結(jié)構(gòu)圖AC3C2C1GJKLFEBDabb1b2b3c1c2c3defghjklm作業(yè)及解答(第5章)13:07:4213:07:42P1

18、04:3 用面向數(shù)據(jù)流的方法設(shè)計下列系統(tǒng)的軟件結(jié)構(gòu)(1)儲蓄系統(tǒng)2-2(2)機票預定系統(tǒng)2-3為了方便旅客,某航空公司擬開發(fā)一個機票預定系統(tǒng)。旅行社把預定機票的旅客信息(姓名、性別、工作單位、身份證號碼、旅行時間、旅行目的地等)輸入該系統(tǒng),系統(tǒng)為旅客安排航班,旅客在飛機起飛前一天憑取票通知和賬單交款取票,系統(tǒng)核對無誤即印出機票給顧客(2)患者監(jiān)護系統(tǒng)2-4作業(yè)及解答(第5章)13:07:4213:07:42作業(yè)及解答(第5章)13:07:42不能是兩個分開的子系統(tǒng),是相同的前臺單個處理13:07:42不能是兩個分開的子系統(tǒng),是相同的前臺單個處理13:07:42作業(yè)及解答(第5章)13:07:4

19、2作業(yè)及解答(第5章)13:07:42作業(yè)及解答(第5章)13:07:42作業(yè)及解答(第5章)13:07:42可以是兩個子系統(tǒng),預定和取票是不同的處理方式(后臺批量和前臺單個)13:07:4213:07:4213:07:4213:07:42lP104:4l美國某大學有200名教師,校方與教師工會剛剛簽訂一項協(xié)議。按照協(xié)議,所有年工資超過$26000(含$26000 )的教師工資將保持不變,年工資少于$26000的教師將增加工資,所增加工資數(shù)額按下述方法計算:給每位教師所贍養(yǎng)的人(包括教師本人)每年補助$100,此外,教師有一年工齡每年再多補助¥50,但是,增加后的年工資總額不能多于$26000

20、。l教師工資檔案存儲在行政辦公室的磁帶上,檔案中有目前的年工資、贍養(yǎng)的人數(shù)、雇傭日期等信息。需要寫一個程序計算并印出每名教師的原工資和調(diào)整后的新工資。l要求:(1)畫出此系統(tǒng)的數(shù)據(jù)流圖;(2)寫出需求說明;l(3)設(shè)計上述的工資調(diào)整程序(要求用HIPO圖描繪設(shè)計結(jié)果),設(shè)計時分別采用兩種算法,并比較兩種算法的優(yōu)缺點:(a)搜索工資檔案數(shù)據(jù),找出年工資少于$26000的人,計算新工資,校核是否超過$26000,存儲新工資,印出新舊工資對照表;(b)把工資檔案數(shù)據(jù)按工資從最低到最高的次序排序,當工資數(shù)額超過$26000時即停止排序,計算新工資,校核是否超過限額,存儲新工資,印出結(jié)果。l(4)你所畫

21、出的數(shù)據(jù)流圖適應用那種算法?13:07:42作業(yè)及解答(第5章)13:07:42作業(yè)及解答(第5章)13:07:42作業(yè)及解答(第5章)13:07:42作業(yè)及解答(第5章)13:07:420楊輝三角形系數(shù)求解輸入階數(shù)系數(shù)表不合理階數(shù)DFD01檢驗階數(shù)2計算階數(shù)3打印階數(shù)系數(shù)表系數(shù)不合理階數(shù)合理階數(shù)輸入階數(shù)DFD11.1輸入階數(shù)1.2檢驗階數(shù)合理階數(shù)不合理階數(shù)階數(shù)2.1計算1DFD2合理階數(shù)系數(shù)3.1打印1階數(shù)系數(shù)表13.2打印2階數(shù)系數(shù)表22.2計算2合理階數(shù)系數(shù)補充5:求解楊輝三角形系數(shù)13:07:42求解楊輝三角形系數(shù)取合理階數(shù)打印系數(shù)計算系數(shù)方法選用輸入階數(shù)檢驗階數(shù)計算1計算2打印1打印

22、2合理階數(shù)合理階數(shù)合理階數(shù)合理階數(shù)合理階數(shù)合理階數(shù)合理階數(shù)合理階數(shù)不合理階數(shù)階數(shù)階數(shù)系數(shù)系數(shù)系數(shù)系數(shù)系數(shù)表1系數(shù)表2表示選用13:07:42P131:3 畫出下列偽碼程序的程序流程圖和盒圖STARTIF p THEN WHILE q DO f END DOELSE BLOCK g n END BLOCKEND IFSTOP作業(yè)及解答(第6章)13:07:42作業(yè)及解答(第6章)13:07:42P131:4 下圖給出的程序流程圖代表一個非結(jié)構(gòu)化的程序,請問:(1)為什么說它是非結(jié)構(gòu)化的?(2)設(shè)計一個等價的結(jié)構(gòu)化程序。(3)在(2)題的設(shè)計中你使用附加的標志變量flag嗎?若沒用,請再設(shè)計一個使

23、用flag的程序;若用了,再設(shè)計一個不用flag的程序作業(yè)及解答(第6章)13:07:42(1)通常所說的結(jié)構(gòu)化程序,是按照狹義的結(jié)構(gòu)程序的定義衡量,符合定義規(guī)定的程序。圖示的程序的循環(huán)控制結(jié)構(gòu)有兩個出口,顯然不符合狹義的結(jié)構(gòu)程序的定義,因此是非結(jié)構(gòu)化的程序。作業(yè)及解答(第6章)13:07:42(2)使用附加的標志變量flag,至少有兩種方法可以把該程序改造為等價的結(jié)構(gòu)化程序,圖示盒圖描繪了等價的結(jié)構(gòu)化程序。作業(yè)及解答(第6章)13:07:42(3)不使用flag把該程序改造為等價的結(jié)構(gòu)化程序的方法如圖所示。 作業(yè)及解答(第6章)13:07:42C EXAMPLELOOP:DO WHILE X

24、0 A=B+1 IF A10 THEN X=A ELSE Y=Z END IFIF Y0 THEN PRINT G ELSE PRINT KEND IFSTOP作業(yè)及解答(第6章)13:07:42V(G)結(jié)點E弧數(shù)n1 =17-11+1=7 =判斷結(jié)點 1 =6 17 封閉的區(qū)域數(shù)13:07:42lP131: 7l令P代表交易的總金額,Q代表每股的售價,n代表交易的股數(shù)。l(1)表示手續(xù)費計算方法的判定表如圖所示。l判定表的每一列是一條計算規(guī)則。例如,第1列(規(guī)則1)規(guī)定,當交易總金額P少于1000元,且每股售價Q低于14元,且交易的股數(shù)n是100的倍數(shù)時,給經(jīng)紀人的手續(xù)費為l(l+0.05)

25、0.084Pl第16列(規(guī)則16)表明,當交易總金額P超過10000元,且每股售價Q在14元到25元之間,且交易的股數(shù)n不是100的倍數(shù)時,手續(xù)費為l(1+0.06)(0.04P+134)l(2)表示手續(xù)費計算方法的判定樹如圖所示。 作業(yè)及解答(第6章)13:07:42作業(yè)及解答(第7章)13:07:42作業(yè)及解答(第7章)13:07:42補充1、某高校研究生招生系統(tǒng)的初選方法如下:總分300(含)以上進入候選學生庫,否則退檔;數(shù)學分數(shù)不低于70分,則進入三級備選庫,否則進入四級備選庫;在三級備選庫的基礎(chǔ)上,如果專業(yè)課分數(shù)高于100分,則進入一級備選庫,否則進入二級備選庫,請畫出對應的判定樹。

26、作業(yè)及解答(第6章)13:07:42作業(yè)及解答(第6章)13:07:42補充2、某校的課酬計算方案如下:(l)基本課酬為每節(jié)課10元;(2)如果班級人數(shù)超過40人,課酬增加:基本課酬0.1;(3)如果班級人數(shù)超過60人,課酬增加:基本課酬0.2;(4)如果教師是副教授,課酬增加:基本課酬0.1;(5)如果教師是教授,課酬增加:基本課酬0.2;(6)講師,課酬不增加;(7)助教,課酬減少:基本課酬0.1。請用判定表表達上述計算方案。作業(yè)及解答(第6章)13:07:42123456789101112人數(shù)40TTTT40人數(shù)60TTTT人數(shù)60TTTT助教TTT講師TTT副教授TTT教授TTT課酬:

27、9元/節(jié)課酬:10元/節(jié)課酬:11元/節(jié)課酬:12元/節(jié)課酬:13元/節(jié)課酬:14元/節(jié)13:07:42l補充作業(yè):設(shè)計一個軟件開發(fā)規(guī)范,假象一種開發(fā)環(huán)境(硬件、系統(tǒng)軟件、支持軟件、數(shù)據(jù)庫、開發(fā)語言等)。規(guī)范內(nèi)容盡量考慮多方面問題:如SQL語言規(guī)范、交互界面、編碼風格、命名、設(shè)計文檔、單元測試等作業(yè)及解答(第7章)13:07:42lP174: 5某圖書館有一個使用CET終端的信息檢索系統(tǒng),該系統(tǒng)有下列4個基本檢索命令:.(1)設(shè)計測試數(shù)據(jù)以全面系統(tǒng)的正常操作(2)設(shè)計測試數(shù)據(jù)以測試系統(tǒng)的非正常操作作業(yè)及解答(第7章)13:07:42STARTINPUT (A, B, C)/判定表達式1IF A

28、5 THEN X=10 ELSE X=1END IF/判定表達式2IF B10 THEN Y=20ELSE Y=2END IF作業(yè)(第7章)/判定表達式3IF C15 THEN Z=30ELSE Z=3END IFPRINT (X, Y, Z)STOPP174: 4(3) 、設(shè)計下列偽碼程序的語句覆蓋和路徑覆蓋測試用例:13:07:42作業(yè)(第7章)序號判定輸入預期的輸出123ABCXYZ1FF F1111232TTT204060102030語句覆蓋的測試用例 13:07:42作業(yè)(第7章)序號判定輸入預期的輸出123ABCXYZ1FF F1111232FF T116012303FTF1401

29、12034FTT140 60120 305TF F201110236TFT20160 102307TTF2040110 2038TTT2040 60 10 20 30路徑覆蓋的測試用例 13:07:42l1某些軟件工程師不同意“目前國外許多軟件開發(fā)組織把60%以上的人力用于維護已有的軟件”的說法,他們爭論說:“我并沒有花費我的60%的時間去改正我所開發(fā)的程序中的錯誤”。l請問,你對上述爭論有何看法?l2為什么大型軟件的維護成本高達開發(fā)成本的4倍左右?l3假設(shè)你的任務是對一個已有的軟件做重大修改,而且只允許你從下述文檔中選取兩份:(a)程序的規(guī)格說明;(b)程序的詳細設(shè)計結(jié)果(自然語言描述加上某

30、種設(shè)計工具表示);(c)源程序清單(其中有適當數(shù)量的注解)。l你將選取哪兩份文檔?為什么這樣選???作業(yè)及解答(第8章)13:07:42l4當一個十幾年前開發(fā)出的程序還在為其用戶完成關(guān)鍵的業(yè)務工作時,是否有必要對它進行再工程?如果對它進行再工程,經(jīng)濟上是否劃算?l5代碼重構(gòu)與正向工程有何相同之處?有何不同之處?作業(yè)及解答(第8章)13:07:42p221:101用面向?qū)ο蠓缎烷_發(fā)軟件時與用結(jié)構(gòu)化范型開發(fā)軟件時相比較,軟件的生命周期有何不同?這種差異帶來了什么后果?2為什么在開發(fā)大型軟件時,采用面向?qū)ο蠓缎捅炔捎媒Y(jié)構(gòu)化范型較易取得成功?3為什么說夏利牌汽車是小汽車類的特化,而發(fā)動機不是小汽車類的特

31、化?4對象和屬性之間有何區(qū)別?5什么是對象?它與傳統(tǒng)的數(shù)據(jù)有何異同?6什么是模型?開發(fā)軟件時為什么要建立模型?作業(yè)及解答(第9章)13:07:427試用面向?qū)ο蠓椒ǚ治鲈O(shè)計下述程序:在顯示器屏幕上圓心坐標為(100,100)的位置畫一個半徑為40的圓,在圓心坐標為(200,300)的位置畫一個半徑為20的圓,在圓心坐標為(400,150)的位置畫一條弧,弧的起始角度為30度,結(jié)束角度為120度,半徑為50。8用面向?qū)ο蠓椒ń鉀Q下述問題時需要哪些對象類?類與類之間有何關(guān)系?在顯示器屏幕上圓心坐標為(250,100)的位置,畫一個半徑為25的小圓,圓內(nèi)顯示字符串“you”;在圓心坐標為(250,1

32、50)的位置,畫一個半徑為100的中圓,圓內(nèi)顯示字符串“world”;再在圓心坐標為(250,250)的位置,畫一個半徑為225的大圓,圓內(nèi)顯示字符串“Universe”。作業(yè)及解答(第9章)13:07:429試建立下述訂貨系統(tǒng)的用例模型。假設(shè)一家工廠的采購部每天需要一張訂貨報表,報表按零件編號排序,表中列出所有需要再次訂貨的零件。對于每個需要再次訂貨的零件應該列出下述數(shù)據(jù):零件編號,零件名稱,訂貨數(shù)量,目前價格,主要供應者,次要供應者。零件入庫或出庫稱為事務,通過放在倉庫中的終端把事務報告給訂貨系統(tǒng)。當某種零件的庫存數(shù)量少于庫存量臨界值時就應該再次訂貨。10為什么說面向?qū)ο蠓椒ㄅc人類習慣的思

33、維解題方法比較一致?作業(yè)及解答(第9章)13:07:4211我們下班回家這件事,人(假如是我)就是一個對象,我們來考察一下幾個狀態(tài):1.到下班時間了,收拾東西準備回家(不考慮加班)。2.開始等電梯。3.到了樓下。(發(fā)現(xiàn)沒帶家里鑰匙,上樓拿)4.上樓。5.去公交等車。6.乘公共汽車去菜場。7.買菜8.回到家l那么事件呢?1.下班時間到了(準備下班)。2.電梯到(上電梯)3.電梯到樓下(下電梯)3.發(fā)現(xiàn)沒有家里鑰匙(去拿鑰匙)。4.自己要乘公共汽車到了(上車)。5.公共汽車到站(下車)。6.忽然想起家里沒菜(去買菜)。 作業(yè)及解答(第9章)13:07:42名稱:就是名字,狀態(tài)的名字。進入/退出動作

34、:對象本身的一個操作,比如在電梯里是一個狀態(tài)的話,哪我們進電梯和出電梯就是狀態(tài)-在電梯里-的進入/退出動作。內(nèi)部轉(zhuǎn)換:如我們在去等電梯的時候發(fā)現(xiàn)鑰匙沒帶,此時我們不用在等電梯的以后狀態(tài)是再有事件觸發(fā),在準備下班的狀態(tài)上我們就去拿鑰匙了,對于對象本身,前后兩次的根本狀態(tài)不一樣,一個是有鑰匙,一個是沒有鑰匙。(子狀態(tài)) :如果我們描述該對象在電梯里說話,抽煙(一般電梯不許)等狀態(tài)時,該狀態(tài)就是該對象狀態(tài)-在電梯里-狀態(tài)的子狀態(tài)。(延遲事件) :現(xiàn)在不立即產(chǎn)生的事件,該事件是在一段時間以后才產(chǎn)生的事件。作業(yè)及解答(第9章)13:07:421.試用面向?qū)ο蠓椒ǚ治鲈O(shè)計下述程序:在顯示器屏幕上圓心坐標為

35、(100,100)的位置畫一個半徑為40的圓,在圓心坐標為(200,300)的位置畫一個半徑為20的圓,在圓心坐標為(400,150)的位置畫一條弧,弧的起始角度為30度,結(jié)束角度為120度,半徑為50。作業(yè)及解答(第10章)13:07:422. 在顯示器屏幕上圓心坐標為(250,100)的位置,畫一個半徑為25的小圓,圓內(nèi)顯示字符串“you”;在圓心坐標為(250,150)的位置,畫一個半徑為100的中圓,圓內(nèi)顯示字符串“world”;再在圓心坐標為(250,250)的位置,畫一個半徑為225的大圓,圓內(nèi)顯示字符串“Universe”。 用面向?qū)ο蠓椒ń鉀Q上述問題時需要哪些對象類?類與類之間

36、有何關(guān)系?試用C+語言編程實現(xiàn)該類繼承結(jié)構(gòu)。設(shè)計測試用例以測試該類繼承結(jié)構(gòu)中的各個類。作業(yè)及解答(第10章)13:07:423.請用面向?qū)ο蠓椒ǚ治鲈O(shè)計下述的圖書館自動化系統(tǒng):設(shè)計一個軟件以支持一座公共圖書館的運行。該系統(tǒng)有一些工作站用于處理讀者事務。這些工作站由圖書館館員操作。當讀者借書時,首先讀入客戶的借書卡。然后,由工作站的條形碼閱讀器讀入該書的代碼。當讀者歸還一本書時,并不需要查看他的借書卡,僅需讀入該書的代碼??蛻艨梢栽趫D書館內(nèi)任一臺PC機上檢索館藏圖書目錄。當檢索圖書目錄時,客戶應該首先指明檢索方法(按作者姓名或按書名或按關(guān)鍵詞)。作業(yè)及解答(第10章)13:07:42l4.設(shè)計無

37、人自動售貨機系統(tǒng)對象、動態(tài)及功能模型l售貨時,顧客將硬幣投入機器投幣口,機器檢查硬幣的大小、重量、厚度及邊緣類型。有效幣種是1元、五角、一角,其它貨幣被認為是假幣。機器拒收假幣,并將其退幣口退出。當機器接收了有效硬幣之后,就將硬幣送入硬幣儲藏期中。顧客支付的貨幣根據(jù)硬幣的面值進行累加。l機器裝有貨物分配器。每個貨物分配器中零個或多個價值相同的貨物,顧客支付的貨幣值不小于該貨物的價格,貨物將被分配貨物傳送孔送給顧客,并將適當?shù)牧沐X返回到退幣孔。如果分配器是空的,顧客支付的貨幣值相等的硬幣將被送回退幣孔。如果顧客支付的貨幣值小于所選擇分配器中貨物的價格,機器將等待顧客投進更多的硬幣。如果顧客決定不

38、買所選擇的貨物,顧客放進的貨幣將從退幣孔退出。作業(yè)及解答(第10章)13:07:42l1請比較功能內(nèi)聚和信息性內(nèi)聚。l2多態(tài)重用與繼承重用有何關(guān)系?l3在面向?qū)ο笤O(shè)計過程中為什么會調(diào)整對目標系統(tǒng)的需求?怎樣調(diào)整需求?l4為了設(shè)計人機交互子系統(tǒng),為什么需要分類用戶?l5問題空間和解空間有何區(qū)別?l6從面向?qū)ο蠓治鲭A段到面向?qū)ο笤O(shè)計階段,對象模型有何變化?作業(yè)及解答(第11章)13:07:42l7請用面向?qū)ο蠓椒ǚ治鲈O(shè)計下述的圖書館自動化系統(tǒng)。l設(shè)計一個軟件以支持一座公共圖書館的運行。該系統(tǒng)有一些工作站用于處理讀者事務。這些工作站由圖書館館員操作。當讀者借書時,首先讀入客戶的借書卡。然后,由工作站

39、的條形碼閱讀器讀入該書的代碼。當讀者歸還一本書時,并不需要查看他的借書卡,僅需讀入該書的代碼。l客戶可以在圖書館內(nèi)任一臺PC機上檢索館藏圖書目錄。當檢索圖書目錄時,客戶應該首先指明檢索方法(按作者姓名或按書名或按關(guān)鍵詞)。作業(yè)及解答(第11章)13:07:42l8用面向?qū)ο蠓椒ǚ治鲈O(shè)計下述的電梯系統(tǒng)。l在一幢m層樓的大廈里,用電梯內(nèi)的和每個樓層的按鈕來控制n部電梯的運動。當按下電梯按鈕請求電梯在指定樓層停下時,按鈕指示燈亮;當電梯到達指定樓層時,指示燈熄滅。除了大廈的最低層和最高層之外,每層樓都有兩個按鈕分別指示電梯上行和下行。當這兩個按鈕之一被按下時相應的指示燈亮,當電梯到達此樓層時燈熄滅,電梯向要求的方向移動。當電梯無升降動作時,關(guān)門并停在當前樓層。作業(yè)及解答(第11章)13:07:42l1為什么應該盡量使用面向?qū)ο笳Z言來實現(xiàn)面向?qū)ο蠓治龊驮O(shè)計的結(jié)果?l2什么是強類型語言?這類語言有哪些優(yōu)點?l3用動態(tài)聯(lián)編實現(xiàn)多態(tài)性是否會顯著降低程序的運行效率?l4為什么說參數(shù)化類有助于提高可重用性?l5把策略方法與實現(xiàn)方法分開后,為什么能提高可重用性?l6面向?qū)ο筌浖哪男┨攸c使得測試和維護變得比較容易?哪些特點使得測試和維護變得比較困難?作業(yè)及解答(第12章)13:07:42l7試用C+語

溫馨提示

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

評論

0/150

提交評論