軟件工程考點例題整理_第1頁
軟件工程考點例題整理_第2頁
軟件工程考點例題整理_第3頁
軟件工程考點例題整理_第4頁
軟件工程考點例題整理_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、PAGE PAGE 46軟件工程概概述軟件軟件是計算算機系統(tǒng)中中與硬件相相互依存的的另一部分分,它是包包括程序、數(shù)據(jù)及其其相關(guān)文檔檔的完整集集合。軟件的特點點1Loggicall ratther thann phyysicaal(軟件件是一種邏邏輯實體,而而非具體的的物理實體體)2Devvelopped oor Enngineeeredd, noot maanufaacturred iin thhe cllassiical sensse(在研研制、開發(fā)發(fā)活動中被被創(chuàng)造出來來,但不能能按傳統(tǒng)的的生產(chǎn)含義義加以理解解)3Doeesntt weaar ouut(在軟軟件的運行行和使用期期間,沒有有磨

2、損、老老化問題)軟件的發(fā)展展軟件的發(fā)展展可以分為為這樣三個個階段:1程序設(shè)設(shè)計階段,約約為50至至60年代代2程序系系統(tǒng)階段,約約為60至至70年代代3軟件工工程階段,約約為70年年代以后時期特點程序設(shè)計程序系統(tǒng)軟件工程軟件所指程序程序及說明明書程序、文檔檔及數(shù)據(jù)主要程序設(shè)設(shè)計語言匯編及機器器語言高級語言軟件語言*軟件工作范范圍程序編寫包括設(shè)計和和測試軟件生存期期需求者程序設(shè)計者者本人少數(shù)用戶市場用戶開發(fā)軟件的的組織個人開發(fā)小組開發(fā)小組及及大、中型型軟件開發(fā)發(fā)機構(gòu)軟件規(guī)模小型中、小型大、中、小小型決定質(zhì)量的的因素個人程序設(shè)設(shè)計技術(shù)小組技術(shù)水水平管理水平開發(fā)技術(shù)和和手段子程序、程程序庫結(jié)構(gòu)化程序

3、序設(shè)計數(shù)據(jù)庫,開開發(fā)工具,開開發(fā)環(huán)境,工工程化開發(fā)發(fā)方法,標標準和規(guī)范范,網(wǎng)絡(luò)和和分布式開開發(fā),面向向?qū)ο蠹夹g(shù)術(shù),軟件過過程與過程程改進維護責任者者程序設(shè)計者者開發(fā)小組專職維護人人員硬件特征價格高,存存儲容量小小,工作可可靠性差降價,速度度、存儲容容量及工作作可靠性有有明顯提高高向超高速、大容量、微型化及及網(wǎng)絡(luò)化方方向發(fā)展軟件特征完全不受重重視軟件技術(shù)的的發(fā)展不能能滿足需求求,出現(xiàn)軟軟件危機開發(fā)技術(shù)有有進步,但但未獲突破破性進展,價價格高,未未完全擺脫脫軟件危機機軟件危機*軟件需求求增長得不不到滿足;*軟件生產(chǎn)產(chǎn)成本高,價價格昂貴;*軟件生產(chǎn)產(chǎn)進度無法法控制;*軟件需求求定義不準準確,易偏偏離

4、用戶需需求;*軟件質(zhì)量量不易保證證;*軟件可維維護性差等等等軟件工程采用工程的的概念、原原理、技術(shù)術(shù)和方法來來開發(fā)與維維護軟件,把把經(jīng)過時間間考驗而證證明正確的的管理技術(shù)術(shù)和當前能能夠得到的的最好的技技術(shù)方法結(jié)結(jié)合起來,這這就是軟件件工程。Boehmm曾為軟件件工程下了了定義:運運用現(xiàn)代科科學技術(shù)知知識來設(shè)計計并構(gòu)造計計算機程序序及為開發(fā)發(fā)、運行和和維護這些些程序所必必需的相關(guān)關(guān)文件資料料。Fritzz Bauuer: The estaablisshmennt annd usse off souund eenginneeriing pprincciplees inn ordder tto ob

5、btainn ecoonomiicallly sooftwaare tthat is rreliaable and workks effficiientlly onn reaal maachinnes.軟軟件工程是是建立和使使用一系列列完善的工工程化原則則以便經(jīng)濟濟地獲得能能夠在實際際機器上有有效運行的的可靠軟件件。1983年年,IEEEE(Innstittute of EElecttricaal & Elecctronnic EEnginneerss,電氣和和電子工程程師學會)做做出的定義義是“軟件工程程是開發(fā)、運行、維維護和修復復軟件的系系統(tǒng)方法?!彼暮诵膬?nèi)內(nèi)容是“以工程化化的方式組組織

6、軟件的的開發(fā)”,其中涉涉及軟件計計劃、開發(fā)發(fā)和維護各各個階段。軟件工程三三個要素:方法、工工具和過程程。軟件工程方方法為軟件件開發(fā)提供供了“如何做”的技術(shù)。軟件工具為為軟件工程程方法提供供自動的或或半自動的的軟件支撐撐環(huán)境。軟件工程過過程指將軟軟件工程的的方法和工工具綜合起起來,以達達到合理、及時地進進行計算機機軟件開發(fā)發(fā)的目的。軟件工程過過程(Sooftwaare EEnginneeriing PProceess)軟件工程過過程是指為為了獲得軟軟件產(chǎn)品,在在軟件工具具支持下由由軟件工程程師采用軟軟件工程方方法完成的的一系列軟軟件工程活活動。軟件工程的的七條原理理著名的軟件件工程專家家B.W.

7、Boehhm于19983年在在一篇論文文中提出了了軟件工程程的七條基基本原理。他認為這這七條原理理是確保軟軟件產(chǎn)品質(zhì)質(zhì)量和開發(fā)發(fā)效率的原原理的最小小集合。分階段的生生命周期計計劃嚴格管管理堅持進行階階段評審實行嚴格的的產(chǎn)品控制制采用現(xiàn)代程程序設(shè)計技技術(shù)結(jié)果應(yīng)能清清楚地審查查開發(fā)小組的的人員應(yīng)少少而精承認不斷改改進軟件工工程實踐的的必要性軟件工程的的目標組織實施軟軟件工程項項目是為了了獲得項目目的成功,即即達到以下下幾個主要要的目標:出較低的開開發(fā)成本到預期的軟軟件功能取得較好的的軟件性能能使開發(fā)的軟軟件易于移移植需要較低的的維護費用用能按時完成成開發(fā)工作作,及時交交付使用概括地說,基基本目標,

8、四四個字:優(yōu)優(yōu)質(zhì)、高效效。即質(zhì)量量高、效率率高。軟件工程的的原則軟件工程程基本目標標適用于所所有軟件工工程項目。為達到這這些目標,在在軟件開發(fā)發(fā)過程中必必須遵循下下列軟件工工程原則。1抽象2信息隱隱蔽3模塊化化4局部化化5確定性性6一致性性7完備性性8驗證性性使用一致性性、完備性性和可驗證證性的原則則可以幫助助開發(fā)者設(shè)設(shè)計一個正正確的系統(tǒng)統(tǒng)。軟件生命周周期(liife ccyclee)同其它事物物一樣,軟軟件也有孕孕育、誕生生、成長、成熟、衰衰亡的生存存過程,稱稱為軟件的的生命周期期。包括六六階段內(nèi)容容:制定計劃需求分析系統(tǒng)設(shè)計程序編寫軟件測試運行和維護護軟件生命周周期經(jīng)典模模型瀑布模模型軟件

