版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、計(jì)算機(jī)軟件技術(shù)基礎(chǔ)計(jì)算機(jī)軟件技術(shù)基礎(chǔ)西安電子科技大學(xué)西安電子科技大學(xué)電子工程學(xué)院電子工程學(xué)院電子工程學(xué)院2學(xué)習(xí)指導(dǎo)信息學(xué)習(xí)指導(dǎo)信息 同學(xué)們?cè)趯W(xué)習(xí)本課程的過(guò)程中應(yīng)當(dāng)注意同學(xué)們?cè)趯W(xué)習(xí)本課程的過(guò)程中應(yīng)當(dāng)注意基本概念基本概念、基本方法基本方法、算法的閱讀理解算法的閱讀理解和和算法的設(shè)計(jì)算法的設(shè)計(jì)等方面。等方面。 軟件工程主要涉及軟件工程主要涉及基本概念基本概念和和基本方法基本方法;數(shù)據(jù)結(jié)構(gòu);數(shù)據(jù)結(jié)構(gòu)涉及涉及基本概念基本概念、基本方法基本方法、算法的閱讀理解算法的閱讀理解和和算法的算法的設(shè)計(jì)設(shè)計(jì)。在學(xué)習(xí)過(guò)程中可以通過(guò)課件的內(nèi)容、例題、習(xí)。在學(xué)習(xí)過(guò)程中可以通過(guò)課件的內(nèi)容、例題、習(xí)題來(lái)理解和掌握。題來(lái)理解和
2、掌握。第一部分第一部分 軟件工程軟件工程電子工程學(xué)院4軟件工程的教學(xué)目的和要求軟件工程的教學(xué)目的和要求 掌握軟件生命周期各階段的劃分,各階段的主要掌握軟件生命周期各階段的劃分,各階段的主要任務(wù)以及所建立的軟件文檔。能夠采用結(jié)構(gòu)化分析、任務(wù)以及所建立的軟件文檔。能夠采用結(jié)構(gòu)化分析、結(jié)構(gòu)化設(shè)計(jì)和結(jié)構(gòu)化程序設(shè)計(jì)的方法開(kāi)發(fā)軟件,掌結(jié)構(gòu)化設(shè)計(jì)和結(jié)構(gòu)化程序設(shè)計(jì)的方法開(kāi)發(fā)軟件,掌握軟件測(cè)試的步驟和方法,了解軟件維護(hù)的基本概握軟件測(cè)試的步驟和方法,了解軟件維護(hù)的基本概念。念。電子工程學(xué)院5軟件工程目錄軟件工程目錄1 軟件和軟件工程的基本概念軟件和軟件工程的基本概念2 軟件生命周期軟件生命周期3 結(jié)構(gòu)化的軟件開(kāi)
3、發(fā)方法結(jié)構(gòu)化的軟件開(kāi)發(fā)方法 4 軟件測(cè)試軟件測(cè)試 5 軟件維護(hù)軟件維護(hù) 6 作業(yè)作業(yè)電子工程學(xué)院6一、軟件和軟件工程的基本概念一、軟件和軟件工程的基本概念軟件的特點(diǎn)軟件的特點(diǎn)1.軟件是一種邏輯產(chǎn)品。軟件是一種邏輯產(chǎn)品。2.軟件產(chǎn)品的生產(chǎn)主要是研制。軟件產(chǎn)品的生產(chǎn)主要是研制。3.軟件產(chǎn)品不會(huì)損壞,不存在磨損、消耗問(wèn)題。軟件產(chǎn)品不會(huì)損壞,不存在磨損、消耗問(wèn)題。4.軟件產(chǎn)品的生產(chǎn)主要是腦力勞動(dòng)、手工開(kāi)發(fā)方式,軟件產(chǎn)品的生產(chǎn)主要是腦力勞動(dòng)、手工開(kāi)發(fā)方式,大部分產(chǎn)品是大部分產(chǎn)品是“定做定做”的。的。5.軟件開(kāi)發(fā)成本不斷提高。軟件開(kāi)發(fā)成本不斷提高。電子工程學(xué)院7故故障障率率磨合磨合磨損磨損時(shí)間時(shí)間硬件的故
4、障曲線硬件的故障曲線電子工程學(xué)院8硬件的故障曲線硬件的故障曲線 軟件的理想曲線軟件的理想曲線與實(shí)際故障曲線與實(shí)際故障曲線 故故障障率率修改由副作用造成由副作用造成故障率的提高故障率的提高時(shí)間時(shí)間實(shí)際曲線實(shí)際曲線理想曲線理想曲線軟件的理想曲線與實(shí)際故障曲線軟件的理想曲線與實(shí)際故障曲線電子工程學(xué)院9 軟件危機(jī)是指在軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到軟件危機(jī)是指在軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一系列嚴(yán)重問(wèn)題。幾乎所有軟件都不同程度地存的一系列嚴(yán)重問(wèn)題。幾乎所有軟件都不同程度地存在以下問(wèn)題:在以下問(wèn)題:1.對(duì)軟件開(kāi)發(fā)成本和進(jìn)度不可控制。對(duì)軟件開(kāi)發(fā)成本和進(jìn)度不可控制。2.用戶對(duì)用戶對(duì)“已完成的已完成的”軟件往
5、往不滿意。軟件往往不滿意。3.軟件產(chǎn)品的質(zhì)量不可靠。軟件產(chǎn)品的質(zhì)量不可靠。4.軟件的可維護(hù)性差。軟件的可維護(hù)性差。5.軟件的文檔資料不齊備。軟件的文檔資料不齊備。6.軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占的比例過(guò)高。軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占的比例過(guò)高。7.軟件開(kāi)發(fā)的生產(chǎn)率低。軟件開(kāi)發(fā)的生產(chǎn)率低。軟件危機(jī)的含義軟件危機(jī)的含義電子工程學(xué)院10 軟件危機(jī)的產(chǎn)生一方面與軟件本身的特點(diǎn)有關(guān),軟件危機(jī)的產(chǎn)生一方面與軟件本身的特點(diǎn)有關(guān),另一方面也和軟件開(kāi)發(fā)與維護(hù)的方法不正確有關(guān)。另一方面也和軟件開(kāi)發(fā)與維護(hù)的方法不正確有關(guān)。消除軟件危機(jī)的途徑消除軟件危機(jī)的途徑1.研究探索軟件開(kāi)發(fā)的技術(shù)措施,采用先進(jìn)的軟件研
6、究探索軟件開(kāi)發(fā)的技術(shù)措施,采用先進(jìn)的軟件開(kāi)發(fā)方法和軟件開(kāi)發(fā)工具。開(kāi)發(fā)方法和軟件開(kāi)發(fā)工具。2.加強(qiáng)軟件開(kāi)發(fā)過(guò)程中的組織管理措施。加強(qiáng)軟件開(kāi)發(fā)過(guò)程中的組織管理措施。 軟件工程正是從技術(shù)和管理兩個(gè)方面研究如何軟件工程正是從技術(shù)和管理兩個(gè)方面研究如何更好地開(kāi)發(fā)和維護(hù)計(jì)算機(jī)軟件的一門新興學(xué)科。更好地開(kāi)發(fā)和維護(hù)計(jì)算機(jī)軟件的一門新興學(xué)科。產(chǎn)生軟件危機(jī)的原因產(chǎn)生軟件危機(jī)的原因電子工程學(xué)院11 采用工程的概念、原理、技術(shù)和方法來(lái)開(kāi)發(fā)與采用工程的概念、原理、技術(shù)和方法來(lái)開(kāi)發(fā)與維護(hù)軟件。維護(hù)軟件。 把經(jīng)過(guò)時(shí)間考驗(yàn)而證明正確的管理方法和當(dāng)前把經(jīng)過(guò)時(shí)間考驗(yàn)而證明正確的管理方法和當(dāng)前最好的軟件開(kāi)發(fā)技術(shù)結(jié)合起來(lái),以較低的成
7、本開(kāi)最好的軟件開(kāi)發(fā)技術(shù)結(jié)合起來(lái),以較低的成本開(kāi)發(fā)出高質(zhì)量的軟件并能夠有效的對(duì)軟件進(jìn)行維護(hù)。發(fā)出高質(zhì)量的軟件并能夠有效的對(duì)軟件進(jìn)行維護(hù)。軟件工程的概念軟件工程的概念電子工程學(xué)院121.將軟件生命周期劃分階段,嚴(yán)格管理軟件的開(kāi)發(fā)將軟件生命周期劃分階段,嚴(yán)格管理軟件的開(kāi)發(fā)與維護(hù)。與維護(hù)。2.堅(jiān)持進(jìn)行階段評(píng)審。堅(jiān)持進(jìn)行階段評(píng)審。3.實(shí)行嚴(yán)格的產(chǎn)品控制。實(shí)行嚴(yán)格的產(chǎn)品控制。4.采用現(xiàn)代化的軟件開(kāi)發(fā)技術(shù)。采用現(xiàn)代化的軟件開(kāi)發(fā)技術(shù)。5.能夠清楚的審查軟件各個(gè)階段的結(jié)果。能夠清楚的審查軟件各個(gè)階段的結(jié)果。6.開(kāi)發(fā)小組的人員應(yīng)該少而精。開(kāi)發(fā)小組的人員應(yīng)該少而精。7.承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。承認(rèn)不斷改進(jìn)
8、軟件工程實(shí)踐的必要性。電子工程學(xué)院13 在軟件生命周期全過(guò)程中使用的一整套技術(shù)的在軟件生命周期全過(guò)程中使用的一整套技術(shù)的集合稱為軟件工程方法學(xué)。軟件工程方法學(xué)包括集合稱為軟件工程方法學(xué)。軟件工程方法學(xué)包括以下三個(gè)要素:以下三個(gè)要素:1.方法:完成軟件開(kāi)發(fā)的各項(xiàng)任務(wù)的技術(shù)方法。方法:完成軟件開(kāi)發(fā)的各項(xiàng)任務(wù)的技術(shù)方法。2.工具:為方法的運(yùn)用提供自動(dòng)或半自動(dòng)的軟件支工具:為方法的運(yùn)用提供自動(dòng)或半自動(dòng)的軟件支撐環(huán)境。撐環(huán)境。3.過(guò)程:為了獲得高質(zhì)量的軟件所需要完成的一系過(guò)程:為了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項(xiàng)任務(wù)的工作步列任務(wù)的框架,它規(guī)定了完成各項(xiàng)任務(wù)的工作步驟。驟。
9、軟件工程方法學(xué)軟件工程方法學(xué)電子工程學(xué)院14 軟件工程方法學(xué)分為結(jié)構(gòu)化方法、軟件工程方法學(xué)分為結(jié)構(gòu)化方法、Jackson方方法、維也納方法、面向?qū)ο蠓椒?。其中結(jié)構(gòu)化方法、維也納方法、面向?qū)ο蠓椒?。其中結(jié)構(gòu)化方法和面向?qū)ο蠓椒ㄊ褂米顬閺V泛,又稱為軟件工法和面向?qū)ο蠓椒ㄊ褂米顬閺V泛,又稱為軟件工程的傳統(tǒng)方法學(xué)和面向?qū)ο蠓椒▽W(xué)。程的傳統(tǒng)方法學(xué)和面向?qū)ο蠓椒▽W(xué)。 本課程主要介紹結(jié)構(gòu)化方法。本課程主要介紹結(jié)構(gòu)化方法。常用的軟件工程方法學(xué)常用的軟件工程方法學(xué)電子工程學(xué)院15【例例】軟件產(chǎn)品管理包括版本管理和軟件產(chǎn)品管理包括版本管理和 。 答案:開(kāi)發(fā)過(guò)程管理答案:開(kāi)發(fā)過(guò)程管理 軟件與物質(zhì)產(chǎn)品的區(qū)別在于軟件是
10、一種軟件與物質(zhì)產(chǎn)品的區(qū)別在于軟件是一種 產(chǎn)品。產(chǎn)品。答案:邏輯答案:邏輯 目前經(jīng)常采用的軟件工程方法學(xué),是目前經(jīng)常采用的軟件工程方法學(xué),是 和和 。答案:傳統(tǒng)方法學(xué)、面向?qū)ο蠓椒▽W(xué)答案:傳統(tǒng)方法學(xué)、面向?qū)ο蠓椒▽W(xué)電子工程學(xué)院16二、軟件生命周期二、軟件生命周期 軟件生命周期各階段的劃分,以及各個(gè)階段任務(wù):軟件生命周期各階段的劃分,以及各個(gè)階段任務(wù):1.問(wèn)題定義問(wèn)題定義 問(wèn)題定義階段的任務(wù)是確定所要開(kāi)發(fā)的目標(biāo)系問(wèn)題定義階段的任務(wù)是確定所要開(kāi)發(fā)的目標(biāo)系統(tǒng)應(yīng)當(dāng)解決的問(wèn)題是什么。統(tǒng)應(yīng)當(dāng)解決的問(wèn)題是什么。2.可行性研究可行性研究 在確定了目標(biāo)系統(tǒng)應(yīng)當(dāng)解決的問(wèn)題之后,從技在確定了目標(biāo)系統(tǒng)應(yīng)當(dāng)解決的問(wèn)題之后
11、,從技術(shù)、經(jīng)濟(jì)和社會(huì)因素三個(gè)方面分析問(wèn)題是否能夠術(shù)、經(jīng)濟(jì)和社會(huì)因素三個(gè)方面分析問(wèn)題是否能夠解決,以及是否值得解決。解決,以及是否值得解決。電子工程學(xué)院17 需求分析階段的任務(wù)是在充分了解用戶對(duì)目標(biāo)需求分析階段的任務(wù)是在充分了解用戶對(duì)目標(biāo)系統(tǒng)的需求之后,確定目標(biāo)系統(tǒng)應(yīng)當(dāng)具有什么功系統(tǒng)的需求之后,確定目標(biāo)系統(tǒng)應(yīng)當(dāng)具有什么功能,而這些功能如何實(shí)現(xiàn)能,而這些功能如何實(shí)現(xiàn)在這個(gè)階段并不考慮在這個(gè)階段并不考慮。 本階段的另外一項(xiàng)重要任務(wù),是用正式文檔準(zhǔn)本階段的另外一項(xiàng)重要任務(wù),是用正式文檔準(zhǔn)確地記錄對(duì)目標(biāo)系統(tǒng)的需求,這份文檔通常稱為確地記錄對(duì)目標(biāo)系統(tǒng)的需求,這份文檔通常稱為系統(tǒng)規(guī)格說(shuō)明書(shū)或需求規(guī)格說(shuō)明書(shū)。
12、系統(tǒng)規(guī)格說(shuō)明書(shū)或需求規(guī)格說(shuō)明書(shū)。3. 需求分析需求分析電子工程學(xué)院18 這個(gè)階段的基本任務(wù)是概括地回答怎樣實(shí)現(xiàn)目這個(gè)階段的基本任務(wù)是概括地回答怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng)的功能。概要設(shè)計(jì)又稱為總體設(shè)計(jì)。標(biāo)系統(tǒng)的功能。概要設(shè)計(jì)又稱為總體設(shè)計(jì)。 概要設(shè)計(jì)的另一項(xiàng)主要任務(wù)就是設(shè)計(jì)目標(biāo)系統(tǒng)概要設(shè)計(jì)的另一項(xiàng)主要任務(wù)就是設(shè)計(jì)目標(biāo)系統(tǒng)的模塊結(jié)構(gòu)圖或功能結(jié)構(gòu)圖,確定目標(biāo)系統(tǒng)由哪的模塊結(jié)構(gòu)圖或功能結(jié)構(gòu)圖,確定目標(biāo)系統(tǒng)由哪些模塊組成以及模塊之間的調(diào)用和被調(diào)用關(guān)系。些模塊組成以及模塊之間的調(diào)用和被調(diào)用關(guān)系。5. 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì) 詳細(xì)設(shè)計(jì)階段設(shè)計(jì)模塊內(nèi)部的邏輯和數(shù)據(jù)結(jié)構(gòu)。詳細(xì)設(shè)計(jì)階段設(shè)計(jì)模塊內(nèi)部的邏輯和數(shù)據(jù)結(jié)構(gòu)。這個(gè)階段的任務(wù)
13、還不是編寫(xiě)程序代碼。這個(gè)階段的任務(wù)還不是編寫(xiě)程序代碼。 4.概要設(shè)計(jì)概要設(shè)計(jì)電子工程學(xué)院19 這個(gè)階段是根據(jù)詳細(xì)設(shè)計(jì)的結(jié)果,采用程序設(shè)這個(gè)階段是根據(jù)詳細(xì)設(shè)計(jì)的結(jié)果,采用程序設(shè)計(jì)語(yǔ)言遍寫(xiě)出程序代碼。計(jì)語(yǔ)言遍寫(xiě)出程序代碼。7. 測(cè)試測(cè)試 測(cè)試階段的任務(wù)是通過(guò)各種類型的測(cè)試及相應(yīng)測(cè)試階段的任務(wù)是通過(guò)各種類型的測(cè)試及相應(yīng)的調(diào)試,使軟件達(dá)到預(yù)定的要求。的調(diào)試,使軟件達(dá)到預(yù)定的要求。8. 維護(hù)維護(hù) 維護(hù)是在系統(tǒng)運(yùn)行階段進(jìn)行的,通過(guò)各種必要維護(hù)是在系統(tǒng)運(yùn)行階段進(jìn)行的,通過(guò)各種必要的維護(hù)活動(dòng)使系統(tǒng)持久地滿足用戶的需要。的維護(hù)活動(dòng)使系統(tǒng)持久地滿足用戶的需要。6. 編碼編碼電子工程學(xué)院20 生命周期模型規(guī)定了把生
14、命周期劃分成哪些階生命周期模型規(guī)定了把生命周期劃分成哪些階 段及各個(gè)階段進(jìn)行的順序。段及各個(gè)階段進(jìn)行的順序。1. 瀑布模型瀑布模型 瀑布模型清楚地區(qū)分系統(tǒng)的邏輯設(shè)計(jì)與物理設(shè)瀑布模型清楚地區(qū)分系統(tǒng)的邏輯設(shè)計(jì)與物理設(shè)計(jì),盡可能推遲系統(tǒng)的物理實(shí)現(xiàn)。每個(gè)階段結(jié)束計(jì),盡可能推遲系統(tǒng)的物理實(shí)現(xiàn)。每個(gè)階段結(jié)束前都要對(duì)所完成的文檔進(jìn)行評(píng)審,以便盡早發(fā)現(xiàn)前都要對(duì)所完成的文檔進(jìn)行評(píng)審,以便盡早發(fā)現(xiàn)問(wèn)題,改正錯(cuò)誤。問(wèn)題,改正錯(cuò)誤。軟件生命周期的模型軟件生命周期的模型電子工程學(xué)院21需求分析需求分析驗(yàn)證驗(yàn)證概要設(shè)計(jì)概要設(shè)計(jì)驗(yàn)證驗(yàn)證詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)驗(yàn)證驗(yàn)證編碼編碼驗(yàn)證驗(yàn)證綜合測(cè)試綜合測(cè)試維護(hù)維護(hù)變化的需求變化的需求驗(yàn)證
15、驗(yàn)證 當(dāng)在后面階段發(fā)現(xiàn)前面階當(dāng)在后面階段發(fā)現(xiàn)前面階段的錯(cuò)誤時(shí),需要沿圖中左段的錯(cuò)誤時(shí),需要沿圖中左側(cè)的反饋線返回前面的階段,側(cè)的反饋線返回前面的階段,修正前面階段的產(chǎn)品之后,修正前面階段的產(chǎn)品之后,再回來(lái)繼續(xù)完成后面階段的再回來(lái)繼續(xù)完成后面階段的任務(wù)。任務(wù)。 瀑布模型適合于在用戶需瀑布模型適合于在用戶需求明確、開(kāi)發(fā)技術(shù)成熟、工求明確、開(kāi)發(fā)技術(shù)成熟、工程管理嚴(yán)格的場(chǎng)合使用。由程管理嚴(yán)格的場(chǎng)合使用。由于任務(wù)順序固定,瀑布模型于任務(wù)順序固定,瀑布模型的缺點(diǎn)是軟件研制周期長(zhǎng),的缺點(diǎn)是軟件研制周期長(zhǎng),糾正前期錯(cuò)誤的代價(jià)高。糾正前期錯(cuò)誤的代價(jià)高。帶有反饋環(huán)的瀑布模型帶有反饋環(huán)的瀑布模型電子工程學(xué)院22階段
16、階段基本任務(wù)基本任務(wù)工作結(jié)果(文檔)工作結(jié)果(文檔)問(wèn)題定義問(wèn)題定義理解問(wèn)題理解問(wèn)題系統(tǒng)目標(biāo)與范圍說(shuō)明書(shū)系統(tǒng)目標(biāo)與范圍說(shuō)明書(shū)可行性研究可行性研究理解工作范圍理解工作范圍項(xiàng)目計(jì)劃任務(wù)書(shū)項(xiàng)目計(jì)劃任務(wù)書(shū)需求分析需求分析定義用戶需求定義用戶需求需求規(guī)格說(shuō)明書(shū)需求規(guī)格說(shuō)明書(shū)總體設(shè)計(jì)總體設(shè)計(jì)建立軟件結(jié)構(gòu)建立軟件結(jié)構(gòu)總體設(shè)計(jì)說(shuō)明書(shū)總體設(shè)計(jì)說(shuō)明書(shū)詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)模塊功能實(shí)現(xiàn)模塊功能實(shí)現(xiàn)程序規(guī)格說(shuō)明書(shū)程序規(guī)格說(shuō)明書(shū)編碼編碼編寫(xiě)程序編寫(xiě)程序程序清單程序清單測(cè)試測(cè)試發(fā)現(xiàn)錯(cuò)誤、調(diào)試發(fā)現(xiàn)錯(cuò)誤、調(diào)試軟件產(chǎn)品軟件產(chǎn)品運(yùn)行維護(hù)運(yùn)行維護(hù)運(yùn)行和管理運(yùn)行和管理改進(jìn)的軟件產(chǎn)品改進(jìn)的軟件產(chǎn)品瀑布模型的開(kāi)發(fā)過(guò)程瀑布模型的開(kāi)發(fā)過(guò)程電子工程
17、學(xué)院23 快速原型模型是快速建立起可以在計(jì)算機(jī)上運(yùn)快速原型模型是快速建立起可以在計(jì)算機(jī)上運(yùn)行的程序,它所具有的功能往往只是最終軟件產(chǎn)行的程序,它所具有的功能往往只是最終軟件產(chǎn)品功能的一個(gè)子集。品功能的一個(gè)子集。 快速原型模型首先建立一個(gè)能反映用戶主要需快速原型模型首先建立一個(gè)能反映用戶主要需求的原型系統(tǒng),讓用戶試用它,通過(guò)試用,用戶求的原型系統(tǒng),讓用戶試用它,通過(guò)試用,用戶可以了解目標(biāo)系統(tǒng)的概貌。軟件人員根據(jù)用戶的可以了解目標(biāo)系統(tǒng)的概貌。軟件人員根據(jù)用戶的意見(jiàn)對(duì)原型進(jìn)行修改,然后再次請(qǐng)用戶試用意見(jiàn)對(duì)原型進(jìn)行修改,然后再次請(qǐng)用戶試用,直到能夠滿足用戶的需求為止。這樣所開(kāi)發(fā)的軟直到能夠滿足用戶的需
18、求為止。這樣所開(kāi)發(fā)的軟件可以滿足用戶的真實(shí)需求。件可以滿足用戶的真實(shí)需求。 快速原型模型適合在用戶需求不明確的情況下快速原型模型適合在用戶需求不明確的情況下開(kāi)發(fā)軟件。開(kāi)發(fā)軟件。2. 快速原型模型快速原型模型電子工程學(xué)院24快速原型模型的開(kāi)發(fā)過(guò)程快速原型模型的開(kāi)發(fā)過(guò)程電子工程學(xué)院25 使用增量模型開(kāi)發(fā)軟件時(shí),把軟件產(chǎn)品作為一使用增量模型開(kāi)發(fā)軟件時(shí),把軟件產(chǎn)品作為一系列的增量構(gòu)件來(lái)設(shè)計(jì)、編碼、集成和測(cè)試。每系列的增量構(gòu)件來(lái)設(shè)計(jì)、編碼、集成和測(cè)試。每個(gè)構(gòu)件由多個(gè)相互作用的模塊構(gòu)成,并且能夠完個(gè)構(gòu)件由多個(gè)相互作用的模塊構(gòu)成,并且能夠完成特定的功能。使用增量模型時(shí),第一個(gè)增量構(gòu)成特定的功能。使用增量模型
19、時(shí),第一個(gè)增量構(gòu)件往往實(shí)現(xiàn)軟件的基本需求,提供最核心的功能。件往往實(shí)現(xiàn)軟件的基本需求,提供最核心的功能。下面給出增量模型的開(kāi)發(fā)過(guò)程。下面給出增量模型的開(kāi)發(fā)過(guò)程。 3. 增量模型增量模型電子工程學(xué)院26需求分析需求分析驗(yàn)證驗(yàn)證規(guī)格說(shuō)明規(guī)格說(shuō)明驗(yàn)證驗(yàn)證概要設(shè)計(jì)概要設(shè)計(jì)驗(yàn)證驗(yàn)證維護(hù)維護(hù)針對(duì)每個(gè)構(gòu)件,完成詳針對(duì)每個(gè)構(gòu)件,完成詳細(xì)設(shè)計(jì)、編碼和集成,細(xì)設(shè)計(jì)、編碼和集成,經(jīng)測(cè)試后交付給用戶經(jīng)測(cè)試后交付給用戶增量模型的開(kāi)發(fā)過(guò)程增量模型的開(kāi)發(fā)過(guò)程電子工程學(xué)院27【例例】1. 軟件生命周期是指一個(gè)軟件從提出開(kāi)發(fā)要求開(kāi)始直到軟件生命周期是指一個(gè)軟件從提出開(kāi)發(fā)要求開(kāi)始直到 為止的整個(gè)時(shí)期。為止的整個(gè)時(shí)期。答案:報(bào)廢答
20、案:報(bào)廢2. 瀑布模型屬于整體開(kāi)發(fā)模型,增量模型屬于瀑布模型屬于整體開(kāi)發(fā)模型,增量模型屬于 開(kāi)發(fā)模型。開(kāi)發(fā)模型。答案:非整體答案:非整體 3. 說(shuō)明軟件文檔的概念。說(shuō)明軟件文檔的概念。答案:軟件文檔是有關(guān)軟件的功能、設(shè)計(jì)使用的文字和圖答案:軟件文檔是有關(guān)軟件的功能、設(shè)計(jì)使用的文字和圖形資料。形資料。4. 說(shuō)明快速原型模型的優(yōu)點(diǎn)。說(shuō)明快速原型模型的優(yōu)點(diǎn)。答案:能夠及早發(fā)現(xiàn)問(wèn)題,隨時(shí)糾正錯(cuò)誤;減少技術(shù)應(yīng)用答案:能夠及早發(fā)現(xiàn)問(wèn)題,隨時(shí)糾正錯(cuò)誤;減少技術(shù)應(yīng)用風(fēng)險(xiǎn),提高生產(chǎn)率;適應(yīng)需求變化,能夠有效提高系統(tǒng)風(fēng)險(xiǎn),提高生產(chǎn)率;適應(yīng)需求變化,能夠有效提高系統(tǒng)質(zhì)量。質(zhì)量。電子工程學(xué)院28三、結(jié)構(gòu)化的軟件開(kāi)發(fā)方
21、法三、結(jié)構(gòu)化的軟件開(kāi)發(fā)方法 結(jié)構(gòu)化的軟件開(kāi)發(fā)方法包括結(jié)構(gòu)化分析(結(jié)構(gòu)化的軟件開(kāi)發(fā)方法包括結(jié)構(gòu)化分析(SA方方法)、結(jié)構(gòu)化設(shè)計(jì)(法)、結(jié)構(gòu)化設(shè)計(jì)(SD方法)和結(jié)構(gòu)化程序設(shè)計(jì)方法)和結(jié)構(gòu)化程序設(shè)計(jì)(SP方法)。方法)。 SA方法用于需求分析階段;方法用于需求分析階段; SD方法用于總體設(shè)計(jì)階段;方法用于總體設(shè)計(jì)階段; SP方法用于詳細(xì)設(shè)計(jì)及編碼階段。方法用于詳細(xì)設(shè)計(jì)及編碼階段。電子工程學(xué)院291. 需求分析的任務(wù)需求分析的任務(wù) 需求分析是發(fā)現(xiàn)、求精、建模、規(guī)格說(shuō)明和復(fù)需求分析是發(fā)現(xiàn)、求精、建模、規(guī)格說(shuō)明和復(fù)審的過(guò)程。系統(tǒng)分析員首先要準(zhǔn)確地了解用戶當(dāng)審的過(guò)程。系統(tǒng)分析員首先要準(zhǔn)確地了解用戶當(dāng)前的情況
22、和需要解決的問(wèn)題,然后反復(fù)求精多次前的情況和需要解決的問(wèn)題,然后反復(fù)求精多次細(xì)化。最終以軟件需求規(guī)格說(shuō)明書(shū)的形式完整、細(xì)化。最終以軟件需求規(guī)格說(shuō)明書(shū)的形式完整、準(zhǔn)確和具體的表示出用戶對(duì)目標(biāo)系統(tǒng)的要求。準(zhǔn)確和具體的表示出用戶對(duì)目標(biāo)系統(tǒng)的要求。 軟件需求規(guī)格說(shuō)明書(shū)可以作為軟件開(kāi)發(fā)人員與軟件需求規(guī)格說(shuō)明書(shū)可以作為軟件開(kāi)發(fā)人員與用戶之間的軟件開(kāi)發(fā)合同用戶之間的軟件開(kāi)發(fā)合同 ,又是軟件最終驗(yàn)收的,又是軟件最終驗(yàn)收的依據(jù)。依據(jù)。3.1 需求分析需求分析電子工程學(xué)院30 結(jié)構(gòu)化分析實(shí)質(zhì)上是一種創(chuàng)建模型的活動(dòng)。通結(jié)構(gòu)化分析實(shí)質(zhì)上是一種創(chuàng)建模型的活動(dòng)。通過(guò)需求分析而建立的模型必須達(dá)到下述的三個(gè)基過(guò)需求分析而建立
23、的模型必須達(dá)到下述的三個(gè)基本目標(biāo):本目標(biāo):(1)描述用戶的需求。)描述用戶的需求。(2)為軟件設(shè)計(jì)工作奠定基礎(chǔ)。)為軟件設(shè)計(jì)工作奠定基礎(chǔ)。(3)定義一組需求,一旦開(kāi)發(fā)出軟件產(chǎn)品之后,)定義一組需求,一旦開(kāi)發(fā)出軟件產(chǎn)品之后,就可以用這組需求作為標(biāo)準(zhǔn)驗(yàn)收軟件。就可以用這組需求作為標(biāo)準(zhǔn)驗(yàn)收軟件。 結(jié)構(gòu)化分析所建立的模型包括:描述數(shù)據(jù)對(duì)象結(jié)構(gòu)化分析所建立的模型包括:描述數(shù)據(jù)對(duì)象的實(shí)體的實(shí)體-關(guān)系圖;描述系統(tǒng)邏輯模型的數(shù)據(jù)流圖;關(guān)系圖;描述系統(tǒng)邏輯模型的數(shù)據(jù)流圖;描述系統(tǒng)狀態(tài)及狀態(tài)轉(zhuǎn)換的狀態(tài)轉(zhuǎn)換圖。描述系統(tǒng)狀態(tài)及狀態(tài)轉(zhuǎn)換的狀態(tài)轉(zhuǎn)換圖。2. 分析建模分析建模電子工程學(xué)院31 實(shí)體實(shí)體-關(guān)系圖來(lái)建立數(shù)據(jù)模型
24、。其中包含了實(shí)體關(guān)系圖來(lái)建立數(shù)據(jù)模型。其中包含了實(shí)體(即數(shù)據(jù)對(duì)象即數(shù)據(jù)對(duì)象)、關(guān)系和屬性等三種基本成分。、關(guān)系和屬性等三種基本成分。(1)實(shí)體)實(shí)體(數(shù)據(jù)對(duì)象數(shù)據(jù)對(duì)象) 是具有一組性質(zhì)或?qū)傩缘膹?fù)是具有一組性質(zhì)或?qū)傩缘膹?fù)合信息,用矩形框表示;合信息,用矩形框表示;(2)實(shí)體間的關(guān)系用菱形框表示;)實(shí)體間的關(guān)系用菱形框表示;(3)屬性是實(shí)體或關(guān)系的性質(zhì),即實(shí)體或關(guān)系的)屬性是實(shí)體或關(guān)系的性質(zhì),即實(shí)體或關(guān)系的值,用橢圓框表示。值,用橢圓框表示。 實(shí)體之間的關(guān)系分為實(shí)體之間的關(guān)系分為1:1、1:N和和M:N聯(lián)系。聯(lián)系。實(shí)體實(shí)體- -關(guān)系圖(關(guān)系圖(E-RE-R圖)圖)電子工程學(xué)院32【例】【例】學(xué)校教
25、學(xué)管理的學(xué)校教學(xué)管理的E-R圖圖電子工程學(xué)院33 信息在系統(tǒng)流動(dòng),實(shí)質(zhì)上經(jīng)歷了一系列的變換。信息在系統(tǒng)流動(dòng),實(shí)質(zhì)上經(jīng)歷了一系列的變換。數(shù)據(jù)流圖描述了信息從輸入到輸出的一系列變換。數(shù)據(jù)流圖描述了信息從輸入到輸出的一系列變換。數(shù)據(jù)流圖具有四種成份:數(shù)據(jù)流圖具有四種成份:(1)系統(tǒng)的源點(diǎn)或終點(diǎn):屬于系統(tǒng)之外的人員或)系統(tǒng)的源點(diǎn)或終點(diǎn):屬于系統(tǒng)之外的人員或組織,用組織,用 表示。表示。(2)加工:具有邏輯加工能力,對(duì)數(shù)據(jù)進(jìn)行變換)加工:具有邏輯加工能力,對(duì)數(shù)據(jù)進(jìn)行變換處理,用處理,用 或圓圈表示?;驁A圈表示。 (3)數(shù)據(jù)存儲(chǔ):用于存儲(chǔ)數(shù)據(jù),用)數(shù)據(jù)存儲(chǔ):用于存儲(chǔ)數(shù)據(jù),用 表示。表示。(4)數(shù)據(jù)流:系統(tǒng)
26、中數(shù)據(jù)的流向,用)數(shù)據(jù)流:系統(tǒng)中數(shù)據(jù)的流向,用 表示。表示。4. 數(shù)據(jù)流圖(數(shù)據(jù)流圖(DFD圖)圖)電子工程學(xué)院34 結(jié)構(gòu)化分析運(yùn)用了結(jié)構(gòu)化分析運(yùn)用了“分解分解”和和“抽象抽象”的手段,的手段,采用采用“自頂向下,逐層分解自頂向下,逐層分解”的分析思路,將系的分析思路,將系統(tǒng)的加工邏輯用分層數(shù)據(jù)流圖(分層統(tǒng)的加工邏輯用分層數(shù)據(jù)流圖(分層DFD圖)來(lái)圖)來(lái)表示。表示。S1321.11.2頂層數(shù)據(jù)流圖頂層數(shù)據(jù)流圖0層數(shù)據(jù)流圖層數(shù)據(jù)流圖1層數(shù)據(jù)流圖層數(shù)據(jù)流圖分層數(shù)據(jù)流圖分層數(shù)據(jù)流圖電子工程學(xué)院35 接受項(xiàng)目裁判送來(lái)的比賽成績(jī)單,使用項(xiàng)目文接受項(xiàng)目裁判送來(lái)的比賽成績(jī)單,使用項(xiàng)目文件和運(yùn)動(dòng)員文件,將成績(jī)
27、錄入到比賽成績(jī)文件。件和運(yùn)動(dòng)員文件,將成績(jī)錄入到比賽成績(jī)文件。成績(jī)查詢時(shí)根據(jù)運(yùn)動(dòng)員文件和比賽成績(jī)文件產(chǎn)生成績(jī)查詢時(shí)根據(jù)運(yùn)動(dòng)員文件和比賽成績(jī)文件產(chǎn)生項(xiàng)目比賽成績(jī),送大會(huì)秘書(shū)處。繪制運(yùn)動(dòng)會(huì)成績(jī)項(xiàng)目比賽成績(jī),送大會(huì)秘書(shū)處。繪制運(yùn)動(dòng)會(huì)成績(jī)處理的處理的0層數(shù)據(jù)流圖。層數(shù)據(jù)流圖?!纠窟\(yùn)動(dòng)會(huì)成績(jī)處理過(guò)程如下:【例】運(yùn)動(dòng)會(huì)成績(jī)處理過(guò)程如下:電子工程學(xué)院36 數(shù)據(jù)字典用于對(duì)數(shù)據(jù)流圖中的成份進(jìn)行進(jìn)一步數(shù)據(jù)字典用于對(duì)數(shù)據(jù)流圖中的成份進(jìn)行進(jìn)一步精確、嚴(yán)格的定義,數(shù)據(jù)字典中的條目由數(shù)據(jù)流、精確、嚴(yán)格的定義,數(shù)據(jù)字典中的條目由數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和加工的定義組成。數(shù)據(jù)字典中所使用數(shù)據(jù)存儲(chǔ)和加工的定義組成。數(shù)據(jù)字典中所使用的
28、符號(hào)如下:的符號(hào)如下: 表示等價(jià)于表示等價(jià)于(或定義為或定義為) 表示和表示和(即,連接兩個(gè)分量即,連接兩個(gè)分量) 表示或表示或(即,從方括弧內(nèi)列出的若干個(gè)分即,從方括弧內(nèi)列出的若干個(gè)分量中選擇一個(gè)量中選擇一個(gè)),通常用,通常用“|”|”號(hào)分開(kāi)供選擇的分量號(hào)分開(kāi)供選擇的分量 表示重復(fù)表示重復(fù)(即,重復(fù)花括弧內(nèi)的分量即,重復(fù)花括弧內(nèi)的分量) ( ) 表示可選表示可選(即,圓括弧里的分量可有可無(wú)即,圓括弧里的分量可有可無(wú) . 表示數(shù)據(jù)的范圍表示數(shù)據(jù)的范圍 5. 數(shù)據(jù)字典數(shù)據(jù)字典電子工程學(xué)院37(1)描述身份證號(hào)的條目。)描述身份證號(hào)的條目。身份證號(hào)身份證號(hào)=省省+市市+區(qū)(縣)區(qū)(縣)+出生日期出
29、生日期+編號(hào)編號(hào)出生日期出生日期=年年+月月+日日月月=1.12 日日=1.31(2)描述班級(jí)考試成績(jī)表的條目)描述班級(jí)考試成績(jī)表的條目班級(jí)考試成績(jī)表班級(jí)考試成績(jī)表=學(xué)號(hào)學(xué)號(hào)+課程號(hào)課程號(hào)+姓名姓名+課程名課程名+成績(jī)成績(jī)成績(jī)成績(jī)=優(yōu)優(yōu)|良良|中中|及格及格|不及格不及格【例】數(shù)據(jù)字典條目舉例。【例】數(shù)據(jù)字典條目舉例。電子工程學(xué)院38(1)結(jié)構(gòu)化語(yǔ)言)結(jié)構(gòu)化語(yǔ)言 結(jié)構(gòu)化語(yǔ)言是介于自然語(yǔ)言和形式語(yǔ)言之間的結(jié)構(gòu)化語(yǔ)言是介于自然語(yǔ)言和形式語(yǔ)言之間的一種半形式化語(yǔ)言。它是在自然語(yǔ)言的基礎(chǔ)上增一種半形式化語(yǔ)言。它是在自然語(yǔ)言的基礎(chǔ)上增加一些限定,使用有限的詞匯和有限的語(yǔ)句來(lái)描加一些限定,使用有限的詞匯和
30、有限的語(yǔ)句來(lái)描述加工邏輯,它的結(jié)構(gòu)可分為外層和內(nèi)層兩層。述加工邏輯,它的結(jié)構(gòu)可分為外層和內(nèi)層兩層。 外層:用來(lái)描述控制結(jié)構(gòu),采用順序、選擇、重外層:用來(lái)描述控制結(jié)構(gòu),采用順序、選擇、重復(fù)三種基本結(jié)構(gòu)。復(fù)三種基本結(jié)構(gòu)。 內(nèi)層:一般采用祈使語(yǔ)句。內(nèi)層:一般采用祈使語(yǔ)句。 對(duì)加工條目的描述稱為小說(shuō)明,可以采用結(jié)構(gòu)化對(duì)加工條目的描述稱為小說(shuō)明,可以采用結(jié)構(gòu)化語(yǔ)言、判定表和判定樹(shù)等形式。語(yǔ)言、判定表和判定樹(shù)等形式。電子工程學(xué)院39 在有些情況下,每個(gè)加工的一組動(dòng)作依賴于多在有些情況下,每個(gè)加工的一組動(dòng)作依賴于多個(gè)邏輯條件的取值。用判定表能夠更清晰、嚴(yán)謹(jǐn)個(gè)邏輯條件的取值。用判定表能夠更清晰、嚴(yán)謹(jǐn)?shù)乇硎緩?fù)雜
31、的條件組合與相應(yīng)動(dòng)作之間的對(duì)應(yīng)關(guān)地表示復(fù)雜的條件組合與相應(yīng)動(dòng)作之間的對(duì)應(yīng)關(guān)系。判定表由四個(gè)部分組成。系。判定表由四個(gè)部分組成。列出所有列出所有條件條件所有可能所有可能的動(dòng)作的動(dòng)作各種條件組各種條件組合的矩陣合的矩陣每種條件組合相對(duì)每種條件組合相對(duì)應(yīng)的動(dòng)作應(yīng)的動(dòng)作(2)判定表)判定表電子工程學(xué)院40 判定樹(shù)是判定表的變形,一般情況下它比判定判定樹(shù)是判定表的變形,一般情況下它比判定表更直觀,且易于理解和使用。表更直觀,且易于理解和使用?!纠纠磕彻S對(duì)部分職工重新分配工作的政策:】某工廠對(duì)部分職工重新分配工作的政策: 年齡在年齡在20歲以下者,初中文化程度脫產(chǎn)學(xué)習(xí),歲以下者,初中文化程度脫產(chǎn)學(xué)習(xí)
32、,高中文化程度當(dāng)電工;年齡在高中文化程度當(dāng)電工;年齡在20歲至歲至40歲之間者,歲之間者,中學(xué)文化程度男性當(dāng)鉗工,女性當(dāng)車工,大學(xué)文中學(xué)文化程度男性當(dāng)鉗工,女性當(dāng)車工,大學(xué)文化程度當(dāng)技術(shù)員;年齡在化程度當(dāng)技術(shù)員;年齡在40歲以上者,中學(xué)文化歲以上者,中學(xué)文化程度當(dāng)材料員,大學(xué)文化程度當(dāng)技術(shù)員。程度當(dāng)材料員,大學(xué)文化程度當(dāng)技術(shù)員。 分別用結(jié)構(gòu)化語(yǔ)言、判定表和判定樹(shù)描述上述問(wèn)分別用結(jié)構(gòu)化語(yǔ)言、判定表和判定樹(shù)描述上述問(wèn)題的加工邏輯。題的加工邏輯。(3)判定樹(shù))判定樹(shù)電子工程學(xué)院41IF 年齡年齡20 THEN IF 文化程度文化程度=初中初中 THEN 脫產(chǎn)學(xué)習(xí)脫產(chǎn)學(xué)習(xí) ELSE 工作為電工工作為電
33、工 ENDIFELSE IF 年齡年齡40 THEN IF 文化程度文化程度=大學(xué)大學(xué) THEN 工作為技術(shù)員工作為技術(shù)員 ELSE IF 性別性別=男男 THEN 工作為鉗工工作為鉗工 ELSE 工作為車工工作為車工 ENDIF ENDIF ELSE IF 文化程度文化程度=大學(xué)大學(xué) THEN 工作為技術(shù)員工作為技術(shù)員 ELSE 工作為材料員工作為材料員 ENDIF ENDIFENDIF(1)用結(jié)構(gòu)化語(yǔ)言描述)用結(jié)構(gòu)化語(yǔ)言描述電子工程學(xué)院42 為了能夠使判定表簡(jiǎn)潔,可以先采用條件取值為了能夠使判定表簡(jiǎn)潔,可以先采用條件取值表定義條件取值的符號(hào)。表定義條件取值的符號(hào)。條件名條件名取值取值符號(hào)符
34、號(hào)取值個(gè)數(shù)取值個(gè)數(shù)年年 齡齡年齡年齡202040CYLm1=3文化程度文化程度初中初中高中高中大學(xué)大學(xué)JSUm2=3性性 別別男男女女MFm3=2(2)用判定表描述)用判定表描述電子工程學(xué)院43123456789101112131415161718年齡年齡C C C C C C Y Y Y Y Y Y L L L L L L文化程度文化程度J J S S U U J J S S U U J J S S U U性別性別M F M F M F M F M F M F M F M F M F脫產(chǎn)學(xué)習(xí)脫產(chǎn)學(xué)習(xí)電工電工 鉗工鉗工車工車工技術(shù)員技術(shù)員 材料員材料員 (3)用判定表描述)用判定表描述電子工程
35、學(xué)院44(3)用判定樹(shù)描述)用判定樹(shù)描述電子工程學(xué)院45需求規(guī)格說(shuō)明書(shū)的作用不包括()。需求規(guī)格說(shuō)明書(shū)的作用不包括()。A軟件驗(yàn)收的依據(jù)軟件驗(yàn)收的依據(jù)B用戶與開(kāi)發(fā)人員對(duì)軟件要做什么的共同理解用戶與開(kāi)發(fā)人員對(duì)軟件要做什么的共同理解C軟件可行性研究的依據(jù)軟件可行性研究的依據(jù)D軟件設(shè)計(jì)的依據(jù)軟件設(shè)計(jì)的依據(jù)答案:答案:C C數(shù)據(jù)字典是用來(lái)定義數(shù)據(jù)字典是用來(lái)定義_中的各個(gè)成份的具體含義中的各個(gè)成份的具體含義的。()的。()A流程圖流程圖B功能結(jié)構(gòu)圖功能結(jié)構(gòu)圖C系統(tǒng)結(jié)構(gòu)圖系統(tǒng)結(jié)構(gòu)圖D數(shù)據(jù)流圖數(shù)據(jù)流圖答案:答案:D D【例【例】電子工程學(xué)院46民航計(jì)算行李托運(yùn)費(fèi)的算法行李重量不超過(guò)民航計(jì)算行李托運(yùn)費(fèi)的算法行
36、李重量不超過(guò)30公公斤免費(fèi)托運(yùn),對(duì)于超過(guò)斤免費(fèi)托運(yùn),對(duì)于超過(guò)30公斤部分,按以下規(guī)則公斤部分,按以下規(guī)則收費(fèi):收費(fèi):(1)國(guó)內(nèi)非殘疾頭等艙乘客,每公斤收?。﹪?guó)內(nèi)非殘疾頭等艙乘客,每公斤收取4元;國(guó)元;國(guó)內(nèi)非殘疾非頭等艙乘客,每公斤收取內(nèi)非殘疾非頭等艙乘客,每公斤收取6元。元。(2)國(guó)內(nèi)殘疾頭等艙乘客,每公斤收取)國(guó)內(nèi)殘疾頭等艙乘客,每公斤收取2元;國(guó)內(nèi)元;國(guó)內(nèi)殘疾非頭等艙乘客,每公斤收取殘疾非頭等艙乘客,每公斤收取3元。元。(3)國(guó)外非殘疾頭等艙乘客,每公斤收取)國(guó)外非殘疾頭等艙乘客,每公斤收取8元;國(guó)元;國(guó)外非殘疾非頭等艙乘客,每公斤收取外非殘疾非頭等艙乘客,每公斤收取12元。元。(4)國(guó)外
37、殘疾頭等艙或非頭等艙乘客,每公斤收)國(guó)外殘疾頭等艙或非頭等艙乘客,每公斤收取取4元。元。【例【例】電子工程學(xué)院47用判定表表示計(jì)算行李費(fèi)的算法用判定表表示計(jì)算行李費(fèi)的算法電子工程學(xué)院48用判定樹(shù)表示計(jì)算行李費(fèi)的算法用判定樹(shù)表示計(jì)算行李費(fèi)的算法電子工程學(xué)院49 數(shù)據(jù)流圖(數(shù)據(jù)流圖(DFD)是()是( )方法中用于表示系統(tǒng)邏輯模型)方法中用于表示系統(tǒng)邏輯模型的一種圖形工具。的一種圖形工具。 ASA BSD CSP DSC 答案:答案:A A 軟件需求分析的主要任務(wù)是準(zhǔn)確地定義出所要開(kāi)發(fā)的軟件軟件需求分析的主要任務(wù)是準(zhǔn)確地定義出所要開(kāi)發(fā)的軟件系統(tǒng)(系統(tǒng)( )。)。A.如何做如何做 B.怎么做怎么做
38、C.做什么做什么D.對(duì)誰(shuí)做對(duì)誰(shuí)做答案:答案:C C 需求分析是分析員充分了解用戶的要求,認(rèn)真細(xì)致地調(diào)研、需求分析是分析員充分了解用戶的要求,認(rèn)真細(xì)致地調(diào)研、分析,最終建立目標(biāo)系統(tǒng)的邏輯模型并寫(xiě)出(分析,最終建立目標(biāo)系統(tǒng)的邏輯模型并寫(xiě)出( )的過(guò))的過(guò)程。程。A. 模塊說(shuō)明書(shū)模塊說(shuō)明書(shū) B. 軟件規(guī)格說(shuō)明軟件規(guī)格說(shuō)明 C. 項(xiàng)目開(kāi)發(fā)計(jì)劃項(xiàng)目開(kāi)發(fā)計(jì)劃 D. 合同文檔合同文檔答案:答案:B B【例】【例】電子工程學(xué)院50數(shù)據(jù)流圖中的箭頭表示數(shù)據(jù)流圖中的箭頭表示 。 答案:數(shù)據(jù)流答案:數(shù)據(jù)流數(shù)據(jù)流圖(數(shù)據(jù)流圖(DFD圖)的作用是圖)的作用是 。答案:在答案:在SASA方法中用于表示系統(tǒng)邏輯模型的一種工
39、方法中用于表示系統(tǒng)邏輯模型的一種工具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過(guò)程。理的過(guò)程。結(jié)構(gòu)化分析方法是以數(shù)據(jù)流圖、結(jié)構(gòu)化分析方法是以數(shù)據(jù)流圖、 和加工說(shuō)明和加工說(shuō)明等描述工具,即用直觀的圖和簡(jiǎn)潔的語(yǔ)言來(lái)描述等描述工具,即用直觀的圖和簡(jiǎn)潔的語(yǔ)言來(lái)描述軟件系統(tǒng)模型。軟件系統(tǒng)模型。答案:數(shù)據(jù)字典答案:數(shù)據(jù)字典【例【例】電子工程學(xué)院51招聘考試考核數(shù)學(xué)、英語(yǔ)、計(jì)算機(jī)三門課程。錄招聘考試考核數(shù)學(xué)、英語(yǔ)、計(jì)算機(jī)三門課程。錄取規(guī)則如下:取規(guī)則如下:(1)總分)總分240分(含)以上錄??;分(含)以上錄?。唬?)總分)總分180分(不含)以下,或其中兩門在分
40、(不含)以下,或其中兩門在60分(不含)以下的不錄?。环郑ú缓┮韵碌牟讳浫?;(3)其它分?jǐn)?shù)如果全部在)其它分?jǐn)?shù)如果全部在60分(含)以上,需分(含)以上,需要參加面試再?zèng)Q定是否錄??;如果有一門要參加面試再?zèng)Q定是否錄??;如果有一門60分分(不含)以下,需要復(fù)試該課程再?zèng)Q定是否錄取。(不含)以下,需要復(fù)試該課程再?zèng)Q定是否錄取。畫(huà)出錄取規(guī)則判定表。畫(huà)出錄取規(guī)則判定表?!纠纠侩娮庸こ虒W(xué)院52決策規(guī)則號(hào)決策規(guī)則號(hào)1 2 3 4 5條件條件總分總分=240T F F F F總分總分=60- T F F -單科單科2門門0 THEN X1 ELSE X2 ENDIF S1 IF Z0 THEN Z1
41、IF W0 THEN W1 ELSE W2 ENDIF ELSE Z2 ENDIF S2ENDWHILE電子工程學(xué)院90用用PAD圖進(jìn)行描述圖進(jìn)行描述電子工程學(xué)院91【例【例】程序的三種基本控制結(jié)構(gòu)的共同特點(diǎn)是(程序的三種基本控制結(jié)構(gòu)的共同特點(diǎn)是( )。)。A只能用來(lái)描述簡(jiǎn)單程序只能用來(lái)描述簡(jiǎn)單程序B不能嵌套使用不能嵌套使用C單入口,單出口單入口,單出口 D僅用于自動(dòng)控制系統(tǒng)僅用于自動(dòng)控制系統(tǒng)答案:答案:C C結(jié)構(gòu)化程序設(shè)計(jì)采用的三種基本結(jié)構(gòu)是(結(jié)構(gòu)化程序設(shè)計(jì)采用的三種基本結(jié)構(gòu)是( )。)。A.順序、分支、選擇順序、分支、選擇B.選擇、循環(huán)、重復(fù)選擇、循環(huán)、重復(fù)C.順序、選擇、重復(fù)順序、選擇、
42、重復(fù)D.輸入、變換、輸出輸入、變換、輸出答案:答案:C C詳細(xì)描述處理過(guò)程常用的三種工具是()。詳細(xì)描述處理過(guò)程常用的三種工具是()。A.SA,SD,SPB.程序流程圖,程序流程圖,IPO,PADC.SA,SC,SDD.圖形,表格,語(yǔ)言圖形,表格,語(yǔ)言答案:答案:D D電子工程學(xué)院92【例】試比較程序流程圖與【例】試比較程序流程圖與PAD圖的特點(diǎn)。圖的特點(diǎn)。 這兩種方法均為詳細(xì)設(shè)計(jì)階段所使用的圖形工這兩種方法均為詳細(xì)設(shè)計(jì)階段所使用的圖形工具。具。(1)程序流程圖直觀清晰,易于使用。但控制流)程序流程圖直觀清晰,易于使用。但控制流程線不易限制,易造成非結(jié)構(gòu)化的程序結(jié)構(gòu);不易程線不易限制,易造成非
43、結(jié)構(gòu)化的程序結(jié)構(gòu);不易反映逐步求精的過(guò)程;不易表示數(shù)據(jù)結(jié)構(gòu)。反映逐步求精的過(guò)程;不易表示數(shù)據(jù)結(jié)構(gòu)。(2)PAD圖是一種由左往右展開(kāi)的二維樹(shù)型結(jié)構(gòu),圖是一種由左往右展開(kāi)的二維樹(shù)型結(jié)構(gòu),能夠清晰地反映程序的層次結(jié)構(gòu),支持逐步求精的能夠清晰地反映程序的層次結(jié)構(gòu),支持逐步求精的設(shè)計(jì)方法,易寫(xiě)易讀,使用方便;可自動(dòng)生成程序,設(shè)計(jì)方法,易寫(xiě)易讀,使用方便;可自動(dòng)生成程序,支持結(jié)構(gòu)化程序設(shè)計(jì)原理。支持結(jié)構(gòu)化程序設(shè)計(jì)原理。電子工程學(xué)院93【例】簡(jiǎn)述程序流程圖的缺點(diǎn)和克服方法。【例】簡(jiǎn)述程序流程圖的缺點(diǎn)和克服方法。 流程圖的缺點(diǎn)有三個(gè)方面,(流程圖的缺點(diǎn)有三個(gè)方面,(1)控制流程線不)控制流程線不易限制,易造成
44、非結(jié)構(gòu)化的程序結(jié)構(gòu);(易限制,易造成非結(jié)構(gòu)化的程序結(jié)構(gòu);(2)不易)不易反映逐步求精的過(guò)程;(反映逐步求精的過(guò)程;(3)不易表示數(shù)據(jù)結(jié)構(gòu)。)不易表示數(shù)據(jù)結(jié)構(gòu)。 為了克服流程圖的缺陷,要求流程圖都應(yīng)由三種為了克服流程圖的缺陷,要求流程圖都應(yīng)由三種基本結(jié)構(gòu)順序組合或完整嵌套而成,不能出現(xiàn)相互基本結(jié)構(gòu)順序組合或完整嵌套而成,不能出現(xiàn)相互交叉的情況,這樣的流程圖是結(jié)構(gòu)化的流程圖。交叉的情況,這樣的流程圖是結(jié)構(gòu)化的流程圖。電子工程學(xué)院943.4 軟件編碼軟件編碼 所謂編碼就是把軟件設(shè)計(jì)翻譯成計(jì)算機(jī)可以理解所謂編碼就是把軟件設(shè)計(jì)翻譯成計(jì)算機(jī)可以理解的形式的形式用某種程序設(shè)計(jì)語(yǔ)言書(shū)寫(xiě)的程序代碼。用某種程序設(shè)
45、計(jì)語(yǔ)言書(shū)寫(xiě)的程序代碼。 程序的質(zhì)量主要取決于軟件設(shè)計(jì)的質(zhì)量。但是,程序的質(zhì)量主要取決于軟件設(shè)計(jì)的質(zhì)量。但是,所選用的程序設(shè)計(jì)語(yǔ)言的特點(diǎn)和編碼風(fēng)格也會(huì)對(duì)程所選用的程序設(shè)計(jì)語(yǔ)言的特點(diǎn)和編碼風(fēng)格也會(huì)對(duì)程序的可靠性、可讀性、可測(cè)試性和可維護(hù)性產(chǎn)生深序的可靠性、可讀性、可測(cè)試性和可維護(hù)性產(chǎn)生深遠(yuǎn)的影響。遠(yuǎn)的影響。電子工程學(xué)院95程序設(shè)計(jì)語(yǔ)言特性程序設(shè)計(jì)語(yǔ)言特性1.心理特性心理特性 語(yǔ)言的心理特性是指影響程序員心理的語(yǔ)言性能,語(yǔ)言的心理特性是指影響程序員心理的語(yǔ)言性能,包括:歧義性、簡(jiǎn)潔性、局部性、順序性和傳統(tǒng)性。包括:歧義性、簡(jiǎn)潔性、局部性、順序性和傳統(tǒng)性。2. 工程特性工程特性 從考慮軟件開(kāi)發(fā)項(xiàng)目的需
46、要出發(fā),對(duì)軟件編碼有從考慮軟件開(kāi)發(fā)項(xiàng)目的需要出發(fā),對(duì)軟件編碼有如下要求:可移植性,開(kāi)發(fā)工具的可利用性,軟件如下要求:可移植性,開(kāi)發(fā)工具的可利用性,軟件的可重用性,可維護(hù)性。的可重用性,可維護(hù)性。3. 技術(shù)特性技術(shù)特性 根據(jù)項(xiàng)目的特性選擇相應(yīng)特性的語(yǔ)言,滿足設(shè)計(jì)根據(jù)項(xiàng)目的特性選擇相應(yīng)特性的語(yǔ)言,滿足設(shè)計(jì)的需求。的需求。 電子工程學(xué)院96程序設(shè)計(jì)風(fēng)格程序設(shè)計(jì)風(fēng)格1. 源程序文檔化源程序文檔化(1)標(biāo)識(shí)符的命名)標(biāo)識(shí)符的命名 標(biāo)識(shí)符作為模塊名、變量名、常量名等,其命名應(yīng)當(dāng)標(biāo)識(shí)符作為模塊名、變量名、常量名等,其命名應(yīng)當(dāng)具有一定的實(shí)際意義,做到具有一定的實(shí)際意義,做到“見(jiàn)名知義見(jiàn)名知義”。(2)程序的注
47、釋)程序的注釋 源程序中添加必要的注釋,提高程序的可理解性。注源程序中添加必要的注釋,提高程序的可理解性。注釋有以下兩個(gè)方面:釋有以下兩個(gè)方面: 序言性注釋:位于每個(gè)程序模塊的開(kāi)頭,對(duì)模塊的功能、序言性注釋:位于每個(gè)程序模塊的開(kāi)頭,對(duì)模塊的功能、調(diào)用形式、參數(shù)等加以說(shuō)明,以及對(duì)模塊的修改記錄。調(diào)用形式、參數(shù)等加以說(shuō)明,以及對(duì)模塊的修改記錄。 功能性注釋:位于源程序中,用于說(shuō)明語(yǔ)句或語(yǔ)句塊的功能性注釋:位于源程序中,用于說(shuō)明語(yǔ)句或語(yǔ)句塊的功能。功能。電子工程學(xué)院97(3)程序的視覺(jué)組織程序的視覺(jué)組織 程序的視覺(jué)組織是指源程序中適當(dāng)加空格、空行程序的視覺(jué)組織是指源程序中適當(dāng)加空格、空行和語(yǔ)句行的縮
48、進(jìn),這樣有助于分清程序的層次結(jié)構(gòu),和語(yǔ)句行的縮進(jìn),這樣有助于分清程序的層次結(jié)構(gòu),提高程序的可理解性。提高程序的可理解性。2. 數(shù)據(jù)說(shuō)明數(shù)據(jù)說(shuō)明 數(shù)據(jù)說(shuō)明有一定的次序,對(duì)于復(fù)雜的數(shù)據(jù)結(jié)構(gòu)加數(shù)據(jù)說(shuō)明有一定的次序,對(duì)于復(fù)雜的數(shù)據(jù)結(jié)構(gòu)加以注釋。以注釋。3. 語(yǔ)句結(jié)構(gòu)語(yǔ)句結(jié)構(gòu) 語(yǔ)句的構(gòu)造應(yīng)該簡(jiǎn)單、直接,不能為了追求效率語(yǔ)句的構(gòu)造應(yīng)該簡(jiǎn)單、直接,不能為了追求效率而使語(yǔ)句復(fù)雜化。而使語(yǔ)句復(fù)雜化。電子工程學(xué)院984. 輸入輸入/輸出風(fēng)格輸出風(fēng)格有關(guān)輸入有關(guān)輸入/輸出風(fēng)格的規(guī)則:輸出風(fēng)格的規(guī)則:對(duì)所有輸入數(shù)據(jù)都進(jìn)行檢驗(yàn);對(duì)所有輸入數(shù)據(jù)都進(jìn)行檢驗(yàn);檢查輸入項(xiàng)重要組合的合法性;檢查輸入項(xiàng)重要組合的合法性;保持輸入格
49、式簡(jiǎn)單;保持輸入格式簡(jiǎn)單;使用數(shù)據(jù)結(jié)束標(biāo)記,避免指定輸入數(shù)據(jù)的個(gè)數(shù);使用數(shù)據(jù)結(jié)束標(biāo)記,避免指定輸入數(shù)據(jù)的個(gè)數(shù);給出交互式輸入的提示,并詳細(xì)說(shuō)明可用的輸入給出交互式輸入的提示,并詳細(xì)說(shuō)明可用的輸入選擇或邊界值;選擇或邊界值;當(dāng)程序設(shè)計(jì)語(yǔ)言對(duì)格式有嚴(yán)格要求時(shí),應(yīng)保持輸當(dāng)程序設(shè)計(jì)語(yǔ)言對(duì)格式有嚴(yán)格要求時(shí),應(yīng)保持輸入格式一致;入格式一致;設(shè)計(jì)良好的輸出報(bào)表;設(shè)計(jì)良好的輸出報(bào)表;給所有輸出數(shù)據(jù)加標(biāo)志。給所有輸出數(shù)據(jù)加標(biāo)志。電子工程學(xué)院995. 程序的效率程序的效率 程序的效率主要指程序運(yùn)行過(guò)程中占用處理機(jī)的程序的效率主要指程序運(yùn)行過(guò)程中占用處理機(jī)的時(shí)間和存儲(chǔ)器的容量?jī)蓚€(gè)方面。時(shí)間和存儲(chǔ)器的容量?jī)蓚€(gè)方面。
50、在保證程序的清晰性和可讀性的前提下,追求程在保證程序的清晰性和可讀性的前提下,追求程序的時(shí)間和空間效率,從而提高軟件的性能。序的時(shí)間和空間效率,從而提高軟件的性能。【例【例】程序設(shè)計(jì)語(yǔ)言的心理特性在語(yǔ)言中的表現(xiàn)不應(yīng)當(dāng)程序設(shè)計(jì)語(yǔ)言的心理特性在語(yǔ)言中的表現(xiàn)不應(yīng)當(dāng)包括(包括( )。)。A歧義性歧義性B簡(jiǎn)潔性簡(jiǎn)潔性C保密性保密性D傳統(tǒng)性傳統(tǒng)性答案:答案:C C電子工程學(xué)院100【例【例】源程序文檔化要求在每個(gè)模塊之前加序言性注釋,源程序文檔化要求在每個(gè)模塊之前加序言性注釋,該注釋內(nèi)容不包括有(該注釋內(nèi)容不包括有( )。)。A.模塊的功能模塊的功能B.語(yǔ)句的功能語(yǔ)句的功能C.模塊的接口模塊的接口D.開(kāi)發(fā)
51、歷史開(kāi)發(fā)歷史答案:答案:B B為了具有良好的程序設(shè)計(jì)風(fēng)格,應(yīng)注意哪些方面為了具有良好的程序設(shè)計(jì)風(fēng)格,應(yīng)注意哪些方面的問(wèn)題?的問(wèn)題?答案:源程序文檔化、數(shù)據(jù)說(shuō)明、語(yǔ)句構(gòu)造、輸入答案:源程序文檔化、數(shù)據(jù)說(shuō)明、語(yǔ)句構(gòu)造、輸入輸出以及對(duì)效率的追求等幾個(gè)方面。輸出以及對(duì)效率的追求等幾個(gè)方面。為增加軟件的可移植性應(yīng)注意的問(wèn)題是什么?為增加軟件的可移植性應(yīng)注意的問(wèn)題是什么?答案:在軟件結(jié)構(gòu)方面,體現(xiàn)模塊的獨(dú)立性高;在答案:在軟件結(jié)構(gòu)方面,體現(xiàn)模塊的獨(dú)立性高;在編碼方面,在滿足開(kāi)發(fā)軟件需求的前提下選擇高級(jí)編碼方面,在滿足開(kāi)發(fā)軟件需求的前提下選擇高級(jí)語(yǔ)言編寫(xiě)源程序。語(yǔ)言編寫(xiě)源程序。電子工程學(xué)院101四、軟件測(cè)試
52、四、軟件測(cè)試 4.1 軟件測(cè)試概述軟件測(cè)試概述 軟件開(kāi)發(fā)總是伴隨著軟件質(zhì)量保證的活動(dòng),而軟件開(kāi)發(fā)總是伴隨著軟件質(zhì)量保證的活動(dòng),而軟件測(cè)試是主要活動(dòng)之一。軟件測(cè)試代表了需求分軟件測(cè)試是主要活動(dòng)之一。軟件測(cè)試代表了需求分析、設(shè)計(jì)、編碼的最終復(fù)審。大量統(tǒng)計(jì)資料表明,析、設(shè)計(jì)、編碼的最終復(fù)審。大量統(tǒng)計(jì)資料表明,軟件測(cè)試的工作量往往占軟件開(kāi)發(fā)總工作量的軟件測(cè)試的工作量往往占軟件開(kāi)發(fā)總工作量的40%以上。以上。 測(cè)試的目的是發(fā)現(xiàn)軟件中的各種錯(cuò)誤,發(fā)現(xiàn)錯(cuò)測(cè)試的目的是發(fā)現(xiàn)軟件中的各種錯(cuò)誤,發(fā)現(xiàn)錯(cuò)誤之后還必須診斷并改正錯(cuò)誤,這就是調(diào)試的目的。誤之后還必須診斷并改正錯(cuò)誤,這就是調(diào)試的目的。電子工程學(xué)院102軟件測(cè)
53、試的原則軟件測(cè)試的原則1. 測(cè)試用例應(yīng)由輸入數(shù)據(jù)和預(yù)期的輸出數(shù)據(jù)兩部測(cè)試用例應(yīng)由輸入數(shù)據(jù)和預(yù)期的輸出數(shù)據(jù)兩部分組成。分組成。2. 測(cè)試用例不僅選用合理的輸入數(shù)據(jù),還要選擇測(cè)試用例不僅選用合理的輸入數(shù)據(jù),還要選擇不合理的輸入數(shù)據(jù)。不合理的輸入數(shù)據(jù)。3. 除了檢查程序是否做了它應(yīng)該做的,還應(yīng)該檢除了檢查程序是否做了它應(yīng)該做的,還應(yīng)該檢查程序是否做了它不應(yīng)該做的。查程序是否做了它不應(yīng)該做的。4. 應(yīng)制定測(cè)試計(jì)劃并嚴(yán)格執(zhí)行,排除隨意性。應(yīng)制定測(cè)試計(jì)劃并嚴(yán)格執(zhí)行,排除隨意性。5. 長(zhǎng)期保留測(cè)試用例。長(zhǎng)期保留測(cè)試用例。6. 對(duì)發(fā)現(xiàn)錯(cuò)誤較多的程序段,應(yīng)進(jìn)行更深入的測(cè)對(duì)發(fā)現(xiàn)錯(cuò)誤較多的程序段,應(yīng)進(jìn)行更深入的測(cè)試
54、。試。7. 程序員應(yīng)當(dāng)避免測(cè)試自己的程序。程序員應(yīng)當(dāng)避免測(cè)試自己的程序。電子工程學(xué)院1034.2 軟件測(cè)試方法軟件測(cè)試方法 軟件測(cè)試方法一般分為動(dòng)態(tài)測(cè)試方法與靜態(tài)測(cè)試軟件測(cè)試方法一般分為動(dòng)態(tài)測(cè)試方法與靜態(tài)測(cè)試方法。動(dòng)態(tài)測(cè)試方法又分為黑盒測(cè)試法和白盒測(cè)試方法。動(dòng)態(tài)測(cè)試方法又分為黑盒測(cè)試法和白盒測(cè)試法。法。1. 靜態(tài)測(cè)試靜態(tài)測(cè)試 靜態(tài)測(cè)試是指被測(cè)程序不在機(jī)器上運(yùn)行,而是采靜態(tài)測(cè)試是指被測(cè)程序不在機(jī)器上運(yùn)行,而是采用人工檢測(cè)和計(jì)算機(jī)輔助靜態(tài)分析的手段對(duì)程序進(jìn)用人工檢測(cè)和計(jì)算機(jī)輔助靜態(tài)分析的手段對(duì)程序進(jìn)行檢測(cè)。行檢測(cè)。 2. 動(dòng)態(tài)測(cè)試動(dòng)態(tài)測(cè)試 動(dòng)態(tài)測(cè)試指通過(guò)運(yùn)行程序發(fā)現(xiàn)錯(cuò)誤。動(dòng)態(tài)測(cè)試一動(dòng)態(tài)測(cè)試指通過(guò)運(yùn)
55、行程序發(fā)現(xiàn)錯(cuò)誤。動(dòng)態(tài)測(cè)試一般有兩種方法,分別稱為黑盒測(cè)試法和白盒測(cè)試法。般有兩種方法,分別稱為黑盒測(cè)試法和白盒測(cè)試法。電子工程學(xué)院104黑盒測(cè)試法黑盒測(cè)試法 黑盒測(cè)試法把被測(cè)對(duì)象看成一個(gè)黑盒子,完全不黑盒測(cè)試法把被測(cè)對(duì)象看成一個(gè)黑盒子,完全不考慮被測(cè)對(duì)象的內(nèi)部結(jié)構(gòu)和處理過(guò)程,只是對(duì)功能考慮被測(cè)對(duì)象的內(nèi)部結(jié)構(gòu)和處理過(guò)程,只是對(duì)功能和接口進(jìn)行的測(cè)試,檢查其功能是否能夠按照規(guī)格和接口進(jìn)行的測(cè)試,檢查其功能是否能夠按照規(guī)格說(shuō)明書(shū)的規(guī)定正常使用,是否能適當(dāng)?shù)亟邮蛰斎霐?shù)說(shuō)明書(shū)的規(guī)定正常使用,是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)產(chǎn)生正確的輸出信息。據(jù)產(chǎn)生正確的輸出信息。 黑盒測(cè)試又稱為功能測(cè)試。黑盒測(cè)試又稱為功能測(cè)試。
56、電子工程學(xué)院105白盒測(cè)試法白盒測(cè)試法 白盒測(cè)試法是把模塊看成一個(gè)透明的白盒白盒測(cè)試法是把模塊看成一個(gè)透明的白盒子,測(cè)試人員必須完全了解模塊內(nèi)部的結(jié)構(gòu)子,測(cè)試人員必須完全了解模塊內(nèi)部的結(jié)構(gòu)和處理過(guò)程,按照模塊內(nèi)部的邏輯設(shè)計(jì)測(cè)試和處理過(guò)程,按照模塊內(nèi)部的邏輯設(shè)計(jì)測(cè)試用例進(jìn)行測(cè)試,檢驗(yàn)邏輯結(jié)構(gòu)中的每條通路用例進(jìn)行測(cè)試,檢驗(yàn)邏輯結(jié)構(gòu)中的每條通路是否都能按預(yù)定要求正確工作。是否都能按預(yù)定要求正確工作。 白盒測(cè)試又稱為結(jié)構(gòu)測(cè)試。白盒測(cè)試又稱為結(jié)構(gòu)測(cè)試。電子工程學(xué)院106軟件測(cè)試準(zhǔn)則軟件測(cè)試準(zhǔn)則(1)所有的測(cè)試都應(yīng)該能追溯到用戶需求。)所有的測(cè)試都應(yīng)該能追溯到用戶需求。(2)應(yīng)當(dāng)在測(cè)試開(kāi)始之前制定出測(cè)試計(jì)
57、劃。)應(yīng)當(dāng)在測(cè)試開(kāi)始之前制定出測(cè)試計(jì)劃。(3)測(cè)試中所發(fā)現(xiàn)的)測(cè)試中所發(fā)現(xiàn)的80%的錯(cuò)誤很可能是由程序的錯(cuò)誤很可能是由程序中中20%的模塊造成的。的模塊造成的。(4)測(cè)試應(yīng)該從)測(cè)試應(yīng)該從“小規(guī)模小規(guī)?!遍_(kāi)始,并逐步進(jìn)行開(kāi)始,并逐步進(jìn)行“大規(guī)模大規(guī)模”測(cè)試。測(cè)試。(5)窮舉測(cè)試是不可能的。)窮舉測(cè)試是不可能的。(6)為了達(dá)到最佳的測(cè)試效果,應(yīng)該由獨(dú)立的第)為了達(dá)到最佳的測(cè)試效果,應(yīng)該由獨(dú)立的第三方從事測(cè)試工作。三方從事測(cè)試工作。電子工程學(xué)院107程序圖程序圖 在設(shè)計(jì)測(cè)試方案時(shí),通常用程序圖描述程序的在設(shè)計(jì)測(cè)試方案時(shí),通常用程序圖描述程序的控制流程,在程序圖中并不表現(xiàn)對(duì)數(shù)據(jù)的具體操控制流程,在程
58、序圖中并不表現(xiàn)對(duì)數(shù)據(jù)的具體操作以及分支或循環(huán)的具體條件。程序圖可以表示作以及分支或循環(huán)的具體條件。程序圖可以表示程序控制流程的復(fù)雜程度。程序控制流程的復(fù)雜程度。 在程序圖中用圓表示結(jié)點(diǎn),一個(gè)圓代表一條或在程序圖中用圓表示結(jié)點(diǎn),一個(gè)圓代表一條或多條語(yǔ)句。程序流程圖中的一個(gè)順序處理框序列多條語(yǔ)句。程序流程圖中的一個(gè)順序處理框序列和一個(gè)菱形判定框,可以映射為程序圖中的一個(gè)和一個(gè)菱形判定框,可以映射為程序圖中的一個(gè)結(jié)點(diǎn)。程序圖中的箭頭線稱為邊,它和程序流程結(jié)點(diǎn)。程序圖中的箭頭線稱為邊,它和程序流程圖中的箭頭線類似,代表控制流。在程序圖中一圖中的箭頭線類似,代表控制流。在程序圖中一條邊必須終止于一個(gè)結(jié)點(diǎn)
59、。由邊和結(jié)點(diǎn)圍起來(lái)的條邊必須終止于一個(gè)結(jié)點(diǎn)。由邊和結(jié)點(diǎn)圍起來(lái)的部分稱為區(qū)域。部分稱為區(qū)域。 程序圖中區(qū)域的個(gè)數(shù)程序圖中區(qū)域的個(gè)數(shù)= =流程圖中判定框個(gè)數(shù)流程圖中判定框個(gè)數(shù)+1+1電子工程學(xué)院108【例】由程序流程圖映射程序圖【例】由程序流程圖映射程序圖程序圖中的結(jié)點(diǎn)代表流程圖中的判定框和處理框。程序圖中的結(jié)點(diǎn)代表流程圖中的判定框和處理框。程序圖中的邊代表流程圖中的控制流向。程序圖中的邊代表流程圖中的控制流向。流程圖中有流程圖中有3個(gè)判定框,程序圖中有個(gè)判定框,程序圖中有4個(gè)區(qū)域。個(gè)區(qū)域。電子工程學(xué)院109用用PDL表示的處理過(guò)程(含有復(fù)合條件)映射為程表示的處理過(guò)程(含有復(fù)合條件)映射為程序圖
60、序圖電子工程學(xué)院1104.3 測(cè)試用例的設(shè)計(jì)測(cè)試用例的設(shè)計(jì) 每個(gè)測(cè)試用例包括每個(gè)測(cè)試用例包括:(1)具體的測(cè)試目的(所要測(cè)試的具體功能);)具體的測(cè)試目的(所要測(cè)試的具體功能);(2)應(yīng)該輸入的測(cè)試數(shù)據(jù);)應(yīng)該輸入的測(cè)試數(shù)據(jù);(3)預(yù)期的輸出結(jié)果。)預(yù)期的輸出結(jié)果。 通過(guò)測(cè)試,將實(shí)際的輸出結(jié)果與預(yù)期的輸出結(jié)果進(jìn)通過(guò)測(cè)試,將實(shí)際的輸出結(jié)果與預(yù)期的輸出結(jié)果進(jìn)行比較,可以知道是否具有錯(cuò)誤。如果有錯(cuò)誤,再進(jìn)行比較,可以知道是否具有錯(cuò)誤。如果有錯(cuò)誤,再進(jìn)行調(diào)試,找出產(chǎn)生錯(cuò)誤的原因和位置,并對(duì)錯(cuò)誤進(jìn)行行調(diào)試,找出產(chǎn)生錯(cuò)誤的原因和位置,并對(duì)錯(cuò)誤進(jìn)行修改。修改。電子工程學(xué)院111白盒測(cè)試技術(shù)白盒測(cè)試技術(shù)1.
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 苗木補(bǔ)栽合同范本
- 蜜蜂托養(yǎng)協(xié)議書(shū)
- 視頻征集協(xié)議書(shū)
- 認(rèn)籌車位協(xié)議書(shū)
- 設(shè)備抵對(duì)協(xié)議書(shū)
- 設(shè)備配套協(xié)議書(shū)
- 訴前保全協(xié)議書(shū)
- 試車協(xié)議書(shū)范本
- 托管醫(yī)院合同范本
- 弟弟蓋房協(xié)議書(shū)
- 《當(dāng)代廣播電視概論(第3版)》全套教學(xué)課件
- 防水補(bǔ)漏合同協(xié)議
- 2025年樂(lè)山市商業(yè)銀行社會(huì)招聘筆試參考題庫(kù)附答案解析
- 急救護(hù)理:基礎(chǔ)技能與操作
- 一件代發(fā)協(xié)議合同
- 2025年商洛市中心醫(yī)院招聘(35人)參考筆試試題及答案解析
- Unit 6 A Day in the Life Section A Prociation +(2a-2e) 課件 2025-2026學(xué)年人教版七年級(jí)英語(yǔ)上冊(cè)
- 《煤礦安全規(guī)程(2025)》防治水部分解讀課件
- 2026年無(wú)人機(jī)物流配送應(yīng)急預(yù)案制定與風(fēng)險(xiǎn)防控
- 山東開(kāi)放大學(xué)《勞動(dòng)合同法(本科)》形考作業(yè)1-3終考答案
- 15《我們不亂扔》課件 2025-2026學(xué)年道德與法治一年級(jí)上冊(cè)統(tǒng)編版
評(píng)論
0/150
提交評(píng)論