




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
軟件工程試題整理
簡答題
1、可行性研究的任務(wù)是什么?
首先需要進行概要的分析研究,初步確定項目的規(guī)模和目標(biāo),確
定項目的約束和限制,把他們清楚地列舉出來。然后,分析員進行簡
要的需求分析,抽象出該項目的邏輯結(jié)構(gòu),建立邏輯模型。從邏輯模
型出發(fā),經(jīng)過壓縮的設(shè)計,探索出若干種可供選擇的主要解決方法,
對每種解決方法都要研究它的可行性,可從以下三個方面分析研究每
種解決方法的可行性。㈠技術(shù)可行性:對要開發(fā)項目的功能、性能、
限制條件進行分析,確定在現(xiàn)有的資源條件下,技術(shù)風(fēng)險有多大,項
目是否能實現(xiàn)。㈡經(jīng)濟可行性:進行開發(fā)成本的估算以及了解取得效
益的評估,確定要開發(fā)的項目是否值得投資開發(fā)。㈢社會可行性:要
開發(fā)的項目是否存在任何侵犯、妨礙等責(zé)任問題,要開發(fā)項目的運行
方式在用戶組織內(nèi)是否行得通,現(xiàn)有管理制度、人員素質(zhì)、操作方式
是否可行。
2、什么是模塊的影響范圍?什么是模塊的控制范圍?他們之間
應(yīng)該建立什么關(guān)系?
一個模塊的作用范圍(或稱影響范圍)指受該模塊內(nèi)一個判定影
響的所有模塊的集合。一個模塊的控制范圍指模塊本身以及其所有下
屬模塊(直接或間接從屬于它的模塊)的集合。一個模塊的作用范圍
應(yīng)在其控制范圍之內(nèi),且判定所在的模塊應(yīng)在其影響的模塊在層次上
盡量靠近。如果再設(shè)計過程中,發(fā)現(xiàn)模塊作用范圍不在其控制范圍之
內(nèi),可以用“上移判點”或“下移受判斷影響的模塊,將它下移到判
斷所在模塊的控制范圍內(nèi)”的方法加以改進。
3、非漸增式測試與漸增式測試有什么區(qū)別?漸增式測試如何組
裝模塊?
非漸增式測試與漸增式測試的測試方法有以下區(qū)別:(一)非漸增式
測試方法把單元測試和集成測試分成兩個不同的階段,前一階段完成
模塊的單元測試,后一階段完成集成測試。而漸增式測試往往把單元
測試與集成測試和在一起,同時完成。(二)非漸增式需要更多的工作量,
因為每個模塊都需要驅(qū)動模塊和樁模塊,而漸增式利用已測試過的模
塊作為驅(qū)動模塊或樁模塊,因此工作量較少。㈢漸增式可以較早的發(fā)
現(xiàn)接口之間的錯誤,非漸增式最后組裝是才發(fā)現(xiàn)。㈣漸增式有利于排
錯,發(fā)生錯誤往往和最近加進來的模塊有關(guān),而非漸增式發(fā)現(xiàn)接口錯
誤推遲到最后,很難判斷是哪一部分接口出錯。㈤漸增式比較徹底,
己測試的模塊和新的模塊再測試。集漸增式占用的時間較多,但非漸
增式須更多的驅(qū)動模塊、樁模塊也占用一些時間。(七)非漸增式開始可
并行測試所有模塊,能充分利用人力,對測試大型軟件很有意義。漸
增式測試有以下兩種不同的組裝模塊的方法:㈠自頂向下組合。該方
法只需編寫樁模塊,其步驟是從頂層模塊開始,沿被測程序的軟件結(jié)
構(gòu)圖的控制路徑逐步向下測試,從而把各個模塊都結(jié)合起來,它又有
兩種組合策略:①深度有先策略:先從軟件結(jié)構(gòu)中選擇一條主控制路
徑,把該路徑上的模塊一個個結(jié)合進來進行測試,以便完成一個特定
的子功能,接著再結(jié)合其它需要優(yōu)先考慮的路徑。②寬度有先策略:
逐層結(jié)合直接下屬的所有模塊。㈡自低向上結(jié)合。該方法僅需編寫驅(qū)
動模塊。其步驟為:①把底層模塊組合成實現(xiàn)一個個特定子功能的族。
②為每一個族編寫一個驅(qū)動模塊,以協(xié)調(diào)測試用例的輸入和測試結(jié)果
的輸出。③對模塊族進行測試。④按軟件結(jié)構(gòu)圖依次向上擴展,用實
際模塊替換驅(qū)動模塊,形成一個個更大的族。⑤重復(fù)②至④步,直至
軟件系統(tǒng)全部測試完畢。
4、軟件質(zhì)量與軟件質(zhì)量保證的含義是什么?
從實際應(yīng)用來說,軟件質(zhì)量定義為:㈠與所確定的功能和性能需
求的一致性。㈡與所成文的開發(fā)標(biāo)準一致性。㈢與所有專業(yè)開發(fā)的軟
件所期望的隱含特性的一致性。軟件質(zhì)量保證就是向用戶及社會提供
滿意的高質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從誕生到消亡為止的所有階段的
質(zhì)量的活動,即確定、達到和維護需要的軟件質(zhì)量而進行的所有有計
劃、有系統(tǒng)的管理活動。5、軟件工程標(biāo)準化的意義是什么?都有哪
些軟件工程標(biāo)準?積極推進軟件工程標(biāo)準化,其道理是顯而易見的。
僅就一個軟件開發(fā)項目來說,有許多層次,不同分工的人員相互配合,
在開發(fā)項目的各個部分以及各開發(fā)階段之間也都存在許多聯(lián)系和銜
接問題。如何把這些錯綜復(fù)雜的關(guān)系協(xié)調(diào)好,需要有一系列統(tǒng)一的約
束和規(guī)定。在軟件開發(fā)項目取得階段成果或最后完成是時,需要進行
階段評價和驗收測試。投入運行的軟件,其維護工作中遇到問題又與
開發(fā)工作者有著密切的關(guān)系。軟件的管理工作則滲透到軟件生存期的
每一個環(huán)節(jié)。所有這些都要要求提供統(tǒng)一的行動規(guī)范和衡量準則,使
得各種工作都有章可循。軟件工程的標(biāo)準主要有以下三個:(一)FIPS135
是美國國家標(biāo)準局發(fā)布的《軟件文檔管理指南》(DNSAC一—39是美
國核子安全分析中心發(fā)布的《安全參數(shù)顯示系統(tǒng)的驗證與確認》°㈢
ISO5807是國際標(biāo)準化組織公布(現(xiàn)已成為中國的國家標(biāo)準)的《信
息處理一數(shù)據(jù)流程圖、程序流程圖、程序網(wǎng)絡(luò)圖和系統(tǒng)資源圖的文件
編制符號及約定》。
5、需求分析階段的基本任務(wù)是什么?
需求分析階段的基本任務(wù)是要準確的定義新系統(tǒng)的目標(biāo),為了滿
足用戶需要,回答系統(tǒng)必須“做什么”的問題。本階段要進行以下幾
方面的工作:㈠問題識別。雙方確定對問題的綜合需求,這些需求包
括:功能需求、性能需求、環(huán)境需求、用戶界面需求,另外還有可靠
性、安全性、保密性、可移植性、可維護性等方面的需求。㈡分析與
綜合,導(dǎo)出軟件的邏輯模型。分析人員對獲取的需求,進行一致性的
分析檢查,在分析、綜合中逐步細化軟件功能,劃分成各個子功能。
這里也包括對數(shù)據(jù)域進行分解,并分配到各個子功能上,以確定系統(tǒng)
的構(gòu)成及主要成份,并用圖文結(jié)合的形式,建立起新系統(tǒng)的邏輯模型。
㈢編寫文檔。編寫“需求規(guī)格說明書”、編寫初步用戶使用手冊、編
寫確認測試計劃、修改完善軟件開發(fā)計劃。
6、采用黑盒技術(shù)設(shè)計測試用例有哪兒種方法?這些方法各有什
么特點?
㈠等價類劃分。
等價類劃分是將輸入數(shù)據(jù)域按有效的或無效的(也稱合理的或不
合理的)劃分成若干個等價類,測試每個等價類的代表值就等于對該
類其它值的測試。
㈡邊界值分析。
該方法是將測試邊界情況作為重點目標(biāo),選取正好等于,剛剛大
于或剛剛小于邊界值的情況,根據(jù)這些情況選擇測試用例。
㈢錯誤推測。
錯誤推測法沒有確定的步驟,憑檢驗進行。它的基本思想是列出
程序中可能發(fā)生錯誤的情況,根據(jù)這些情況選擇測試用例。
㈣因果圖。
因果圖能有效的檢測輸入條件的各種組合可能會引起的錯誤。因
果圖的基本原理是通過畫因果圖,把用自然語言描述的功能說明轉(zhuǎn)換
為判定表,最后為判定表的每一列設(shè)計一個測試用例。
7、說明動態(tài)建模的過程。
㈠準備腳本。
動態(tài)分析從尋找事件開始,然后確定各對象的可能事件的順序。
在分析階段不考慮算法的執(zhí)行,算法是實現(xiàn)模型的一部分。
㈡確定事件。
確定所有外部事件。事件包括所有來自或發(fā)往用戶的信息、外部
設(shè)備的信號、輸入、轉(zhuǎn)換和動作。
㈢準備事件跟蹤表。
把腳本表示成一個事件跟蹤表,對象為表中的列,給每一個對象
分配一個獨立的列c
㈣構(gòu)造狀態(tài)圖。
對各對象類建立狀態(tài)圖,反映對象接收和發(fā)送的事件,每個事件
跟蹤都對應(yīng)于狀態(tài)圖中一條路徑。
8、軟件生產(chǎn)經(jīng)歷了幾個階段?各有何特征?
軟件生產(chǎn)至今已經(jīng)歷了三個階段:(一)程序設(shè)計時代(1946-1956):
這個階段的生產(chǎn)方式是個體手工勞動,使用的工具實際其語言、匯編
語言。開發(fā)方法是追求編程技巧,追求程序運行效率。硬件特征是價
格貴、存儲容量小,運行可靠性差。軟件特征是只有程序、程序設(shè)計
概念,不重視程序設(shè)計方法。㈡程序系統(tǒng)時代(1956-1968):這個
階段的生產(chǎn)方式是作坊式的小集團合作生產(chǎn),生產(chǎn)工具是高級語言,
開發(fā)方法仍就靠個人技巧,但開始提出結(jié)構(gòu)化方法。硬件特征是速度、
容量、工作可靠性有明顯提高。軟件特征是程序員數(shù)量猛增,但開發(fā)
技術(shù)沒有新的突破,開發(fā)人員的素質(zhì)和落后的開發(fā)技術(shù)不適應(yīng)規(guī)模
大、結(jié)構(gòu)復(fù)雜的軟件開發(fā),導(dǎo)致軟件危機的產(chǎn)生。㈢軟件工程時代
(1968至今):這個階段的生產(chǎn)方式是工程化的生產(chǎn),使用數(shù)據(jù)庫、
開發(fā)工具、開發(fā)環(huán)境、網(wǎng)絡(luò)、分布式、面向?qū)ο蠹夹g(shù)來開發(fā)軟件,硬
件特征是向超高速、大容量、微型化以及網(wǎng)絡(luò)化方向發(fā)展。軟件特征
是開發(fā)技術(shù)有很大進步,但是未能獲得突破性進展,軟件價格不斷上
升,沒有完全擺脫軟件危機。5、簡述Gantt圖的功能及不足。Gantt
圖常用水平線段來描述把任務(wù)分解成子任務(wù),以及每個子任務(wù)的進度
安排,動態(tài)反映軟件開發(fā)進度情況,該圖可以:表示任務(wù)分解成子任
務(wù)情況;表示每個任務(wù)的開始時間和完成時間,線段的長度表不子任
務(wù)完成所需要的時間;表示子任務(wù)之間的并行和串行關(guān)系。Gantt圖
只能表示任務(wù)之間的并行與串行的關(guān)系,難以反映多個任務(wù)之間存在
的復(fù)雜關(guān)系,不能直觀表示任務(wù)之間相互依賴制約關(guān)系,以及哪些任
務(wù)是關(guān)鍵字任務(wù)等信息,因此僅僅用Gantt圖作為進度的安排是不夠
的。6、什么是數(shù)據(jù)字典?其作用是什么?它有哪些條目?數(shù)據(jù)字典
(簡稱DD)是用來定義數(shù)據(jù)流圖中的各個成分的具體含義的,它以
一種準確的、無二義性的說明方式為系統(tǒng)的分析、設(shè)計及維護提供了
有關(guān)元素的一致的定義和詳細的描述。他和數(shù)據(jù)流圖共同構(gòu)成了系統(tǒng)
的邏輯模型,是需求規(guī)格說明書的主要組成部分。數(shù)據(jù)字典是為分析
人員查找數(shù)據(jù)流圖中有關(guān)名字的詳細定義而服務(wù)的,因此也像普通字
典一樣,要把所有條目按一定的次序排列起來,以便查閱。數(shù)據(jù)字典
有以下四類條目:數(shù)據(jù)流、數(shù)據(jù)項、數(shù)據(jù)存儲、基本加工。數(shù)據(jù)項是
組成數(shù)據(jù)流和數(shù)據(jù)存儲的最小元素。源點、終點不在系統(tǒng)之內(nèi),故一
般不在字典中說明c7、調(diào)試的目的是什么?調(diào)試有哪些技術(shù)手段?
調(diào)試的目的是確定錯誤的原因和位置,并改正錯誤,因此調(diào)試也成為
糾錯。調(diào)試技術(shù)主要有:簡單的調(diào)試方法,主要有在程序中插入打印
語句、運行部分程序等;歸納法調(diào)試,他從測試結(jié)果發(fā)現(xiàn)的線索(錯
誤跡象、征兆)入手、分析他們之間的聯(lián)系,導(dǎo)處錯誤原因的假設(shè),
然后再證明或否定這個假設(shè);演繹法調(diào)試,該方法列出所有可能的錯
誤原因的假設(shè),然后利用測試數(shù)據(jù)排除不適當(dāng)?shù)募僭O(shè),最后再測試數(shù)
據(jù)驗證余下的假設(shè)確實是出錯的原因;回溯法調(diào)試,該方法從程序產(chǎn)
生錯誤的地方出發(fā),人工沿程序的邏輯路徑反向搜索,直到找到錯誤
的原因為止。
9、如何做好軟件質(zhì)量保證工作?
軟件質(zhì)量保證工作是軟件工程管理的重要內(nèi)容,軟件質(zhì)量保證應(yīng)
做好以下幾個方面的工作:<1>采用技術(shù)手段和工具。質(zhì)量保證活動
要貫徹開發(fā)過程始終,必須從采用技術(shù)手段和工具,尤其是使用軟件
開發(fā)環(huán)境來進行軟件開發(fā)。<2>組織正式技術(shù)評審,在軟件開發(fā)的第
一個階段結(jié)束時,都要組織正式的技術(shù)評審。國家標(biāo)準要求單位必須
采用審查、文檔評審、設(shè)計評審、審計和測試等具體手段來保證質(zhì)量。
<3>加強軟件測試。軟件測試是質(zhì)量保證的重要手段,因為測試可發(fā)
現(xiàn)軟件可發(fā)現(xiàn)軟件中大多數(shù)潛在錯誤。<4>推選軟件工程規(guī)范(標(biāo)準)。
用戶可以自己指定軟件工程規(guī)范(標(biāo)準),但標(biāo)準一旦確認就應(yīng)貫徹
執(zhí)行。<5>對軟件的變更進行控制。軟件的修改和變更常常會引起潛
伏的錯誤,因此必須嚴格控制軟件的修改和變更。<6>對軟件質(zhì)量進
行度量。即對軟件質(zhì)量進行跟蹤,及時記錄和報告軟件質(zhì)量情況。
10、什么是數(shù)據(jù)流圖?其作用是什么?
其中的基本符號各表示什么含義?數(shù)據(jù)流圖簡稱DFD,是SA方
法中用于表示系統(tǒng)邏輯模型的一種工具。它以圖形的方式描述數(shù)據(jù)在
系統(tǒng)中流動和處理的過程,由十它只反映系統(tǒng)必須完成的邏輯功能,
所以它是一種功能模型。數(shù)據(jù)流圖有四種基本圖形符號:“一”箭頭
表示數(shù)據(jù)流;“O”圓或橢圓表述加工;“二”雙杠表示數(shù)據(jù)存儲;
方框表示數(shù)據(jù)的源點或終點。
11、可行性研究的任務(wù)是什么?
首先需要進行概要的分析研究,初步確定項目的規(guī)模和目標(biāo),確
定項目的約束和限制,把他們清楚地列舉出來。然后,分析員進行簡
要的需求分析,抽象出該項目的邏輯結(jié)構(gòu),建立邏輯模型。從邏輯模
型出發(fā),經(jīng)過壓縮的設(shè)計,探索出若干種可供選擇的主要解決方法,
對每種解決方法都要研究它的可行性,可從以下三個方面分析研究每
種解決方法的可行性。㈠技術(shù)可行性:對要開發(fā)項目的功能、性能、
限制條件進行分析,確定在現(xiàn)有的資源條件下,技術(shù)風(fēng)險有多大,項
目是否能實現(xiàn)。㈡經(jīng)濟可行性:進行開發(fā)成本的估算以及了解取得效
益的評估,確定要開發(fā)的項目是否值得投資開發(fā)。㈢社會可行性:要
開發(fā)的項目是否存在任何侵犯、妨礙等責(zé)任問題,要開發(fā)項目的運行
方式在用戶組織內(nèi)是否行得通,現(xiàn)有管理制度、人員素質(zhì)、操作方式
是否可行。
12、什么是模塊的影響范圍?什么是模塊的控制范圍?他們之間
應(yīng)該建立什么關(guān)系?
一個模塊的作用范圍(或稱影響范圍)指受該模塊內(nèi)一個判定影
響的所有模塊的集合。一個模塊的控制范圍指模塊本身以及其所有下
屬模塊(直接或間接從屬于它的模塊)的集合。一個模塊的作用范圍
應(yīng)在其控制范圍之內(nèi),且判定所在的模塊應(yīng)在其影響的模塊在層次上
盡量靠近。如果再設(shè)計過程中,發(fā)現(xiàn)模塊作用范圍不在其控制范圍之
內(nèi),可以用“上移判點”或“下移受判斷影響的模塊,將它下移到判
斷所在模塊的控制范圍內(nèi)”的方法加以改進。
13、非漸增式測試與漸增式測試有什么區(qū)別?漸增式測試如何組
裝模塊?
非漸增式測試與漸增式測試的測試方法有以下區(qū)別:(一)非漸增式
測試方法把單元測試和集成測試分成兩個不同的階段,前一階段完成
模塊的單元測試,后一階段完成集成測試。而漸增式測試往往把單元
測試與集成測試和在一起,同時完成。(二)非漸增式需要更多的工作量,
因為每個模塊都需要驅(qū)動模塊和樁模塊,而漸增式利用已測試過的模
塊作為驅(qū)動模塊或樁模塊,因此工作量較少。㈢漸增式可以較早的發(fā)
現(xiàn)接口之間的錯誤,非漸增式最后組裝是才發(fā)現(xiàn)。㈣漸增式有利于排
錯,發(fā)生錯誤往往和最近加進來的模塊有關(guān),而非漸增式發(fā)現(xiàn)接口錯
誤推遲到最后,很難判斷是哪一部分接口出錯。㈤漸增式比較徹底,
已測試的模塊和新的模塊再測試。(六)漸增式占用的時間較多,但非漸
增式須更多的驅(qū)動模塊、樁模塊也占用一些時間。(七)非漸增式開始可
并行測試所有模塊,能充分利用人力,對測試大型軟件很有意義。漸
增式測試有以下兩種不同的組裝模塊的方法:㈠自頂向下組合。該方
法只需編寫樁模塊,其步驟是從頂層模塊開始,沿被測程序的軟件結(jié)
構(gòu)圖的控制路徑逐步向下測試,從而把各個模塊都結(jié)合起來,它又有
兩種組合策略:①深度有先策略:先從軟件結(jié)構(gòu)中選擇一條主控制路
徑,把該路徑上的模塊一個個結(jié)合進來進行測試,以便完成一個特定
的子功能,接著再結(jié)合其它需要優(yōu)先考慮的路徑。②寬度有先策略:
逐層結(jié)合直接下屬的所有模塊。㈡自低向上結(jié)合。該方法僅需編寫驅(qū)
動模塊。其步驟為:①把底層模塊組合成實現(xiàn)一個個特定子功能的族。
②為每一個族編寫一個驅(qū)動模塊,以協(xié)調(diào)測試用例的輸入和測試結(jié)果
的輸出。③對模塊族進行測試。④按軟件結(jié)構(gòu)圖依次向上擴展,用實
際模塊替換驅(qū)動模塊,形成一個個更大的族。⑤重復(fù)②至④步,直至
軟件系統(tǒng)全部測試完畢。
14、軟件質(zhì)量與軟件質(zhì)量保證的含義是什么?
從實際應(yīng)用來說,軟件質(zhì)量定義為:㈠與所確定的功能和性能需
求的一致性。(一)與所成文的開發(fā)標(biāo)準一致性。㈢與所有專業(yè)開發(fā)的軟
件所期望的隱含特性的一致性。軟件質(zhì)量保證就是向用戶及社會提供
滿意的高質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從誕生到消亡為止的所有階段的
質(zhì)量的活動,即確定、達到和維護需要的軟件質(zhì)量而進行的所有有計
劃、有系統(tǒng)的管理活動。5、軟件工程標(biāo)準化的意義是什么?都有哪
些軟件工程標(biāo)準?積極推進軟件工程標(biāo)準化,其道理是顯而易見的。
僅就一個軟件開發(fā)項目來說,有許多層次,不同分工的人員相互配合,
在開發(fā)項目的各個部分以及各開發(fā)階段之間也都存在許多聯(lián)系和銜
接問題。如何把這些錯綜復(fù)雜的關(guān)系協(xié)調(diào)好,需要有一系列統(tǒng)一的約
束和規(guī)定。在軟件開發(fā)項目取得階段成果或最后完成是時,需要進行
階段評價和驗收測試。投入運行的軟件,其維護工作中遇到問題又與
開發(fā)工作者有著密切的關(guān)系。軟件的管理工作則滲透到軟件生存期的
每一個環(huán)節(jié)。所有這些都要要求提供統(tǒng)一的行動規(guī)范和衡量準則,使
得各種工作都有章可循。軟件工程的標(biāo)準主要有以下三個:(一)FIPS135
是美國國家標(biāo)準局發(fā)布的《軟件文檔管理指南》㈡NSAC——39是美
國核子安全分析中心發(fā)布的《安全參數(shù)顯示系統(tǒng)的驗證與確認》°㈢
ISO5807是國際標(biāo)準化組織公布(現(xiàn)已成為中國的國家標(biāo)準)的《信
息處理一數(shù)據(jù)流程圖、程序流程圖、程序網(wǎng)絡(luò)圖和系統(tǒng)資源圖的文件
編制符號及約定》。
15、需求分析階段的基本任務(wù)是什么?
需求分析階段的基本任務(wù)是要準確的定義新系統(tǒng)的目標(biāo),為了滿
足用戶需要,回答系統(tǒng)必須“做什么”的問題。本階段要進行以下幾
方面的工作:㈠問題識別。雙方確定對問題的綜合需求,這些需求包
括:功能需求、性能需求、環(huán)境需求、用戶界面需求,另外還有可靠
性、安全性、保密性、可移植性、可維護性等方面的需求。㈡分析與
綜合,導(dǎo)出軟件的邏輯模型。分析人員對獲取的需求,進行一致性的
分析檢查,在分析、綜合中逐步細化軟件功能,劃分成各個子功能。
這里也包括對數(shù)據(jù)域進行分解,并分配到各個子功能上,以確定系統(tǒng)
的構(gòu)成及主要成份,并用圖文結(jié)合的形式,建立起新系統(tǒng)的邏輯模型。
㈢編寫文檔。編寫“需求規(guī)格說明書”、編寫初步用戶使用手冊、編
寫確認測試計劃、修改完善軟件開發(fā)計劃。
16、采用黑盒技術(shù)設(shè)計測試用例有哪兒種方法?這些方法各有什
么特點?
㈠等價類劃分。等價類劃分是將輸入數(shù)據(jù)域按有效的或無效的(也稱
合理的或不合理的)劃分成若干個等價類,測試每個等價類的代表值
就等于對該類其它值的測試。㈡邊界值分析。該方法是將測試邊界情
況作為重點目標(biāo),選取正好等于,剛剛大于或剛剛小于邊界值的情況,
根據(jù)這些情況選擇測試用例。㈢錯誤推測。錯誤推測法沒有確定的步
驟,憑檢驗進行。它的基本思想是列出程序中可能發(fā)生錯誤的情況,
根據(jù)這些情況選擇測試用例。㈣因果圖。因果圖能有效的檢測輸入條
件的各種組合可能會引起的錯誤。因果圖的基本原理是通過畫因果
圖,把用自然語言描述的功能說明轉(zhuǎn)換為判定表,最后為判定表的每
一列設(shè)計一個測試用例。
17、說明動態(tài)建模的過程。
㈠準備腳本。動態(tài)分析從尋找事件開始,然后確定各對象的可能
事件的順序。在分析階段不考慮算法的執(zhí)行,算法是實現(xiàn)模型的一部
分。㈡確定事件。確定所有外部事件。事件包括所有來自或發(fā)往用戶
的信息、外部設(shè)備的信號、輸入、轉(zhuǎn)換和動作。㈢準備事件跟蹤表。
把腳本表示成一個事件跟蹤表,對象為表中的列,給每一個對象分配
一個獨立的列。㈣構(gòu)造狀態(tài)圖。對各對象類建立狀態(tài)圖,反映對象接
收和發(fā)送的事件,每個事件跟蹤都對應(yīng)于狀態(tài)圖中一條路徑。
18、軟件生產(chǎn)經(jīng)歷了幾個階段?各有何特征?
軟件生產(chǎn)至今已經(jīng)歷了三個階段:㈠程序設(shè)計時代(1946-1956):
這個階段的生產(chǎn)方式是個體手工勞動,使用的工具實際其語言、匯編
語言。開發(fā)方法是追求編程技巧,追求程序運行效率。硬件特征是價
格貴、存儲容量小,運行可靠性差。軟件特征是只有程序、程序設(shè)計
概念,不重視程序設(shè)計方法。㈡程序系統(tǒng)時代(1956-1968):這個
階段的生產(chǎn)方式是作坊式的小集團合作生產(chǎn),生產(chǎn)工具是高級語言,
開發(fā)方法仍就靠個人技巧,但開始提出結(jié)構(gòu)化方法。硬件特征是速度、
容量、工作可靠性有明顯提高。軟件特征是程序員數(shù)量猛增,但開發(fā)
技術(shù)沒有新的突破,開發(fā)人員的素質(zhì)和落后的開發(fā)技術(shù)不適應(yīng)規(guī)模
大、結(jié)構(gòu)復(fù)雜的軟件開發(fā),導(dǎo)致軟件危機的產(chǎn)生。㈢軟件工程時代
(1968至今):這個階段的生產(chǎn)方式是工程化的生產(chǎn),使用數(shù)據(jù)庫、
開發(fā)工具、開發(fā)環(huán)境、網(wǎng)絡(luò)、分布式、面向?qū)ο蠹夹g(shù)來開發(fā)軟件,硬
件特征是向超高速、大容量、微型化以及網(wǎng)絡(luò)化方向發(fā)展。軟件特征
是開發(fā)技術(shù)有很大進步,但是未能獲得突破性進展,軟件價格不斷上
升,沒有完全擺脫軟件危機。5、簡述Gantt圖的功能及不足。Gantt
圖常用水平線段來描述把任務(wù)分解成子任務(wù),以及每個子任務(wù)的進度
安排,動態(tài)反映軟件開發(fā)進度情況,該圖可以:表示任務(wù)分解成子任
務(wù)情況;表示每個任務(wù)的開始時間和完成時間,線段的長度表示子任
務(wù)完成所需要的時間;表示子任務(wù)之間的并行和串行關(guān)系。Gantt圖
只能表示任務(wù)之間的并行與串行的關(guān)系,難以反映多個任務(wù)之間存在
的復(fù)雜關(guān)系,不能直觀表示任務(wù)之間相互依賴制約關(guān)系,以及哪些任
務(wù)是關(guān)鍵字任務(wù)等信息,因此僅僅用Gantt圖作為進度的安排是不夠
的。6、什么是數(shù)據(jù)字典?其作用是什么?它有哪些條目?數(shù)據(jù)字典
(簡稱DD)是用來定義數(shù)據(jù)流圖中的各個成分的具體含義的,它以
一種準確的、無二義性的說明方式為系統(tǒng)的分析、設(shè)計及維護提供了
有關(guān)元素的一致的定義和詳細的描述。他和數(shù)據(jù)流圖共同構(gòu)成了系統(tǒng)
的邏輯模型,是需求規(guī)格說明書的主要組成部分。數(shù)據(jù)字典是為分析
人員查找數(shù)據(jù)流圖中有關(guān)名字的詳細定義而服務(wù)的,因此也像普通字
典一樣,要把所有條目按一定的次序排列起來,以便查閱。數(shù)據(jù)字典
有以下四類條目:數(shù)據(jù)流、數(shù)據(jù)項、數(shù)據(jù)存儲、基本加工。數(shù)據(jù)項是
組成數(shù)據(jù)流和數(shù)據(jù)存儲的最小元素。源點、終點不在系統(tǒng)之內(nèi),故一
般不在字典中說明,7、調(diào)試的目的是什么?調(diào)試有哪些技術(shù)手段?
調(diào)試的目的是確定錯誤的原因和位置,并改正錯誤,因此調(diào)試也成為
糾錯。調(diào)試技術(shù)主要有:簡單的調(diào)試方法,主要有在程序中插入打印
語句、運行部分程序等;歸納法調(diào)試,他從測試結(jié)果發(fā)現(xiàn)的線索(錯
誤跡象、征兆)入手、分析他們之間的聯(lián)系,導(dǎo)處錯誤原因的假設(shè),
然后再證明或否定這個假設(shè);演繹法調(diào)試,該方法列出所有可能的錯
誤原因的假設(shè),然后利用測試數(shù)據(jù)排除不適當(dāng)?shù)募僭O(shè),最后再測試數(shù)
據(jù)驗證余下的假設(shè)確實是出錯的原因;回溯法調(diào)試,該方法從程序產(chǎn)
生錯誤的地方出發(fā),人工沿程序的邏輯路徑反向搜索,直到找到錯誤
的原因為止。
19、如何做好軟件質(zhì)量保證工作?
軟件質(zhì)量保證工作是軟件工程管理的重要內(nèi)容,軟件質(zhì)量保證應(yīng)
做好以下幾個方面的工作:<1>采用技術(shù)手段和工具。質(zhì)量保證活動
要貫徹開發(fā)過程始終,必須從采用技術(shù)手段和工具,尤其是使用軟件
開發(fā)環(huán)境來進行軟件開發(fā)。<2>組織正式技術(shù)評審,在軟件開發(fā)的第
一個階段結(jié)束時,都要組織正式的技術(shù)評審。國家標(biāo)準要求單位必須
采用審查、文檔評審、設(shè)計評審、審計和測試等具體手段來保證質(zhì)量。
<3>加強軟件測試。軟件測試是質(zhì)量保證的重要手段,因為測試可發(fā)
現(xiàn)軟件可發(fā)現(xiàn)軟件中大多數(shù)潛在錯誤。<4>推選軟件工程規(guī)范(標(biāo)準)。
用戶可以自己指定軟件工程規(guī)范(標(biāo)準),但標(biāo)準一旦確認就應(yīng)貫徹
執(zhí)行。<5>對軟件的變更進行控制。軟件的修改和變更常常會引起潛
伏的錯誤,因此必須嚴格控制軟件的修改和變更。<6>對軟件質(zhì)量進
行度量。即對軟件質(zhì)量進行跟蹤,及時記錄和報告軟件質(zhì)量情況。
20、什么是數(shù)據(jù)流圖?其作用是什么?
其中的基本符號各表示什么含義?數(shù)據(jù)流圖簡稱DFD,是SA方
法中用于表示系統(tǒng)邏輯模型的一種工具。它以圖形的方式描述數(shù)據(jù)在
系統(tǒng)中流動和處理的過程,由于它只反映系統(tǒng)必須完成的邏輯功能,
所以它是一種功能模型。數(shù)據(jù)流圖有四種基本圖形符號:“一”箭頭
表示數(shù)據(jù)流;“O”圓或橢圓表述加工;“二”雙杠表示數(shù)據(jù)存儲;
方框表示數(shù)據(jù)的源點或終點。
21、什么是確認測試?該階段有哪些工作?
確認測試又稱有效性測試。它的任務(wù)是檢查軟件的功能與性能是
否與需求規(guī)格說明書中確定的指標(biāo)相符合。確認測試階段有兩項工
作,進行確認測試與軟件配置審查。<1>確認測試一般是在模擬環(huán)境
中運用黑盒測試方法,由專門測試人員和用戶參加的測試。<2>軟件
配置審查的任務(wù)是檢查軟件的所有文檔資料的完整性、止確性。如果
發(fā)現(xiàn)遺漏和錯誤,應(yīng)補充和改正,同時要編排好目錄,為以后的軟件
維護工作奠定基礎(chǔ)。
22、詳細設(shè)計的基本任務(wù)是什么?有哪幾種描述方法?
詳細設(shè)計是軟件設(shè)計的第二階段,其基本任務(wù)有:為每個模塊進
行詳細的算法設(shè)計;為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進行設(shè)計;對數(shù)據(jù)庫進行物
理設(shè)計,即確定數(shù)據(jù)庫的物理結(jié)構(gòu);其它設(shè)計,根據(jù)軟件系統(tǒng)類型,
還可能要進行代碼設(shè)計、輸入/輸出格式設(shè)計、人機對話設(shè)計;編寫
詳細設(shè)計說明書;評審。詳細描述處理過程常用三種工具:圖形、表
格和語言。如結(jié)構(gòu)化程序流程圖、盒圖和問題分析圖。IPO圖也是詳
細設(shè)計的主要工具之一。表格工具如判定表可作為詳細設(shè)計中描述邏
輯條件復(fù)雜的算法c過程設(shè)計語言(PDL)是一種用于描述模塊算法
設(shè)計和處理細節(jié)的語言工具。5、什么是軟件危機?其產(chǎn)生的原因是
什么?當(dāng)軟件開發(fā)技術(shù)的進步不能跟上硬件技術(shù)的進步,未能滿足發(fā)
展的要求,致軟件開發(fā)中遇到的問題找不到解決的辦法,使問題積累
起來,形成了尖銳的矛盾,因而導(dǎo)致了軟件危機。主要表現(xiàn)為:
經(jīng)費預(yù)算經(jīng)常突破,完成時間一再拖延;<2>開發(fā)的軟件不能滿足用
戶要求;<3>開發(fā)的軟件可維護性差;<4>開發(fā)的軟件可靠性差。造成
軟件危機的原因是由于軟件產(chǎn)品本身的特點以及開發(fā)軟件的方式、方
法、技術(shù)和人員引起的。共產(chǎn)生原因主要有以下幾方面:<1>軟件的
規(guī)模越來越大,結(jié)構(gòu)越來越復(fù)雜;<2>軟件開發(fā)管理困難而復(fù)雜;<3>
軟件開發(fā)費用不斷增加;<4>軟件開發(fā)技術(shù)落后;<5>生產(chǎn)方式落后;
<6>開發(fā)工具落后,生產(chǎn)率提高緩慢。6、CASE工作臺有哪些分類?
一個CASE工作臺是一組工具集,支持像設(shè)計、實現(xiàn)或測試等特定的
軟件開發(fā)階段。工作臺工具能通過共享文件、共享倉庫或共享數(shù)據(jù)結(jié)
構(gòu)來集成。它能支持大多數(shù)的軟件過程活動。工作臺有:程序設(shè)
計工作臺;<2>分析和設(shè)計工作臺;<3>測試工作臺;<4>交叉開發(fā)工
作臺;<5>配置管理(CM)工作臺;<6>文檔工作臺<7>項目管理工作
臺。7、IDEFO方法有什么特點?<1>采用方框和箭頭等簡單的圖形符
號描述系統(tǒng)的活動和數(shù)據(jù)流,描述活動所受到的約束條件及實現(xiàn)機
制。從側(cè)面清楚的反映了系統(tǒng)的功能。故IDEFO圖宜全為正式文檔。
<2>采用嚴格的自頂向下、逐層分解的方式建立系統(tǒng)功能模型。頂層
確定系統(tǒng)范圍,采用抽象原則,然后有控制的逐步展開有關(guān)活動的細
節(jié),符合SA方法的分析策略。同時,IDEFO規(guī)定每張圖至少有3個、
最多有6個方框,上界6保證采用層次性描述復(fù)雜問題的可理解性,
下界3保證分解有意義。
23、軟件維護的特點是什么?
主要體現(xiàn)在三個方面:<1>非結(jié)構(gòu)化維護和結(jié)構(gòu)化維護。軟件的
開發(fā)過程對軟件的維護有很大的影響。若不采用軟件工程的方法開發(fā)
軟件,則軟件只有程序而無文檔,維護工作非常困難,這是一種非結(jié)
構(gòu)化的維護。若采用軟件工程的方法開發(fā)軟件,則各階段都有相應(yīng)的
文檔,容易進行維護工作,這是一種結(jié)構(gòu)化的維護。<2>維護的困難
性。軟件維護的困難性是由于軟件需求分析和開發(fā)方法的缺陷。軟件
生存周期中的開發(fā)階段沒有嚴格而有科學(xué)的管理和規(guī)劃,就會引起軟
件運行時的維護困難。<3>軟件維護的費用。軟件維護的費用在息費
用中的比重是在不斷增加的,這是軟件維護有形的代價。另外還有無
形的代價,即要占用更多的資源。軟件維護費用增加的主要原因是軟
件維護的生產(chǎn)率非常低。
24、什么是CASE?CASE工具有哪些分類?
CASE是一組工具和方法的集合,可以輔助軟件開發(fā)生命周期各
階段進行軟件開發(fā)c從學(xué)術(shù)研究角度講,CASE是多年來在軟件開發(fā)
管理、軟件開發(fā)方法、軟件開發(fā)環(huán)境和軟件工具等方面研究和發(fā)展的
產(chǎn)物。CASE把軟件開發(fā)技術(shù)、軟件工具和軟件開發(fā)方法集成到一個
統(tǒng)一而一致的框架中,并且吸引了CAD(計算機輔助設(shè)計)、軟件工
程、操作系統(tǒng)、數(shù)據(jù)庫、網(wǎng)絡(luò)和許多其它計算機領(lǐng)域的原理和技術(shù)。
因而,CASE領(lǐng)域是一個應(yīng)用集成和綜合的領(lǐng)域。從產(chǎn)業(yè)角度講,CASE
是種類繁多的軟件開發(fā)和系統(tǒng)集成的產(chǎn)品及軟件工具的集合。CASE
分類:<1>CASE技術(shù)種類CASE系統(tǒng)所涉及到的技術(shù)有兩類:一類是
支持軟件開發(fā)過程本身的技術(shù);另一類是支持軟件開發(fā)過程管理的技
術(shù)。從CASE系統(tǒng)產(chǎn)生方式來看,還有一種特殊的CASE技術(shù),即元一
一CASE技術(shù)。他是生成CASE系統(tǒng)的生成器所采用的技術(shù)。該生成器
可用來創(chuàng)建支持軟件開發(fā)過程活動及過程管理的CASE系統(tǒng)。<2〉CASE
工具的分類對CASE工具分類的標(biāo)準可分為:①功能。功能是對軟件
進行分類的最常用的標(biāo)準。②支持的過程c根據(jù)支持的過程,工具可
分為設(shè)計工具、編程工具、維護工具等。③支持的范圍。根據(jù)支持的
范圍,可分為窄支持、較寬支持和一般支持工具。窄支持指支持過程
中特定的任務(wù),較寬支持是指支持特定過程階段;一般支持是指支持
覆蓋軟件過程的全部階段或大多數(shù)階段。1993年,F(xiàn)uggetta根據(jù)CASE
系統(tǒng)對軟件過程的支持范圍,提出CASE系統(tǒng)可分為三類:①支持單
個過程任務(wù)的工具。工具可能是通用的,或者也可能歸組到工作臺。
②工作臺支持某一過程所有活動或某些活動。他們一般以或多或少的
集成度組成工具集。③環(huán)境支持軟件過程所有活動或至少大部分。他
們一般包括幾個不同的工作臺,將這些工作臺以某種方式集成起來。
25、說明容錯軟件的定義與容錯的一般方法。
歸納容錯軟件的定義,有以下四種:⑴規(guī)定功能的軟件,在一定
程序上對自身錯誤的作用(軟件錯誤)具有屏蔽能力,則稱此軟件為
具有容錯功能的軟件。⑵規(guī)定功能的軟件,在一定程序上能從錯誤狀
態(tài)自動恢復(fù)到正常狀態(tài),則稱之為容錯軟件。⑶規(guī)定功能的軟件,在
因錯誤而發(fā)生錯誤時,仍然能在一定程度上完成預(yù)期的功能,則把該
軟件稱為容錯軟件。⑷規(guī)定功能的軟件,在一定程度上具有容錯能力,
則稱之為容錯軟件。實現(xiàn)容錯技術(shù)的主要手段是冗余,通常冗余技術(shù)
分為四類。⑴結(jié)構(gòu)冗余。結(jié)構(gòu)冗余是通常用的冗余技術(shù)。按其工作方
式,它分為靜態(tài)、動態(tài)和混合冗余三種。⑵信息冗余。為檢查或糾正
信息在運算或傳輸中的錯誤須外加一部分信息,這種現(xiàn)象稱為信息冗
余。⑶時間冗余。是指以重復(fù)執(zhí)行指令(指令復(fù)執(zhí))或程序(程序復(fù)
算)來消除瞬時錯誤帶來的影響。⑷冗余附加技術(shù)。是指為實現(xiàn)上述
冗余技術(shù)所需的資源和技術(shù)。包括程序、指令、數(shù)據(jù)、存放和調(diào)動他
們的空間和通道等。
26、軟件概要設(shè)計階段的基本任務(wù)是什么?
⑴設(shè)計軟件系統(tǒng)結(jié)構(gòu)(簡稱軟件結(jié)構(gòu)),具體為:①采用某種設(shè)
計方法,將一個復(fù)雜的系統(tǒng)按功能劃分成模塊。②確定每個模塊的功
能。③確定模塊之間的調(diào)用關(guān)系。④確定模塊之間的接口,即模塊之
間傳遞的信息。⑤評價模塊結(jié)構(gòu)的質(zhì)量。⑵數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫設(shè)計,
漢數(shù)據(jù)結(jié)構(gòu)的設(shè)計及數(shù)據(jù)庫的設(shè)計。⑶編寫概要設(shè)計文檔。主要有:
概要設(shè)計說明書;數(shù)據(jù)庫設(shè)計說明書;用戶手冊;修訂測試計劃。⑷
評審。5、快速原型模型有幾種?各有何特點?根據(jù)原型的不同作用,
有三類原型模型:⑴探索型原型。這種類型的原型模型是把原型用于
開發(fā)的需求分析階段,目的是要弄清用戶的需求,確定所期望的特性,
并探索各種方案的可行性。它主要針對開發(fā)目標(biāo)模糊,用戶與開發(fā)著
對項目都缺乏經(jīng)驗的情況,通過對原型的開發(fā)來明確用戶的需求。⑵
實驗型原型。這種原型主要用于設(shè)計階段,考核實現(xiàn)方案是否合適,
能否實現(xiàn),對于一個大型系統(tǒng),若對設(shè)計方案心中沒有把握時,可通
過這種原型來證實設(shè)計方案的正確性。⑶演化型原型。這種原型主要
用于及早向用戶提交一個原型系統(tǒng),該原型系統(tǒng)或者包含系統(tǒng)的框或
者包含系統(tǒng)的主要功能。在得到用戶的認可后,將原型系統(tǒng)不斷擴充
演變?yōu)樽罱K的軟件系統(tǒng),它將原型的思路擴展到軟件開發(fā)的全過程。
27、在劃分軟件生存周期階段時,應(yīng)遵循的基本原則是什么?
軟件生存周期的各個階段有不同的劃分。軟件規(guī)模、種類、開發(fā)
方式、開發(fā)環(huán)境以及開發(fā)使用方法都影響軟件生存周期的劃分。在劃
分軟件生存周期階段時.,應(yīng)遵循的一條基本原則是各階段的任務(wù)應(yīng)盡
可能相對獨立,同一階段各項目任務(wù)的性質(zhì)盡可能相同,從而降低每
個階段任務(wù)的復(fù)雜程度,簡化不同階段之間的聯(lián)系,有利于軟件項目
開發(fā)的組織管理。
28、請說明軟件文檔的作用?
軟件開發(fā)項目生存期各階段都包含哪些文檔?軟件文檔的作用
是:提高軟件開發(fā)過程的能見度;提高開發(fā)效率;作為開發(fā)人員階段
工作成果和結(jié)束標(biāo)志;記錄開發(fā)過程的有關(guān)信息便于使用與維護;提
供軟件運行、維護和培訓(xùn)有關(guān)資料;便于用戶了解軟件功能、性能。
軟件開發(fā)項目生存期各階段應(yīng)包括得文檔以及與各類人員的關(guān)系如
下:可行性研究報告、項目開發(fā)計?劃、軟件需求說明書、數(shù)據(jù)要求說
明書、測試計戈上概要設(shè)計說明書、詳細設(shè)計說明書、用戶手冊、操
作手冊、測試分析報告、開發(fā)進度月報、項目開發(fā)總結(jié)、程序維護手
冊(維護修改建議)。
29、軟件開發(fā)成木估算方法有哪幾種?
<1>自頂向下估算方法。估算人員參照以前完成的項目所耗費的
總成本(或總工作量),來推算將要開發(fā)的軟件的總成本(或總工作
量),然后把它們按階段、步驟和工作單元進行分配,這樣方法稱為
自頂向下的估算方法。<2〉自底向上估算方法。
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲管理保密協(xié)議書
- 長期合作廣告協(xié)議書
- 2025年新疆維吾爾自治區(qū)喀什地區(qū)中考三模英語試題
- 河北單招政治法律試題及答案
- 解析Delphi常見錯誤與試題及答案
- 高三計算機應(yīng)用考試題及答案
- 社會影響2025年稅法考試試題及答案
- 法律綜合知識試題及答案
- MySQL外鍵約束試題及答案分析
- 財務(wù)成本管理中的邏輯推理試題及答案
- 論文答辯武漢大學(xué)論文答辯開題報告PPT模板
- 推進白洋淀景區(qū)運營機制改革實施方案
- 2021年卒中中心建設(shè)相關(guān)制度及流程匯編
- 初中生休學(xué)申請書
- 機械故障診斷大作業(yè)滾動軸承
- 密封件定位套機械加工工藝過程卡片
- 業(yè)主委員會成立全套表格(20210128041538)
- 中國石油大學(xué)華東本科畢業(yè)設(shè)計論文參考模板
- 產(chǎn)品銷售合同模板
- 中國漢字演變-課件
- 消防設(shè)施維護保養(yǎng)記錄表(共6頁)
評論
0/150
提交評論