9、生命周周期模型是是從軟件項項目需求定定義直至軟軟件經(jīng)使用用后廢棄為為止,跨越越整個生存存期的系統(tǒng)統(tǒng)開發(fā)、運運作和維護護所實施的的全部過程程、活動和和任務(wù)的結(jié)結(jié)構(gòu)框架。軟件開發(fā)模模型瀑布模型:按照軟件件生命周期期經(jīng)典模型型-瀑布模模型的各個個階段實施施開發(fā)工作作優(yōu)點:1提供了了軟件開發(fā)發(fā)的基本框框架,優(yōu)于于“手工作坊坊”式的開發(fā)發(fā)方法2有利于于大型軟件件開發(fā)過程程中人員的的組織、管管理3有利于于軟件開發(fā)發(fā)方法和工工具的研究究與使用,從從而提高了了大型軟件件項目開發(fā)發(fā)的質(zhì)量和和效率缺點:1在軟件件開發(fā)的初初始階段指指明軟件系系統(tǒng)的全部部需求是困困難的,有有時甚至是是不現(xiàn)實的的2需求確確定后,用用戶

10、和軟件件項目負責責人要等相相當長的時時間(經(jīng)過過設(shè)計、編編碼、測試試、運行)才才能得到一一份軟件的的最初版本本。如果用用戶對這個個軟件提出出比較大的的修改意見見,那么整整個軟件項項目將會蒙蒙受巨大的的人力、財財力、時間間方面的損損失。漸進模型(演演化模型、原型模型型)原型模型在在克服瀑布布模型缺點點、減少由由于軟件需需求不明確確而給開發(fā)發(fā)工作帶來來風險方面面,確實有有著顯著的的效果原型化方法法是用戶和和軟件開發(fā)發(fā)人員之間間進行的一一種交互過過程,適用用于需求不不確定性高高的系統(tǒng)螺旋模型它是生命周周期模型與與原型模型型的結(jié)合,不不僅體現(xiàn)了了兩個模型型的優(yōu)點,還還增加了新新的成分風險分分析螺旋模型

11、是是支持大型型軟件開發(fā)發(fā)并具有廣廣泛應(yīng)用前前景的模型型例題1開發(fā)軟軟件時,對對于提高軟軟件開發(fā)人人員工作效效率至關(guān)重重要的是(AA)。軟件件工程中描描述軟件生生存周期的的瀑布模型型一般包括括計劃、(BB)、設(shè)計計、編碼、測試、維維護等幾個個階段。其其中,設(shè)計計階段在管管理上又可可以依次分分成(C)和和(D)兩兩個步驟。供選答案:A: 程序開發(fā)發(fā)環(huán)境 操作系統(tǒng)統(tǒng)的資源管管理功能開發(fā)程序序人員數(shù)量量 計算機的的并行處理理能力B: 需求分析析 需求調(diào)查查可行性分分析 問題定義義C、D:方案設(shè)計計代碼設(shè)計計概要設(shè)計計 數(shù)據(jù)設(shè)計計運行設(shè)計計詳細設(shè)計計故障處理理設(shè)計 軟件體系系結(jié)構(gòu)設(shè)計計答案:A. B.

12、C. D. 2有人將將軟件的發(fā)發(fā)展過程劃劃分為4個個階段:第一階段(220世紀550年代)稱稱為“程序設(shè)計計的原始時時期”。這時既既沒有(AA),也沒沒有(B),程程序員只能能用機器指指令編寫程程序。第二階段(220世紀660年代)稱稱為“基本軟件件期”。出現(xiàn)了了(A),并并逐漸普及及。隨著(BB)的發(fā)展展,編譯技技術(shù)也有較較大的發(fā)展展。第三階段(220世紀660年代末末-70年年代中)稱稱為“程序設(shè)計計方法時代代”。這一時時期,與硬硬件價格下下降相反,軟軟件開發(fā)費費用急劇上上升。人們們提出了(CC)和(DD)等程序序設(shè)計方法法,設(shè)法降降低軟件的的開發(fā)費用用。第四階段(220世紀770年代中中

13、期至今)稱稱為“軟件工程程時期”,軟件開開發(fā)技術(shù)不不再僅僅是是程序設(shè)計計技術(shù),而而是包括了了與軟件開開發(fā)的各個個階段,如如(E)、(F)、編碼、單單元測試、綜合測試試、(G)及及其整體有有關(guān)的各種種管理技術(shù)術(shù)。供選擇的答答案:AD:匯編語言言 操作系統(tǒng)統(tǒng) 虛擬存儲儲器概念 高級語言言結(jié)構(gòu)化程程序設(shè)計 數(shù)據(jù)庫概概念 固件 模塊化程程序設(shè)計EG:使用和維維護 兼容性的的確認 完整性的的確認 設(shè)計需求定義義 圖象處理理答案:A. B. C. D. E. F. G.問題定義關(guān)于問題性性質(zhì)、工程程目標和規(guī)規(guī)模的書面面報告可行性研究究(也稱可可行性分析析,F(xiàn)eaasibiilityy Anaalysiis

14、)目的就是要要用最小的的代價在盡盡可能短的的時間內(nèi)確確定問題是是否能夠解解決。具體任務(wù):1進一步步分析和澄澄清問題定定義。2導出系系統(tǒng)的高層層邏輯模型型。從系統(tǒng)統(tǒng)邏輯模型型出發(fā),探探索若干種種可供選擇擇的主要解解法(即系系統(tǒng)實現(xiàn)方方案)。對對每種解法法都應(yīng)該至至少從下述述幾方面研研究其可行行性:Econoomic feassibillity,經(jīng)經(jīng)濟可行性性。這個系系統(tǒng)的經(jīng)濟濟效益能超超過它的開開發(fā)成本嗎嗎? Technnicall feaasibiilityy,技術(shù)可可行性。使使用現(xiàn)有的的技術(shù)能實實現(xiàn)這個系系統(tǒng)嗎?Legall feaasibiilityy,法律可可行性。確確定系統(tǒng)開開發(fā)可能導

15、導致的任何何侵權(quán)行為為、妨礙性性后果和責責任。Operaationnal ffeasiibiliity,操操作可行性性。系統(tǒng)的的操作方式式在這個用用戶組織內(nèi)內(nèi)行得通嗎嗎?3、對以后后的行動方方針提出建建議?;谟嬎銠C機系統(tǒng)的成成本效益分析析是可行性性研究的重重要內(nèi)容,它它用于評估估計算機系系統(tǒng)的經(jīng)濟濟合理性。給出系統(tǒng)統(tǒng)開發(fā)的成成本論證,并并將估算的的成本與預預期的利潤潤進行對比比。成本軟件開發(fā)成成本主要表表現(xiàn)為人力力消耗(乘乘以平均工工資則得到到開發(fā)費用用)。一般來說,基基于計算機機系統(tǒng)的成成本由四個個部分組成成:1購置并并安裝軟硬硬件及有關(guān)關(guān)設(shè)備的費費用2系統(tǒng)開開發(fā)費用3系統(tǒng)安安裝、運行行和

