軟件工程簡答題答案_第1頁
軟件工程簡答題答案_第2頁
軟件工程簡答題答案_第3頁
軟件工程簡答題答案_第4頁
軟件工程簡答題答案_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、簡答題1. 什么是軟件工程?請分析軟件工程的目標(biāo)是什么?答案:軟件工程是: 將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運行和維護過程,也就是說將工程化應(yīng)用于軟件開發(fā)和管理之中; 對中所選方法的研究”。軟件工程旨在開發(fā)滿足用戶需要、及時交付、不超過預(yù)算和無故障的軟件,其主要目標(biāo)如下:a) 實現(xiàn)預(yù)期的軟件功能,達到較好的軟件性能,滿足用戶的需求。b) 增強軟件過程的可見性和可控性,保證軟件的質(zhì)量。c) 提高所開發(fā)軟件的可維護性,降低維護費用。d) 提高軟件開發(fā)生產(chǎn)率,及時交付使用。e) 合理預(yù)算開發(fā)成本,付出較低的開發(fā)費用。2. 什么是軟件危機?軟件危機表現(xiàn)在哪幾個方面?由于軟件特點和長期

2、以來一直沒有發(fā)明一種高效的開發(fā)方法,導(dǎo)致軟件生產(chǎn)效率非常低,交付期一拖再拖,最終交付的軟件產(chǎn)品在質(zhì)量上很難保障。這種現(xiàn)象早在20世紀(jì)60年代被定義為“軟件危機”。它的具體表現(xiàn)如下:a) “已完成”的軟件不滿足用戶的需求。b) 開發(fā)進度不能保障,交付時間一再拖延。c) 軟件開發(fā)成本難以準(zhǔn)確估算,開發(fā)過程控制困難造成開發(fā)成本超出預(yù)算。d) 軟件產(chǎn)品的質(zhì)量沒有保證,運算結(jié)果出錯、操作死機等現(xiàn)象屢屢出現(xiàn)。 e) 軟件通常沒有適當(dāng)?shù)奈臋n資料,或文檔與最終交付的軟件產(chǎn)品不符,軟件的可維護程度非常低。3. 根據(jù)相關(guān)的法律,對于侵犯軟件著作權(quán)的行為,根據(jù)情節(jié)應(yīng)當(dāng)給予什么處罰?答案:對于侵犯軟件著作權(quán)的行為,要

3、根據(jù)情況承擔(dān)停止侵害、消除影響、賠禮道歉、賠償損失等民事責(zé)任;損害社會公共利益的,由著作權(quán)行政管理部門責(zé)令停止侵權(quán)行為,沒收違法所得,沒收、銷毀侵權(quán)復(fù)制品,并處罰款;情節(jié)嚴(yán)重的,著作權(quán)行政管理部門可以沒收用于制作侵權(quán)復(fù)制品的材料、工具、設(shè)備等;觸犯刑律的,依法追究刑事責(zé)任。4. 根據(jù)你的理解,列舉出職業(yè)化軟件工程師要注意的三個主要問題,請給出理由。答案:沒有唯一答案。a) 不遵守標(biāo)準(zhǔn)和規(guī)范:職業(yè)化的重要特征是遵守行業(yè)標(biāo)準(zhǔn),不能肆意按照自己的想象來發(fā)揮。自從人們認識到軟件危機以來,總結(jié)軟件開發(fā)的失敗教訓(xùn)和成功經(jīng)驗,并把它們總結(jié)成為最佳實踐,進而形成標(biāo)準(zhǔn),要充分利用這些最佳實踐和標(biāo)準(zhǔn)來指導(dǎo)軟件過程

4、。任何閉門造車、想當(dāng)然的行為都是不被提倡的,注定要走彎路。b) 對待計劃不嚴(yán)肅:軟件工程強調(diào)計劃性,計劃的內(nèi)容包括:設(shè)備資源、進度安排、人力資源、任務(wù)分配等等。在項目的進行中要跟蹤計劃執(zhí)行情況,記錄計劃執(zhí)行過程中的偏差,對任何變更都要經(jīng)過評審和批準(zhǔn)才能付諸行動。c) 不主動與人溝通:軟件不可見的特性,需要軟件工程師進行大量書面的、口頭的或面對面的溝通,溝通的目的是為了使相關(guān)的人員了解項目的進展、遇到的問題、應(yīng)用的技術(shù)、采用的方法。5. 軟件工程為什么要強調(diào)規(guī)范化和文檔化?答案:軟件工程強調(diào)規(guī)范化和文檔化。規(guī)范化的目的是使眾多的開發(fā)者遵守相同的規(guī)范,使軟件生產(chǎn)擺脫個人生產(chǎn)方式,進入標(biāo)準(zhǔn)化、工程化

