




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
一、選擇1、文檔是軟件產(chǎn)品的一部分,沒有文檔的軟件就不稱其為軟件。對2、在需求分析過程中,分析員要從用戶那里解決的最重要的問題是給該軟件提供哪些信息。錯3、需求規(guī)格說明書在軟件開發(fā)中具有重要的作用,它也可以作為軟件可行性分析的依據(jù)。錯4、建立用例模型的步驟包括確定角色、確定用例和繪制用例圖。錯5、數(shù)據(jù)流圖建立系統(tǒng)的功能模型,它由數(shù)據(jù)流、加工和數(shù)據(jù)存貯組成。錯6、軟件配置管理是一組標識、組織和控制修改源程序的活動。錯7、UML是一種直觀化、明確化、構(gòu)建和文檔化軟件產(chǎn)物的通用語言。錯8、好的測試是用少量的測試用例運行程序,發(fā)現(xiàn)被測程序盡可能多的錯誤。對9、邊界值分析方法是取輸入/輸出等價類的邊界值作為測試用例。對10、面向?qū)ο蟮姆治鍪敲嫦蛴嬎銠C系統(tǒng)建立軟件系統(tǒng)的對象模型。錯11、(D)是將系統(tǒng)化的、規(guī)范的、可定量的方法應用于軟件的開發(fā)、運行和維護的過程,它包括方法、工具和過程三個要素。A軟件過程B軟件測試C軟件生存周期D軟件工程12、ISO9000是由ISO/TC176制定的關(guān)于(B)和質(zhì)量保證的國際標準。A質(zhì)量控制B質(zhì)量管理C質(zhì)量策劃D質(zhì)量改進13、CMM提供了一個框架,將軟件過程改進的進化步驟組織成5個成熟度等級。除第1級外,每個等級都包含了實現(xiàn)該成熟度等級目標的若干(B)。A關(guān)鍵實踐B關(guān)鍵過程域C軟件過程能力D軟件過程14、在軟件開發(fā)的各種資源中,(D)是最重要的資源。A開發(fā)工具B方法C硬件環(huán)境D人員15、軟件的復雜性是(A),它引起人員通信困難、開發(fā)費用超支、開發(fā)時間超時等問題。A固有的B人為的C可消除的D不可降低的16、在各種不同的軟件需求中,(D)描述了用戶使用產(chǎn)品必須要完成的任務,可以在用例模型或方案腳本中予以說明。A業(yè)務需求B功能需求C非功能需求D用戶需求17、原型化方法是用戶和軟件開發(fā)人員之間進行的一種交互過程,適用于(A)系統(tǒng)。A需求不確定的B需求確定的C管理信息D決策支持18、(A)意味著一個操作在不同的類中可以有不同的實現(xiàn)方式。A多態(tài)性B多繼承C類的可復用D信息隱蔽19、時序圖反映對象之間發(fā)送消息的時間順序,它與(D)是同構(gòu)的。A用例圖B類圖C活動圖D協(xié)作圖20、單元測試的測試用例主要根據(jù)(D)的結(jié)果來設(shè)計。A需求分析B源程序C概要設(shè)計D詳細設(shè)計二、填空題1、在學校中,一個學生可以選修多門課程,一門課程可以由多個學生選修,那么學生和課程之間是關(guān)聯(lián)關(guān)系。2、類A的一個操作調(diào)用類B的一個操作,且這兩個類之間不存在其他關(guān)系,那么類A和類B之間是依賴關(guān)系。3、用例及其協(xié)作之間是實現(xiàn)關(guān)系。4、接口及其實現(xiàn)類或構(gòu)件之間是實現(xiàn)關(guān)系。5、動物與老虎之間是泛化關(guān)系。三、問答題1、軟件復用的范圍不僅僅涉及源程序代碼,請至少列出5種可能復用的軟件元素??蓮陀玫能浖匕ǎㄟx5種):項目計劃、成本估計、體系結(jié)構(gòu)、需求模型和規(guī)格說明、設(shè)計、用戶文檔和技術(shù)文檔、用戶界面、數(shù)據(jù)結(jié)構(gòu)、測試用例。2、傳統(tǒng)"瀑布模型"的主要缺陷是什么?試說明造成缺陷的原因。傳統(tǒng)"瀑布模型"的主要缺陷及其原因:在項目的早期,用戶常常很難清楚地給出所有需求,瀑布模型卻要求如此。由于瀑布模型的特點,早期的錯誤直到開發(fā)晚期才能被發(fā)現(xiàn),開發(fā)的風險較大。3、某學校需要開發(fā)一個學生成績管理系統(tǒng),教務人員可以通過該系統(tǒng)維護學生信息、課程信息和成績信息,學生可以隨時查詢自己的成績單,該系統(tǒng)的實體關(guān)系圖如下所示:請問圖中是否應該增加"教務人員"?試說明理由。不應該增加"教務人員",因為教務人員只是該系統(tǒng)的一個使用者,系統(tǒng)不處理其屬性信息。4、下面是一段求最大值的程序,其中datalist是數(shù)據(jù)表,n是datalist的長度。
intGetMax(intn,intdatalist[])
{
intk=0;
for(intj=1;j<n;j++)
if(datalist[j]>datalist[k])k=j;
returnk;
}(1)畫出該程序的控制流圖,并計算其McCabe環(huán)路復雜性??刂屏鲌D如下,McCabe環(huán)路復雜性為3。(2)用基本路徑覆蓋法給出測試路徑。測試路徑:Path1:①→③Path2:①→②→④→⑥→…Path3:①→②→⑤→⑥→…(3)為各測試路徑設(shè)計測試用例。測試用例:Path1:取n=1,datalist[0]=1,預期結(jié)果:k=0Path2:取n=2,datalist[0]=1,datalist[1]=0,預期結(jié)果:k=0Path3:取n=2,datalist[0]=0,datalist[1]=1,預期結(jié)果:k=15、下圖顯示了某個學校課程管理系統(tǒng)的部分類圖,其中一個學生(student)可以知道所有注冊課程的教師(instructor),一個教師也可以知道所有注冊課程的學生。
現(xiàn)在提出一個新的需求:"一個教師也可以是某些課程的學生",那么下面設(shè)計A-C中哪一個是最好的?為什么?設(shè)計B是最好的。學生和教員均可以從Candidate類繼承而來;抽象出Role類,使Candidate類與Role類之間形成多對多的關(guān)聯(lián)關(guān)系,實現(xiàn)了"一個人既是教師又是某門課的學生"這個需求。
設(shè)計A:
設(shè)計B:
設(shè)計C:6、所謂分層體系結(jié)構(gòu)是按層組織軟件的一種軟件體系結(jié)構(gòu),其中每層軟件建立在低一層的軟件層上,下圖顯示了一種分層體系結(jié)構(gòu)。請選擇正確的答案,將其對應的序號填入圖中的()。
供選擇的答案:
①高效性②通用性③保密性④專用性⑤系統(tǒng)軟件⑥中間件⑦應用軟件⑧支撐軟件⑨特定業(yè)務⑩子系統(tǒng)一、選擇1、(A)是軟件生存期中的一系列相關(guān)軟件工程活動的集合,它由軟件規(guī)格說明、軟件設(shè)計與開發(fā)、軟件確認、軟件改進等活動組成。A軟件過程B軟件工具C質(zhì)量保證D軟件工程2、(D)是以追求更高的效益和效率為目標的持續(xù)性活動。A質(zhì)量策劃B質(zhì)量控制C質(zhì)量保證D質(zhì)量改進3、CMM提供了一個框架,將軟件過程改進的進化步驟組織成5個成熟度等級。除第1級外,每一級都包含了實現(xiàn)這一級目標的若干關(guān)鍵過程域,每一個關(guān)鍵過程域又包含若干(A)。A關(guān)鍵實踐B軟件過程性能C軟件過程能力D軟件過程4、在各種不同的軟件需求中,功能需求描述了用戶使用產(chǎn)品必須要完成的任務,可以在用例模型或方案腳本中予以說明,(C)是從各個角度對系統(tǒng)的約束和限制,反映了應用對軟件系統(tǒng)質(zhì)量和特性的額外要求。A業(yè)務需求B功能要求C非功能需求D用戶需求5、(A)意味著一個操作在不同的類中可以有不同的實現(xiàn)方式。A多態(tài)性B多繼承C類的復用D封裝6、在面向?qū)ο蟮南到y(tǒng)中,系統(tǒng)責任的良好分配原則是(B)。A在類之間均勻分配B集中分配在少數(shù)控制類中C根據(jù)交互圖的消息進行分配D根據(jù)個人喜好進行分配7、軟件配置項是軟件配置管理的對象,即軟件工程過程中產(chǎn)生的(C)。A接口B軟件環(huán)境C信息項D版本8、軟件測試計劃開始于需求分析階段,完成于(B)階段。A需求分析B軟件設(shè)計C軟件實現(xiàn)D軟件測試二、問答題1、判斷下列敘述的正確性,將結(jié)果(√正確,×錯誤)填入()中,并改正錯誤的說法。(1).(×)在軟件開發(fā)的過程中,若能推遲暴露其中的錯誤,則為修復和改正錯誤所花費的代價就會降低。改正:在軟件開發(fā)的過程中,一個錯誤修復和改正得越晚,為此所花費的代價就會越高。(2).(√)在需求分析中,分析員要從用戶那里解決的最重要的問題是明確軟件做什么。(3).(×)軟件需求規(guī)格說明書在軟件開發(fā)中具有重要的作用,是軟件可行性分析的依據(jù)。改正:軟件可行性分析應在需求分析之前,因此,軟件需求規(guī)格說明書不應成為軟件可行性分析的依據(jù)。(4).(√)模型是對現(xiàn)實的簡化,建模是為了更好地理解所開發(fā)的系統(tǒng)。(5).(×)UML語言支持面向?qū)ο蟮闹饕拍睿⑴c具體的開發(fā)過程相關(guān)。改正:UML語言支持面向?qū)ο蟮母拍?,并獨立于具體的開發(fā)過程。(6).(√)用例圖定義了系統(tǒng)的功能需求,它是從系統(tǒng)的外部看系統(tǒng)功能,并不描述系統(tǒng)內(nèi)部對功能的具體實現(xiàn)。(7).(×)好的測試用例應能證明軟件是正確的。改正:好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤。(8).(√)白盒測試僅與程序的內(nèi)部結(jié)構(gòu)有關(guān),完全可以不考慮程序的功能要求。(9).(√)當軟件開發(fā)項目的進度有可能拖延時,增加開發(fā)人員并不能加快進度。(10).(×)軟件技術(shù)復審是由用戶和測試人員實施的一種質(zhì)量保證活動。改正:軟件技術(shù)復審是由軟件開發(fā)人員實施的一種質(zhì)量保證活動。2、你認為一個好的軟件開發(fā)人員應具備哪些基本素質(zhì)?答:(1)牢固掌握計算機軟件的基本知識和技能;(2)善于分析和綜合問題,具有嚴密的邏輯思維能力;(3)工作踏實細致,遵循標準和規(guī)范,具有嚴格的科學作風;(4)工作有耐心、有毅力、有責任心;(5)善于聽取別人的意見,善于與周圍人員團結(jié)協(xié)作,建立良好的人際關(guān)系;(6)具有良好的書面和口頭表達能力。3、需求工程包括哪些基本活動?每一項活動的主要任務是什么?答:(1)需求獲取(問題識別):采集、識別和提取用戶的需求,對問題和需求形成文檔化的描述,使各種人員達成一致的理解和認可。(2)需求分析:分析和綜合所采集的信息,建立系統(tǒng)的詳細邏輯模型。(3)需求規(guī)格說明:編寫軟件需求規(guī)格說明書,明確、完整和準確地描述已確定的需求。(4)需求驗證:評審軟件需求規(guī)格說明,以保證其正確性、一致性、完備性、準確性和清晰性。(5)需求管理:定義需求基線,在整個項目過程中跟蹤需求狀態(tài)及其變更情況。4、為什么軟件需要維護?簡述軟件維護的過程。答:在軟件開發(fā)完成交付用戶使用后,為了保證軟件在一個相當長的時期能夠正常運行,就需要對軟件進行維護。軟件維護的過程:(1)確認維護要求。(2)對于改正性維護申請,評價錯誤的嚴重性。對于嚴重的錯誤,立即安排人員,分析問題原因,進行"救火"性的緊急維護;對于不嚴重的錯誤,根據(jù)任務情況和輕重緩急進行統(tǒng)一安排。(3)對于適應性和完善性維護申請,需要確定申請的優(yōu)先級,然后安排維護工作。并不是所有的完善性維護申請都必須承擔,需要考慮商業(yè)需要、現(xiàn)有資源、未來發(fā)展方向等進行決定。5、根據(jù)下面給出的規(guī)格說明,利用等價類劃分的方法,給出足夠的測試用例。"一個程序讀入3個整數(shù),它們分別代表一個三角形的3個邊長。該程序判斷所輸入的整數(shù)是否構(gòu)成一個三角形,以及該三角形是一般的、等腰的或等邊的,并將結(jié)果打印出來。"要求:設(shè)三角形的3條邊分別為A、B、C,并且(1)列出等價類表,格式如下:輸入條件有效等價類無效等價類是否構(gòu)成一個三角形(1)A>0且B>0且C>0且
A+B>C且B+C>A且
A+C>B。(2)A≤0或B≤0或C≤0
(3)A+B≤C或A+C≤B
或B+C≤A是否等腰三角形(4)A=B或A=C或B=C(5)A≠B且A≠C且B≠C是否等邊三角形(6)A=B且A=C且B=C(7)A≠B或A≠C或B≠C(2)設(shè)計測試用例,格式如下:用例n:輸入【A,B,C】覆蓋等價類……(列出等價類序號),輸出結(jié)果為……。用例1:輸入【3,4,5】覆蓋等價類(1,2,3,4,5,6),輸出結(jié)果為構(gòu)成一般三角形。用例2:三者取一輸入【0,1,2】覆蓋等價類(2),輸出結(jié)果為不構(gòu)成三角形。輸入【1,0,2】覆蓋等價類(2),輸出結(jié)果為不構(gòu)成三角形。輸入【1,2,0】覆蓋等價類(2),輸出結(jié)果為不構(gòu)成三角形。用例3:三者取一輸入【1,2,3】覆蓋等價類(3),輸出結(jié)果為不構(gòu)成三角形。輸入【1,3,2】覆蓋等價類(3),輸出結(jié)果為不構(gòu)成三角形。輸入【3,1,2】覆蓋等價類(3),輸出結(jié)果為不構(gòu)成三角形。用例4:三者取一輸入【3,3,4】覆蓋等價類(1)(4),輸出結(jié)果為等腰三角形。輸入【3,4,4】覆蓋等價類(1)(4),輸出結(jié)果為等腰三角形。輸入【3,4,3】覆蓋等價類(1)(4),輸出結(jié)果為等腰三角形。用例5:輸入【3,4,5】覆蓋等價類(1)(5),輸出結(jié)果為不是等腰三角形。用例6:輸入【3,3,3】覆蓋等價類(1)(6),輸出結(jié)果為等邊三角形。用例7:三者取一輸入【3,4,4】覆蓋等價類(1)(4)(7),輸出結(jié)果為不是等邊三角形。輸入【3,4,3】覆蓋等價類(1)(4)(7),輸出結(jié)果為不是等邊三角形。輸入【3,3,4】覆蓋等價類(1)(4)(7),輸出結(jié)果為不是等邊三角形。6、下圖顯示了配置管理中的存取和控制,請選擇合適的答案,將其對應的序號填入()中。A①B⑥C⑨D⑧供選擇的答案:A:①軟件工程人員②配置人員③質(zhì)量保證人員B:④異步控制⑤同步控制⑥存取控制C~D:⑦管理⑧登入⑨檢出⑩填寫變更請求7、UML關(guān)系包括關(guān)聯(lián)、聚合、泛化、實現(xiàn)、依賴等5種類型,請將合適的關(guān)系填寫在下列描述的()中。①用例及其協(xié)作之間是(實現(xiàn))關(guān)系。②在學校中,一個學生可以選修多門課程,一門課程可以由多個學生選修,那么學生和課程之間是(關(guān)聯(lián))關(guān)系。③類A的一個操作調(diào)用類B的一個操作,且這兩個類之間不存在其他關(guān)系,那么類A和類B之間是(依賴)關(guān)系。④在MFC類庫中,Window類和DialogBox類之間是(泛化)關(guān)系。⑤森林和樹木之間是(聚合)關(guān)系。8、下圖顯示了某個學校課程管理系統(tǒng)的部分類圖,其中一個學生(student)可以知道所有注冊課程的教師(instructor),一個教師也可以知道所有注冊課程的學生?,F(xiàn)在提出一個新的需求:"一個教師也可以是某些課程的學生",那么下面設(shè)計A~C中哪一個是最好的?為什么?設(shè)計C最好。學生和教員均可以從Candidate類繼承而來;抽象出Role類,使Candidate類與Role類之間形成多對多的關(guān)聯(lián)關(guān)系,實現(xiàn)了"一個人既是教師又是某門課的學生"這個需求。設(shè)計A:設(shè)計B:設(shè)計C:一、選擇1、在軟件生存周期的瀑布模型中一般包括計劃、(C)、設(shè)計、編碼、測試、維護等階段。A可行性分析B需求采集C需求分析D問題定義2、ISO9000是由ISO/TC176制定的關(guān)于(B)和質(zhì)量保證的國際標準。A質(zhì)量控制B質(zhì)量管理C質(zhì)量策劃D質(zhì)量改進3.軟件工程的基本要素包括方法、工具和(A)。A過程B軟件系統(tǒng)C硬件環(huán)境D人員4.軟件的復雜性是(A),它引起人員通信困難、開發(fā)費用超支、開發(fā)時間超時等問題。A固有的B人為的C可消除的D不可降低的5.軟件需求分析階段的測試手段一般采用(C)。A總結(jié)B階段性報告C需求分析評審D不測試6.(C)是把對象的屬性和操作結(jié)合在一起,構(gòu)成一個獨立的對象,其內(nèi)部信息對外界是隱蔽的,外界只能通過有限的接口與對象發(fā)生聯(lián)系。A多態(tài)性B繼承C封裝D消息7.協(xié)作圖反映收發(fā)消息的對象的結(jié)構(gòu)組織,它與(D)是同構(gòu)的。A用例圖B類圖C活動圖D時序圖8.軟件測試是為了(B)而執(zhí)行程序的過程。A糾正錯誤B發(fā)現(xiàn)錯誤C避免錯誤D證明正確9.面向?qū)ο蠓治鍪菍ο到y(tǒng)進行(A)的一種方法。A需求建模B程序設(shè)計C設(shè)計評審D測試驗收10.在結(jié)構(gòu)化分析方法中,(C)表達系統(tǒng)內(nèi)部數(shù)據(jù)運動的圖形化技術(shù)。A數(shù)據(jù)字典B實體關(guān)系圖C數(shù)據(jù)流圖D狀態(tài)轉(zhuǎn)換圖11、在項目計劃發(fā)生延遲的情況下,增加更多的程序員一定會加快進度。錯12、軟件錯誤可能出現(xiàn)在開發(fā)過程的早期,越早修改越好。對13、不完善的系統(tǒng)定義往往是導致軟件項目失敗的主要原因。對14、一個成功的項目唯一提交的就是運行程序。錯15、只有質(zhì)量差的軟件產(chǎn)品才需要維護。錯16、UML是一種直觀化、明確化、構(gòu)建和文檔化軟件產(chǎn)物的通用語言。錯17、一個好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤。對18、面向?qū)ο蟮姆治鍪敲嫦蛴嬎銠C系統(tǒng)建立軟件系統(tǒng)的對象模型。錯19、軟件工作的考慮范圍主要是程序設(shè)計和實現(xiàn)。錯20、等價類劃分方法將所有可能的輸入數(shù)據(jù)劃分成若干部分,然后從每一部分中選取少數(shù)有代表性的數(shù)據(jù)作為測試用例。對二、問答題1、(共10分)下圖顯示了McCall質(zhì)量模型,請選擇正確的答案,并將其對應的序號填入圖中的括號(3596)。供選擇的答案:①高效性②通用性③可測試性④專用性⑤可復用性⑥可使用性⑦應用軟件⑧支撐軟件⑨正確性⑩硬件環(huán)境2、(共10分)UML關(guān)系包括關(guān)聯(lián)、聚合、泛化、實現(xiàn)、依賴等5種類型,請將合適的關(guān)系填寫在下列描述的()中。1.在學校中,一個導師可以指導多個研究生,一個研究生可以由多個導師指導,那么導師和研究生之間是(關(guān)聯(lián))關(guān)系。2.交通工具與卡車之間是(泛化)關(guān)系。3.公司與部門之間是(聚合)關(guān)系。4.圖形與矩形之間是(泛化)關(guān)系。5.參數(shù)類及其實例類之間是(實現(xiàn))關(guān)系。3、(共20分)回答下列問題:1.軟件工程的基本目標是什么?軟件工程旨在開發(fā)滿足用戶需要、及時交付、不超過預算和無故障的軟件,其主要目標如下:(1)合理預算開發(fā)成本,付出較低的開發(fā)費用;(2)實現(xiàn)預期的軟件功能,達到較好的軟件性能,滿足用戶的需求;(3)提高所開發(fā)軟件的可維護性,降低維護費用;(4)提高軟件開發(fā)生產(chǎn)率,及時交付使用。2.原型化方法主要用于解決什么問題?試說明這種方法的主要優(yōu)缺點。建立原型的主要原因是為了解決在產(chǎn)品開發(fā)的早期階段需求不確定的問題,用戶、經(jīng)理和其他非技術(shù)項目風險承擔者發(fā)現(xiàn)在確定和開發(fā)產(chǎn)品時,原型可以使他們的想象更具體化。原型在軟件開發(fā)過程中可以起到以下主要作用:(1)明確并完善需求原型作為一種需求工具,它初步實現(xiàn)所理解的系統(tǒng)的一部分。用戶對原型的評價可以指出需求中的許多問題,在你開發(fā)真正產(chǎn)品之前,可以最低的費用來解決這些問題。(2)探索設(shè)計選擇方案原型作為一種設(shè)計工具,用它可以探索不同的用戶界面技術(shù),使系統(tǒng)達到最佳的可用性,并且可以評價可能的技術(shù)方案。(3)發(fā)展為最終的產(chǎn)品原型作為一種構(gòu)造工具,是產(chǎn)品最初子集的完整功能實現(xiàn),通過一系列小規(guī)模的開發(fā)循環(huán),你可以完成整個產(chǎn)品的開發(fā)。3.在下列用例圖中,哪些是系統(tǒng)角色?Banknetwork、Manager、Clerk4、(共20分)下面是一段插入排序的程序,將R[k+1]插入到R[1…k]的適當位置。R[0]=R[k+1];j=k;while(R[j]>R[0]){R[j+1]=R[j];j--;}R[j+1]=R[0];用路徑覆蓋方法為它設(shè)計足夠的測試用例(while循環(huán)次數(shù)為0、1、2次)。畫出該程序的流程圖:測試用例設(shè)計循環(huán)
次數(shù)輸入數(shù)據(jù)
預期結(jié)果覆蓋路徑jR[i-2]R[i-1]R[i]R[i+1]R[0]jR[i-2]R[i-1]R[i]R[i+1]約束路徑0i--122i--12<①③
i--111i--11=①③1i-1322i-1-123><①②③
i-2322i-1-123>=①②③2i13422i-21234>><①②②③
i23422i-22234>>=②③單項選擇題1.哪個活動可在可行性分析階段進行?(D)A.編碼 B.測試 C.設(shè)計 D.制訂市場營銷計劃2.在數(shù)據(jù)流程圖中,有名字及方向的成分是(C)。A.控制流 B.信息流 C.數(shù)據(jù)流 D.信號流3.以下各圖中不是UML使用的圖是(A)。A.數(shù)據(jù)流程圖 B.用例圖 C.類圖 D.順序圖4.下圖中,類的關(guān)系是(A)。A.依賴 B.關(guān)聯(lián) C.聚集 D.泛化5.甘特圖是一種(D)。A.UML模型 B.過程模型 C.系統(tǒng)構(gòu)架的抽象模型 D.進度計劃的表達方式6.下面不屬于軟件配置管理任務的是(D)。A.變更控制 B.配置審核 C.狀態(tài)報告 D.用例分析7.數(shù)據(jù)耦合、公共耦合、印記耦合、控制耦合的耦合性從低到高的順序是(B)A.數(shù)據(jù)、公共、印記、控制 B.數(shù)據(jù)、印記、控制、公共C.控制、數(shù)據(jù)、印記、公共 D.控制、數(shù)據(jù)、公共、印記8.軟件需求分析的主要任務是準確地定義出要開發(fā)的軟件系統(tǒng)是(C)A.如何做 B.怎么做C.做什么D.對誰做 9.可行性分析研究的目的是(B)A.爭取項目B.項目值得開發(fā)否C.開發(fā)項目D.規(guī)劃項目10.具有風險分析的軟件生存周期模型是(C)A.瀑布模型B.噴泉模型C.螺旋模型D.增量模型11.開發(fā)軟件所需高成本和產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱做(C)A.軟件工程 B.軟件周期C.軟件危機D.軟件產(chǎn)生12.程序的三種基本控制結(jié)構(gòu)的共同特點是(C)A.只能用來描述簡單程序 B.不能嵌套使用C.單入口,單出口D.僅用于自動控制系統(tǒng)13.數(shù)據(jù)字典是用來定義_________中的各個成份的具體含義的。(D)A.流程圖B.功能結(jié)構(gòu)圖C.系統(tǒng)結(jié)構(gòu)圖D.數(shù)據(jù)流圖14.為了使軟件具有清晰結(jié)構(gòu)和良好的風格,下面關(guān)于程序設(shè)計風格的敘述不可取的有(C)A.盡量不要進行浮點數(shù)的相等比較B.應當有適量的注釋C.盡可能對代碼優(yōu)化D.使用有意義的標識符15.使用白盒技術(shù)設(shè)計測試用例的方法包括(B)A.邊界值分析B.循環(huán)測試C.等價類劃分D.回歸測試16.下列模塊內(nèi)聚中,內(nèi)聚性最強的是(A)。A.功能內(nèi)聚 B.偶然內(nèi)聚 C.過程內(nèi)聚 D.順序內(nèi)聚17.若有一個計算類型的程序,它的輸入量只有一個X,其范圍是[-1.0,1.0],現(xiàn)從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001。設(shè)計這組測試用例的方法是(C)A.條件覆蓋法 B.等價分類法 C.邊界值分析法 D.錯誤推測法18.下列哪一種程序設(shè)計語言不是面向?qū)ο蟮模―)。A.C++ B.JAVA C.C# D.C19.下列測試方法不屬于集成測試的是(D)。A.自頂向下 B.自底向上 C.三明治測試 D.自中間向兩極測試20.關(guān)于用例的概念,下列說法不正確的是(C)。A.用例是一個連貫的功能性單元B.用例是通過Actor確認的C.可以借助狀態(tài)轉(zhuǎn)換圖來描述用例D.用例是一個類,而不是事件21.源程序文檔化要求在每個模塊之前加序言性注釋。該注釋內(nèi)容不應有(B)A.模塊的功能B.語句的功能C.模塊的接口D.開發(fā)歷史22.DFD中的每個加工至少需要(D)A.一個輸入流B.一個輸出流C.一個輸入或輸出流D.一個輸入流和一個輸出流23.為了提高模塊的獨立性,模塊之間最好是(D)A.控制耦合B.公共耦合C.內(nèi)容耦合D.數(shù)據(jù)耦合24.測試的關(guān)鍵問題是(D)A.如何組織對軟件的評審B.如何驗證程序的正確性C.如何采用綜合策略D.如何選擇測試用例25.軟件維護困難的主要原因是(C)A.費用低B.人員少C.開發(fā)方法的缺陷D.得不到用戶支持26.源程序文檔化要求在每個模塊之前加序言性注釋。該注釋內(nèi)容不應有(D)A.模塊的功能B.語句的功能C.模塊的接口D.開發(fā)歷史27.結(jié)構(gòu)化程序設(shè)計采用的三種基本控制結(jié)構(gòu)是(C)A.順序、分支、選擇B.選擇、循環(huán)、重復C.順序、選擇、循環(huán)D.輸入、變換、輸出28.通信內(nèi)聚、過程內(nèi)聚、順序內(nèi)聚和時間內(nèi)聚的內(nèi)聚性從高到低順序是(D)A.通信、過程、順序、時間B.通信、時間、順序、過程C.順序、通信、時間、過程D.順序、通信、過程、時間29.使用程序設(shè)計的控制結(jié)構(gòu)導出測試用例的測試方法是(B)A、黑盒測試B、白盒測試C、邊界測試D、系統(tǒng)測試30.軟件工程學的目的應該是最終解決軟件生產(chǎn)的(B)問題。A.提高軟件的開發(fā)效率B.使軟件生產(chǎn)工程化C.消除軟件的生產(chǎn)危機D.加強軟件的質(zhì)量保證31.軟件過程模型有多種,下列選項中,(C)不是軟件過程模型。A.螺旋模型 B.增量模型 C.行為模型 D.瀑布模型32.準確地解決“軟件系統(tǒng)必須做什么”是(C)階段的任務。A.可行性研究 B.詳細設(shè)計 C.需求分析 D.編碼33下列哪個是RAD模型的優(yōu)點(B)。A.適用于可變需求B.開發(fā)速度快C.適用于高風險項目D.可用于超大規(guī)模軟件項目開發(fā)34.瀑布模型是一種什么模型?(B)A.風險驅(qū)動模型 B.線性開發(fā)模型C.增量模型 D.迭代模型35.下列哪個不屬于軟件的基礎(chǔ)特征量?(D)A.軟件規(guī)模 B.開發(fā)成本 C.開發(fā)期限 D.軟件完整性36.軟件需求分析應確定的是用戶對軟件的(A)。A.功能需求和非功能需求B.性能需求C.非功能需求D.功能需求37.在軟件開發(fā)中,(A)是指對將要開發(fā)的系統(tǒng)的開發(fā)成本進行估算,然后與可能取得的效益進行比較和權(quán)衡。A.成本—效益分析B.可行性分析C.結(jié)構(gòu)化分析D.軟件需求分析38.瀑布模型的關(guān)鍵不足在于(D)。A.過于簡單B.各個階段需要進行評審C.過于靈活D.不能適應需求的動態(tài)變更39.下面說法正確的是(C)。A.經(jīng)過測試沒有發(fā)現(xiàn)錯誤說明程序正確B.測試的目標是為了證明程序沒有錯誤C.成功的測試是發(fā)現(xiàn)了迄今尚未發(fā)現(xiàn)的錯誤的測試D.成功的測試是沒有發(fā)現(xiàn)錯誤的測試40.軟件部件的內(nèi)部實現(xiàn)與外部可訪問性的分離,是指軟件的(C)。A、繼承性B、共享性C、封裝性D、抽象性41.下面哪個不屬于良好的人機界面設(shè)計原則?(B)A.系統(tǒng)的全部界面格式和風格一致B.為不同的用戶和功能提供一致的界面服務C.力求用戶輸入量最少D.具有幫助功能42.當模塊中包含復雜的條件組合,只有(A)能夠清晰地表達出各種動作之間的對應關(guān)系。A判定表和判定樹B盒圖C流程圖D關(guān)系圖43.下面哪個不是基于抽象的軟件設(shè)計原則?(C)A.里氏替換原則 B.開-閉原則 C.遠離實現(xiàn)原則 D.依賴倒轉(zhuǎn)原則44.假設(shè)目標系統(tǒng)如下圖的層次結(jié)構(gòu),對其按寬度優(yōu)先順序進行集成測試,正確的順序是(B)。A.abehcfidgilmkB.abcdefghijklmC.abehcdfigjklmD.lmhijkefgbcda45.下列哪個階段不是軟件生存期三個階段中的內(nèi)容(C)。A.定義階段B.開發(fā)階段C.編碼階段D.維護階段46.模塊的內(nèi)聚性最高的是(D)A.邏輯內(nèi)聚B.時間內(nèi)聚C.偶然內(nèi)聚D.功能內(nèi)聚47采用甘特圖表示軟件項目進度安排,下列說法中正確的是(D)A.能夠反映多個任務之間的復雜關(guān)系B.能夠直觀表示任務之間相互依賴制約關(guān)系C.能夠表示哪些任務是關(guān)鍵任務D.能夠表示子任務之間的并行和串行關(guān)系48.DFD中的每個加工至少需要(D)A.一個輸入流B.一個輸出流C.一個輸入或輸出流D.一個輸入流和一個輸出流49.下列關(guān)于功能性注釋不正確的說法是(B)A.功能性注釋嵌在源程序中,用于說明程序段或語句的功能以及數(shù)據(jù)的狀態(tài)B.注釋用來說明程序段,需要在每一行都要加注釋C.可使用空行或縮進,以便很容易區(qū)分注釋和程序D.修改程序也應修改注釋50.需求規(guī)格說明書的作用不包括(C)A.軟件驗收的依據(jù)B.用戶與開發(fā)人員對軟件要做什么的共同理解C.軟件可行性研究的依據(jù)D.軟件設(shè)計的依據(jù)51.為了克服軟件危機,人們提出了用(D)的原理來設(shè)計軟件,這就是軟件工程誕生的基礎(chǔ)。A.數(shù)學B.軟件學C.運籌學D.工程學52.以下哪一項不是軟件危機的表現(xiàn)形式(C)。A.開發(fā)的軟件不滿足用戶需要B.開發(fā)的軟件可維護性差C.開發(fā)的軟件價格便宜D.開發(fā)的軟件可靠性差53.結(jié)構(gòu)化設(shè)計是一種面向(A)的設(shè)計方法。A.數(shù)據(jù)流B.模塊C.數(shù)據(jù)結(jié)構(gòu)D.程序54.與確認測試階段有關(guān)的文檔是(A)。A.需求規(guī)格說明書B.概要設(shè)計說明書C.詳細設(shè)計說明書D.源程序55軟件開發(fā)的需求活動,其主要任務是(D)。A.給出軟件解決方案B.給出系統(tǒng)模塊結(jié)構(gòu)C.定義模塊算法D.定義需求并建立系統(tǒng)模型56.一個項目是否開發(fā),從經(jīng)濟上來說是否可行,歸根結(jié)底是取決于(A)。A.成本估算B.項目計劃C.工程管理D.工程網(wǎng)絡圖57.在面向?qū)ο蟮脑O(shè)計中,我們應遵循的設(shè)計準則除了模塊化、抽象、低耦合、高內(nèi)聚以外,還有(B)。A.隱藏復雜性B.信息隱蔽C.經(jīng)常類的復用D.類的開發(fā)58.面向?qū)ο蟮闹饕卣鞒龑ο笪┮恍?、封裝、繼承外,還有(A)。A.多態(tài)性B.完整性C.可移植性D.兼容性59、軟件是一種(C)A、程序B、數(shù)據(jù)
C、邏輯產(chǎn)品D、物理產(chǎn)品60、軟件部件的內(nèi)部實現(xiàn)與外部可訪問性的分離,是指軟件的(C)。A、繼承性B、共享性C、封裝性D、抽象性61、單元測試是發(fā)現(xiàn)編碼錯誤,集成測試是發(fā)現(xiàn)模塊的接口錯誤,確認測試是為了發(fā)現(xiàn)功能錯誤,那么系統(tǒng)測試是為了發(fā)現(xiàn)(C)的錯誤。A、接口錯誤B、編碼錯誤C、性能、質(zhì)量不合要求D、功能錯誤二、填空題1由客戶和用戶在軟件開發(fā)團隊的管理下執(zhí)行的測試稱作B測試。2“軟件生命周期”理論將軟件過程劃分到軟件開發(fā)的三個時期中,分別是軟件定義時期、軟件開發(fā)時期和___________。3設(shè)銀行年利率為i,假設(shè)n年后能收入F元,則當前的價值為_____________。4數(shù)據(jù)流程圖是一個分層的概念模型,分為三個層次,分別是總體圖、實施圖、細節(jié)圖。5數(shù)據(jù)字典定義了4種元素,分別是數(shù)據(jù)元素、數(shù)據(jù)字典、處理和數(shù)據(jù)文件或者數(shù)據(jù)庫。6時序圖、協(xié)作圖、狀態(tài)圖這些都屬于UML中的行為建模圖。7一個軟件項目中,對LOC進行估計,保守值為1000,最有可能值為800,樂觀值為600,則可估計出期望值為800。8數(shù)據(jù)流程圖又稱實施圖,用來表示系統(tǒng)中的計算節(jié)點的拓撲結(jié)構(gòu)和通信路徑與節(jié)點上運行的軟構(gòu)件等。9當A模塊調(diào)用B模塊時,若兩個模塊之間傳遞的是數(shù)值型參數(shù),則這兩個模塊的耦合方式是數(shù)據(jù)耦合。10數(shù)據(jù)流圖中的箭頭表示數(shù)據(jù)流。11軟件設(shè)計活動一般分為總體設(shè)計和詳細設(shè)計,前者的目的是確定目標系統(tǒng)的總體結(jié)構(gòu),后者是在此基礎(chǔ)上進一步精化。12RUP模型將軟件開發(fā)過程分為4個大的階段,分別是先啟、精化、構(gòu)建和產(chǎn)品化。13由客戶和用戶在他們的工作現(xiàn)場進行的測試稱作__________。14軟件設(shè)計活動一般分為總體設(shè)計和詳細設(shè)計兩個階段。15傳統(tǒng)的結(jié)構(gòu)化軟件工程方法中,人們通過面向?qū)ο蠓治鎏岣吣K的抽象程度。16依據(jù)模塊的編碼導出測試用例,這種測試稱作測試用例。17程序的三種基本控制結(jié)構(gòu)包括順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。18在單元測試時,需要為被測模塊設(shè)計驅(qū)動模塊與樁模塊。19需求分析應交付的主要文檔是需求規(guī)格說明。20設(shè)計出軟件的初步結(jié)構(gòu)以后,應該進一步分解或合并模塊,力求降低耦合提高內(nèi)聚。21劃分模塊時盡量做到高低內(nèi)聚耦合,保持模塊的獨立性。22類的實例化是用類創(chuàng)建對象的過程。23若年利率為i,現(xiàn)存入P元,n年后可得錢數(shù)為F=P×i×n+P。24在面向?qū)ο蠓椒ㄖ?,對象實現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作封裝于對象的統(tǒng)一體中。25類中操作的實現(xiàn)過程叫方法。26在處理過程定義中,對于復雜的條件組合問題,用自然語言不能直觀清楚地表述,因此常常使用判定表、判定樹方法。27軟件生存周期一般可分為問題定義、可行性研究、需求分析、設(shè)計、編碼、測試、運行與維護階段。28一個進行學生成績統(tǒng)計的模塊其功能是先對學生的成績進行累加,然后求平均值,則該模塊的內(nèi)聚性是順序內(nèi)聚。29從結(jié)構(gòu)化程序設(shè)計到面向?qū)ο?,是程序設(shè)計方法的又一次飛躍。30軟件生存周期一般可分為問題定義、可行性研究、需求分析、設(shè)計、編碼、測試、運行與維護階段。31數(shù)據(jù)流圖的基本符號包括外部實體、數(shù)據(jù)處理、數(shù)據(jù)存儲和數(shù)據(jù)流。三.簡答題什么是軟件工程?答:是指用工程、科學和數(shù)學的原則與方法開發(fā)、維護計算機軟件的有關(guān)技術(shù)和管理方法。功能內(nèi)聚和順序內(nèi)聚各有什么特點?哪一個的內(nèi)聚程度更高?答:順序內(nèi)聚指一個模塊中各個處理元素都密切相關(guān)同一功能且必須順序執(zhí)行,前一功能的輸出就是下一功能元素的輸入。功能內(nèi)聚是最高程度的內(nèi)聚;RUP模型的優(yōu)點有哪些?答:各個圖之間的關(guān)系去看UML相關(guān)的書籍。目的很明顯是用圖形代替描述性的語言更加直觀,容易參照和業(yè)務溝通。對系統(tǒng)進行抽象設(shè)計有哪些優(yōu)點?傳統(tǒng)的構(gòu)架建模方法有哪些?傳統(tǒng)的詳細設(shè)計建模方法有哪些?面向?qū)ο蟮脑O(shè)計建模方法又有哪些?(每種要求至少說出2種)數(shù)據(jù)字典與數(shù)據(jù)流程圖和狀態(tài)變遷圖相比較有什么特點?它的基本元素有哪些?答:數(shù)據(jù)流程圖反映了系統(tǒng)的靜態(tài)特征,狀態(tài)變遷圖反映了系統(tǒng)的動態(tài)特征。而它們都不能反映系統(tǒng)的具體細節(jié)。數(shù)據(jù)字典能夠進一步描述模型的細節(jié)。以數(shù)據(jù)字典為中心的建模方法能夠相對完整精確地描述一個系統(tǒng)。數(shù)據(jù)字典的主要元素有:數(shù)據(jù)元素、數(shù)據(jù)流、處理和數(shù)據(jù)文件或者數(shù)據(jù)庫。詳細設(shè)計的任務是什么?具體包括哪些?答:詳細設(shè)計的任務是在軟件構(gòu)架的基礎(chǔ)上,進一步確定如何實現(xiàn)目標系統(tǒng),具體包括系統(tǒng)的模塊邏輯的詳細設(shè)計、系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的設(shè)計、系統(tǒng)數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計、系統(tǒng)人-機接口的設(shè)計。什么是白盒測試?白盒測試主要有哪幾種測試技術(shù)?答:白盒測試又稱玻璃盒測試。使用白盒方法導出測試用例是依據(jù)模塊的編碼,即模塊的內(nèi)部邏輯,對測試者是可見的,故稱白盒測試。白盒測試主要有基本途徑測試、條件測試和循環(huán)測試等。軟件開發(fā)有哪些特性?10增量模型有哪些優(yōu)點?11瀑布模型的主要缺陷是什么?答:按照瀑布模型來開發(fā)軟件,只有當分析員能夠做出準確的需求分析時,才能夠得到預期的正確結(jié)果。12類之間的關(guān)系有哪些?13什么是黑盒測試法?什么是白盒測試法?答:黑盒測試是把程序看成一個黑盒子,完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程又稱功能測試;也就是說,在程序接口進行的測試,它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當?shù)慕邮茌斎霐?shù)據(jù)產(chǎn)生正確的輸出信息,并且保持外部信息的完整性。
白盒測試可以把程序看成裝在一個透明的白盒子里,也就是完全了解程序的結(jié)構(gòu)和處理過程又稱結(jié)構(gòu)測試;按照程序內(nèi)部的邏輯測試程序,檢驗程序
中的每條通路是否都能按預定要求正確工作。14軟件實施活動就是編碼嗎?為什么?15作為軟件工程中的重要環(huán)節(jié),軟件配置管理的任務有哪些?四.設(shè)計題1分析如下DFD圖,指出其中有哪些錯誤?(1)父圖的處理1沒有輸入流(2)子圖的數(shù)據(jù)流B應為C(3)子圖的數(shù)據(jù)流F多余2假設(shè)一個數(shù)據(jù)庫產(chǎn)品規(guī)范要求該產(chǎn)品能夠處理從1到1000中間的任何數(shù)量的記錄。請首先為其劃分等價類,并利用等價類劃分和邊界值分析技術(shù)為其設(shè)計測試用例,并說明每個測試用例屬于某等價類成員還是屬于邊界值或是鄰接邊界值。等價類1:少于1個記錄等價類2:1到1000個記錄等價類3:多于1000個記錄測試用例1:0個記錄 等價類1成員且鄰接邊界值測試用例2:1個記錄 邊界值測試用例3:2個記錄 鄰接邊界值測試用例4:100個記錄 等價類2的成員測試用例5:999個記錄 鄰接邊界值測試用例6:1000個記錄 邊界值測試用例7:1001個記錄 等價類3成員且鄰接邊界值3.工資計算系統(tǒng)中的一個子系統(tǒng)有如下功能:(1)計算扣除部分—由基本工資計算出應扣除(比如水電費、缺勤)的部分;(2)計算獎金部分—根據(jù)職工的出勤情況計算出獎勵金;(3)計算工資總額部分—根據(jù)輸入的扣除額及獎金計算出總額;(4)計算稅金部分—由工資總額中計算出應扣除各種稅金;(5)生成工資表—根據(jù)計算總額部分和計算稅金部分傳遞來的有關(guān)職工工資的詳細信息生成工資表。試根據(jù)要求畫出該問題的數(shù)據(jù)流程圖。4一個考試錄取統(tǒng)計分數(shù)子系統(tǒng)有如下功能:(1)計算標準分:根據(jù)考生原始分計算,得到標準分,存入考生分數(shù)文件;(2)計算錄取線分:根據(jù)標準分、招生計劃文件中的招生人數(shù),計算錄取線,存入錄取線文件。試根據(jù)要求畫出該系統(tǒng)的數(shù)據(jù)流程圖。5閱讀如下程序,說出該程序?qū)儆谀姆N耦合方式,為什么?并說明可以采用何種方式降藕。publicclassTest{ publicintcalSum(Workerw) //Worker為類名{ intwLevel=w.getLevel(); intwSalary=w.getSalary(); //計算工人獎金收入等}.......}這段程序存在印記耦合,因為該程序?qū)㈩惵暶鳛榱朔椒ǖ膮?shù)類型??刹捎媒涌诨蛘吆唵螀?shù)類型的方法降藕。6首先說出什么是基本途徑測試,然后為以下程序流程圖設(shè)計基本途徑測試的測試用例,并標明路徑?;就緩綔y試是指覆蓋基本途徑集合的試驗用例將使程序中的每條語句至少執(zhí)行一次。測試用例如下:x=3,y=0,z=3(覆蓋x>2,y=0,x=3,z>1,通過路徑abcde);x=1,y=1,z=1(覆蓋x≤1,y≠0,x≠2,z≤1,通過路徑ace)。7某廠對部分職工重新分配工作的政策是:年齡在20歲以下者,初中文化程度脫產(chǎn)學習,高中文化程度當電工;年齡在20歲至35歲之間者,中學文化程度男性當鉗工,女性當車工,大學文化程度都當技術(shù)員;年齡在35歲以上者,中學文化程度當材料員,大學文化程度當技術(shù)員。請根據(jù)以上材料分別采用偽碼和判定樹兩種方式描述之。偽碼表示:IF年齡<20THEN IF文化程度=初中THEN 脫產(chǎn)學習 ELSE 工作為電工 ENDIFELSE IF年齡≤35THEN IF文化程度=大學THEN 工作為技術(shù)員 ELSE IF性別=男性THEN 工作為鉗工 ELSE 工作為車工 ENDIF ENDIF ENDIFELSE IF文化程度=大學THEN 工作為技術(shù)員 ELSE 工作為材料員 ENDIFENDIF判定樹表示:8閱讀下列說明,回答問題。說明:某圖書管理系統(tǒng)的主要功能如下:1.圖書管理系統(tǒng)的資源目錄中記錄著所有可供讀者借閱的資源,每項資源都有一個唯一的索引號。系統(tǒng)需登記每項資源的名稱、出版時間和資源狀態(tài)(可借閱或已借出)。2.資源分兩類:圖書和唱片。對于圖書,系統(tǒng)還需登記作者和頁數(shù);對于唱片,還需登記演唱者和介質(zhì)類型(CD或磁帶)。3.讀者信息保存在該系統(tǒng)的讀者信息數(shù)據(jù)庫中,記錄的信息包括:讀者的識別碼和姓名。系統(tǒng)為每個讀者創(chuàng)建了一個借書記錄文件,用來保存讀者所借資源的相關(guān)信息。現(xiàn)采用面向?qū)ο蠓椒ㄩ_發(fā)該系統(tǒng)。系統(tǒng)的所用名詞如下表所示:圖書管理系統(tǒng)資源目錄讀者資源索引號系統(tǒng)名稱出版時間資源狀態(tài)圖書唱片作者頁數(shù)演唱者介質(zhì)類型CD磁帶讀者信息讀者信息數(shù)據(jù)庫識別碼姓名借書記錄文件信息建立如下類圖,回答問題。請從名詞表中挑選名詞為a、b、c三個類替換類名。a資源目錄b圖書c唱片資源條目和b、c三個類都有各自的屬性,請分別寫出它們的屬性名。資源條目屬性:索引號、名稱、出版時間、資源狀態(tài)圖書屬性:作者、頁數(shù)唱片屬性:演唱者、介質(zhì)類型識別關(guān)系多重度,完成(1)(2)(3)(4)。(1)1(2)0··n或0··*(3)0··n或0··*(4)19比較下列兩段語句,從編碼風格的角度分析其優(yōu)、劣。程序段一:/position_xisthepositionxofobject;position_yisthepositionyofobject;/ifa>bthen a=belse ifposition_x>position_ythen b=position_y else a=position_x endifendif程序段二:ifa>bthenifx>ythenb=yelsea=xendifelsea=bendif程序段一比程序段二好(1)開頭給出了序言性注視(2)使用了縮進使程序結(jié)構(gòu)更清晰(3)變量名定義更清楚10某個用戶輸入設(shè)定有如下規(guī)則:只能輸入‘#’或三位數(shù)字;假定設(shè)計的程序可接受所有符合規(guī)定的密碼,請使用等價類劃分法為其設(shè)計測試用例,并給出預期結(jié)果是有效還是無效。劃分等價類有效等價類無效等價類1.#;2.三位數(shù);1.
有非數(shù)字字符;2.少于三位數(shù)字;3.多于三位數(shù)字。
設(shè)計測試方案有效等價類測試用例1:# 有效測試用例2:123 有效無效等價類測試用例3:A12 無效測試用例4:12 無效測試用例5:1234 無效11欲開發(fā)一個銀行的活期存取款業(yè)務的處理系統(tǒng):儲戶將填好的存/取款單和存折交給銀行工作人員,然后由系統(tǒng)作以下處理;(1)業(yè)務分類處理:系統(tǒng)首先根據(jù)儲戶所填的存/取款單,確定本次業(yè)務的性質(zhì),并將存/取款單和存折交下一步處理;(2)存款處理:系統(tǒng)將存款單上的存款金額分別記錄在存折和帳目文件中,并將現(xiàn)金存入現(xiàn)金庫;最后將存折還給儲戶;(3)取款處理:系統(tǒng)將取款單上的取款金額分別記錄在存折和帳目文件中,并從現(xiàn)金庫提取現(xiàn)金;最后將現(xiàn)金和存折還給儲戶。該系統(tǒng)的總體圖如下圖所示,請畫出該系統(tǒng)的零級圖。五.綜合題1.假設(shè)你需要劃出一個小組專門開發(fā)一個組件,該組件的樂觀尺寸Sopt為7000LOC,最有可能尺寸Sm為9000LOC,保守尺寸Spress為14000LOC;這種組件的平均生產(chǎn)率為500LOC/月,平均開發(fā)成本為每月6000元。請根據(jù)以上給出的條件計算該組件的開發(fā)成本以及該小組的工作量,要求給出計算步驟。首先計算該組件的LOC估計值EV=(Sopt+4Sm+Spress)/6=(7000+4*9000+14000)/6=9500行該組件的每行近似成本為6000/500=12元組件的開發(fā)成本為12*9500=114000元則所需工作量為9500/500=16人-月2.假設(shè)你是一個公司的項目經(jīng)理,將要接手一個軟件項目,開發(fā)一個電子商務網(wǎng)站,你的團隊有60人左右,且擁有豐富的架站經(jīng)驗,對于該項目所要使用的J2EE平臺十分熟悉,并且在以往的開發(fā)過程中積累了大量可復用的構(gòu)件。不過客戶要求的時間非常急,只有3個月。試根據(jù)材料回答如下問題:(1)作為項目經(jīng)理,你將采用何種過程模型進行開發(fā)?為什么?采用RAD模型開發(fā)。原因:團隊人力資源充足,技術(shù)經(jīng)驗豐富,又有類似的開發(fā)經(jīng)歷并擁有可復用構(gòu)件,在客戶要求開發(fā)速度的情況下RAD模型是非常好的選擇。(2)假設(shè)項目實際進行時的進度情況與計劃情況不一致,有可能造成無法按期完工的情況,作為項目經(jīng)理,你該如何應對?答:A項目持續(xù)時間壓縮法,如趕工或并行實施;B資源分配平衡技術(shù),如把稀缺的資源先分配給關(guān)鍵路徑上的任務;C時差法,如將緊缺資源從時差較長的任務調(diào)整到關(guān)鍵任務上;D時間-成本平衡法,通過增加最低相關(guān)成本來縮短工期。3.假設(shè)您剛剛升任一家軟件公司的項目經(jīng)理,將率領(lǐng)一個40人的團隊,用ASP.NET開發(fā)一個在線購物系統(tǒng)。該系統(tǒng)應用前景良好。不過您所在的公司之前一直使用J2EE平臺開發(fā),對微軟的.NET不夠熟悉,好在客戶要求的時間不是很緊,有12個月的時間可用于開發(fā)。請根據(jù)以上材料回答如下問題:(1)您打算采用何種軟件過程模型來組織開發(fā)?為什么?RUP模型或增量模型、螺旋模型等。原因:項目規(guī)模較大,需要多人協(xié)作開發(fā);需求不清楚,缺乏相關(guān)領(lǐng)域的經(jīng)驗;技術(shù)基礎(chǔ)薄弱,缺乏準備;使用此類演進模型,可以再開發(fā)過程中與用戶很好地交互,減少開發(fā)風險。可在早期迭代中構(gòu)造原型產(chǎn)品,盡快熟悉業(yè)務需求;在后面的迭代中,完善構(gòu)架,逐步開發(fā)出符合用戶需求的產(chǎn)品。(2)作為項目經(jīng)理,請你分析該項目可能存在的風險有哪些?剛剛當上項目經(jīng)理,缺乏管理經(jīng)驗;項目規(guī)模大,需要足夠的人力支持;缺乏領(lǐng)域經(jīng)驗,用戶需求還不夠清楚;技術(shù)經(jīng)驗缺乏等。以圖書管理系統(tǒng)為例1.需求分析階段有哪些任務要完成?文檔內(nèi)容有哪些答:一、確定對系統(tǒng)的綜合要求1.功能需求:這方面的需求指定系統(tǒng)必須提供的服務。通過需求分析應該劃分出系統(tǒng)必須完成的所有功能。2.性能需求:性能需求指定系統(tǒng)必須滿足的定時約束或容量約束,通常包括速度(響應時間)、信息量速率、主存容量、磁盤容量、安全性等方面的需求。3.可靠性和可用性需求:可靠性需求定量地指定系統(tǒng)的可靠性??捎眯耘c可靠性密切相關(guān),它量化了用戶可以使用系統(tǒng)的程度。4.出錯處理需求:這類需求說明系統(tǒng)對環(huán)境錯誤應該怎樣響應。例如,如果它接收到從另一個系統(tǒng)發(fā)來的違反協(xié)議格式的消息,應該做什么?注意,上述這類錯誤并不是由該應用系統(tǒng)本身造成的。5.接口需求:接口需求描述應用系統(tǒng)與它的環(huán)境通信的格式。常見的接口需求有:用戶接口需求;硬件接口需求;軟件接口需求;通信接口需求。6.約束:設(shè)計約束或?qū)崿F(xiàn)約束描述在設(shè)計或?qū)崿F(xiàn)應用系統(tǒng)時應遵守的限制條件。在HYPERLINK"/search?word=%E9%9C
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 短期倉庫租賃合同2025
- 自建房買賣合同模板
- 吉林省長春市外國語學校2024-2025學年高三5月綜合試題數(shù)學試題含解析含解析
- 嘉峪關(guān)市重點中學2024-2025學年高三第二學期期中練習(一模)生物試題試卷含解析
- 新疆兵團八師一四三團一中2024-2025學年高考模擬試題含解析
- 山東畜牧獸醫(yī)職業(yè)學院《數(shù)字錄像》2023-2024學年第一學期期末試卷
- 徐州工業(yè)職業(yè)技術(shù)學院《數(shù)據(jù)結(jié)構(gòu)》2023-2024學年第二學期期末試卷
- 長春師范高等??茖W?!豆こ添椖咳谫Y》2023-2024學年第二學期期末試卷
- 四川省成都市2025年高三開學摸底聯(lián)考物理試題試卷含解析
- 泰山職業(yè)技術(shù)學院《醫(yī)患關(guān)系及溝通技巧》2023-2024學年第二學期期末試卷
- 意大利(百得)TBG 系列燃燒機說明書
- 項目小組成員職責表
- 冠脈搭橋術(shù)個案查房
- 李白《長干行》教學課件
- 駕駛員日常安全教育培訓大綱
- 螺栓、螺釘和螺柱技術(shù)規(guī)范(企業(yè)標準)
- 幼兒園大班語言-福氣糕
- 2024屆匯文中學化學高一第一學期期末調(diào)研模擬試題含解析
- 師德師風負面清單及整改臺賬
- 共青團章程學習心得體會
- 玉米密植精準調(diào)控高產(chǎn)技術(shù)-李少昆農(nóng)科院作物所
評論
0/150
提交評論