16、維護費費用4人員培培訓費用1、代碼行行技術(shù)代碼行技術(shù)術(shù)是比較簡簡單的定量量估算方法法,也是一一種自底向向上的估算算方法。它它把開發(fā)每每個軟件功功能的成本本和實現(xiàn)這這個功能需需要用的源源代碼行數(shù)數(shù)聯(lián)系起來來。通常根根據(jù)經(jīng)驗和和歷史數(shù)據(jù)據(jù)估計實現(xiàn)現(xiàn)一個功能能需要的源源程序行數(shù)數(shù)。一旦估計出出源代碼行行數(shù)以后,用用每行代碼碼的平均成成本乘以行行數(shù)即可確確定軟件的的成本。每每行代碼的的平均成本本主要取決決于軟件的的復雜程度度和開發(fā)小小組的工資資水平。大致分如下下兩步: = 1 * GB2 對要求求設(shè)計的系系統(tǒng)進行功功能分解,直直到可以對對為實現(xiàn)該該功能所要要求的源代代碼行數(shù)做做出可靠的的估算為止止。根

17、據(jù)經(jīng)經(jīng)驗和歷史史數(shù)據(jù),對對每個功能能塊估計一一個最有利利的、最可可能的和最最不利的LLOC值。設(shè)最有利利的LOCC值為a,最最可能的LLOC值為為m,最不不利的LOOC值為bb,則代碼碼行的期望望(平均)值值L = 2 * GB2 再根據(jù)據(jù)歷史數(shù)據(jù)據(jù)和經(jīng)驗,選選擇每個軟軟件功能塊塊的LOCC價格計算每個功功能塊的價價格及工作作量,并確確定該軟件件項目總的的估算價格格和工作量量??尚行哉撟C證的提綱大致包括如如下內(nèi)容:背景情況。問題描述述,市場需需求等系統(tǒng)描述。簡略的范范圍描述,計計劃目標和和階段目標標等候選方案。候選方案案的配置,選選擇最終方方案的準則則等價格利益分分析。經(jīng)費費概算和預預期經(jīng)濟效

18、效益技術(shù)冒險評評價。包括括技術(shù)實力力、設(shè)備條條件和已有有工作基礎(chǔ)礎(chǔ)操作可行性性。用戶組組織對操作作方式的希希望法律可行性性。系統(tǒng)開開發(fā)可能導導致的侵權(quán)權(quán)、違法等等其它與項目目有關(guān)的問問題??赡苣艿奈磥碜冏兓Y(jié)論。需求分析所謂軟件需需求是指用用戶對目標標軟件系統(tǒng)統(tǒng)在功能、行為、性性能、設(shè)計計約束等方方面的期望望。需求分析具具體任務(wù):確定對系統(tǒng)統(tǒng)的綜合要要求系統(tǒng)功能要要求系統(tǒng)性能要要求運行要求將來可能提提出的要求求分析系統(tǒng)的的數(shù)據(jù)要求求(需求分分析的本質(zhì)質(zhì)就是對數(shù)數(shù)據(jù)和加工工進行分析析)導出系統(tǒng)的的邏輯模型型修正系統(tǒng)開開發(fā)計劃開發(fā)原型系系統(tǒng)(可選選)需求獲取技技術(shù)訪談與會議議書面調(diào)查法法觀察用戶工

19、工作流程用戶和開發(fā)發(fā)人員共同同組成聯(lián)合合小組需求調(diào)查主要包括四四部分內(nèi)容容:組織概況組織的業(yè)務(wù)務(wù)活動:組織的業(yè)務(wù)務(wù)狀態(tài)業(yè)務(wù)的詳細細內(nèi)容輸入輸出信信息從六個個方面著手手:*信息流向向*信息種類類*利用的目目的*信息的使使用者和制制造者*輸入和輸輸出地點*輸入和輸輸出信息量量存在問題、約束條件件未來要求結(jié)構(gòu)化分析析方法(SSA方法)就就是面向數(shù)數(shù)據(jù)流自頂頂向下逐步步求精進行行需求分析析的方法。分析的過程程:面向數(shù)數(shù)據(jù)流,采采用自頂向向下、分支支分層、逐逐步分解、逐步細化化、逐步求求精,最后后落實到具具體加工、基本加工工、簡單加加工。用逐逐步求解的的方法控制制系統(tǒng)的復復雜度,使使得復雜系系統(tǒng)簡單化化

20、、抽象系系統(tǒng)具體化化。數(shù)據(jù)流圖(DDFD)數(shù)據(jù)流圖描描繪系統(tǒng)的的邏輯模型型,或者說說描繪信息息在系統(tǒng)中中流動和處處理的情況況?;鞠到y(tǒng)模模型數(shù)據(jù)流分析析將系統(tǒng)模模型視作一一種數(shù)據(jù)變變換,它接接受各種形形式的輸入入,通過變變換產(chǎn)生各各種形式的的輸出。例,下圖是是一個飛機機機票預定定系統(tǒng)的基基本系統(tǒng)模模型 數(shù)據(jù)流圖的的成分下圖是機票票預定系統(tǒng)統(tǒng)的DFDD??梢钥闯?,數(shù)數(shù)據(jù)流圖是是由以下四四個基本成成分組成的的:數(shù)據(jù)流(用用箭頭表示示)加工(用圓圓圈表示)文件(用單單線或雙線線表示)數(shù)據(jù)源點和和終點(用用方框表示示)幾點說明:一個加工并并不一定是是一個程序序。一個數(shù)據(jù)存存儲也不等等同于一個個文件。數(shù)

21、據(jù)存儲和和數(shù)據(jù)流都都是數(shù)據(jù),但但所處狀態(tài)態(tài)不同。自頂向下逐逐層畫DFFD的步驟驟如下:把基本系統(tǒng)統(tǒng)模型加上上源點和終終點作為頂頂層DFDD。畫出各層DDFD,逐逐層畫DFFD的過程程也就是逐逐層分解的的過程。為便于管理理,要對分分層DFDD和圖中的的加工進行行編號。子圖的圖號號就是分解解的父圖中中相應(yīng)加工工的編號。子圖中的加加工編號是是由子圖號號、小數(shù)點點、局部順順序號組成成。畫出總的DDFD。(可可選)畫DFD時時要注意的的幾個問題題:畫DFD不不是畫流程程圖。DFFD只描述述“做什么”,不描述述“怎么做”和做的順順序。而流流程圖表示示對數(shù)據(jù)進進行加工的的次序和細細節(jié)。父圖和子圖圖的平衡。父

22、圖某加加工的輸入入輸出和分分解這個加加工的子圖圖的輸入輸輸出必須完完全一致。局部文件。文件總是是局部于分分層DFDD的某一層層或某幾層層。分解的深度度與層次。逐層分解解要求分解解到加工成成為足夠簡簡單、易于于理解的基基本加工為為止。所謂謂基本加工工就是加工工的意義明明確、操作作單一。但但是究竟分分解的層次次多少合適適,應(yīng)當根根據(jù)問題的的復雜程度度來確定。一般來說說,可參考考以下準則則:一個加工的的分解,最最多不要超超過7個子子加工。若若超過7個個時,可以以用增加層層次的辦法法來減少子子加工數(shù)。分解在邏輯輯上應(yīng)合理理、自然,不不能硬性分分割。在保證數(shù)據(jù)據(jù)流的易理理解性的前前提下,盡盡量少分解解層