5、的生產(chǎn)方式。文檔化是將軟件的設(shè)計思想、設(shè)計過程和實現(xiàn)過程完整地記錄下來,以便于后人的使用和維護,在開發(fā)過程中各類相關(guān)人員借助于文檔進行交流和溝通。另外,在開發(fā)過程中產(chǎn)生的各類文檔使得軟件的生產(chǎn)過程由不可見變?yōu)榭梢?,便于管理者對軟件生產(chǎn)進度和開發(fā)過程進行管理。在用戶最終驗收時可以通過對提交的文檔進行技術(shù)審查和管理審查,保證軟件的質(zhì)量。6. 請簡單說明結(jié)構(gòu)化分析的主要步驟。答案:根據(jù)用戶的需求畫出初始的數(shù)據(jù)流程圖,寫出數(shù)據(jù)字典和初始的加工處理說明(IPO圖),實體關(guān)系圖。以初始數(shù)據(jù)流程圖為基礎(chǔ),從數(shù)據(jù)流程圖的輸出端開始回溯。在對數(shù)據(jù)流程圖進行回溯的過程中可能會發(fā)現(xiàn)丟失的處理和數(shù)據(jù),應(yīng)將數(shù)據(jù)流程圖補

6、充完善。對軟件性能指標(biāo)、接口定義、設(shè)計和實現(xiàn)的約束條件等逐一進行分析。系統(tǒng)分析人員與用戶一起對需求分析的結(jié)果進行復(fù)查。根據(jù)細化的需求修訂開發(fā)計劃。編寫需求規(guī)格說明書和初始的用戶手冊,測試人員開始編寫功能測試用的測試數(shù)據(jù)。7. 設(shè)計類的屬性時必須要定義是哪兩項?答案:設(shè)計類的屬性時必須要定義的內(nèi)容:1) 屬性的類型:設(shè)計屬性時必須要根據(jù)開發(fā)語言確定每個屬性的數(shù)據(jù)類型,如果數(shù)據(jù)類型不夠,設(shè)計人員可以利用已有的數(shù)據(jù)類型定義新的數(shù)據(jù)類型。2) 屬性的可見性。在設(shè)計屬性時要確定公有屬性、私有屬性、受保護屬性。8. 請簡單分析順序圖和活動圖的區(qū)別。答案:活動圖反映系統(tǒng)中從一個活動到另一個活動的流程,強調(diào)對

7、象間的控制流程?;顒訄D特別適合描述工作流和并行處理過程。具體地說活動圖可以描述一個操作過程中需要完成的活動;描述一個對象內(nèi)部的工作;描述如何執(zhí)行一組相關(guān)的動作,以及這些動作如何影響它們周圍的對象;說明一個業(yè)務(wù)活動中角色、工作流、組織和對象是如何工作的。順序圖用于描述一組交互對象間的交互方式,它表示完成某項行為的對象和這些對象之間傳遞消息的時間順序。9. 根據(jù)你的理解,為下面的數(shù)據(jù)流程圖加上箭頭,并把下列數(shù)據(jù)流添加到合適的位置:用戶名/密碼、用戶輸入預(yù)訂信息、保存預(yù)訂信息、查詢預(yù)訂信息、登錄確認、圖書信息、查詢條件、查詢結(jié)果。答案:10. 請用判定表描述產(chǎn)品出庫量的計算方法:當(dāng)庫存量大于等于提貨

8、量時,以提貨量作為出庫量;當(dāng)庫存量小于提貨量,但是庫存量大于等于提貨量的50%時,以實際庫存量作為出庫量;否則,出庫量為0,不能提貨。答案:條件123庫存提貨量TF庫存50%提貨量TF按提貨量出庫T按庫存量出庫T不出庫T11. 公司為本科以上學(xué)歷的員工重新安排工作,原則如下:如果年齡不滿23歲,學(xué)歷是本科,一律考研生;如果年齡在23歲至50歲之間,學(xué)歷本科,任項目經(jīng)理;如果年齡在50歲以下,學(xué)歷碩士,任命為中層領(lǐng)導(dǎo);如果年齡超過50歲,不做調(diào)整,要求畫出判定表。答案:條件1234<23T23,50T<50TF本科TT研究生T報考研究生T項目經(jīng)理T中層領(lǐng)導(dǎo)T不變T12. 請舉例說明什

