版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《軟件工程》期末總復(fù)習(xí)題(新版)(含作業(yè)及答案、復(fù)習(xí)重點(diǎn)、考核說明)一、選擇題:(軟件工程作業(yè)1第1~4章)開發(fā)軟件所需高成本和產(chǎn)品的低質(zhì)量之間有著鋒利的矛盾,這種現(xiàn)象稱做(C)。A.軟件工程 B.軟件周期 C.軟件危機(jī) D.軟件產(chǎn)生瀑布模型本質(zhì)上是一種(A)模型。A.線性順序B.順序迭代C.線性迭代D.初期產(chǎn)品瀑布模型存在的問題是(B)。A.用戶容易參與開發(fā) B.缺少靈活性C.用戶與開發(fā)者易溝通D.合用可變需求螺旋模型是一種將瀑布模型和(A)結(jié)合起來的軟件開發(fā)模型。A.增量模型 B.專家系統(tǒng) C.噴泉模型 D.變換模型原型化方法是用戶和設(shè)計(jì)者之間執(zhí)行的一種交互構(gòu)成,合用于(A)系統(tǒng)。A.需求不擬定性高的 B.需求擬定的 C.管理信息 D.實(shí)時(shí)下列有關(guān)軟件工程的標(biāo)準(zhǔn),屬于國際標(biāo)準(zhǔn)的是(D)A.GB B.DIN C.ISO D.IEEE結(jié)構(gòu)化方法是一種基于(D)的方法。A.數(shù)據(jù)結(jié)構(gòu)B.程序結(jié)構(gòu) C.算法D.數(shù)據(jù)流軟件可行性研究實(shí)質(zhì)上是要進(jìn)行一次(A)需求分析、設(shè)計(jì)過程。A、簡(jiǎn)化、壓縮的 B、具體的 C、徹底的 D、進(jìn)一步的可行性研究的目的是(D)A、分析開發(fā)系統(tǒng)的必要性 B、擬定系統(tǒng)建設(shè)的方案 C、分析系統(tǒng)風(fēng)險(xiǎn) D、擬定是否值得開發(fā)系統(tǒng)設(shè)年利率為i,現(xiàn)存入p元,不計(jì)復(fù)利,n年后可得錢數(shù)為(C)。A、P×(1+i*n) B、P×(i+1)*n C、p×(1+i)n D、p×(i+n)可行性研究是在(A)之前A、系統(tǒng)開發(fā) B、測(cè)試 C、試運(yùn)營 D、集成測(cè)試可行性研究需要的時(shí)間長(zhǎng)短取決于系統(tǒng)的規(guī)模,一般來說,可行性研究的成本只是預(yù)期總成本的(C)。A、1% B、20% C、8% D、50%我國正式頒布實(shí)行的(B)對(duì)計(jì)算機(jī)病毒的定義具有法律性、權(quán)威性。A.《計(jì)算機(jī)軟件保護(hù)條例》B.《中華人民共和國計(jì)算機(jī)信息系統(tǒng)安全保護(hù)條例》C.《中華人民共和國著作權(quán)法》D.《計(jì)算機(jī)病毒防治管理辦法》效率是一個(gè)性能規(guī)定,因此應(yīng)當(dāng)在以下哪個(gè)階段規(guī)定?BA、可行性分析B、需求分析C、概要設(shè)計(jì)D、具體設(shè)計(jì)需求規(guī)格說明書的作用不涉及(D)A、軟件驗(yàn)收的依據(jù)B、用戶與開發(fā)人員對(duì)軟件要做什么的共同理解C、軟件可行性研究的依據(jù) D、軟件設(shè)計(jì)的依據(jù)數(shù)據(jù)字典是用來定義(D)中的各個(gè)成份的具體含義的。A、程序流程圖B、功能結(jié)構(gòu)圖 C、系統(tǒng)結(jié)構(gòu)圖D、數(shù)據(jù)流程圖數(shù)據(jù)流程圖是(A)方法中用于表達(dá)系統(tǒng)邏輯模型的一種圖形工具。A、SA B、SD C、SP D、SCDFD中的每個(gè)加工至少有(A)。A、一個(gè)輸入流或一個(gè)輸出流 B、一個(gè)輸入流和一個(gè)輸出流C、一個(gè)輸入流 D、一個(gè)輸出流需求分析階段的關(guān)鍵任務(wù)是擬定(D)A、軟件開發(fā)方法 B、軟件開發(fā)工具C、軟件開發(fā)費(fèi)D、軟件系統(tǒng)的功能在SD方法中全面指導(dǎo)模塊劃分的最重要的原則是(D)。A、程序模塊化B、模塊高內(nèi)聚C、模塊低耦合D、模塊獨(dú)立性在模塊的3種基本屬性中,反映模塊內(nèi)部特性的是(C)。A、接口 B、功能 C、邏輯 D、狀態(tài)模塊的耦合性可以按照耦合限度的高低進(jìn)行排序,以下哪一項(xiàng)符合從低到高的對(duì)的順序(D)。A、數(shù)據(jù)結(jié)構(gòu)耦合,公共耦合,控制耦合,內(nèi)容耦合B、數(shù)據(jù)耦合,控制耦合,數(shù)據(jù)結(jié)構(gòu)耦合,公共耦合C、無直接耦合,數(shù)據(jù)結(jié)構(gòu)耦合,內(nèi)容耦合,控制耦合D、無直接耦合,數(shù)據(jù)耦合,控制耦合,內(nèi)容耦合PDL是描述解決過程(C)A、做什么B、為什么做C、怎么做D、對(duì)誰做(D)工具在軟件具體設(shè)計(jì)過程中不采用。A、鑒定表 B、IPO圖 C、PDL D、DFD圖為高質(zhì)量地開發(fā)軟件項(xiàng)目,在軟件結(jié)構(gòu)設(shè)計(jì)時(shí),必須遵循(A)原則。A.信息隱蔽B、質(zhì)量控制 C、程序優(yōu)化D、數(shù)據(jù)共享當(dāng)一個(gè)模塊直接使用另一個(gè)模塊的內(nèi)部數(shù)據(jù),這種模塊之間的耦合為(D)A、數(shù)據(jù)耦合B、公共耦合C、標(biāo)記耦合D、內(nèi)容耦合具體設(shè)計(jì)與概要設(shè)計(jì)銜接的圖形工具是(B)。 A、DFD圖B、SC圖C、PAD圖D、程序流程圖下列幾種類型中,耦合性最弱的是(D)。 A、內(nèi)容型B、控制型C、公共型D、數(shù)據(jù)型軟件結(jié)構(gòu)使用的圖形工具,一般采用(C)圖。 A、DFD B、PAD C、SC D、ER在七種偶合中,最低偶合是(D)。A、內(nèi)容偶合B、公共偶合C、數(shù)據(jù)偶合D、非直接偶合一、選擇題(軟件工程作業(yè)2第5~7章)從本質(zhì)上說,面向?qū)ο笫恰跋取睌M定(A)后擬定執(zhí)行的動(dòng)作。A.動(dòng)作的主體 B.屬性 C.關(guān)系 D.方法(B)是對(duì)象的靜態(tài)特性。A.方法 B.屬性 C.關(guān)系 D.操作對(duì)象的(D)使對(duì)象的動(dòng)態(tài)特性A.特性 B.屬性 C.關(guān)系 D.操作屬于某個(gè)類的一個(gè)具體對(duì)象稱為該類的(A)。A.實(shí)例 B.虛擬 C.繼承 D.多態(tài)UML是(A)。一種可視化的建模語言是一種可視化的程序設(shè)計(jì)語言是一種過程是一種方法封裝的的作用是(A)。A.復(fù)用 B.對(duì)象 C.實(shí)例 D.方法8.面向?qū)ο蠓治龅暮诵脑谟诮ⅲ˙)模型。A.建立對(duì)的的模型B.辨認(rèn)問題域?qū)ο驝.辨認(rèn)對(duì)象之間的關(guān)系D.上面所有9.面向?qū)ο蠓治鲞^程中建立的模型有(D)。A.數(shù)據(jù)模型、功能模型、活動(dòng)模型B.對(duì)象模型、功能模型、測(cè)試模型C.屬性模型、功能模型、對(duì)象模型D.對(duì)象模型、功能模型、動(dòng)態(tài)模型10.下列的(C)不是分析建模的目的。A.定義可驗(yàn)證的軟件需求B.描述客戶需求C.開發(fā)一個(gè)簡(jiǎn)樸的問題解決方案D.建立軟件設(shè)計(jì)的基礎(chǔ)11.下列的(C)不屬于面向?qū)ο蠓治瞿P?。A.用例圖B.類圖C.實(shí)體關(guān)系圖D.順序圖12.(A)用于描述系統(tǒng)中概念層次的對(duì)象。A.分析類B.界面類C.實(shí)體類D.控制類13.在基于用例的面向?qū)ο蠓治鲞^程中,定義交互行為的關(guān)鍵在于通過描述分析類實(shí)例之間的(A)將用例的職責(zé)分派到分析類中。A.消息傳遞B關(guān)聯(lián)關(guān)系C繼承關(guān)系D上下文關(guān)系14.用例的實(shí)現(xiàn)細(xì)節(jié)不會(huì)在(B)描述。A.用例說明B.用例圖C.活動(dòng)圖D.順序圖15.用例的職責(zé)通常分派給(D)的對(duì)象。A.發(fā)送消息B.接受消息C.發(fā)送和接受雙方D.分析類16.組織機(jī)構(gòu)圖是(C)。A.UML的一個(gè)最新圖B.類圖的一種C.用于辨認(rèn)角色的輔助圖D.用例圖的一種17.在圖書館系統(tǒng)中,假如已經(jīng)構(gòu)造了一個(gè)一般借書者類,后來發(fā)現(xiàn)圖書館的學(xué)生和教師在借書中有不同規(guī)定。請(qǐng)問在面向?qū)ο笤O(shè)計(jì)中用(B)方法可以方便地設(shè)計(jì)這兩個(gè)類?A.信息隱藏B.繼承C.動(dòng)態(tài)聯(lián)編D.代碼復(fù)制18.框架是一組可用于不同應(yīng)用的(A)集合A.類B.對(duì)象C.模塊D.代碼19.下面哪個(gè)選項(xiàng)不能描述子系統(tǒng)之間的關(guān)系。(D)A.請(qǐng)求——服務(wù)關(guān)系B.繼承關(guān)系C.依賴關(guān)系D.數(shù)據(jù)關(guān)系20.每個(gè)子系統(tǒng)的接口上定義了若干(B),體現(xiàn)了子系統(tǒng)的功能。A.說明B.操作C.屬性D.關(guān)系21.通常將具有共性的非功能規(guī)定設(shè)計(jì)在(B),以減少重新開發(fā)的工作量。A.接口層B.中間層C.最低層D.最高層22.每個(gè)用例至少應(yīng)當(dāng)有一個(gè)(C),它通常沒有屬性而只有方法,只是起協(xié)調(diào)和控制作用。A.接口類B.實(shí)體類C.控制類D.界面類23.類有三種類型即(A)。A.邊界類、實(shí)體類、控制類B.實(shí)體類、數(shù)據(jù)類、界面類C.控制類、實(shí)體類、數(shù)據(jù)類D.界面類、控制類、公共類24.下面那個(gè)選項(xiàng)不是對(duì)的的面向?qū)ο笤O(shè)計(jì)思想。(C)A.對(duì)接口進(jìn)行設(shè)計(jì)B.發(fā)現(xiàn)變化并且封裝它C.先繼承后組合D.先組合后繼承25.定義類的屬性類型時(shí)盡量使用已有的類型,太多的自定義類型會(huì)減少系統(tǒng)的(A)指標(biāo)。A.可維護(hù)性B.安全性C.開發(fā)效率D.可移植性選擇題(軟件工程作業(yè)3第8~11章)結(jié)構(gòu)化語言是介于自然語言和形式語言之間的一種(D)。A.半形式語言B.計(jì)算機(jī)語言C.低檔語言 D.高級(jí)語言程序設(shè)計(jì)語言的技術(shù)特性不應(yīng)涉及(C)。A、數(shù)據(jù)結(jié)構(gòu)的描述性B、抽象類型的描述性C、數(shù)據(jù)庫的易操作性D、軟件的可移植性程序的三種基本控制結(jié)構(gòu)是(B)。A.過程、子程序和分程序 B.順序、選擇和反復(fù)C.遞歸、堆棧和隊(duì)列 D.調(diào)用、返回和轉(zhuǎn)移結(jié)構(gòu)化程序設(shè)計(jì)重要強(qiáng)調(diào)的是(D)。A.程序的規(guī)模B.程序的效率 C.程序設(shè)計(jì)語言的先進(jìn)性 D.程序易讀性下列關(guān)于功能性注釋不對(duì)的的說法是(B)。A.功能性注釋嵌在源程序中,用于說明程序段或語句的功能以及數(shù)據(jù)的狀態(tài)B.注釋用來說明程序段,需要在每一行都要加注釋C.可使用空行或縮進(jìn),以便很容易區(qū)分注釋和程序D.修改程序也應(yīng)修改注釋下列關(guān)于效率的說法不對(duì)的的是(D)。A.效率是一個(gè)性能規(guī)定,其目的應(yīng)當(dāng)在需求分析時(shí)給出B.提高程序效率的主線途徑在于選擇良好的設(shè)計(jì)方法,數(shù)據(jù)結(jié)構(gòu)與算法C.效率重要指解決機(jī)時(shí)間和存儲(chǔ)器容量?jī)蓚€(gè)方面D.程序的效率與程序的簡(jiǎn)樸性無關(guān)結(jié)構(gòu)化維護(hù)與非結(jié)構(gòu)化維護(hù)的重要區(qū)別在于(B)。A.軟件是否結(jié)構(gòu)化 B.軟件配置是否完整 C.程序的完整性 D.文檔的完整性關(guān)于JAVA語言下列說法不對(duì)的的是(B)。A.跨平臺(tái)的 B.動(dòng)態(tài)指針 C.解釋型的 D.面向?qū)ο蟮氖褂冒缀袦y(cè)試方法時(shí),擬定測(cè)試數(shù)據(jù)應(yīng)根據(jù)(A)和指定的覆蓋標(biāo)準(zhǔn)。A程序內(nèi)部邏輯B.程序復(fù)雜結(jié)構(gòu)C.使用說明書 D.程序的功能確認(rèn)測(cè)試重要涉及的文檔是(A)。A、需求規(guī)格說明書B、概要設(shè)計(jì)說明書C、具體設(shè)計(jì)說明書D、源程序測(cè)試的關(guān)鍵問題是(D)。A.如何組織對(duì)軟件的評(píng)審 B.如何驗(yàn)證程序的對(duì)的性C.如何采用綜合策略 D.如何選擇測(cè)試用例黑盒測(cè)試在設(shè)計(jì)測(cè)試用例時(shí),重要研究(A)。A.需求規(guī)格說明 B.具體設(shè)計(jì)說明C.項(xiàng)目開發(fā)計(jì)劃 D.概要設(shè)計(jì)說明與具體設(shè)計(jì)說明下面哪些測(cè)試屬于黑盒測(cè)試(B)。A、途徑測(cè)試B、等價(jià)類劃分C、條件判斷D、循環(huán)測(cè)試在下述哪一種測(cè)試中,測(cè)試人員必須接觸到源程序(B)。A、功能測(cè)試 B、結(jié)構(gòu)測(cè)試C、功能測(cè)試和結(jié)構(gòu)測(cè)試D、性能測(cè)試檢查軟件產(chǎn)品是否符合需求定義的過程稱為(D)。A、確認(rèn)測(cè)試B、集成測(cè)試C、驗(yàn)收測(cè)試D、驗(yàn)證測(cè)試軟件測(cè)試方法中,黑盒、白盒測(cè)試法是常用的方法,其中白盒測(cè)試重要用于測(cè)試(D)。結(jié)構(gòu)合理性B、軟件外部功能C、程序?qū)Φ男訢、程序內(nèi)部邏輯軟件維護(hù)中,因修改交互輸入的順序,沒有對(duì)的的記錄而引起的錯(cuò)誤是(A)產(chǎn)生的副作用。A、文檔B、數(shù)據(jù) C、編碼D、設(shè)計(jì)以下屬于軟件維護(hù)階段文檔的是(C)。A、軟件需求說明B、操作手冊(cè)C、軟件問題報(bào)告D、測(cè)試分析報(bào)告產(chǎn)生軟件維護(hù)的副作用,是指(C)。A、開發(fā)時(shí)的錯(cuò)誤 B、隱含的錯(cuò)誤 C、因修改軟件而導(dǎo)致的錯(cuò)誤 D、運(yùn)營時(shí)誤操作維護(hù)中,因誤刪除一個(gè)標(biāo)記符而引起的錯(cuò)誤是(C)副作用。A、文檔 B、數(shù)據(jù) C、編碼 D、設(shè)計(jì)可維護(hù)性的特性中,互相促進(jìn)的(A)。A、可理解性和可測(cè)試性B、效率和可移植性 C、效率和可修改性 D、效率和結(jié)構(gòu)好軟件維護(hù)的困難重要因素是(C)A、費(fèi)用低 B、人員少 C、開發(fā)方法的缺陷D、用戶不配合軟件維護(hù)費(fèi)用高的重要因素是(C)。A、人員少B、人員多C、生產(chǎn)率低D、生產(chǎn)率高為了適應(yīng)軟硬件環(huán)境變化而修改軟件的過程是(C)。A、校正性維護(hù) B、完善性維護(hù) C、適應(yīng)性維護(hù)D、防止性維護(hù)可維護(hù)性的特性中,互相矛盾的是(B)A.可理解性與可測(cè)試性B.效率與可修改性C.可修改性和可理解性D.可理解性與可讀性各種不同的軟件維護(hù)中,以(C)維護(hù)所占的維護(hù)量最小。糾錯(cuò)性維護(hù)B、代碼維護(hù)C、防止性維護(hù)D、文檔維護(hù)在變更控制中,(B)可以用來保證由不同用戶所執(zhí)行的并發(fā)變更。A.異步控制B.同步控制C.存取控制D.基線控制變更控制是一項(xiàng)最重要的軟件配置任務(wù),其中“檢出”和(A)解決實(shí)現(xiàn)了兩個(gè)重要的變更控制要素,即存取控制和同步控制。A.登入B.管理C.填寫變更規(guī)定D.審查用圖表達(dá)軟件項(xiàng)目進(jìn)度安排,下列說法中對(duì)的的是(B)A.可以反映多個(gè)任務(wù)之間的復(fù)雜關(guān)系B.可以直觀表達(dá)任務(wù)之間互相依賴制約關(guān)系C.可以表達(dá)哪些任務(wù)是關(guān)鍵任務(wù)D.可以表達(dá)子任務(wù)之間的并行和串行關(guān)系基線可作為軟件生存期中各開發(fā)階段的一個(gè)檢查點(diǎn)。當(dāng)采用的基線發(fā)生錯(cuò)誤時(shí),可以返回到最近和最恰當(dāng)?shù)模–)上A.配置項(xiàng)B.程序C.基線D.過程二、簡(jiǎn)答題(軟件工程作業(yè)1第1~4章)什么是軟件工程?軟件工程的目的是什么?答:軟件工程是①將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運(yùn)營和維護(hù)過程,即將工程化應(yīng)用于軟件開發(fā)和管理之中,②對(duì)①中所選方法的研究。目的:合理預(yù)算開發(fā)成本,付出較低的開發(fā)費(fèi)用。實(shí)現(xiàn)預(yù)期的軟件功能,達(dá)成較好的軟件性能,滿足用戶的需求。3提高軟件的可維護(hù)性,減少維護(hù)費(fèi)用。4提高軟件開發(fā)生產(chǎn)率,及時(shí)交付使用5增強(qiáng)軟件過程的可見性和可控性,保證軟件的質(zhì)量。指出瀑布模型中下列任務(wù)的順序:驗(yàn)收測(cè)試,項(xiàng)目計(jì)劃,單元測(cè)試,需求評(píng)審,成本估計(jì),概要設(shè)計(jì),具體設(shè)計(jì),系統(tǒng)測(cè)試,設(shè)計(jì)評(píng)審,編碼,需求規(guī)格說明書。答:項(xiàng)目計(jì)劃,成本估計(jì),需求規(guī)格說明書,需求評(píng)審,概要設(shè)計(jì),具體設(shè)計(jì),設(shè)計(jì)評(píng)審,編碼,單元測(cè)試,系統(tǒng)測(cè)試,驗(yàn)收測(cè)試可行性研究報(bào)告的重要內(nèi)容是什么?答:可行性研究重要涉及以下幾個(gè)部分:(1)概述(2)技術(shù)可行性(3)項(xiàng)目成熟限度(4)市場(chǎng)需求情況和風(fēng)險(xiǎn)分析(5)投資估算及資金籌措(6)經(jīng)濟(jì)與社會(huì)效益(7)綜合實(shí)力和產(chǎn)業(yè)基礎(chǔ)(8)項(xiàng)目實(shí)行進(jìn)度計(jì)劃(9)其它尚需要說明的必要的方面(10)結(jié)論什么是需求分析?需求分析階段的基本任務(wù)是什么?答:所謂"需求分析",是指對(duì)要解決的問題進(jìn)行具體的分析,弄清楚問題的規(guī)定,涉及需要輸入什么數(shù)據(jù),要得到什么結(jié)果,最后應(yīng)輸出什么??梢哉f,“需求分析”就是擬定要計(jì)算機(jī)“做什么”。任務(wù):擬定軟件項(xiàng)目的目的和范圍。調(diào)查使用者的規(guī)定,分析軟件必須做什么,編寫需求規(guī)格說明書等它相關(guān)文檔,并進(jìn)行必要的需求審查。除此之外,還涉及需求變更控制,需求風(fēng)險(xiǎn)控制,需求版本控制等對(duì)需求的管理工作什么是結(jié)構(gòu)化分析方法?該方法使用什么描述工具?答:結(jié)構(gòu)化的分析方法是面向數(shù)據(jù)流的方法,因此,此方法研究的核心是數(shù)據(jù)的組成和數(shù)據(jù)流向和對(duì)數(shù)據(jù)的加工解決。結(jié)構(gòu)化分析方法用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,直至找到滿足功能規(guī)定的所有可實(shí)現(xiàn)的軟件元素為止描述工具:1系統(tǒng)流程圖2數(shù)據(jù)流程圖3數(shù)據(jù)字典4IPO圖5層次方框圖6實(shí)體—關(guān)系圖7狀態(tài)—變遷圖結(jié)構(gòu)化分析方法通過哪些環(huán)節(jié)來實(shí)現(xiàn)?答:1)
擬定系統(tǒng)的功能規(guī)定2)
擬定系統(tǒng)的數(shù)據(jù)規(guī)定3)
擬定系統(tǒng)的操作規(guī)定和界面規(guī)定4)
擬定系統(tǒng)的性能規(guī)定5)
擬定系統(tǒng)的運(yùn)營規(guī)定6)
獲得當(dāng)前系統(tǒng)的物理模型7)
抽象出當(dāng)前系統(tǒng)的邏輯模型8)
建立目的系統(tǒng)的邏輯模型。9)
修正開發(fā)計(jì)劃10)假如需要?jiǎng)t開發(fā)系統(tǒng)原型什么是數(shù)據(jù)流圖?其作用是什么?其中的基本符號(hào)各表達(dá)什么含義?答:數(shù)據(jù)流圖:簡(jiǎn)稱DFD,就是采用圖形方式來表達(dá)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程,是結(jié)構(gòu)化系統(tǒng)分析方法的重要表達(dá)工具及用于表達(dá)軟件模型的一種圖示方法。數(shù)據(jù)流圖的基本符號(hào)的意思:1.矩形表達(dá)數(shù)據(jù)的外部實(shí)體;2.圓角的矩形表達(dá)變換數(shù)據(jù)的解決邏輯;3.少右面的邊矩形表達(dá)數(shù)據(jù)的存儲(chǔ);4.箭頭表達(dá)數(shù)據(jù)流。什么是數(shù)據(jù)字典?其作用是什么?它有哪些條目?答:數(shù)據(jù)字典,重要用來描述數(shù)據(jù)流程圖中的數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、解決過程和和數(shù)據(jù)源點(diǎn)/終點(diǎn)。作用:數(shù)據(jù)流程圖描述了系統(tǒng)的邏輯結(jié)構(gòu),其中的四個(gè)基本圖形元素的含義無法在數(shù)據(jù)流程圖中具體說明,因此數(shù)據(jù)流程圖需要與其他工具配合使用,數(shù)據(jù)字典就是這樣的工具之一。涉及的條目:數(shù)據(jù)流詞條數(shù)據(jù)元素詞條數(shù)據(jù)存儲(chǔ)詞條數(shù)據(jù)加工解決詞條數(shù)據(jù)源點(diǎn)及終點(diǎn)詞條什么是概要設(shè)計(jì)?有哪些基本任務(wù)?答:概要設(shè)計(jì):根據(jù)用戶的需求先擬定軟件系統(tǒng)的總體結(jié)構(gòu)和總的設(shè)計(jì)原則基本的任務(wù):設(shè)想供選擇的方案。推薦最佳方案。功能分解,擬定軟件結(jié)構(gòu)。設(shè)計(jì)軟件結(jié)構(gòu)。制定測(cè)試計(jì)劃。數(shù)據(jù)設(shè)計(jì)。書寫文檔。涉及總體設(shè)計(jì)規(guī)格說明書。用戶手冊(cè)。測(cè)試計(jì)劃。設(shè)計(jì)審查和復(fù)審。具體設(shè)計(jì)的基本任務(wù)是什么?有那幾種描述方法?答:具體設(shè)計(jì)階段的任務(wù)是要為編寫程序代碼設(shè)計(jì)“圖紙”,由程序員按“圖紙”用某種高級(jí)程序設(shè)計(jì)語言編寫程序代碼。重要方法有設(shè)計(jì)程序流程圖,表格設(shè)計(jì)符號(hào)以及過程設(shè)計(jì)語言。什么是變換流?什么是事物流?答:變換型數(shù)據(jù)流可以劃分為明顯的三部分:邏輯輸入,中心變換,邏輯輸出事務(wù)流的特點(diǎn)是數(shù)據(jù)沿某個(gè)輸入途徑流動(dòng),該途徑將外部信息轉(zhuǎn)換成事務(wù),其中發(fā)射出多條事務(wù)解決途徑的中心解決被稱為中心事務(wù)模塊的內(nèi)聚有哪幾種?模塊間的耦合有哪幾種?答:內(nèi)聚分為七種類型:巧合內(nèi)聚——一個(gè)模塊執(zhí)行多個(gè)完全互不相關(guān)的動(dòng)作,那么這個(gè)模塊就有巧合內(nèi)聚邏輯內(nèi)聚——當(dāng)一個(gè)模塊執(zhí)行一系列相關(guān)的動(dòng)作時(shí),稱其有邏輯內(nèi)聚。時(shí)間性內(nèi)聚——當(dāng)一個(gè)模塊內(nèi)的多個(gè)任務(wù)是與時(shí)間有關(guān)時(shí),這個(gè)模塊具有時(shí)間性內(nèi)聚。過程內(nèi)聚——模塊執(zhí)行的若干動(dòng)作之間有順序關(guān)系。通信內(nèi)聚——模塊執(zhí)行的若干動(dòng)作之間有順序關(guān)系,并且所有動(dòng)作是在相同的數(shù)據(jù)上執(zhí)行。信息內(nèi)聚——一個(gè)模塊中執(zhí)行一系列動(dòng)作,每個(gè)動(dòng)作都有自己的入口點(diǎn)和解決代碼,所有的動(dòng)作都作用在相同的數(shù)據(jù)結(jié)構(gòu)上,這樣的模塊叫做信息內(nèi)聚。功能性內(nèi)聚——一個(gè)模塊中各個(gè)部分都是完畢某一具體功能必不可少的組成部分耦合分為七類:內(nèi)容耦合——假如一個(gè)模塊直接參考另一個(gè)模塊的內(nèi)容,則這兩個(gè)模塊是內(nèi)容耦合。公共耦合——假如多個(gè)模塊都訪問同一個(gè)公共數(shù)據(jù)環(huán)境,則稱它們是公共耦合。外部耦合——假如兩個(gè)模塊都訪問同一個(gè)全局簡(jiǎn)樸變量而不是同一全局?jǐn)?shù)據(jù)結(jié)構(gòu),并且,不是通過參數(shù)表傳遞該全局變量的信息,則這兩個(gè)模塊屬于外部耦合。控制耦合——假如模塊A向模塊B傳遞一個(gè)控制信息,則稱這兩個(gè)模塊是控制耦合的數(shù)據(jù)結(jié)構(gòu)耦合——當(dāng)一個(gè)模塊調(diào)用另一個(gè)模塊時(shí)傳遞了整個(gè)數(shù)據(jù)結(jié)構(gòu),這兩個(gè)模塊之間具有數(shù)據(jù)結(jié)構(gòu)耦合。數(shù)據(jù)耦合——假如兩個(gè)模塊傳遞的是數(shù)據(jù)項(xiàng),則這兩個(gè)模塊是數(shù)據(jù)耦合。非直接耦合——假如兩個(gè)模塊之間沒有直接關(guān)系,它們之間的聯(lián)系完全通過主模塊的控制和調(diào)用來實(shí)現(xiàn)的,這就是非直接耦合。二、簡(jiǎn)答題(軟件工程作業(yè)2第5~7章)舉例說明類和對(duì)象的關(guān)系。答:學(xué)生可作為一個(gè)類---學(xué)生類,每個(gè)學(xué)生就是這個(gè)學(xué)生類的一個(gè)實(shí)例,例如,學(xué)生張三就是學(xué)生類的一個(gè)實(shí)例。面向?qū)ο蠓治龅年P(guān)鍵環(huán)節(jié)有哪些?應(yīng)建立哪幾個(gè)模型?答:關(guān)鍵環(huán)節(jié)有辨認(rèn)問題域的對(duì)象并分析它們互相之間的關(guān)系,建立簡(jiǎn)潔、精確、可理解的對(duì)的模型;應(yīng)建立的模型有功能模型,對(duì)象模型,動(dòng)態(tài)模型。什么是實(shí)體類、邊界類和控制類?為什么將分析類劃提成這三種類型?答:(1)實(shí)體類保存要存入永久存儲(chǔ)體的信息。實(shí)體類通常在事件流或交互圖中,是對(duì)用戶最故意義的類。邊界類位于系統(tǒng)與外界的交界處,涉及所有的窗體、報(bào)表、系統(tǒng)硬件接口、與其他系統(tǒng)的接口。控制類負(fù)責(zé)協(xié)調(diào)其他類的工作。每個(gè)用例中至少應(yīng)當(dāng)有一個(gè)控制類,它控制用況中的事件順序。(2)分為三種類型是由于它們各自的功能不同。界面類——描述系統(tǒng)與角色之間的接口??刂祁悺诜治瞿P蛢?nèi)表達(dá)協(xié)調(diào)、順序、事務(wù)解決以及控制其他對(duì)象的類。實(shí)體類——為需要長(zhǎng)期保存的信息進(jìn)行建模的類。UML中有哪幾類個(gè)視圖,它們的作用分別是什么?答:(1)用例視圖(Use-Caseview)用例視圖用于描述系統(tǒng)的功能集。它是從系統(tǒng)外部以用戶角度,對(duì)系統(tǒng)做的抽象表達(dá)。用例視圖所描述的系統(tǒng)功能依靠于外部用戶或另一個(gè)系統(tǒng)觸發(fā)激活,為用戶或另一個(gè)系統(tǒng)提供服務(wù),實(shí)現(xiàn)與用戶或另一個(gè)系統(tǒng)之間的交互。用例視圖中可以包含若干個(gè)用例,用例表達(dá)系統(tǒng)可以提供的功能,用例視圖是其他視圖的核心和基礎(chǔ)。其他視圖的構(gòu)造依賴于用例視圖中所描述的內(nèi)容,由于系統(tǒng)的最終目的是實(shí)現(xiàn)用例視圖中描述的功能,同時(shí)附帶一些非功能性的特性,因此用例視圖影響著所有其他的視圖。(2)邏輯視圖(Logicalview)假如說用例視圖描述系統(tǒng)“做什么”,那么邏輯視圖就是描述“怎么做”。系統(tǒng)的靜態(tài)結(jié)構(gòu)描述類、對(duì)象和它們之間的關(guān)系,反映的是系統(tǒng)靜態(tài)特性或結(jié)構(gòu)組成。(3)組件視圖(Componentview)組件視圖用來描述系統(tǒng)實(shí)現(xiàn)的結(jié)構(gòu)和行為特性,反映系統(tǒng)各組成元素之間的關(guān)系。組件視圖由組件圖實(shí)現(xiàn),重要供開發(fā)者和管理者使用。(4)并發(fā)視圖(ConcurrencyView)并發(fā)視圖用來描述系統(tǒng)的動(dòng)態(tài)和行為特性。并發(fā)視圖將任務(wù)劃分為進(jìn)程或線程形式,通過任務(wù)劃分引入并發(fā)機(jī)制,可以高效地使用資源、并行執(zhí)行和解決異步事件。除了劃分系統(tǒng)為并發(fā)執(zhí)行的進(jìn)程或線程外,并發(fā)視圖還必須解決通信和同步問題。(5)配置視圖(DeploymentView)配置視圖體現(xiàn)了系統(tǒng)的實(shí)現(xiàn)環(huán)境,反映系統(tǒng)的物理架構(gòu)。配置視圖還涉及一個(gè)映射,該映射顯示在物理架構(gòu)中組件是如何分派的。5.順序圖在分析階段的作用?答:順序圖描述了一組交互對(duì)象間的交互方式,它表達(dá)完畢某項(xiàng)行為的對(duì)象和這些對(duì)象之間傳遞消息的時(shí)間順序6.活動(dòng)圖在分析階段的作用?答:活動(dòng)圖反映系統(tǒng)中從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的流程,強(qiáng)調(diào)對(duì)象間的控制流程?;顒?dòng)圖特別適合描述工作流和并行解決過程。具體地說活動(dòng)圖可以描述一個(gè)操作過程中需要完畢的活動(dòng);描述一個(gè)對(duì)象內(nèi)部的工作;描述如何執(zhí)行一組相關(guān)的動(dòng)作,以及這些動(dòng)作如何影響它們周邊的對(duì)象;說明一個(gè)業(yè)務(wù)活動(dòng)中角色、工作流、組織和對(duì)象是如何工作的。7.比較結(jié)構(gòu)化設(shè)計(jì)和面向?qū)ο笤O(shè)計(jì)區(qū)別?答:結(jié)構(gòu)化設(shè)計(jì):系統(tǒng)被劃提成多個(gè)模塊,這些模塊被組織成一個(gè)樹型結(jié)構(gòu)。根就是主模塊,葉子是最低檔的功能模塊。這棵樹也表達(dá)調(diào)用結(jié)構(gòu):每個(gè)模塊都調(diào)用自己的直接下級(jí)模塊,并被自己的直接上級(jí)模塊調(diào)用。頂層模塊負(fù)責(zé)收集應(yīng)用程序最重要的那些執(zhí)行策略,底層模塊實(shí)現(xiàn)解決細(xì)節(jié)。在這個(gè)體系結(jié)構(gòu)中越靠上層位置,概念的抽象層次就越高。但是,由于上層模塊需要調(diào)用下層模塊,所以這些上層模塊就依賴于下層模塊的解決細(xì)節(jié)。也就是說,當(dāng)實(shí)現(xiàn)細(xì)節(jié)發(fā)生變化時(shí),抽象也會(huì)受到影響;假如想復(fù)用某一個(gè)抽象的話,就必須把它依賴的細(xì)節(jié)都一起拖過去。 面向?qū)ο笤O(shè)計(jì):上層創(chuàng)建的抽象不依賴于任何細(xì)節(jié),而細(xì)節(jié)則高度依賴于上層的抽象。這種依賴關(guān)系的變化正是結(jié)構(gòu)化設(shè)計(jì)與面向?qū)ο笤O(shè)計(jì)的主線區(qū)別。8.什么是框架,它與“設(shè)計(jì)”有什么關(guān)系?答:框架是一組可用于不同應(yīng)用的類的集合??蚣苤械念愅ǔJ且恍┏橄箢惒⑶一ハ嘤新?lián)系,可以通過繼承的方式使用這些類,當(dāng)面向?qū)ο笤O(shè)計(jì)進(jìn)行底層設(shè)計(jì)時(shí),對(duì)每個(gè)類進(jìn)行具體設(shè)計(jì),設(shè)計(jì)類的屬性和操作,優(yōu)化類之間的關(guān)系,就可以設(shè)計(jì)成框架來對(duì)類的設(shè)計(jì)進(jìn)行構(gòu)架和優(yōu)化。9.系統(tǒng)的物理構(gòu)架中應(yīng)當(dāng)涉及哪些信息?答:用UML的配置圖描述系統(tǒng)的物理構(gòu)架,然后將需求分析階段捕獲的系統(tǒng)功能分派到這些物理節(jié)點(diǎn)上。涉及的信息為節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)、硬件設(shè)備配置、通信途徑、各個(gè)節(jié)點(diǎn)上運(yùn)營的系統(tǒng)軟件配置、應(yīng)用軟件配置。簡(jiǎn)答題(軟件工程作業(yè)3第8~11章)為建立良好的編程風(fēng)格應(yīng)遵循什么原則?答:1)節(jié)簡(jiǎn)化①不使用不必要的變量和函數(shù)②避免變量重名,變量重名可導(dǎo)致很難被發(fā)現(xiàn)的錯(cuò)誤。③盡量減小代碼量。④盡量減少代碼的執(zhí)行時(shí)間,提高執(zhí)行效率。⑤避免功能冗余的模塊。⑥盡量不使用全局變量。2)模塊化①保證物理和邏輯功能密切相關(guān)。②限定一個(gè)模塊完畢一個(gè)獨(dú)立的功能,提高模塊的內(nèi)聚度。③檢查代碼的反復(fù)率,反復(fù)多的代碼,要抽出來作為一個(gè)單獨(dú)的模塊。3)簡(jiǎn)樸化①采用直接了當(dāng)?shù)乃惴?,避免使用技巧性高和難懂的代碼。②使用簡(jiǎn)樸的數(shù)據(jù)結(jié)構(gòu),避免使用多維數(shù)組、指針和復(fù)雜的表。③注意對(duì)象命名的一致性。④以手工的方式簡(jiǎn)化算術(shù)和邏輯表達(dá)式。4)結(jié)構(gòu)化①按標(biāo)準(zhǔn)化的順序說明數(shù)據(jù);②按字母順序說明對(duì)象名③使用讀者明了的結(jié)構(gòu)化程序部件;④采用直截了當(dāng)?shù)乃惴?;⑤根?jù)應(yīng)用背景排列程序各個(gè)部分;⑥不隨意為效率而犧牲程序的清楚度和可讀性;⑦讓機(jī)器多做煩瑣的工作,如反復(fù)、庫函數(shù);⑧用公共函數(shù)調(diào)用代替反復(fù)出現(xiàn)的表達(dá)式;⑨避免循環(huán)、分支的嵌套層數(shù)過高;⑩單入口單出口。5)文檔化(documentation)①有效、適本地使用注釋。②協(xié)調(diào)使用程序塊注釋和程序行注釋。③保持文檔和程序的同步。6)格式化(layout)①始終采用統(tǒng)一縮進(jìn)規(guī)則;②適當(dāng)插入括號(hào)表白運(yùn)算順序、排除二義性;③有效地使用空格符以區(qū)別程序的不批準(zhǔn)群。什么是軟件測(cè)試?答:軟件測(cè)試從廣義上講,是指軟件產(chǎn)品生存周期內(nèi)所有的檢查、評(píng)審和確認(rèn)活動(dòng)。從狹義上講,軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程?;蛘哒f,軟件測(cè)試是根據(jù)軟件開發(fā)各個(gè)階段的規(guī)格說明和程序內(nèi)部結(jié)構(gòu)而精心設(shè)計(jì)一批測(cè)試用例,用這些測(cè)試用例運(yùn)營程序,以發(fā)現(xiàn)程序錯(cuò)誤的過程。軟件測(cè)試的原則是什么?答:軟件測(cè)試的原則有:應(yīng)當(dāng)把測(cè)試貫穿在整個(gè)開發(fā)過程之中。事實(shí)上,從需求分析階段開始,每個(gè)階段結(jié)束之前都要進(jìn)行階段審查,目的是盡早發(fā)現(xiàn)和糾正錯(cuò)誤。每個(gè)測(cè)試用例都應(yīng)當(dāng)涉及測(cè)試輸入數(shù)據(jù)和這組數(shù)據(jù)輸入作用下的預(yù)期輸出結(jié)果。在實(shí)際操作中可以列出一張表格,涉及每個(gè)測(cè)試用例的編號(hào)、類型、輸入數(shù)據(jù)、預(yù)期輸出結(jié)果、實(shí)際輸出結(jié)果、犯錯(cuò)因素分析。要對(duì)每個(gè)測(cè)試結(jié)果進(jìn)行全面檢查,不要漏掉已經(jīng)出現(xiàn)的錯(cuò)誤跡象。程序員應(yīng)當(dāng)盡量避免檢查自己編寫的代碼。測(cè)試工作需要嚴(yán)格的工作作風(fēng),程序員在測(cè)試自己編寫的代碼時(shí)往往會(huì)帶有一些傾向性,使得他們工作中經(jīng)常出現(xiàn)一些疏漏。并且,程序員對(duì)設(shè)計(jì)規(guī)格說明書的理解錯(cuò)誤而引入的錯(cuò)誤更是難于發(fā)現(xiàn)。在設(shè)計(jì)測(cè)試用例時(shí),應(yīng)當(dāng)涉及有效的、盼望的輸入情況,也要涉及無效的和不盼望的輸入情況。既可以驗(yàn)證程序正常運(yùn)營的合理輸入,也可以驗(yàn)證對(duì)異常情況解決的不合理輸入數(shù)據(jù)以及臨界數(shù)據(jù)。在測(cè)試程序時(shí),人們經(jīng)常過多地考慮合法的和盼望的輸入條件,以檢查程序是否做了它應(yīng)當(dāng)做的事情,而忽視了不合法的和預(yù)想不到的輸入條件。事實(shí)上,用戶在使用系統(tǒng)時(shí),輸入一些錯(cuò)誤指令和參數(shù)是經(jīng)常發(fā)生的,假如軟件碰到這種情況不能做出適當(dāng)?shù)姆从?,給出相應(yīng)的提醒信息,就也許會(huì)誤導(dǎo)用戶,甚至導(dǎo)致嚴(yán)重?fù)p失。軟件中遺留的錯(cuò)誤數(shù)量與已經(jīng)發(fā)現(xiàn)的錯(cuò)誤數(shù)量成正比。根據(jù)這個(gè)規(guī)律,對(duì)測(cè)試中發(fā)現(xiàn)錯(cuò)誤成堆的模塊更要仔細(xì)測(cè)試。例如,在某個(gè)著名的操作系統(tǒng)中,44%的錯(cuò)誤僅與4%的模塊有關(guān)?;貧w測(cè)試的關(guān)聯(lián)性要特別引起注意,修改一個(gè)錯(cuò)誤而引起更多錯(cuò)誤的現(xiàn)象并不少見。測(cè)試程序時(shí)不僅要檢查程序是否做了它應(yīng)當(dāng)做的事情,還要檢查它是否做了不該做的事情。例如,工資軟件中,軟件只完畢在編職工的工資計(jì)算和輸出,不在編人員的工資是不進(jìn)行計(jì)算和輸出的。假如軟件將不在編人員的工資信息也輸出顯然是不合適的。嚴(yán)格執(zhí)行測(cè)試計(jì)劃。在測(cè)試之前應(yīng)當(dāng)有明確的測(cè)試計(jì)劃,內(nèi)容涉及:要測(cè)試的軟件功能和內(nèi)容、測(cè)試用例和預(yù)期結(jié)果、測(cè)試的進(jìn)度安排、需要的工具和資源、測(cè)試控制方式和過程等。10)做好測(cè)試記錄,為記錄和維護(hù)提供基礎(chǔ)數(shù)據(jù)。請(qǐng)說明集成測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試有什么不同?答:集成測(cè)試界于單元測(cè)試和系統(tǒng)測(cè)試之間,起到“橋梁作用”,一般由開發(fā)小組采用白盒加黑盒的方式來測(cè)試,既驗(yàn)證“設(shè)計(jì)”,又驗(yàn)證“需求”。
系統(tǒng)測(cè)試的粒度最大,一般由獨(dú)立測(cè)試小組采用黑盒方式來測(cè)試,重要測(cè)試系統(tǒng)是否符合“需求規(guī)格說明書”。
驗(yàn)收測(cè)試與系統(tǒng)測(cè)試相似,重要區(qū)別是測(cè)試人員不同,驗(yàn)收測(cè)試由用戶執(zhí)行。簡(jiǎn)述單元測(cè)試的內(nèi)容。答:?jiǎn)卧獪y(cè)試的內(nèi)容有1)模塊接口測(cè)試:對(duì)通過被測(cè)模塊的數(shù)據(jù)流進(jìn)行測(cè)試。為此,對(duì)模塊接口,涉及參數(shù)表、調(diào)用子模塊的參數(shù)、全程數(shù)據(jù)、文獻(xiàn)輸入/輸出操作都必須檢查。2)局部數(shù)據(jù)結(jié)構(gòu)測(cè)試:設(shè)計(jì)測(cè)試用例檢查數(shù)據(jù)類型說明、初始化、缺省值等方面的問題,還要查清全程數(shù)據(jù)對(duì)模塊的影響。 3)途徑測(cè)試:選擇適當(dāng)?shù)臏y(cè)試用例,對(duì)模塊中重要的執(zhí)行途徑進(jìn)行測(cè)試。對(duì)基本執(zhí)行途徑和循環(huán)進(jìn)行測(cè)試可以發(fā)現(xiàn)大量途徑錯(cuò)誤。4)錯(cuò)誤解決測(cè)試:檢查模塊的錯(cuò)誤解決功能是否包具有錯(cuò)誤或缺陷。例如,是否拒絕不合理的輸入;犯錯(cuò)的描述是否難以理解、是否對(duì)錯(cuò)誤定位有誤、是否犯錯(cuò)因素報(bào)告有誤、是否對(duì)錯(cuò)誤條件的解決不對(duì)的;在對(duì)錯(cuò)誤解決之前錯(cuò)誤條件是否已經(jīng)引起系統(tǒng)的干預(yù)等。5)邊界測(cè)試:要特別注意數(shù)據(jù)流、控制流中剛好等于、大于或小于擬定的比較值時(shí)犯錯(cuò)的也許性。對(duì)這些地方要仔細(xì)地選擇測(cè)試用例,認(rèn)真加以測(cè)試。5)此外,假如對(duì)模塊運(yùn)營時(shí)間有規(guī)定的話,還要專門進(jìn)行關(guān)鍵途徑測(cè)試,以擬定最壞情況下和平均意義下影響模塊運(yùn)營時(shí)間的因素。這類信息對(duì)進(jìn)行性能評(píng)價(jià)是十分有用的。什么是白盒測(cè)試?它適應(yīng)哪些測(cè)試?答:白盒測(cè)試也叫結(jié)構(gòu)測(cè)試,測(cè)試者需要了解被測(cè)程序的內(nèi)部結(jié)構(gòu)。白盒測(cè)試通常根據(jù)覆蓋準(zhǔn)則設(shè)計(jì)測(cè)試用例,有語句覆蓋、鑒定覆蓋、條件覆蓋、鑒定/條件覆蓋和條件組合覆蓋。白盒測(cè)試合用與單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試非漸增式測(cè)試與漸增式測(cè)試有什么區(qū)別?漸增式測(cè)試如何組裝模塊?答:1)漸增式可以較早地發(fā)現(xiàn)模塊界面之間的錯(cuò)誤,非漸增式則要到最后將所有模塊連接起來時(shí)才干發(fā)現(xiàn)此類錯(cuò)誤。2)非漸增式需要較多的人工3)漸增式有助于排錯(cuò)。假如模塊界面間有錯(cuò),假如用非漸增式,這類錯(cuò)誤到最后聯(lián)合測(cè)試時(shí)才干發(fā)現(xiàn),此時(shí)很難判斷錯(cuò)誤發(fā)生在哪一部分,但假如用漸增式,這類錯(cuò)誤就較容易定位,它通常與最新加上去的模塊有關(guān)。4)漸增式比較徹底。5)漸增式需要較多的機(jī)器時(shí)間。6)非漸增式方式,開始時(shí)允許幾個(gè)測(cè)試人員并行工作,對(duì)大型系統(tǒng)來說,是很故意義的。采用黑盒技術(shù)設(shè)計(jì)測(cè)試用例有哪幾種方法?這些方法各有什么特點(diǎn)?答:黑盒測(cè)試設(shè)計(jì)測(cè)試用例的方法有1)等價(jià)類劃分法特點(diǎn)是:a、測(cè)試的內(nèi)容相同b、一個(gè)等價(jià)類中的某個(gè)測(cè)試可以發(fā)現(xiàn)缺陷,那么這個(gè)等價(jià)類的其他測(cè)試也能發(fā)現(xiàn)缺陷c、一個(gè)等價(jià)類中的某個(gè)測(cè)試不能發(fā)現(xiàn)缺陷,那么這個(gè)等價(jià)類的其它測(cè)試也不能發(fā)現(xiàn)缺陷2)邊界值分析法特點(diǎn)是:用邊界值分析時(shí)時(shí)常收獲較大,它是在等價(jià)類的邊界上選擇測(cè)試用例3)錯(cuò)誤推測(cè)法特點(diǎn)是:沒有擬定的環(huán)節(jié),很大限度上是憑借經(jīng)驗(yàn)進(jìn)行的4)因果圖法特點(diǎn)是:考慮輸入條件間的組合關(guān)系;考慮輸出條件對(duì)輸入條件的信賴關(guān)系;測(cè)試用例發(fā)現(xiàn)錯(cuò)誤的效率高;能查出功能說明中的某些不一致或漏掉白盒測(cè)試法有哪些覆蓋標(biāo)準(zhǔn)?試對(duì)它們的檢錯(cuò)能力進(jìn)行比較。答:白盒測(cè)試的覆蓋標(biāo)準(zhǔn)有:語句覆蓋->鑒定覆蓋->條件覆蓋->鑒定/條件覆
蓋->條件組合覆蓋->途徑覆蓋檢錯(cuò)能力由弱到強(qiáng)根據(jù)下面程序代碼,畫出程序流程圖,然后設(shè)計(jì)滿足條件/鑒定覆蓋、條件組合覆蓋的測(cè)試用例。BEGINT:=0IF(X>=80ANDY>=80)THENT:=1ELSEIF(X>=90ANDY>=75)THENT:=2ENDIFIF(X>=75ANDY>=90)THENT:=3ENDIFENDIFRETURN測(cè)試用例:條件/鑒定覆蓋:1X=80Y=802X=90Y=753X=50Y=50條件組合覆蓋:1X=80Y=802X=80Y=753X=75Y=804X=75Y=755X=90Y=756X=90Y=707X=80Y=758X=80Y=709X=75Y=9010X=75Y=9011X=70Y=9012X=70Y=85軟件的可維護(hù)性是軟件設(shè)計(jì)師最關(guān)注的性能,談?wù)劄榱双@得軟件良好的可維護(hù)性,在設(shè)計(jì)時(shí)應(yīng)當(dāng)注意哪些問題?答:為獲得軟件的良好可維護(hù)性,在設(shè)計(jì)階段應(yīng)當(dāng)做一些變更實(shí)驗(yàn),檢查系統(tǒng)的可維護(hù)性、靈活性和可移植性,設(shè)計(jì)時(shí)應(yīng)當(dāng)將此后也許變更的內(nèi)容與其他部分分離開來,并且遵循高內(nèi)聚、低偶合的原則。在軟件文檔中,你認(rèn)為哪些文檔對(duì)于軟件的維護(hù)最重要?需求分析文檔、設(shè)計(jì)文檔、程序文檔對(duì)軟件維護(hù)很重要軟件維護(hù)時(shí)的源程序修改策略是什么?答:軟件維護(hù)時(shí)的源程序修改策略是:由于軟件維護(hù)最終貫徹在修改源程序和文檔上。為了對(duì)的、有效地修改源程序,通常要先分析和理解源程序,然后才干修改源程序,最后重新測(cè)試和驗(yàn)證源程序。軟件項(xiàng)目計(jì)劃涉及那些內(nèi)容?答:軟件項(xiàng)目計(jì)劃的內(nèi)容涉及:1.范圍。對(duì)該軟件項(xiàng)目的綜合描述,定義起所要做的工作以及性能限制,它涉及:(1)項(xiàng)目目的。(2)重要功能。(3)性能限制。(4)系統(tǒng)接口。(5)特殊規(guī)定。(6)開發(fā)概述。2.資源。(1)人員資源。(2)硬件資源。(3)軟件資源。(4)其他。3.進(jìn)度安排。進(jìn)度安排的好壞往往會(huì)影響整個(gè)項(xiàng)目的按期完畢,因此這一環(huán)節(jié)是十分重要的。制定軟件進(jìn)度與其他工程沒有很大的區(qū)別,其方法重要有:(1)工程網(wǎng)絡(luò)圖。(2)Gantt圖。(3)任務(wù)資源表。(4)成本估算。(5)培訓(xùn)計(jì)劃。15.什么是軟件配置管理?什么是基線?答:配置管理可以系統(tǒng)地解決變更,從而使得軟件系統(tǒng)可以隨時(shí)保持其完整性。配置管理又可成為變更控制,可以用來評(píng)估提出的變更請(qǐng)求,跟蹤變更,并保持系統(tǒng)在不同時(shí)間的狀態(tài)。軟件配置管理是一套規(guī)范、高效的軟件開發(fā)基礎(chǔ)結(jié)構(gòu)?;€是:已經(jīng)通過正式復(fù)審和批準(zhǔn)的某規(guī)約或產(chǎn)品,它因此可以作為進(jìn)一步開發(fā)的基礎(chǔ),并且只能通過正式的變化控制過程改變。三、應(yīng)用題(軟件工程作業(yè)1第1~4章)1.某旅館的電話服務(wù)如下:可以撥分機(jī)號(hào)和外線號(hào)碼。分機(jī)號(hào)是從7201至7299。外線號(hào)碼先撥9,然后是市話號(hào)碼或長(zhǎng)話號(hào)碼。長(zhǎng)話號(hào)碼是以區(qū)號(hào)和市話號(hào)碼組成。區(qū)號(hào)是從100到300中任意的數(shù)字串。市話號(hào)碼是以局號(hào)和分局號(hào)組成。局號(hào)可以是455,466,888,552中任意一個(gè)號(hào)碼。分局號(hào)是任意長(zhǎng)度為4的數(shù)字串。寫出在數(shù)據(jù)字典中,電話號(hào)碼的數(shù)據(jù)條目的定義(即組成)。名稱簡(jiǎn)稱類型長(zhǎng)度取值范圍分機(jī)號(hào)Extension_Number字符47201..7299外線市話號(hào)Addition_Internumber字符99+[455|466|888|552]+4{數(shù)字}4外線長(zhǎng)話號(hào)Addition_Extennumber字符129+[100|101|102|..|298|299|300]+[455|466|888|552]+4{數(shù)字}4電話號(hào)碼={分機(jī)|外線}分機(jī)=[7201——7299]外線=9+{市話號(hào)碼|長(zhǎng)話號(hào)碼}市話號(hào)碼=局號(hào)+分局號(hào)局號(hào)={455,466,888,552}分局號(hào)=4{0-9}4長(zhǎng)話號(hào)碼=區(qū)號(hào)+市話號(hào)碼區(qū)號(hào)=[100—300]2.下面是旅客訂飛機(jī)票的需求描述,試畫出分層的數(shù)據(jù)流程圖。顧客將訂票單交給預(yù)訂系統(tǒng):(1)假如是不合法訂票單,則輸出無效訂票信息;(2)對(duì)合法訂票單的預(yù)付款登錄到一個(gè)記賬文獻(xiàn)中;(3)系統(tǒng)有航班目錄文獻(xiàn),根據(jù)填寫的旅行時(shí)間和目的地為顧客安排航班;(4)在獲得對(duì)的航班信息和確認(rèn)已交了部分預(yù)付款時(shí)發(fā)出取票單,并記錄到取票單文獻(xiàn)中。顧客在指定日期內(nèi)用取票單換取機(jī)票:(1)系統(tǒng)根據(jù)取票單文獻(xiàn)對(duì)取票單進(jìn)行有效性檢查,無效的輸出無效取票信息;(2)持有有效取票單的顧客在補(bǔ)交了剩余款后將獲得機(jī)票;(3)記賬文獻(xiàn)將被更新,機(jī)票以及顧客信息將被登錄到機(jī)票文獻(xiàn)。訂單中有訂票日期、旅行日期、時(shí)間規(guī)定(上午、下午、晚上)、出發(fā)地、目的地、顧客姓名、身份證號(hào)、聯(lián)系電話。0層流程圖預(yù)定流程圖取機(jī)票流程圖3.一個(gè)簡(jiǎn)化的圖書館信息管理系統(tǒng)有以下功能:(1)借書:輸入讀者借書證,系統(tǒng)檢查借書證是否有效;查閱借書文獻(xiàn),檢查該讀者所借圖書是否超過10本,若已達(dá)10本,顯示信息“已經(jīng)超過借書數(shù)量”,拒借;未達(dá)10本,辦理借書(檢查庫存、修改庫存信息并將讀者借書信息登入借書記錄)(2)還書:輸入書號(hào)和讀者號(hào),從借書記錄中讀出與讀者有關(guān)的記錄,查閱所借日期,假如超過3個(gè)月,作罰款解決。否則,修改庫存信息與借書記錄。(3)查詢:可通過借書記錄、庫存信息查詢讀者情況、圖書借閱情況及庫存情況,打印各種登記表。請(qǐng)就以上系統(tǒng)功能畫出分層的DFD圖,并建立重要條目的數(shù)據(jù)字典。0層數(shù)據(jù)流程圖還書流程圖借書流程圖查詢流程圖數(shù)據(jù)字典:元素名稱名稱類型說明IPO1還書解決解決根據(jù)書號(hào)做還書解決,違規(guī)做處罰IPO2有效性檢查解決檢查讀者號(hào),圖書號(hào)的有效性IPO3借書解決解決按讀者號(hào),圖書號(hào)進(jìn)行借書解決IPO4查詢解決管理員對(duì)一些基本信息進(jìn)行查詢IPO5打印報(bào)表解決打印查詢到的信息IPO6處罰管理解決根據(jù)規(guī)則對(duì)延期給予相應(yīng)的處罰IPO7數(shù)量檢查解決對(duì)讀者借出的數(shù)量是否符合規(guī)定進(jìn)行檢查DS001讀者信息數(shù)據(jù)存儲(chǔ)讀者信息錄入,修改,刪除,保存DS002庫存信息數(shù)據(jù)存儲(chǔ)圖書的基本的情況以及所有圖書的整體情況DS003錯(cuò)還信息數(shù)據(jù)存儲(chǔ)存儲(chǔ)借還書信息,系統(tǒng)自動(dòng)解決,不能人工錄入DS004處罰信息數(shù)據(jù)存儲(chǔ)存儲(chǔ)延期的處罰信息三、應(yīng)用題(軟件工程作業(yè)2第5~7章)一個(gè)多媒體商店系統(tǒng)包含一個(gè)由媒體文獻(xiàn)構(gòu)成的數(shù)據(jù)庫,有兩類媒體文獻(xiàn):圖像文獻(xiàn)和聲音文獻(xiàn)。每個(gè)媒體文獻(xiàn)都有名稱和唯一的編碼,并且文獻(xiàn)包含作者信息和格式信息,聲音文獻(xiàn)還包含聲音文獻(xiàn)的時(shí)長(zhǎng)(以秒為單位)和作者的信息。假設(shè)每個(gè)媒體文獻(xiàn)可以由唯一的編碼所辨認(rèn),系統(tǒng)要提供以下功能:媒體庫中可以添加新的特別媒體文獻(xiàn)。通過給定的文獻(xiàn)編碼查找需要的媒體文獻(xiàn)。從媒體庫中刪除指定的媒體文獻(xiàn)。給出媒體庫中媒體文獻(xiàn)的數(shù)量??紤]類imageFile和audioFile應(yīng)當(dāng)具有哪些恰當(dāng)?shù)膶傩院头椒ù穑篿mageFile類的屬性有:Name(文獻(xiàn)名稱),Code(編碼),AuthorInfo(作者信息),F(xiàn)ormat(格式信息);audioFile類除了擁有以上屬性外尚有屬性Time(文獻(xiàn)時(shí)長(zhǎng));imageFile類的方法:Add(imageFile)(添加圖像文獻(xiàn)),Delete(Code)(刪除文獻(xiàn)),GetFile(Code)(查找文獻(xiàn)),GetNumber()(返回媒體文獻(xiàn)的數(shù)量);audioFile類的方法:Add(audioFile)(添加聲音文獻(xiàn)),Delete(Code)(刪除文獻(xiàn)),GetFile(Code)(查找文獻(xiàn)),GetNumber()(返回媒體文獻(xiàn)的數(shù)量)。若把學(xué)生當(dāng)作一個(gè)實(shí)體,它可以提成多個(gè)子實(shí)體,如小學(xué)生、中學(xué)生和大學(xué)生等。在面向?qū)ο蟮脑O(shè)計(jì)中,可以創(chuàng)建如下4個(gè)類:類Student、類ElementaryStudent、MiddleStudent;類UniversityStudent。試給出這4個(gè)類的屬性以及它們之間的關(guān)系。答:Student類為基類,其他三個(gè)類都是Student的子類。Student類的屬性有:Name(姓名),Sex(性別),Age(年齡),Class(班級(jí))。ElementaryStudent類的屬性有:IsTeamMember(是否是少先隊(duì)員),IsGoodStudent(是否是三好學(xué)生)。MiddleStudent類的屬性為:IsMember(是否是團(tuán)員),Subject(文科理科)。UniversityStudent類的屬性為:IsPartyMember(是否黨員),Department(學(xué)院),Specialty(專業(yè))。三、應(yīng)用題(軟件工程作業(yè)2第5~7章)某學(xué)校領(lǐng)書的工作流程為:學(xué)生班長(zhǎng)填寫領(lǐng)書單,班主任審查后署名,然后班長(zhǎng)拿領(lǐng)書單到書庫領(lǐng)書。書庫保管員審查領(lǐng)書單是否有班主任署名,填寫是否對(duì)的等,不對(duì)的的領(lǐng)書單退回給班長(zhǎng);假如填寫對(duì)的則給予領(lǐng)書并修改庫存清單;當(dāng)某書的庫存量低于臨界值時(shí),登記需訂書的信息。天天下班前為采購部門提供一張訂書單。用活動(dòng)圖來描述領(lǐng)書的過程。解:使用順序圖描述下面的情景,當(dāng)用戶在自己的計(jì)算機(jī)上向網(wǎng)絡(luò)打印機(jī)發(fā)出一個(gè)打印任務(wù)時(shí),他的計(jì)算機(jī)便向打印機(jī)服務(wù)器發(fā)送一條打印命令print(file),打印機(jī)服務(wù)器假如發(fā)現(xiàn)網(wǎng)絡(luò)打印機(jī)處在空閑狀態(tài),則向打印機(jī)發(fā)送打印命令print(file),否則向打印隊(duì)列發(fā)送一條保存命令store(file)。解:某報(bào)社采用面向?qū)ο蠹夹g(shù)實(shí)現(xiàn)報(bào)刊征訂的計(jì)算機(jī)管理系統(tǒng),該系統(tǒng)基本需求如下:(1)報(bào)社發(fā)行多種刊物,每種刊物通過訂單來征訂,訂單中有代碼,名稱,訂期,單價(jià),份數(shù)等項(xiàng)目,訂戶通過填寫訂單來訂閱報(bào)刊。
(2)報(bào)社下屬多個(gè)發(fā)行站,每個(gè)站負(fù)責(zé)收集登陸訂單、打印收款憑證等事務(wù)。
(3)報(bào)社負(fù)責(zé)分類并記錄各個(gè)發(fā)行站送來的報(bào)刊訂閱信息。
請(qǐng)就此需求建立對(duì)象模型。解:應(yīng)用題(軟件工程作業(yè)3第8~11章)2.有的學(xué)生總是問老師“我應(yīng)當(dāng)掌握什么程序設(shè)計(jì)語言更好?”你認(rèn)為該如何回答這個(gè)問題?答:一方面必須掌握C語言,面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,各有各的優(yōu)勢(shì),看你想往哪方面用了,假如是服務(wù)器端的應(yīng)用最佳是java,跨平臺(tái)性好;假如是,一般的桌面應(yīng)用,C#是較好的選擇;至于易上手限度,VB,Delphi等是上手比較快的;至于數(shù)據(jù)庫應(yīng)用本人認(rèn)為PB是最佳的選擇,VB,Delphi也是比較好的選擇;當(dāng)特別強(qiáng)調(diào)效率的時(shí)候VC是不二的選擇,其中VC最為復(fù)雜,也最為靈活,“偷懶的程序員用VB,聰明的程序員用Delphi,真正的程序員用VC”,假如想要設(shè)計(jì)一些系統(tǒng)級(jí)的核心程序,最佳用VC,C語言也可,但是不如VC強(qiáng)大。無論什么語言,通一門即可,它們只是工具,設(shè)計(jì)模式和算法才是靈魂。補(bǔ)充1(考核說明中的題)二應(yīng)用題:新東方學(xué)校的學(xué)生報(bào)名信息管理系統(tǒng),業(yè)務(wù)如下:假如是報(bào)名的,由負(fù)責(zé)報(bào)名的工作人員查閱課程目錄信息,檢查該課程是否額滿,假如有了空額,則在學(xué)生信息、課程信息表中登記相應(yīng)的信息,并開出報(bào)告單交財(cái)務(wù)部門,學(xué)生到財(cái)務(wù)處交錢,財(cái)務(wù)人員開出發(fā)票給學(xué)生。假如是想注銷本來已報(bào)名的課程,則由負(fù)責(zé)報(bào)名的工作人員在課程信息、學(xué)生信息和帳目信息上做相應(yīng)的修改,并給學(xué)生注銷單,財(cái)務(wù)人員負(fù)責(zé)退款,索回發(fā)票。規(guī)定:1.對(duì)以上問題畫出數(shù)據(jù)流程圖。5分參考答案:
2.畫軟件結(jié)構(gòu)圖的主圖。5分參考答案:補(bǔ)充2:(《軟件工程》課程復(fù)習(xí)重點(diǎn)(新版))第1章本章的重要題型是選擇題和簡(jiǎn)答題。1.軟件危機(jī)的重要表現(xiàn)是什么?答:“已完畢”的軟件不滿足用戶的需求;開發(fā)進(jìn)度不能保障;軟件開發(fā)成本難以準(zhǔn)確估算;軟件產(chǎn)品的質(zhì)量沒有保證。2.軟件工程的定義?答:軟件工程是采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把通過時(shí)間考驗(yàn)而證明對(duì)的的管理方法和先進(jìn)軟件開發(fā)技術(shù)結(jié)合起來,運(yùn)用到軟件開發(fā)和維護(hù)過程中,來解決軟件危機(jī)。3.軟件工程研究的重要內(nèi)容是什么?答:軟件開發(fā)技術(shù)和軟件開發(fā)管理兩個(gè)方面。軟件開發(fā)技術(shù)方面重要研究軟件開發(fā)方法、軟件開發(fā)過程、軟件開發(fā)工具和環(huán)境。軟件開發(fā)管理方面重要研究軟件工程管理學(xué)、軟件工程經(jīng)濟(jì)學(xué)、軟件工程心理學(xué)。4.軟件工程的7條基本原理是什么?答:①用分階段的生命周期計(jì)劃嚴(yán)格管理②堅(jiān)持進(jìn)行階段評(píng)審③實(shí)行嚴(yán)格的產(chǎn)品控制④采用現(xiàn)代程序設(shè)計(jì)技術(shù)⑤結(jié)果應(yīng)能清楚地審查⑥開發(fā)小組的人員應(yīng)當(dāng)少而精⑦認(rèn)可不斷改善軟件工程實(shí)踐的必要性。5.什么是軟件生命周期?答:指一個(gè)軟件從提出開發(fā)規(guī)定開始到該軟件報(bào)廢為止的整個(gè)時(shí)期。通常將軟件的生命周期劃分為可行性研究、需求分析、設(shè)計(jì)、編碼、測(cè)試、集成、維護(hù)階段。6.軟件過程的定義?答:軟件開發(fā)過程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架。它可以清楚、直觀地表達(dá)軟件開發(fā)全過程,明確規(guī)定要完畢的重要活動(dòng)和任務(wù)。7.你能舉出幾個(gè)典型的軟件過程模型嗎?答:重要有瀑布模型、演化模型、噴泉模型、螺旋模型、智能模型。模型的選擇是基于軟件的特點(diǎn)和應(yīng)用領(lǐng)域。8.目前,主流的軟件開發(fā)方法有哪些?答:結(jié)構(gòu)化方法和面向?qū)ο蠓椒ā?.軟件標(biāo)準(zhǔn)的層次是如何劃分的?答:為了提高軟件開發(fā)的效率,保障軟件產(chǎn)品的質(zhì)量,軟件工程領(lǐng)域中公布了許多國際標(biāo)準(zhǔn)、國家標(biāo)準(zhǔn)、行業(yè)標(biāo)準(zhǔn)、公司標(biāo)準(zhǔn)、項(xiàng)目規(guī)范,通常由低檔到高級(jí)使用。軟件工程的標(biāo)準(zhǔn)關(guān)系到許多方面,有規(guī)范開發(fā)過程的標(biāo)準(zhǔn),有定義產(chǎn)品的標(biāo)準(zhǔn),尚有管理標(biāo)準(zhǔn)和記法符號(hào)的標(biāo)準(zhǔn)等等。10.軟件工程師職業(yè)道德規(guī)范的8組關(guān)鍵詞是什么?答:1999年由ACM/IEEE-CS軟件工程師道德規(guī)范和職業(yè)實(shí)踐(SEEPP)聯(lián)合工作組制訂了《軟件工程師職業(yè)道德規(guī)范》,規(guī)范具有8組由關(guān)鍵詞命名的準(zhǔn)則:公眾、客戶和雇主、產(chǎn)品、判斷、管理、專業(yè)、同行、自身。11.職業(yè)化軟件工程師要注意的十大問題是什么?答:①高質(zhì)量地完畢任務(wù)②遵守行業(yè)標(biāo)準(zhǔn),不能肆意按照自己的想象來發(fā)揮③積極幫助別人④版權(quán)意識(shí)敏感⑤嚴(yán)格遵守計(jì)劃⑥公私分明⑦注意知識(shí)更新⑧善于溝通⑨遵守職業(yè)規(guī)則⑩誠實(shí)和正直。第2章本章的題型重要是選擇題。1.可行性研究的目的是什么?答:用最小的代價(jià)在盡也許短的時(shí)間內(nèi)擬定問題是否可以解決。2.可行性研究的四大要素是:經(jīng)濟(jì)上可行,技術(shù)可行,法律允許、社會(huì)環(huán)境可行。3.可行性研究的實(shí)質(zhì):是要進(jìn)行一次簡(jiǎn)化了的系統(tǒng)分析和設(shè)計(jì)過程。一方面要分析和澄清問題定義,導(dǎo)出系統(tǒng)的邏輯模型,探索若可供選擇的方案,對(duì)每種方案仔細(xì)研究它的可行性。推薦一個(gè)較好的解決方案和一個(gè)初步的計(jì)劃。4.成本效益分析的目的:從經(jīng)濟(jì)角度分析開發(fā)系統(tǒng)是否有價(jià)值。成本效益分析一方面估算開發(fā)成本,然后與也許的效益比較,有形的效益可以用貨幣的時(shí)間價(jià)值、投資回收期、純收入等指標(biāo)進(jìn)行度量。無形的效益重要是從社會(huì)影響力和對(duì)社會(huì)的奉獻(xiàn)等方面考慮。第3章本章的題型有選擇題、簡(jiǎn)答題和應(yīng)用題。1.構(gòu)化分析方法的核心:用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,直至找到滿足功能規(guī)定的所有可實(shí)現(xiàn)的軟件元素為止。2.什么是需求工程?需求工程是指應(yīng)用有效的技術(shù)和方法進(jìn)行需求分析,擬定客戶需求,幫助分析人員理解問題,定義目的系統(tǒng)的外部特性的一門學(xué)科。需求工程中的重要活動(dòng)有:需求獲取、需求分析、需求規(guī)格說明、需求驗(yàn)證和需求變更管理。3.軟件需求可分解為四個(gè)層次:業(yè)務(wù)需求、用戶需求、功能需求和非功能需求。4.系統(tǒng)流程圖是描述一個(gè)系統(tǒng)物理模型的圖形工具,使用一些圖形符號(hào)以黑盒子的形式描繪系統(tǒng)的每個(gè)部件,如設(shè)備、文獻(xiàn)、數(shù)據(jù)庫、程序、通訊和人工過程等。5.數(shù)據(jù)流程圖是描繪系統(tǒng)邏輯模型的圖形工具,只描繪信息在系統(tǒng)中的流動(dòng)和解決情況,不反映系統(tǒng)中的物理部件,數(shù)據(jù)流程圖使用四個(gè)標(biāo)準(zhǔn)符號(hào)。6.數(shù)據(jù)字典重要用來描述數(shù)據(jù)流程圖中的數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、解決過程和外部實(shí)體。數(shù)據(jù)字典中所有的定義必須是嚴(yán)密的、精確的、無二義性的。7.結(jié)構(gòu)化分析的環(huán)節(jié):根據(jù)用戶的需求畫出初始的數(shù)據(jù)流程圖,寫出數(shù)據(jù)字典和初始的加工解決說明(IPO圖),實(shí)體關(guān)系用E-R圖描述。以初始數(shù)據(jù)流程圖為基礎(chǔ)進(jìn)行回溯,完善初始的數(shù)據(jù)流程圖。對(duì)軟件性能指標(biāo)、接口定義、設(shè)計(jì)和實(shí)現(xiàn)的約束條件等逐個(gè)進(jìn)行分析。以數(shù)據(jù)流程圖為核心,輔以數(shù)據(jù)字典和解決說明,將整個(gè)軟件的功能規(guī)定、數(shù)據(jù)規(guī)定和運(yùn)營規(guī)定和擴(kuò)展規(guī)定逐個(gè)確認(rèn)。畫出軟件功能結(jié)構(gòu)圖。修正開發(fā)計(jì)劃。編寫需求規(guī)格說明書和初始的用戶手冊(cè)。8.需求規(guī)格說明書的重要內(nèi)容:軟件功能說明,軟件性能規(guī)定、設(shè)計(jì)限制、外部接口規(guī)定。9.本章規(guī)定學(xué)生掌握數(shù)據(jù)流程圖,并對(duì)給出的應(yīng)用畫數(shù)據(jù)流程圖、寫數(shù)據(jù)字典和IPO過程描述。(應(yīng)用題)第4章涉及選擇題、簡(jiǎn)答題和應(yīng)用題。1.軟件設(shè)計(jì)的重要原則:模塊獨(dú)立性和信息隱藏。2.反映模塊獨(dú)立性有兩個(gè)標(biāo)準(zhǔn):內(nèi)聚和耦合。內(nèi)聚衡量一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密限度,耦合衡量模塊之間彼此依賴的限度。3.信息隱藏的核心內(nèi)容是:一個(gè)模塊中所包含的信息,不允許其他不需要這些信息的模塊訪問。4.結(jié)構(gòu)化設(shè)計(jì)是基于模塊化的、自頂向下、逐步求精等概念上的設(shè)計(jì)方法。5.結(jié)構(gòu)化設(shè)計(jì)方法的環(huán)節(jié):一方面分析數(shù)據(jù)流的類型,將數(shù)據(jù)流程圖映射為程序結(jié)構(gòu)圖,用“因子分解”方法定義軟件的層次結(jié)構(gòu),優(yōu)化設(shè)計(jì)結(jié)構(gòu)。6.數(shù)據(jù)設(shè)計(jì)涉及:數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、文獻(xiàn)設(shè)計(jì)和數(shù)據(jù)庫設(shè)計(jì)。7.應(yīng)用題型:規(guī)定學(xué)生對(duì)給出的數(shù)據(jù)流程圖轉(zhuǎn)換成軟件結(jié)構(gòu)圖。第5章本章重要是選擇題和簡(jiǎn)答題。1.構(gòu)化方法存在的重要問題:①分析階段的重要模型是數(shù)據(jù)流模型,設(shè)計(jì)階段的重要模型是軟件模塊結(jié)構(gòu),數(shù)據(jù)流程圖和軟件模塊結(jié)構(gòu)圖之間需要進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換有一定的隨意性。②功能變化就會(huì)導(dǎo)致軟件模塊結(jié)構(gòu)發(fā)生變化,導(dǎo)致了軟件結(jié)構(gòu)不穩(wěn)定。③結(jié)構(gòu)化設(shè)計(jì)將數(shù)據(jù)定義與解決數(shù)據(jù)的過程相分離,不利于軟件復(fù)用。2.什么是類?答:類是具有相同屬性和相同行為的對(duì)象集合。對(duì)象是類的一個(gè)實(shí)例。對(duì)象之間通過發(fā)送消息互相通信。3.類封裝了屬性和方法,封裝隱藏了對(duì)象內(nèi)部的解決細(xì)節(jié)。通過繼承,子類擁有父類的所有屬性和方法,并可以在繼承父類的基礎(chǔ)上進(jìn)行擴(kuò)展,添加新屬性和方法;也可以改寫父類的方法。通過多態(tài)技術(shù)使同一操作作用于不同類的實(shí)例時(shí),產(chǎn)生不同的執(zhí)行結(jié)果。4.UML是一種標(biāo)準(zhǔn)的圖形化建模語言,它是面向?qū)ο蠓治雠c設(shè)計(jì)方法的表現(xiàn)手段。其本質(zhì)表現(xiàn)是:它是一種可視化的建模語言,不是可視化的程序設(shè)計(jì)語言,不是工具或知識(shí)庫的規(guī)格說明,不是過程,也不是方法,但允許任何一種過程和方法使用它。5.UML提供了5種視圖(用例視圖、邏輯視圖、組件視圖、并發(fā)視圖和配置視圖)6.UML有9種圖(用例圖、類圖、對(duì)象圖、狀態(tài)圖、順序圖、合作圖、活動(dòng)圖、組件圖、配置圖)可以描述任何復(fù)雜的系統(tǒng)。7.簡(jiǎn)答題中涉及畫簡(jiǎn)樸的用例圖、類圖、活動(dòng)圖、順序圖。第6章本章
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 心功能測(cè)量(修改版)復(fù)習(xí)課程
- 急診科疾病培訓(xùn)課件模板
- 紅色中國風(fēng)中秋節(jié)游戲活動(dòng)策劃2
- 延吉辦公室文秘培訓(xùn)課件
- 2026年綠源環(huán)保袋生產(chǎn)公司倉庫物料搬運(yùn)安全管理制度
- 有課件如何給員工培訓(xùn)
- 六性培訓(xùn)課件教學(xué)
- 院內(nèi)血糖管理的意義
- 異位尖牙正畸治療后的牙周狀況
- 背調(diào)培訓(xùn)教學(xué)課件
- 2026貴州省省、市兩級(jí)機(jī)關(guān)遴選公務(wù)員357人考試備考題庫及答案解析
- 兒童心律失常診療指南(2025年版)
- 北京通州產(chǎn)業(yè)服務(wù)有限公司招聘?jìng)淇碱}庫必考題
- 2026南水北調(diào)東線山東干線有限責(zé)任公司人才招聘8人筆試模擬試題及答案解析
- 伊利實(shí)業(yè)集團(tuán)招聘筆試題庫2026
- 2026年基金從業(yè)資格證考試題庫500道含答案(完整版)
- 動(dòng)量守恒定律(教學(xué)設(shè)計(jì))-2025-2026學(xué)年高二物理上冊(cè)人教版選擇性必修第一冊(cè)
- 網(wǎng)絡(luò)素養(yǎng)與自律主題班會(huì)
- 波形護(hù)欄工程施工組織設(shè)計(jì)方案
- 非靜脈曲張性上消化道出血管理指南解讀課件
- GB/T 10922-202555°非密封管螺紋量規(guī)
評(píng)論
0/150
提交評(píng)論