23、次。這這樣可以減減少層次的的界面。分解要均勻勻。即在一一張DFDD中,不要要有些加工工已是基本本加工,另另一些加工工還要分解解好幾層。絕對均勻勻不可能,但但不要相差差太大。數(shù)據(jù)字典(DDD)數(shù)據(jù)字典是是關(guān)于數(shù)據(jù)據(jù)的信息的的集合,也也就是對數(shù)數(shù)據(jù)流圖中中包含的系系統(tǒng)元素(所所有數(shù)據(jù)流流、加工、文件)的的定義的集集合。數(shù)據(jù)流圖和和數(shù)據(jù)字典典是需求規(guī)規(guī)格說明書書的主要組組成部分。數(shù)據(jù)流條目目數(shù)據(jù)流條目目是定義數(shù)數(shù)據(jù)流的。定義的方方式一般是是列出該數(shù)數(shù)據(jù)流的各各組成數(shù)據(jù)據(jù)項。在定定義數(shù)據(jù)流流時,通常常借助于一一些簡單的的符號。如如=等價于(定定義為)+ “與” x=a+b,xx由a和bb組成|,,“或

24、”x= , ,x=a|b x由由a或b組組成重復 x=aa xx由0個或或多個a組組成mnn重復 如x=33a88 表示示x中至少少出現(xiàn)3次次a,至多多出現(xiàn)8次次a()可選(選選擇)如x=aa+(b)+c b可以在在x中出現(xiàn)現(xiàn),也可以以不出現(xiàn)“”基本數(shù)據(jù)據(jù)元素 x=“a” x為為取值為aa的數(shù)據(jù)元元素.連接符 x=11.9 x可取取1至9中中的任一值值如數(shù)據(jù)流“存折”可以定義義:存折=戶戶名+所號號+帳號+開戶日+性質(zhì)+(印印密)+11存取行行5000000000009999999999戶名=2字母224所號=“0001”“999”帳號=“0000000001”“9999999999”開戶日=

25、年年+月+日日性質(zhì)=“11”.“6”印密=“00”存取行=日日期+(摘摘要)+支支出+存入入+余額+操作+復復核日期=年+月+日年=“00001”.“99999”月=“011”.“12”日=“011”.“31”摘要=1字母44支出=金額額金額=“000000000.001”.“99999999.99”操作=“0000011”.“999999”數(shù)據(jù)文件條條目文件條目是是定義文件件的,一般般只需列出出文件的組組成數(shù)據(jù)項項,以及文文件的組織織方式如數(shù)據(jù)文件件(數(shù)據(jù)存存儲)“存折”可定義為為存折=戶戶名+所號號+帳號+開戶日+性質(zhì)+(印印密)+11存取行行5000000000009999999999組

26、織:按帳帳號次序從從小至大排排列加工條目(小小說明)小說明集中中描述一個個加工“做什么”,即加工工邏輯。所所謂加工邏邏輯是指用用戶對這個個加工的邏邏輯要求,即即這個加工工的輸出數(shù)數(shù)據(jù)流和輸輸入數(shù)據(jù)流流的邏輯關(guān)關(guān)系。目前用于寫寫小說明(加加工邏輯說說明)的工工具有結(jié)構(gòu)構(gòu)化英語、判定表和和判定樹。結(jié)構(gòu)化英語語下面是商店店業(yè)務(wù)處理理系統(tǒng)中“檢查發(fā)貨貨單”的例子IF thhe innvoicce exxceedds $5500 TTHEN(發(fā)貨單金金額超過$500)IF tthe aaccouunt hhas aany iinvoiice mmore thann 60 dayss oveerduee

27、THEEN(欠款超超過60天天)thee connfirmmatioon peendinng reesoluutionn of the debtt(在償還欠欠款前不予予批準)ELSEE (acccounnt iss in goodd staandinng)(欠款未超超期)isssue cconfiirmattion and invooice(發(fā)批準書書及發(fā)貨單單)ENDIIFELSE (invvoicee $5000 orr lesss)(發(fā)貨單金金額未超過過$5000)IF tthe aaccouunt hhas aany iinvoiice mmore thann 60 dayss ove

28、erduee THEEN(欠款超過過60天)isssue cconfiirmattion, invvoicee andd wriite mmessaage oon crreditt acttion repoort(發(fā)批準書書,發(fā)貨單單及賒欠報報告)ELSEE (acccounnt iss in goodd staandinng)(欠款未未超期)Isssue cconfiirmattion and invooice(發(fā)批準書書及發(fā)貨單單)ENDIFF判定表在某些數(shù)據(jù)據(jù)處理問題題中,某數(shù)數(shù)據(jù)流圖的的加工需要要依賴于多多個邏輯條條件的取值值,就是說說完成這一一加工的一一組動作是是由于某一一組條件取取

29、值的組合合引發(fā)的。這時使用用判定表來來描述比較較合適。下下面以“檢查發(fā)貨貨單”為例,說說明判定表表的構(gòu)成。1234條件發(fā)貨單金額額$5000$5000$5000$5000賒欠情況60天60天60天60天操作不發(fā)出批準準書發(fā)出批準書書發(fā)出發(fā)貨單單發(fā)出賒欠報報告判定表由四四個部分組組成,虛線線分割開的的四部分是是:條件茬(CCondiitionn Stuub)左上部部分條件項(CCondiitionn Enttry)右上部部分動作茬(AActioon Sttub)左下部部分動作項(AActioon Enntry)右下部部分例題 請請用判定表表表示下面面描述的耗耗電計費系系統(tǒng)中電費費的計算方方法耗電

30、計費系系統(tǒng)可以采采用固定價價格收費和和浮動價格格收費兩種種方式。若若采用固定定價格方式式收費,對對每月耗電電100KKWh以下的的用戶只征征收最低標標準費,超超過1000KWh的用戶戶按價格表表A收費;若采用浮浮動價格方方式收費,則則每月耗電電100KKWh以下的的用戶按價價格表A收收費,超過過100KKWh的用戶戶按價格表表B收費。答案:條件收費方式固定固定浮動浮動耗電規(guī)模100100100100操作征收最低標標準費按價格表AA收費按價格表BB收費條件固定固定浮動浮動100100100100操作按價格表AA收費征收最低標標準費按價格表BB收費按價格表AA收費判定樹判定樹也是是用來表達達加工邏

31、輯輯的一種工工具,有時時它比判定定表更直觀觀。下面把把前面的“檢查發(fā)貨貨單”的例子用用判定樹表表示。我們用DFFD描述了了系統(tǒng)中數(shù)數(shù)據(jù)流動和和加工的狀狀況,用DDD描述了了其中的一一些數(shù)據(jù)流流、文件和和加工,但但是還不能能滿足需求求分析階段段的要求。任何一個個軟件系統(tǒng)統(tǒng)都可能有有成千上萬萬個數(shù)據(jù)項項,僅僅描描述它們是是不夠的,更更重要的是是如何把它它們以最優(yōu)優(yōu)的方式組組織起來,以以滿足系統(tǒng)統(tǒng)對數(shù)據(jù)的的要求。E-R圖(EEntitty-Reelatiionshhip,實實體-關(guān)系系圖)1、實體是現(xiàn)實世界界中實體的的數(shù)據(jù)側(cè)面面;或者說說,數(shù)據(jù)對對象是現(xiàn)實實世界中省省略了功能能和行為的的實體。2、聯(lián)

32、系客觀世界中中的事物彼彼此間往往往是有聯(lián)系系的。同樣樣,應(yīng)用問問題中的任任何數(shù)據(jù)對對象都不是是孤立的,它它們與其它它數(shù)據(jù)對象象一定存在在各種形式式的聯(lián)系。聯(lián)系可分為為三類:一對一聯(lián)系系(1:11)一對多聯(lián)系系(1:NN)多對多聯(lián)系系(M:NN)3、屬性屬性是實體體或聯(lián)系所所具有的性性質(zhì)軟件需求規(guī)規(guī)格說明引言。編寫寫目的,項項目背景等等任務(wù)概述。目標,運運行環(huán)境等等數(shù)據(jù)描述。功能需求。性能需求。運行需求。其他需求。例題1軟件需需求分析的的任務(wù)不應(yīng)應(yīng)包括(AA)。進行行需求分析析可使用多多種工具,但但(B)是是不適用的的。在需求求分析中,分分析員要從從用戶那里里解決的最最重要的問問題是(CC)。需