9、么是變換型數(shù)據(jù)流程圖?什么是事務(wù)型數(shù)據(jù)流程圖?答案:沒有唯一答案。變換型數(shù)據(jù)流程圖事務(wù)型數(shù)據(jù)流程圖13. 下面程序代碼,編程人員誤把IF (A=2) OR (X>1) 條件寫成了IF (A=2) OR (X<1),用A=2,B=0,X=3和A=2,B=1,X=1這兩組測試用例不能發(fā)現(xiàn)錯誤,請你添加足夠多的測試用例,以發(fā)現(xiàn)程序中的錯誤。BEGIN .If (A>1) AND (B=0) THEN DO X:=X/A;IF (A=2) OR (X>1) THEN DO X:=X+1;END答案:用A=2,B=0,X=3測試用例可以發(fā)現(xiàn)錯誤,因為按照測試用例的預(yù)計的輸出X=4

10、,而錯誤的輸出是X=3。14. 面向?qū)ο蟮姆治鐾ǔR⑷齻€模型,請問三個模型的作用?答案:a)功能模型:表達系統(tǒng)的詳細需求,為軟件的進一步分析和設(shè)計打下基礎(chǔ)。在面向?qū)ο蠓椒ㄖ校捎美龍D和場景描述組成。b)對象模型:表示靜態(tài)的、結(jié)構(gòu)化的系統(tǒng)“數(shù)據(jù)”性質(zhì)。描述現(xiàn)實世界中實體的對象以及它們之間的關(guān)系,表示目標(biāo)系統(tǒng)的靜態(tài)數(shù)據(jù)結(jié)構(gòu)。在面向?qū)ο蠓椒ㄖ校悎D是構(gòu)件對象模型的核心工具。c)動態(tài)模型:描述系統(tǒng)的動態(tài)結(jié)構(gòu)和對象之間的交互,表示瞬時的、行為化的系統(tǒng)的“控制”特性。面向?qū)ο蠓椒ㄖ?,常用狀態(tài)圖、順序圖、合作圖、活動圖構(gòu)件系統(tǒng)的動態(tài)模型。15. 面向?qū)ο蟮脑O(shè)計活動中,有構(gòu)架師、用例工程師和構(gòu)件師參加,他

11、們每個角色的職責(zé)是什么?答案:構(gòu)架設(shè)計的目的是要勾畫出系統(tǒng)的總體結(jié)構(gòu),這項工作由經(jīng)驗豐富的構(gòu)架設(shè)計師主持完成。該活動以用例模型、分析模型為輸入,生成物理構(gòu)架、子系統(tǒng)及其接口、概要的設(shè)計類(即設(shè)計階段定義的類)。根據(jù)分析階段產(chǎn)生的高層類圖和交互圖,由用例設(shè)計師研究已有的類,將它們分配到相應(yīng)的用例中。檢查每個用例的功能,這些功能依靠當(dāng)前的類能否實現(xiàn),同時檢查每個用例的特殊需求是否有合適的類來實現(xiàn)。細化每個用例的類圖,描述實現(xiàn)用例的類及其類之間的相互關(guān)系,其中的通用類和關(guān)鍵類可用粗線框區(qū)分,這些類將作為項目經(jīng)理檢查項目時的重點。經(jīng)過前面兩個活動,構(gòu)架設(shè)計師已經(jīng)將系統(tǒng)的構(gòu)架建立起來,用例設(shè)計師按照用例

12、的功能將每個類分配給相應(yīng)的用例。現(xiàn)在要由構(gòu)件工程師詳細設(shè)計每個類的屬性、方法和關(guān)系。16. QQ軟件的用戶分為游客和登陸會員,登陸會員分為群成員和非群成員,群成員分為群主和群普通成員、群管理員,請用類的繼承關(guān)系描述QQ用戶群。17. 先將下列代碼用規(guī)范的格式重寫,然后畫出對應(yīng)的程序流程圖。START INPUT X,NDIMENSION A(N),F(N)DO I=1 TO NINPUT F(I)END DOK=0DO WHILE (K<N)A(K)=0DO J=1 TO N-KA(K)=A(K)+F(J)*F(J+K)/(N-K+1)END DOPRINT K*X,A(K)K=K+1E

13、ND DOSTOP答案:START INPUT x, nDIMENSION a(n),f(n)DO i=1 TO nINPUT f(i)END DOk=0DO WHILE (k<n)a(k)=0DO j=1 TO n-ka(k)=a(k)+f(j)*f(j+k)/(n-k+1)END DOPRINT k*x, a(k)k=k+1END DOSTOPa) 代碼的大小寫問題 b)縮進 c)畫程序流程圖18. 修改下面的程序片段的格式,使它的可閱讀性更好,并且畫出該程序段的程序流程圖。WHILE P DOIF A>O THEN A1 ELSE A2 ENDIF;S1;IF B>0