33、求求規(guī)格說明明書的內(nèi)容容不應(yīng)當包包括(D)。該文檔在在軟件開發(fā)發(fā)中具有重重要的作用用,但其作作用不應(yīng)當當包括(EE)。供選答案:A:問問題分析信息域分分析結(jié)構(gòu)化程程序設(shè)計確定邏輯輯模型B:數(shù)數(shù)據(jù)流圖判定表PAD圖圖數(shù)據(jù)詞典典C:要要讓軟件做做那么要給軟件件提供哪些些信息要求軟件件工作效率率如何要讓軟件件具有什么么樣的結(jié)構(gòu)構(gòu)D:對對重要功能能的描述對算法的的詳細過程程性描述軟件確認認準則軟件的性性能E:軟軟件設(shè)計的的依據(jù)用戶和開開發(fā)人員對對軟件要“做什么”的共同理理解軟件驗收收的依據(jù)軟件可行行性分析的的依據(jù)答案:A. B. C. D. E.2在結(jié)構(gòu)構(gòu)化分析方方法中,用用以表達系系統(tǒng)內(nèi)數(shù)據(jù)據(jù)的運動

34、情情況的工具具有()。供選答案:A.數(shù)據(jù)流流圖 BB.數(shù)據(jù)詞詞典 CC.結(jié)構(gòu)化化英語 D.判定定表與判定定樹答案:A一旦軟件需需求確認之之后,就進進入開發(fā)階階段。開發(fā)發(fā)階段由33個互相關(guān)關(guān)聯(lián)的步驟驟組成,即即設(shè)計、實實現(xiàn)(編碼碼)和測試試。從工程管理理的角度看看,軟件設(shè)設(shè)計可分為為概要設(shè)計計/總體設(shè)設(shè)計和詳細細設(shè)計兩大大步驟。從技術(shù)角度度來看,軟軟件設(shè)計可可分為數(shù)據(jù)據(jù)設(shè)計、系系統(tǒng)結(jié)構(gòu)設(shè)設(shè)計和過程程設(shè)計。現(xiàn)現(xiàn)在越來越越多的人把把界面設(shè)計計也單獨取取出作為一一個方面。概要設(shè)計基本目的是是用比較抽抽象概括的的方式確定定系統(tǒng)如何何完成預定定的任務(wù),即即確定軟件件系統(tǒng)的總總體結(jié)構(gòu),給給出系統(tǒng)中中各個組成

35、成模塊的功功能和模塊塊間的接口口。涉及的概念念主要有:模塊化,抽抽象與逐步步求精,信信息隱藏,模模塊獨立在進行軟件件結(jié)構(gòu)設(shè)計計時應(yīng)該遵遵循的最重重要的原理理是模塊獨獨立原理。采用模塊化化原理的優(yōu)優(yōu)點:可以使軟件件結(jié)構(gòu)清晰晰,容易設(shè)設(shè)計、容易易閱讀和理理解、容易易測試和調(diào)調(diào)試。提高軟件的的可靠性。易于軟件開開發(fā)工程的的組織管理理。所謂模塊的的獨立性,是是指軟件系系統(tǒng)中每個個模塊只涉涉及軟件要要求的具體體的子功能能,而和軟軟件系統(tǒng)中中其他模塊塊的接口是是簡單的。模塊獨立性性可用兩個個定量準則則來度量耦合(cooupliing):各個模塊塊之間相互互關(guān)聯(lián)的度度量內(nèi)聚(coohesiion):模塊內(nèi)部

36、部各元素之之間相互關(guān)關(guān)聯(lián)的度量量耦合共分七七級非直接耦合合、數(shù)據(jù)耦耦合、特征征耦合/標標記耦合、控制耦合合、外部耦耦合、公共共耦合、內(nèi)內(nèi)容耦合按上述順序序,耦合性性逐漸升高高,模塊獨獨立性逐漸漸降低。內(nèi)聚共分七七級偶然內(nèi)聚、邏輯內(nèi)聚聚、時間內(nèi)內(nèi)聚、過程程內(nèi)聚、通通信內(nèi)聚、順序內(nèi)聚聚、功能內(nèi)內(nèi)聚按上述順序序,內(nèi)聚性性逐漸加強強,功能趨趨于單一,模模塊獨立性性也逐漸加加強。軟件概要設(shè)設(shè)計的目標標是力求增增加模塊的的內(nèi)聚,盡盡量減少模模塊間的耦耦合。但增增加內(nèi)聚比比減少耦合合更重要,應(yīng)應(yīng)當把更多多的注意力力集中到提提高模塊的的內(nèi)聚程度度上來。系統(tǒng)結(jié)構(gòu)設(shè)設(shè)計的七條條啟發(fā)式原原則:改進軟件結(jié)結(jié)構(gòu)提高模模

37、塊獨立性性模塊規(guī)模應(yīng)應(yīng)該適中深度、寬度度、扇出和和扇入都應(yīng)應(yīng)適當模塊的作用用范圍應(yīng)在在控制范圍圍之內(nèi)力爭降低模模塊接口的的復雜程度度設(shè)計單入口口單出口的的模塊模塊功能應(yīng)應(yīng)該可以預預測概要設(shè)計常常用圖形工工具有:層層次圖、HHIPO圖圖、結(jié)構(gòu)圖圖(SC圖圖)。常見的軟件件概要設(shè)計計方法有33大類:以數(shù)據(jù)流圖圖為基礎(chǔ)構(gòu)構(gòu)造模塊結(jié)結(jié)構(gòu)的結(jié)構(gòu)構(gòu)化設(shè)計方方法(SDD,Strructuured Desiign)以數(shù)據(jù)結(jié)構(gòu)構(gòu)為基礎(chǔ)構(gòu)構(gòu)造模塊結(jié)結(jié)構(gòu)的Jaacksoon方法和和LCP(LLogiccal CConsttructtion of PProgrrams)(WWanieer)邏輯輯構(gòu)造方法法以對象、類類

38、、繼承和和通信為基基礎(chǔ)的面向向?qū)ο蟮脑O(shè)設(shè)計方法(OOOD)此外,以信信息隱藏為原則則的Parrnas方方法雖然沒沒有給出系系統(tǒng)化的設(shè)設(shè)計方法,但但提出了一一組原則。結(jié)構(gòu)化設(shè)計計方法(SStrucctureed Deesignn,SD)是是基于模塊塊化、自頂頂向下細化化、結(jié)構(gòu)化化程序設(shè)計計等程序設(shè)設(shè)計技術(shù)基基礎(chǔ)而發(fā)展展起來的。概要設(shè)計的的步驟:分析/重畫畫DFD確定DFDD的特點及及邊界映射為軟件件結(jié)構(gòu)細化后,得得到初始結(jié)結(jié)構(gòu)圖獲得最終的的軟件結(jié)構(gòu)構(gòu)圖概要設(shè)計說說明書引言。編寫寫目的,項項目背景等等任務(wù)概述。目標,運運行環(huán)境,需需求概述,條條件與限制制等總體設(shè)計。處理流程程,系統(tǒng)總總體結(jié)構(gòu)等等接