14、THEN B1;WHILE C DO S2;S3 ENDWHILE;ELSE B2ENDIF;B3ENDWHILE;答案:WHILE P DOIF A>O THEN A1 ELSE A2 ENDIF;S1;IF B>0 THEN B1;WHILE C DO S2;S3 ENDWHILE;ELSE B2ENDIF;B3ENDWHILE;19.  提高程序可讀性有哪些招數(shù)?對你來講比較靈驗的是哪些?答案:a) 源程序文件頭說明,函數(shù)應(yīng)有函數(shù)頭說明,內(nèi)容包括:程序標(biāo)題;有關(guān)該模塊功能和目的說明;主要算法說明;接口說明,包括調(diào)用形式、參數(shù)描述、子程序清單、有關(guān)數(shù)據(jù)的說明。b) 主

15、要變量(結(jié)構(gòu)、聯(lián)合、類或?qū)ο螅┑亩x能夠反映其內(nèi)在含義。c) 變量定義最規(guī)范化,說明的先后次序固定。d) 處理過程的每個階段和典型算法前都有相關(guān)注釋說明。e) 用縮進來顯示程序的邏輯結(jié)構(gòu)。f) 嵌套的循環(huán)和分支程序?qū)哟尾灰^五層。二、應(yīng)用題1. 學(xué)校每學(xué)期為品學(xué)兼優(yōu)的學(xué)生發(fā)放獎學(xué)金,獎學(xué)金根據(jù)學(xué)生本人申請,班主任和同學(xué)評議的結(jié)果,分為三個等級,一等獎5名,二等獎10名,三等獎50名,向全校公布。開發(fā)一個軟件實現(xiàn)獎學(xué)金的評比和發(fā)布。每學(xué)期由學(xué)生本人填寫申請信息:學(xué)號、姓名、班級、申請等級、申請理由;系統(tǒng)根據(jù)申請自動檢查學(xué)生成績文件,如果成績有不及格則不能申請獎學(xué)金;如果平均成績在85分以上有資

16、格申請一等獎學(xué)金;75分以上可以申請二等獎學(xué)金;否則可以申請三等獎學(xué)金。系統(tǒng)保存申請信息和成績檢查結(jié)果。經(jīng)過成績篩選后,同學(xué)和班主任進行評議,同學(xué)可以給申請者加010分,教師可以給申請者010分。學(xué)習(xí)成績占80%,同學(xué)評分占10%,班主任評分占10%,最后由學(xué)生管理科編制一張報表。請設(shè)計這張報表的內(nèi)容和格式,并畫出此系統(tǒng)的數(shù)據(jù)流程圖。參考答案:日期: XXXX學(xué)期學(xué)習(xí)獎學(xué)金獲得者 學(xué)號姓名班級申請等級成績等級學(xué)習(xí)總成績同學(xué)評分班主任評分總分實際獲獎情況2. 根據(jù)下面程序代碼,畫出程序流程圖,然后設(shè)計滿足條件組合覆蓋的測試用例。BEGIN T:=0 IF ( X>=80 AND Y>

17、=80 )THEN T:=1ELSE IF ( X>=90 AND Y>=75 ) THEN T:=2 ENDIF END. 答案:經(jīng)化簡后的測試用例:x=95 y=95;x=95,y=70;x=70,y=95;x=70,y=70;3. 一個學(xué)生考試成績統(tǒng)計程序,小于60分為“不及格”;60-79為“中”;80-89為“良”;90分以上為“優(yōu)秀”,錄入其他成績均為“無效”。要求:設(shè)計語句覆蓋的測試用例。答案:假設(shè)變量A是讀入的成績,則設(shè)計的語句覆蓋測試用例有5個:A=59不及格A=79中A=89良A=99優(yōu)A=101無效說明:此題的答案不唯一,只要符合語句覆蓋條件即可。簡化的圖書館

18、圖書信息管理系統(tǒng)有以下要求:(1)借書:輸入讀者借書證,系統(tǒng)檢查借書證是否有效;查閱借還書文件,檢查該讀者所借圖書是否超過8本,若已達8本,顯示信息“已經(jīng)超出借書數(shù)量”,拒借,然后查詢是否有超過1個月,若有則顯示信息“有超期未還圖書”;兩項檢查通過后,辦理借書(檢查庫存、修改庫存文件并將讀者借書信息登入借還書文件)(2)還書:輸入書號和讀者號,從借書文件中讀出有關(guān)的借書記錄,查閱所借日期,如果超過1個月,作罰款處理。否則,修改庫存文件與借還書文件。請就以上系統(tǒng)功能畫出DFD圖,并給出借還書文件的數(shù)據(jù)字典。答案:畫數(shù)據(jù)流程圖:可以有不同的答案,基本流程正確即可。數(shù)據(jù)字典:可以用表格的方式說明也可