39、口設(shè)計。外部接口口,內(nèi)部接接口等數(shù)據(jù)結(jié)構(gòu)設(shè)設(shè)計運行設(shè)計出錯處理設(shè)設(shè)計其它問題例題1在眾多多的設(shè)計方方法中,SSD方法是是最受人注注意的,也也是最廣泛泛應(yīng)用的一一種,這種種方法可以以同分析階階段的(AA)方法及及編程階段段的(B)方方法前后銜銜接,SDD方法考慮慮如何建立立一個結(jié)構(gòu)構(gòu)良好的程程序結(jié)構(gòu),它它提出了評評價模塊結(jié)結(jié)構(gòu)質(zhì)量的的兩個具體體標準-塊塊間聯(lián)系和和塊內(nèi)聯(lián)系系。SD方方法的最終終目標是(CC),用于于表示模塊塊間調(diào)用關(guān)關(guān)系的圖叫叫(D)。另一種比較較著名的設(shè)設(shè)計方法是是以信息隱隱藏為原則則劃分模塊塊,這種方方法叫(EE)方法。供選擇的答答案:A-B:JackksonSASCParn

40、nasSPC: 塊塊間聯(lián)系大大,塊內(nèi)聯(lián)聯(lián)系小 塊間聯(lián)系系大,塊內(nèi)內(nèi)聯(lián)系小塊間聯(lián)系系小,塊內(nèi)內(nèi)聯(lián)系大 塊間聯(lián)系系小,塊內(nèi)內(nèi)聯(lián)系小D: PPADHCPSCSADTTHIPOONSE: JJacksson Parnnas Turiing Wirtth Dijkkstraa答案:A. B.C.D.E.2塊間聯(lián)聯(lián)系和塊內(nèi)內(nèi)聯(lián)系是評評價程序模模塊結(jié)構(gòu)質(zhì)質(zhì)量的重要要標準。聯(lián)聯(lián)系的方式式、共用信信息的作用用、共用信信息的數(shù)量量和接口的的(A)等等因素決定定了塊間聯(lián)聯(lián)系的大小小。在塊內(nèi)內(nèi)聯(lián)系中,(BB)的塊內(nèi)內(nèi)聯(lián)系最強強。SD方法的的總的原則則是使每個個模塊執(zhí)行行(C)功功能,模塊塊間傳送(DD)參數(shù),模模塊通

41、過(EE)語句調(diào)調(diào)用其它模模塊,而且且模塊間傳傳送的參數(shù)數(shù)應(yīng)盡量(FF)。此外,SDD方法還提提出了判定定的作用范范圍和模塊塊的控制范范圍等概念念。SD方方法認為,(GG)應(yīng)該是是(H)的的子集。供選擇的答答案:A:友好好性 健壯性 簡單性 安全性B:巧合合內(nèi)聚 功能內(nèi)聚聚 通信內(nèi)聚聚 信息內(nèi)聚聚C:一個個多個D:數(shù)據(jù)據(jù)型 控制型 混合型E:直接接引用標準調(diào)用用 中斷 宏調(diào)用F:少多G-H:作用范圍圍控制范圍圍答案:A. B. C. D. E. F. G. H.3從下列列有關(guān)系統(tǒng)統(tǒng)結(jié)構(gòu)圖的的敘述中選選出正確的的敘述A系統(tǒng)結(jié)結(jié)構(gòu)圖中反反映的是程程序中數(shù)據(jù)據(jù)流的情況況。B系統(tǒng)結(jié)結(jié)構(gòu)圖是精精確表達程

42、程序結(jié)構(gòu)的的圖形表示示法。因此此,有時可可將系統(tǒng)結(jié)結(jié)構(gòu)圖當作作程序流程程圖使用。個模塊的多多個下屬模模塊在系統(tǒng)統(tǒng)結(jié)構(gòu)圖中中所處的左左右位置是是無關(guān)緊要要的。系統(tǒng)結(jié)構(gòu)圖圖中,上級級模塊與其其下屬模塊塊之間的調(diào)調(diào)用關(guān)系用用有向線段段表示。這這時,使用用斜的線段段和水平、垂直的線線段具有相相同的含義義。答案:D5在完成成軟件概要要設(shè)計,并并編寫出相相關(guān)文檔之之后,應(yīng)當當組織對概概要設(shè)計工工作的評審審。評審的的內(nèi)容包括括:分析該軟件件的系統(tǒng)結(jié)結(jié)構(gòu)、子系系統(tǒng)結(jié)構(gòu),確確認該軟件件設(shè)計是否否覆蓋了所所有已確定定的軟件需需求,軟件件每一成分分是否可(AA)到某一一項需求。分析軟件各各部分之間間的聯(lián)系,確確認該

43、軟件件的內(nèi)部接接口與外部部接口是否否已經(jīng)明確確定義。模模塊是否滿滿足(B)和和(C)的的要求。模模塊(D)是是否在其(EE)之內(nèi)。供選擇的答答案:A:覆蓋蓋 演化 追溯 等同 連接B:多功功能 高內(nèi)聚 高耦合 高效率 可讀性C:多入入口 低內(nèi)聚 低耦合 低復雜度度 低強度D-E:作用范圍圍 高內(nèi)聚 低內(nèi)聚 取值范圍圍 控制范圍圍答案:A. B. C. D. E.詳細設(shè)計詳細設(shè)計就就是要在總總體設(shè)計階階段成果的的基礎(chǔ)上,考考慮如何實實現(xiàn)定義的的軟件系統(tǒng)統(tǒng),直到對對系統(tǒng)中的的每個模塊塊給出足夠夠詳細的過過程描述。結(jié)構(gòu)化程序序設(shè)計技術(shù)術(shù)是進行詳詳細設(shè)計的的邏輯基礎(chǔ)礎(chǔ)。它采用用自頂向下下逐步求精精的設(shè)

44、計方方法和單入入口單出口口的控制結(jié)結(jié)構(gòu)。結(jié)構(gòu)化程序序設(shè)計的三三種基本控控制結(jié)構(gòu)是是順序、選選擇、循環(huán)環(huán)。詳細設(shè)計的的工具有程程序流程圖圖、盒圖、PAD圖、判定表、判定樹和和PDL語言言等。程序復雜性性度量程序復雜雜性主要指指模塊內(nèi)程程序的復雜雜性。它直直接關(guān)聯(lián)到到軟件開發(fā)發(fā)費用的多多少、開發(fā)發(fā)周期的長長短和軟件件內(nèi)部潛伏伏錯誤的多多少等。代碼行度量量法度量程序的的復雜性,最最簡單的方方法就是統(tǒng)統(tǒng)計程序的的源代碼行行數(shù)。該方方法的基本本考慮是統(tǒng)統(tǒng)計一個程程序模塊的的源代碼行行數(shù)目,并并以源代碼碼行數(shù)作為為程序復雜雜性的度量量。Lipoww及其他研研究者得出出一個結(jié)論論:對于少少于1000個語句的

45、的小程序,源源代碼行數(shù)數(shù)與出錯率率是線性相相關(guān)的。隨隨著程序的的增大,出出錯率以非非線性方式式增長。McCabbe度量法法McCabbe度量法法是一種基基于程序控控制流的復復雜性度量量方法。MMcCabbe定義的的程序復雜雜性度量值值又稱環(huán)路路復雜性,它它是基于程程序圖中環(huán)環(huán)路的個數(shù)數(shù)。如果把程序序流程圖中中每個處理理符號都退退化成一個個結(jié)點,原原來聯(lián)結(jié)不不同處理符符號的流線線變成連接接不同結(jié)點點的有向弧弧,這樣得得到的有向向圖就叫做做程序圖。計算有向圖圖G的環(huán)路復復雜性的公公式:其中,V(G)是有有向圖G中的環(huán)路路個數(shù),mm是圖G中有向弧弧個數(shù),nn是圖G中結(jié)點個個數(shù)。詳細設(shè)計說說明書引言總

46、體設(shè)計。軟件結(jié)構(gòu)構(gòu)程序描述。逐個模塊塊描述其功功能、性能能、輸入、輸出、算算法等例題軟件詳細設(shè)設(shè)計工具可可分為3類,即圖圖形工具、設(shè)計語言言和表格工工具。圖形形工具中,(A)簡單而應(yīng)用廣泛。(B)表示法中,每個處理過程用一個盒子表示,盒子可以嵌套。(C)可以縱橫延伸,圖形的空間效果好。(D)是一一種設(shè)計和和描述程序序的語言,它它是一種面面向(E)的語言言。供選答案:A-C:NS圖流程圖HIPOO圖PAD圖D:CPDLPROLLOGPasccalE:人機器數(shù)據(jù)結(jié)構(gòu)構(gòu)對象答案:A.B.C.D.E.20011年統(tǒng)考下面是兩兩個程序流流程圖,試試分別用NN-S圖和和PAD圖表表示之,并并計算它們們的M

47、cCCabe復復雜性度量量。答案:PAD圖略略McCabbe復雜性性度量都為為3。(7-66+2)下圖是使用用BASIIC語言編編寫的一個個打印A、B、C三數(shù)中最最小者的程程序流程圖圖。其中出出現(xiàn)了6個GOTOO語句,1個向前,55個向后,程程序可讀性性很差。if (AAB) gotoo 1200;if (BBC) gotoo 1100;printt C;goto 140;printt B;goto 140;if (AAC) gotoo 1300;goto 100;printt A;140試利用基本本控制結(jié)構(gòu)構(gòu),將程序序中的GOOTO語句句消去。使用if-thenn-elsse結(jié)構(gòu)化化構(gòu)造,則

48、則上述程序序段可改成成如下形式式:if (AAB aand AA=BB andd Bcc) thhenpriint BBelse printt C編碼所謂編碼就就是把軟件件設(shè)計的結(jié)結(jié)果翻譯成成計算機可可以“理解”的形式用某種程程序設(shè)計語語言書寫的的程序。按照軟件工工程的方法法論,程序序的質(zhì)量基基本上由設(shè)設(shè)計的質(zhì)量量決定。但但是,編碼碼使用的語語言,特別別是寫程序序的風格和和途徑也對對程序質(zhì)量量有相當大大的影響。程序設(shè)計語語言的分類類、選擇大量實踐表表明,高級級程序設(shè)計計語言較匯匯編語言有有很多優(yōu)點點。程序設(shè)計風風格包括四四個方面:源程序文檔檔化、數(shù)據(jù)據(jù)說明、語語句結(jié)構(gòu)和和輸入/輸出方法法例題從

49、下列敘述述中選出55條符合程程序設(shè)計風風格指導原原則的敘述述。嵌套的重重數(shù)應(yīng)加以以限制盡量多使使用臨時變變量不濫用語語言特色不用可以以省略的括括號使用有意意義的變量量名應(yīng)盡可能能把程序編編得短些把常見的的局部優(yōu)化化工作留給給編譯程序序去做注解越少少越好程序的格格式應(yīng)有助助于讀者理理解程序應(yīng)盡可能能多用GOOTO語句句答案:、是正確的的從下列關(guān)于于模塊化程程序設(shè)計的的敘述中選選出5條正確的的敘述。程序設(shè)計計比較方便便,但比較較難以維護護便于由多多個人分工工編制大型型程序軟件的功功能便于擴擴充程序易于于理解,也也便于排錯錯在主存儲儲器能夠容容納得下的的前提下,應(yīng)應(yīng)使模塊盡盡可能大,以以便減少模模塊

50、的個數(shù)數(shù)模塊之間間的接口叫叫做數(shù)據(jù)文文件只要模塊塊之間的接接口關(guān)系不不變,各模模塊內(nèi)部實實現(xiàn)細節(jié)的的修改將不不會影響別別的模塊模塊間的的單向調(diào)用用關(guān)系叫做做模塊的層層次結(jié)構(gòu)模塊越小小,模塊化化的優(yōu)點越越明顯。一一般來說,模模塊的大小小都在100行以下答案:、是正確的的測試軟件測試的的目的就是是軟件投入入生產(chǎn)性運運行之前,盡盡可能多地地發(fā)現(xiàn)軟件件中的錯誤誤。目前軟軟件測試仍仍然是保證證軟件質(zhì)量量的關(guān)鍵步步驟。軟件測試在在軟件生命命周期中橫橫跨兩個階階段:編碼碼和測試。Grenfford J.Myyers就就軟件測試試目的提出出以下觀點點:測試是程序序的執(zhí)行過過程,目的的在于發(fā)現(xiàn)現(xiàn)錯誤。一個好的測

51、測試用例在在于能發(fā)現(xiàn)現(xiàn)至今未發(fā)發(fā)現(xiàn)的錯誤誤一個成功的的測試是發(fā)發(fā)現(xiàn)了至今今未發(fā)現(xiàn)的的錯誤的測測試軟件測試的的原則應(yīng)當盡早地地不斷地進進行軟件測測試測試用例應(yīng)應(yīng)由測試輸輸入數(shù)據(jù)和和與之相對對應(yīng)的預期期輸出結(jié)果果這兩部分分組成程序員應(yīng)避避免檢查自自己的程序序在設(shè)計測試試用例時,應(yīng)應(yīng)當包括合合理的輸入入條件和不不合理的輸輸入條件充分注意測測試中的群群集現(xiàn)象嚴格執(zhí)行測測試計劃,排排除測試的的隨意性應(yīng)當對每個個測試結(jié)果果做全面檢檢查妥善保存測測試計劃、測試用例例、出錯統(tǒng)統(tǒng)計和最終終分析報告告,為維護護提供方便便常分單元測測試/模塊測試試,集成測測試,確認認測試和系系統(tǒng)測試。關(guān)系重大大的還可做做平行運行行

52、。設(shè)計測試方方案是測試試階段的關(guān)關(guān)鍵技術(shù)問問題,基本本目標是選選用最少量量的高效測測試數(shù)據(jù),做做到盡可能能完善的測測試,從而而盡可能多多地發(fā)現(xiàn)軟軟件中的問問題。動態(tài)測試兩兩個基本方方法黑盒測試/功能測試試等價類劃劃分邊界值分析析錯誤推測測法因果圖法白盒測試/結(jié)構(gòu)測試試語句覆蓋蓋:使得每每一可執(zhí)行行語句至少少執(zhí)行一次次判定覆蓋蓋:使得程程序中每個個判斷的取取真分支和和取假分支支至少執(zhí)行行一次條件覆蓋蓋:使得程程序中每個個判斷的每每個條件的的可能取值值至少執(zhí)行行一次判定-條條件覆蓋:使得判斷斷中每個條條件的所有有可能取值值至少執(zhí)行行一次,同同時每個判判斷的所有有可能判斷斷結(jié)果至少少執(zhí)行一次次條件組