19、以按照傳統(tǒng)的數(shù)據(jù)字典格式,例如:名稱:借還書信息編號:DS03簡述:保存讀者的借還書記錄數(shù)據(jù)存儲的組成:編號+讀者號+圖書號+借書日期+還書日期+操作員編號存儲方式:數(shù)據(jù)庫表訪問頻率:每日大約300條記錄。數(shù)據(jù)元素名稱:編號簡稱:NO類型:CHAR長度:6取值范圍:000000初始值:系統(tǒng)自動產(chǎn)生其他或者:編號:DS03名稱:借還書信息名稱簡稱鍵值類型長度值域初值備注編號NOP字符6自動讀者號ReadNO字符11圖書號BookNO字符13借書日期Bdate日期當(dāng)前日期還書日期Rdate日期當(dāng)前日期操作員編號OPNO字符4.學(xué)校每學(xué)期為品學(xué)兼優(yōu)的學(xué)生發(fā)放獎學(xué)金,獎學(xué)金根據(jù)學(xué)生本人申請,班主任和同

20、學(xué)評議的結(jié)果,分為三個等級,一等獎5名,二等獎10名,三等獎50名,向全校公布。開發(fā)一個軟件實現(xiàn)獎學(xué)金的評比和發(fā)布。每學(xué)期由學(xué)生本人填寫申請信息:學(xué)號、姓名、班級、申請等級、申請理由;系統(tǒng)根據(jù)申請自動檢查學(xué)生成績文件,如果成績有不及格則不能申請獎學(xué)金;如果平均成績在85分以上有資格申請一等獎學(xué)金;75分以上可以申請二等獎學(xué)金;否則可以申請三等獎學(xué)金。系統(tǒng)保存申請信息和成績檢查結(jié)果。經(jīng)過成績篩選后,同學(xué)和班主任進行評議,同學(xué)可以給申請者加010分,教師可以給申請者010分。學(xué)習(xí)成績占80%,同學(xué)評分占10%,班主任評分占10%,最后由學(xué)生管理科編制一張報表。請設(shè)計這張報表的內(nèi)容和格式,并畫出此系

21、統(tǒng)的數(shù)據(jù)流程圖。參考答案:日期: XXXX學(xué)期學(xué)習(xí)獎學(xué)金獲得者 學(xué)號姓名班級申請等級成績等級學(xué)習(xí)總成績同學(xué)評分班主任評分總分實際獲獎情況5. 股票交易所給經(jīng)紀(jì)人的手續(xù)費按下面方法計算:總手續(xù)費 = 基本手續(xù)費 + 附加手續(xù)費其中,8.4%*交易金額 交易總額< 1000元 基本手續(xù)費 =5%*交易金額+34交易金額【1000,10000】元4%*交易金額+134 交易金額>10000元5%*基本手續(xù)費 每股價格<14元,股數(shù)是100的倍數(shù)附件手續(xù)費 = 2%*基本手續(xù)費每股價格【14,25】元1.5%*基本手續(xù)費每股價格>25元請用判定表描述手續(xù)費的計算方法。答案:條件

22、123456789<1000TTTFTF>10000TTTFTF<14TFTFTF>25TFTFTF總手續(xù)費 總手續(xù)費=8.4%*交易金額(1+5%) 總手續(xù)費=8.4%*交易金額(1+1.5%) 總手續(xù)費=8.4%*交易金額(1+2%) 總手續(xù)費=4%*交易金額+134(1+5%) 總手續(xù)費=4%*交易金額+134(1+1.5%) 總手續(xù)費=4%*交易金額+134(1+2%) 總手續(xù)費=5%*交易金額+34(1+5%) 總手續(xù)費=5%*交易金額+34(1+1.5%) 總手續(xù)費=5%*交易金額+34(1+2%)6. 一個城市的公共事業(yè)部決定開發(fā)一個“計算機化的”坑洼跟蹤和修理系統(tǒng)。市民通過本系統(tǒng)報告有坑洼時,要說明街道地址、大小、影響程度,還要記錄報告者的姓名和電話,存儲在坑洼報告信息中,被送到公共事業(yè)部,工作人員根據(jù)坑洼的地點和大小,修理隊標(biāo)識號,修理隊的人數(shù),被分配的裝備,制定一份工單,送到維修隊。維修隊修理后,將坑洼修理結(jié)果錄入后生成坑洼維修文件,并把維修報告上

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論