53、合覆覆蓋:使得得每個判斷斷的所有可可能的條件件取值組合合至少執(zhí)行行一次路徑覆蓋蓋:覆蓋程程序中所有有可能的路路徑設(shè)計測試方方案的實用用策略是,用用黑盒法設(shè)設(shè)計基本的的測試方案案,再用白白盒法補充充一些必要要的測試方方案。應(yīng)該認識到到,軟件測測試不僅僅僅指利用計計算機進行行的測試,還還包括人工工進行的測測試(例如如,代碼審審查)。兩兩種測試途途徑各有優(yōu)優(yōu)缺點,互互相補充,缺缺一不可。因果圖方法法最終生成成的就是判判定表。它它適合于檢檢查程序輸輸入條件的的各種組合合情況。例題20000年統(tǒng)考設(shè)要對一一個自動飲飲料售貨機機軟件進行行黑盒測試試。該軟件件的規(guī)格說說明如下:有一個處理理單價為11元5角錢

54、的盒盒裝飲料的的自動售貨貨機軟件。若投入11元5角硬幣,按按下“橙汁”、“啤酒”或“紅茶”按鈕,相相應(yīng)的飲料料就送出來來。若投入入的是2元硬幣,在在送出飲料料的同時退退還5角硬幣。1)(5分分)試利用用因果圖法法,建立該該軟件的因因果圖;2)(5分分)設(shè)計測測試該軟件件的全部測測試用例。因果圖(加加入了兩個個中間結(jié)點點11和12。11表示已已投幣,112表示已已按鈕)測試用例1234567891011輸入投入1元55角硬幣(1)11110000000投入2元硬硬幣(2)00001111000按”橙汁”按鈕(3)10001000100按”啤酒”按鈕(4)01000100010按”紅茶”按鈕(5)

55、00100010001中間結(jié)點已投幣(11)11111111000已按鈕(12)11101110111輸出退還5角硬硬幣(21)00001110000送出橙汁飲飲料(22)10001000000送出啤酒飲飲料(23)01000100000送出紅茶飲飲料(24)00100010000軟件測試是是軟件質(zhì)量量保證的主主要手段之之一,測試試的費用已已超過(AA)的30%以上。因因此,提高高測試的有有效性十分分重要。“高產(chǎn)”的測試是是指(B)。根據(jù)據(jù)國家標準準GB85566-888計算算機軟件開開發(fā)規(guī)范的規(guī)定,軟軟件的開發(fā)發(fā)和維護劃劃分為8個階段,其其中,單元元測試是在在(C)階段完完成的,集集成測試的

56、的計劃是在在(D)階段制制定的,確確認測試的的計劃是在在(E)階段制制定的。供選擇的答答案:A:軟件開發(fā)發(fā)費用軟件維護護費用軟件開發(fā)發(fā)和維護費費用軟件研制制費用軟件生存存期全部B:用適適量的測試試用例運行行程序,證證明被測程程序正確無無誤用適量的的測試用例例運行程序序,證明被被測程序符符合相應(yīng)的的要求用少量的的測試用例例運行程序序,發(fā)現(xiàn)被被測程序盡盡可能多的的錯誤用少量的的測試用例例運行程序序,糾正被被測程序盡盡可能多的的錯誤C-E:可行性研研究和計劃劃需求分析析概要設(shè)計計詳細設(shè)計計實現(xiàn)集成測試試確認測測試使用和維維護答案:A.B.C.D.E.集成測試也也叫做(AA)或(B)。通常常,在(CC

57、)的基礎(chǔ)礎(chǔ)上,將所所有模塊按按照設(shè)計要要求組裝成成系統(tǒng)。子子系統(tǒng)的集集成測試特特別稱為(D),它所作的工作是要找出子系統(tǒng)和系統(tǒng)需求規(guī)格說明之間的(E)。需要考慮的問題是在把各個模塊連接起來的時候,穿越模塊接口的數(shù)據(jù)是否會(F);一個模塊的功能是否會對另一個模塊的功能產(chǎn)生不利的影響;各個(G)組合起來,能否達到預期要求的(H);(I)是否有問題;單個模塊的誤差累積起來是否會放大。供選擇的答答案:A-D:單元測試試部件測試試組裝測試試系統(tǒng)測測試確認測試試聯(lián)合測試試E-I:子功能丟失父功能局部數(shù)數(shù)據(jù)結(jié)構(gòu)全局數(shù)據(jù)據(jù)結(jié)構(gòu)不一致一致答案:A.B.C.D.E.F.G.H.I.軟件測試方方法可分為為黑盒測試試

58、和白盒測測試兩種。黑盒測試法法是通過分分析程序的的(A)來設(shè)計計測試用例例的方法。除了測試試程序外,它它還適用于于對(B)階段的的軟件文檔檔進行測試試。白盒測試法法是根據(jù)程程序的(CC)來設(shè)計計測試用例例的方法。除了測試試程序外,它它也適用于于對(D)階段的的軟件文檔檔進行測試試。白盒法測試試程序時常常按照給定定的覆蓋條條件選取測測試用例。(E)覆蓋比比(F)嚴格,它它使得每個個判定的每每條分支至至少經(jīng)歷一一次。(GG)覆蓋既既是判定覆覆蓋,又是是條件覆蓋蓋,但它并并不保證使使各種條件件都能取到到所有可能能的值。(H)覆蓋比其他條件都要嚴格,但它不能保證覆蓋程序中的每一條路徑。單元測試一一般以

59、(II)為主,測測試的依據(jù)據(jù)是(J)。供選擇的答答案:A、C:應(yīng)用范圍圍內(nèi)部邏輯輯功能輸入數(shù)據(jù)據(jù)B、D:編碼軟件詳細細設(shè)計軟件總體體設(shè)計需求分析析E、F、GG、H:語句判定條件判定/條件多重條件件路徑I:白盒盒法黑盒法J:模塊塊功能規(guī)格格說明系統(tǒng)模塊塊結(jié)構(gòu)圖系統(tǒng)需求求規(guī)格說明明答案:A.B.C.D.E.F.G.H.I.J.從下列關(guān)于于程序設(shè)計計風格和軟軟件測試的的敘述中,選選出5條正確的的敘述用黑盒法法測試時,測測試用例是是根據(jù)程序序內(nèi)部邏輯輯設(shè)計的。盡量用公公共過程或或子程序去去代替重復復的代碼段段。測試是為為了驗證該該軟件已正正確地實現(xiàn)現(xiàn)了用戶的的要求。對于連鎖鎖型分支結(jié)結(jié)構(gòu),若有有n個判

60、定語語句,則有有2n條路徑。盡量采用用復合的條條件測試,以以避免嵌套套的分支結(jié)結(jié)構(gòu)。GOTOO語句概念念簡單,使使用方便。在某些情情況下,保保留GOTTO語句反反能使寫出出的程序更更加簡潔。發(fā)現(xiàn)錯誤誤多的程序序模塊,殘殘留在模塊塊中的錯誤誤也多。黑盒測試試方法中最最有效的是是因果圖法法。在做程序序的單元測測試時,樁樁(存根)模模塊比驅(qū)動動模塊容易易編寫。程序效率率的提高主主要應(yīng)通過過選擇高效效的算法來來實現(xiàn)。答案:、調(diào)試軟件調(diào)試試是在進行行了成功的的測試之后后才開始的的工作。調(diào)試活動動由兩部分分組成:確定程序中中可疑錯誤誤的確切性性質(zhì)和位置置對程序(設(shè)設(shè)計、編碼碼)進行修修改,排除除這個錯誤誤

溫馨提示

  • 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

提交評論