




已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件工程復習一 軟件工程概述1 軟件危機的定義,如何克服2 軟件過程模型,螺旋模型,噴泉模型二可行性研究:經濟可行性,技術可行性內容三面向對象的方法與UML1. 面向對象系統(tǒng)的概念1) 對象的定義2) 繼承和多態(tài)重用3) 活動和動作的定義與區(qū)別2 UML模型元素3. UML中的圖四軟件需求工程1什么叫需求分析,每一步生成哪些文檔2數據流圖的定義3ONT的概念方法和模型(對象模型、動態(tài)模型、功能模型)4面向對象的分析建模方法5原型化方法,結構化分析方法,及兩者間的關系。6.軟件需求規(guī)格說明書內容,目標,作用7.UML中類圖與對象圖(會話)五軟件設計工程1.軟件設計的目標與準則 2.了解“耦合性”概念 數據流圖-程序結構圖(事物流/變換流)3.a結構化設計與結構化分析的關系 b事務流映射 c軟件模塊結構改進方法7條 記前3條(注:abc三條比較重要)4.a程序流程圖 bPAD圖5.Jackson系統(tǒng)方法適用范圍6.詳細設計,PAD圖(給算法畫PAD圖)、控制流圖、環(huán)路復雜度 六軟件實現1.源程序文檔化 2.Mecabe度量法(環(huán)路復雜度)七軟件測試工程 1.代碼檢查 2.什么是“樁”模塊,驅動模塊八軟件測試用例 1.測試用例設計概述 2.動態(tài)測試【白盒測試(基本路徑測試)、黑盒測試(等價類劃分)】 3. 9.3節(jié)基本路徑測試要看九軟件維護 1.軟件維護的目標 2.程序修改的定義和副作用軟件工程復習知識點一 軟件工程概述1 軟件危機的定義,如何克服 (1)軟件危機:是指落后的軟件生產方式無法滿足迅速增長的計算機軟件需求,從而導致軟件的開發(fā)與維護過程中出現一系列嚴重問題的現象。 軟件危機包含下述兩方面的問題:如何開發(fā)軟件,以滿足對軟件日益增長的需求;如何維護數量不斷膨脹的已有軟件。 根源:與軟件本身的特點有關;由軟件開發(fā)和維護的方法不正確有關。 (2)如何克服軟件危機:開發(fā):軟件開發(fā)技術、方法、工具,用科學的工程化思想來組織和指導軟件開發(fā)的各個階段 ;努力完善軟件質量保障體系 重視軟件文檔;人員:必要的組織管理措施,各類人員協(xié)同共同完成軟件開發(fā)項目,聘用有經驗的專業(yè)人員,可以減少開發(fā)成本; 測試、維護:盡早并不斷改正的錯誤。主要表現:l 開發(fā)人員開發(fā)的軟件產品不能完全滿足用戶的需求;l 軟件產品的質量難以得到保障;l 開發(fā)周期開發(fā)經費和維護費用很難被準確估計從而給項目的管理帶來很多麻煩;l 隨著技術的更新,用戶的擴大,已有的軟件產品不能靈活地適應環(huán)境的改變;l 軟件文檔不完備并且存在文檔內容與軟件產品不符的情況。原因:軟件開發(fā)是一項復雜的工程,需要用科學的工程化思想來組織和指導軟件開發(fā)的各個階段沒有完善的質量保證體系軟件文檔的重要性沒有得到軟件開發(fā)人員和用戶的足夠重視從事軟件開發(fā)的專業(yè)人員對這個產業(yè)認識不夠充分缺乏經驗軟件獨有的特點也給軟件的開發(fā)和維護帶來困難2 軟件過程模型,螺旋模型,噴泉模型(1) 螺旋模型:將瀑布模型與演化模型(快速原型模型)結合起來。沿著螺線旋轉,自內向外每旋轉一圈便開發(fā)出更完善的一個新版本。用于風險較大的大型軟件開發(fā)模型,分為制定計劃、風險分析、實施工程、客戶評估.(2)噴泉模型:現了迭代和無間隙的特性。是對象驅動的過程。(階段相互重疊,全過程)特點:階段相互重疊,并行性;整個過程是一個迭代的、逐步細化的過程;是對象驅動的過程;不但反映了系統(tǒng)的開發(fā)全過程,而且也反映了對象族的開發(fā)和復用的過程。相關題型: 螺旋模型將_瀑布_模型和_快速原型_模型結合起來,加入了兩種模型均忽略了的風險分析,彌補了這兩種模型的不足。 螺旋模型將開發(fā)過程分為幾個螺旋周期,在每個螺旋周期內分為4個工作步驟。第一步_目標設定(或制定計劃)_,確定目標,選定實施方案,明確開發(fā)限制條件。第二步_風險估計與弱化(或風險分析)_,分析所選方案,識別風險,通過原型消除風險。第三步_開發(fā)與確認(或實施工程)_,實施軟件開發(fā)。第四步_計劃(客戶評價)_, 評價開發(fā)工作,提出修改意見,建立下一個周期的計劃。噴泉模型是一種以_用戶需求_為動力,以_對象_作為驅動的模型,適合于_面向對象的軟件項目_的開發(fā)方法。它克服了瀑布模型不支持軟件重用和多項開發(fā)活動集成的局限性。噴泉模型使開發(fā)過程具有_迭代_和_無間隙_。2 可行性研究:經濟可行性,技術可行性內容 經濟可研究要對項目的開發(fā)總成本與開發(fā)系統(tǒng)將帶來的經濟效益之間的差值進行度量。經濟可行性,需要進行成本-效益分析。對可能取得的效益(有形的和無形的)進行比較權衡。(1)經濟可行性定義/內容:進行開發(fā)成本的估算以及了解取得效益的評估,確定要開發(fā)的項目是否值得投資開發(fā)。 有形的效益可以用貨幣的時間價值、投資回收期、純收入、投資回收率等指標進行度量。 無形的效益主要是從性質上、心理上進行衡量,很難直接進行數量的比較。 幾種度量效益的方法:貨幣的時間價值投資回收期純收入投資回收率(2)技術可行性內容: 根據待開發(fā)系統(tǒng)的功能、性能及實現系統(tǒng)的各種約束條件等,分析在現有的資源和技術條件下,技術風險有多大,系統(tǒng)是否能實現。技術可行性分析通常包括風險分析、資源分析和技術分析。技術型可行性研究是對技術解決方案的實用性、技術資源的可用性和設備條件作出評估。經濟可研究要對項目的開發(fā)總成本與開發(fā)系統(tǒng)將帶來的經濟效益之間的差值進行度量三面向對象的方法與UML1. 面向對象系統(tǒng)的概念1) 對象的定義對象是客觀世界中存在的事物,也可以是概念化的實體,它由一組屬性和操作組成。2) 繼承和多態(tài)重用繼承表示類之間的層次關系,它使得某類對象可以自動擁有另外一個或多個對象的全部屬性和操作。多態(tài)是一種使父類中定義的屬性或操作被子類繼承后可以有不同的實現的機制。3) 活動和動作的定義與區(qū)別行為事物是UML模型的動態(tài)部分,包括交互和狀態(tài)機兩類。交互(Interaction):交互由在特定的上下文環(huán)境中共同完成一定任務的一組對象之間傳遞的消息組。交互涉及的元素包括消息、動作序列和鏈。狀態(tài)機(State Machine):狀態(tài)機描述了一個對象或一個交互在生存周期內響應事件所經歷的狀態(tài)序列。狀態(tài)機涉及的元素包括狀態(tài)、轉換、事件活動等。2 UML模型元素UML的三個主要組成元素:1)基本構造塊(basic building block)2)組織構造塊的規(guī)則(rules)3)運用于整個UML的公共機制(common mechanisms)補充:UML包括三種基本構造塊(UML的模型元素):1)事物(things)2)關系(relationships)3)圖(diagrams)3. UML中的圖四軟件需求工程(需求開發(fā)、需求管理)1什么叫需求分析,每一步生成哪些文檔(1)需求分析是在可行性研究的基礎上,將用戶對系統(tǒng)的描述,通過開發(fā)人員的分析概括,抽象為完整的需求定義,再形成一系列文檔的過程。(2)需求分析的步驟:獲取需求,識別問題用戶需求草稿(文檔);分析需求,建立目標系統(tǒng)的邏輯框架分析模型(非文檔);將需求文檔化用戶需求和系統(tǒng)需求(文檔);需求驗證(需求評審)需求規(guī)格說明書(文檔)。軟件需求工程過程模型:需求分析階段需要編寫的文檔有:需求規(guī)格說明書,初步用戶使用手冊和確認測試計劃.需求開發(fā)是一個迭代的過程,需求迭代是需求開發(fā)成功的關鍵。分析建模中建模方法有:結構化分析法(SA)原型化方法 面向對象的分析方法軟件設計中軟件結構設計的方法:結構化設計法(SD),面向對象的設計方法2數據流圖的定義 數據流圖DFD(data flow diagram)是描述系統(tǒng)中數據流的圖形工具,是一種用來表示信息流和信息變換過程的圖解方法,可以標識一個系統(tǒng)的邏輯輸入和輸出,以及把邏輯輸入轉化為邏輯輸出所需的加工處理.3 OMT的概念方法和模型(對象模型、動態(tài)模型、功能模型)Rumbaugh方法(OMTObject Modeling Technique ,對象模型化技術) 采用了面向對象的概念,并引入各種獨立于語言的表示符。開發(fā)工作的基礎是對真實世界的對象建模,然后圍繞這些對象使用分析模型來進行獨立于語言的設計。Rumbaugh用來描述一個系統(tǒng)的三種模型:對象模型描述系統(tǒng)中對象的靜態(tài)結構;動態(tài)模型描述系統(tǒng)狀態(tài)隨時間變化的情況;功能模型描述系統(tǒng)中各個數據值的轉變。 該方法強調:系統(tǒng)設計(并發(fā)、數據、控制)和對象設計(算法)。適用于分析和描述以數據為中心的信息系統(tǒng)。 11. 由RumBaugh等人提出的一種面向對象方法叫做對象模型化技術(OMT),即三視點技術,它要求把分析時收集的信息建立在三個模型中。第一個模型是( A 對象模型),它的作用是描述系統(tǒng)的靜態(tài)結構,包括構成系統(tǒng)的對象和類,它們的屬性和操作,以及它們之間的聯系。第二個模型是( B動態(tài)模型 ),它描述系統(tǒng)的控制邏輯,主要涉及系統(tǒng)中各個對象和類的時序及變化狀況。( B )包括兩種圖, 即( C )和( D )。( C 狀態(tài)遷移圖 )描述每一類對象的行為,( D )描述發(fā)生于系統(tǒng)執(zhí)行過程中的某一特定場景。第三個模型是( E 功能模型),它著重于描述系統(tǒng)內部數據的傳送與處理,它由多個數據流圖組成。 供選擇的答案: A, B, E: 數據模型 功能模型 行為模型 信息模型 原型 動態(tài)模型 對象模型 邏輯模型 控制模型 仿真模型 C, D: 對象圖 概念模型圖 狀態(tài)遷移圖 數據流程圖 時序圖 事件追蹤圖 控制流程圖 邏輯模擬圖 仿真圖 行為圖答案:11.A. B. C. D. E.4 面向對象的分析建模方法分析建模中建模方法有:結構化分析法(SA)原型化方法 面向對象的分析方法當前流行的面向對象建模方法有:Booch方法Rumbaugh方法Coad&Yourdon方法Jacobson方法Wirfs-Brock方法UML的OOA方法5 原型化方法,結構化分析方法(SA),及兩者間的關系。兩者之間的關系:都是需求工程中需求開發(fā)階段的分析建模的建模方法。兩者相互補充。 原型化方法:是用戶和軟件開發(fā)人員之間進行的一種交互過程。原型:模擬某種產品的原始模型。軟件原型的分類:探索型 實驗型 進化型使用原型的策略:廢棄策略 追加策略結構化分析方法(SA):結構化分析方法最初只是著眼于數據流,自頂向下,逐層分解,建立系統(tǒng)的處理流程,以數據流圖和數據字典為主要工具,建立系統(tǒng)的邏輯模型。擴充后,將建模技術擴展到數據建模、功能建模和行為建模,以實體-關系圖(E-R圖)、數據流圖和控制流圖、狀態(tài)-遷移圖為工具,數據字典為核心,從不同視點建立系統(tǒng)的分析模型。 -參考:紅色字體請注意看原型化方法:原型化方法是一種定義系統(tǒng)需求可采取的策略,實現時需經過若干步驟,一般其采用的最后步驟應是模型驗證。基本思想:開發(fā)人員對用戶提出的問題進行總結,就系統(tǒng)的主要需求取得一致意見后,開發(fā)一個原型(原型是由開發(fā)人員與用戶合作,共同確定系統(tǒng)的基本要求和主要功能,并在較短時間內開發(fā)的一個實驗性的、簡單易用的小型系統(tǒng)。原型應該是可以運行的,可以修改的。)并運行之,然后反復對原型進行修改,使之逐步完善,直到用戶對系統(tǒng)完全滿意為止。 優(yōu)點:(1)需求表示清楚,用戶滿意度較高(2)降低開始風險和開發(fā)成本 缺點:(1)原型法不適用于開發(fā)大型的信息系統(tǒng)(2)系統(tǒng)難于維護(3)如果用戶合作不好,盲目糾錯,會拖延開發(fā)進程. 適用范圍:(1)用戶需求不清,管理及業(yè)務不穩(wěn)定,需求經常變化(2)規(guī)模小,不太復雜(3)開發(fā)信息系統(tǒng)的最終用戶界面.結構化開發(fā)方法(Structured Developing Method)是現有的軟件開發(fā)方法中最成熟,應用最廣泛的方法,主要特點是快速、自然和方便。結構化開發(fā)方法由結構化分析方法(SA法)、結構化設計方法(SD法)及結構化程序設計方法(SP法)構成的。 結構化設計方法(SD法 Structured Design)是結構化開發(fā)方法的核心,與SA法,SP法密切聯系,主要完成軟件系統(tǒng)的總體結構設計。基本思想:在系統(tǒng)建立之前信息就能被充分理解。它要求嚴格劃分開發(fā)階段,用規(guī)范的方法與圖表工具有步驟地來完成各階段的工作,每個階段都以規(guī)范的文檔資料作為其成果,最終得到滿足用戶需要的系統(tǒng)。 優(yōu)點:(1)邏輯設計與物理設計分開(2)開發(fā)過程中形成一套規(guī)范化的文檔,便于后期的修改和維護。 缺點:(1)開發(fā)周期長(2)系統(tǒng)難以適應環(huán)境的變化(3)開發(fā)過程復雜繁瑣 適用范圍:該方法適用于一些組織相對穩(wěn)定、業(yè)務處理過程規(guī)范、需求明確且在一定時期內不會發(fā)生大的變化的大型復雜系統(tǒng)的開發(fā)。-需求建模遵循三個原則:1 劃分:描述需求的整體部分關系;2 抽象:描述需求的一般化特殊化關系;3 投影:描述需求的多維視圖;定義系統(tǒng)模型要區(qū)分邏輯模型和物理模型。常用模型有數據建模、功能建模和過程建模。常用的建模分析方法1st) 面向數據流的結構化分析方法(SA)2nd) 面向數據結構的Jackson方法(JSD)3rd) 原型化方法4th) 面向數據結構的結構化數據系統(tǒng)開發(fā)方法(DSSD)5th) 面向對象的分析方法(OOA) 等結構化設計(SD)與結構化分析方法(SA):結構化:面向數據結構。數據結構是數據的各個元素之間邏輯關系的一種表示。數據結構設計應確定數據的組織、存取方式、相關程度以及信息的不同處理方法。(典型的數據結構:鏈表、樹狀結構、網狀結構、n維空間)軟件的結構有2類:軟件的模塊結構 軟件的數據結構題目: 原型化方法是用戶和軟件開發(fā)人員之間進行的一種交互過程,適用于( A )系統(tǒng)。它從用戶界面的開發(fā)入手,首先形成( B ),用戶( C ),并就( D )提出意見,它是一種( E )型的設計過程。供選擇的答案:A. 需求不確定性高的 需求確定的 管理信息 決策支持B. 用戶界面使用手冊 用戶界面需求分析說明書 系統(tǒng)界面原型 完善的用戶界面C. 改進用戶界面的設計 閱讀文檔資料 模擬用戶界面的運行 運行用戶界面原型D. 同意什么和不同意什么 使用和不使用哪一種編程語言 程序的結構 執(zhí)行速度是否滿足要求E. 自外向內(從界面開始) 自頂向下 自內向外 自底向上原型化方法:問題總結主要需求原型運行修改、完善滿意6. 軟件需求規(guī)格說明書內容,目標,作用 需求規(guī)格說明包括(內容):系統(tǒng)應提供的功能和服務;非功能需求;系統(tǒng)開發(fā)或運行的限制條件;與系統(tǒng)互連的其他系統(tǒng)的信息。 軟件需求規(guī)格說明是描述需求的重要文檔,是軟件需求分析工作的主要成果。它應著重反映軟件的功能需求、性能需求、外部接口、數據流程等多個方面。(在軟件開發(fā)過程、軟件運行和維護過程的整個生存周期當中,它都起著重要的作用。)軟件需求規(guī)格說明的目標:在軟件產品方面,為在軟件開發(fā)人員與客戶之間達成共同協(xié)議建立基礎。它全面描述了要實現的軟件功能。提高開發(fā)效率。編制軟件需求規(guī)格說明的過程可讓客戶在軟件設計開始之前能周密地思考全部需求,從而減少事后重新設計、重新編碼和重新測試的返工活動。為成本估算和編制進度計劃提供基礎。軟件需求規(guī)格說明提供的對于開發(fā)軟件的描述成為軟件產品成本估算的基礎。成為編制進度計劃的依據。為確認和驗證提供一個基準。作為開發(fā)合同的一個部分,軟件需求規(guī)格說明可以提供一個可度量和可遵循的基準。便于移植。有了軟件需求規(guī)格說明,可幫助開發(fā)人員把軟件移植到新的操作環(huán)境,以適應客戶新的需要。成為軟件不斷改進的基礎。由于軟件需求規(guī)格說明所涉及的只是軟件產品的外部視圖(軟件能做什么),而不涉及軟件產品的內部設計(軟件如何做)。因此,軟件需求規(guī)格說明成為軟件產品改進的基礎。軟件需求規(guī)格說明編制的原則:功能與實現分離,描述要“做什么”而不是“怎樣實現”。要求使用面向處理的規(guī)格說明語言,從而得到“做什么”的規(guī)格說明。如果目標軟件只是一個大系統(tǒng)中的一個元素,那么整個大系統(tǒng)也包括在規(guī)格說明的描述之中。規(guī)格說明必須包括系統(tǒng)運行的環(huán)境。題目:.軟件需求分析的任務不應包括(A)。進行需求分析可使用多種工具,但(B)是不適用的。在需求分析中,分析員要從用戶那里解決的最重要的問題是( C )。需求規(guī)格說明書的內容不應當包括( D )。該文檔(需求規(guī)格說明書)在軟件開發(fā)中具有重要的作用,但其作用不應當包括( E )。供選擇的答案:A. 問題分析 信息域分 結構化程序設計 確定邏輯模型(分析建模)B. 數據流圖 判定表 PAD圖(詳細設計) 數據詞典C. 要讓軟件做什么 要給該軟件提供哪些信息 要求軟件工作效率如何 要讓軟件具有什么樣的結構D. 對重要功能的描述 對算法的詳細過程性描述 軟件確認準則 軟件的性能E. 軟件設計的依據 用戶和開發(fā)人員對軟件要“做什么”的共同理解 軟件驗收的依據 軟件可行性分析的依據(可行性分析在需求分析階段之前)7. UML中類圖與對象圖(會畫圖)(綜合題)(1)類圖:(2) 對象圖:對象名:類名 屬性=屬性值對象間的鏈可以使類之間關聯的實例五軟件設計工程1.軟件設計的目標與準則 軟件設計的基本目標是用比較抽象概括的方式確定目標系統(tǒng)如何完成預定的任務,即軟件設計是確定系統(tǒng)的物理模型。軟件設計的目標涉及性能、可靠性、成本及維護等多個方面。軟件設計的準則:性能準則:包括對系統(tǒng)速度和空間的需求。可靠性準則:決定了對減少系統(tǒng)崩潰及隨后所造成危害所做的努力程度。成本準則:包括開發(fā)、配置和管理系統(tǒng)的成本。維護準則:確定在完成開發(fā)后再次改變系統(tǒng)的困難程度。最終用戶準則:包括從用戶視點出發(fā)所需的屬性,但并沒有覆蓋性能準則和可靠性準則。2. 了解“耦合性”概念 數據流圖-程序結構圖(事物流/變換流)耦合:是模塊之間互相連接的緊密程度的度量。內聚:模塊內部各個元素彼此結合的緊密程度的度量。數據流程圖(DFD)的基本圖形元素(4種):外部實體、加工、數據流、數據存儲。畫法:頂層(0層),功能分解(1層),功能進一步分解(2層)結構圖(SC)的主要成分(4個):模塊模塊的調用關系和接口模塊間的信息傳遞(數據信息、控制信息)重復(循環(huán))調用和選擇調用的符號交換流型結構圖:邏輯輸入C、C變換成D,邏輯輸出D(還有物理輸入A,物理輸出E)事務流型結構圖:數據接收通路、得到結果的調度(若干有選擇關系的平行事務,)、輸出結果。舉例:(1) 變換流型結構圖(2) 事務流型結構圖3. (注:abc三條比較重要)a結構化設計與結構化分析的關系1) 結構化設計(structured design,SD)是一種面向數據流的設計方法,即根據系統(tǒng)的處理過程進行設計,故亦稱為過程驅動的設計。軟件設計階段,用于軟件結構設計,建立目標系統(tǒng)的物理模型。2) 結構化分析方法(SA):是面向數據流的分析方法,自頂向下,逐層分解。(建立系統(tǒng)的處理流程,建模技術擴展到數據建模、功能建模和行為建模,)以實體-關系圖(E-R圖)、數據流圖和控制流圖、狀態(tài)-遷移圖為工具,數據字典為核心,從不同視點建立系統(tǒng)的分析模型(即系統(tǒng)的邏輯模型)。需求開發(fā)階段,用于分析建模,即建立目標系統(tǒng)的邏輯模型。3) 結構化設計與結構化分析的關系:軟件設計必須依據對軟件的需求來進行,結構化分析的結果為結構化設計提供了最基本的輸入信息。左邊:SA;右邊:SD b事務流映射事務流映射(概念):從事務流型數據流圖出發(fā)的,建立軟件結構圖的方法叫做事務流映射。從分析數據流圖開始,自頂向下,逐步分解,建立系統(tǒng)的結構。事務流型的DFD的組成:輸入流事務中心若干條活動流。將事務流型DFD映射成高層系統(tǒng)結構: 頂層模塊:其功能就是整個系統(tǒng)的功能。接收模塊:接收輸入數據。分派模塊:調度模塊,控制下層的所有活動模塊。事務模塊:對應活動流,是該活動流映射成的。c軟件模塊結構改進方法7條(記前3條)模塊功能完善化;一個完整的模塊應當有以下幾部分:執(zhí)行規(guī)定的功能的部分;出錯處理的部分返回數據給它的調用者時,返回一個狀態(tài)碼。消除重復功能,改善軟件結構;模塊的作用范圍應在控制范圍之內;模塊的控制范圍包括它本身及其所有的從屬模塊。模塊的作用范圍是指模塊內一個判定的作用范圍,凡是受這個判定影響的所有模塊都屬于這個判定的作用范圍。如果一個判定的作用范圍包含在這個判定所在模塊的控制范圍之內,則這種結構是簡單的,否則,它的結構是不簡單的。盡可能減少高扇出結構;避免或減少使用病態(tài)聯接;模塊的大小要適中;設計功能可預測的模塊,避免過分受限制的模塊。軟件包應滿足設計約束和可移植性。注:軟件結構:軟件模塊結構軟件數據結構題目:從下列關于模塊化程序設計的敘述中選出5條正確的敘述。(2,3,4,7,8) 程序設計比較方便,但比較難以維護。(N) 便于由多個人分工編制大型程序。(Y) 軟件的功能便于擴充。(Y) 程序易于理解,也便于排錯。(Y) 在主存儲器能夠容納得下的前提下,應使模塊盡可能大,以便減少模塊的個數。(N) 模塊之間的接口叫做數據文件。(?) 只要模塊之間的接口關系不變,各模塊內部實現細節(jié)的修改將不會影響別的模塊。(Y) 模塊間的單向調用關系叫做模塊的層次結構。(Y?) 模塊越小,模塊化的優(yōu)點越明顯。一般來說,模塊的大小都在10行以下。(N?)4. a程序流程圖程序流程圖:直觀清晰,易于使用,但控制流程線不易限制,不易反映逐步求精的過程,不易表示數據結構。是詳細設計階段使用的工具。bPAD圖PAD圖:是種由左往右展開的二維樹型結構,其能清晰地反映程序的層次結構,支持逐步求精的設計方法,支持結構化程序設計原理,易讀易寫,使用方便;可自動生成程序。是詳細設計階段使用的工具。5. Jackson系統(tǒng)方法適用范圍既能表示數據結構也能表示程序結構(因為結構程序設計也只使用三種基本結構:順序結構、選擇結構、重復結構)。6. 詳細設計階段:PAD圖(給算法畫PAD圖)、控制流圖、環(huán)路復雜度(綜合題)控制流圖:(程序流程圖程序控制流圖)環(huán)路復雜度=判定節(jié)點數+1 六軟件實現1. 源程序文檔化 源程序文檔化: 按實際意義命名 遵循一定命名規(guī)則 變量不要過于相似 定義時作出解釋; 數據說明; 語句構造; 輸入輸出; 效率。文檔的作用是什么? 在軟件工程中,文檔用來表示對需求、工程或結果進行描述、定義、規(guī)定、報告或認證的任何書面或圖示的信息。它們描述和規(guī)定了軟件設計和實現的細節(jié),說明使用軟件的操作命令。文檔也是軟件產品的一部分,沒有文檔的軟件就不成為軟件。2. Mecabe度量法(環(huán)路復雜度)將環(huán)路復雜性定義為控制流圖中的區(qū)域數。(區(qū)域:即由邊和節(jié)點封閉起來的區(qū)域)V(G)=m-n+p 從入口點到出口點加一條虛線表示的有向邊,構成強連同圖:有向連通圖G環(huán)路復雜度V(G)=m-n+1 ,其中m為圖G中弧數,n為圖G中結點數,p為圖G中強連通分量個數(p=1)。從入口點到出口點不加虛線:給定控制流圖G的圈復雜度V(G)=E-N+2,其中E是流圖中邊的數量,N是流圖中結點的數量。給定控制流圖G的圈復雜度V(G)=P+1,其中P是流圖中判定結點的數量七軟件測試工程 1.代碼檢查 人工測試技術:桌面檢查代碼檢查走查通行評審技術桌面檢查(Desk Checking):由程序員自己檢查自己編寫的程序。代碼檢查(Code Inspection):是以小組位單位閱讀代碼,應用一系列規(guī)程和缺陷檢查技術,檢查實際產品,包括文檔和程序代碼,發(fā)現存在缺陷和缺陷的過程。 走查(Walkthrough):與代碼檢查很相似,也以小組位單位進行。不同點是規(guī)程稍微不同,采用的缺陷檢查技術不同。 2.什么是樁模塊,驅動模塊驅動模塊:在測試過程中,用以代替被測試模塊的上級模塊稱為驅動模塊。樁模塊:在測試過程中,用以代替被測試模塊的下級模塊稱為樁模塊。八軟件測試用例 1.測試用例設計概述 測試用例是為了特定目的而設計的測試數據及與之相關的測試規(guī)程的一個特定的集合,或稱為有效地發(fā)現軟件缺陷的最小測試執(zhí)行單元。1 測試用例的重要性;2 測試用例數與軟件規(guī)模的關系:軟件規(guī)模越大,測試用例占的比例越大。3 測試用例設計說明的書寫規(guī)范:ANSI/IEEE829-1983標準。 黑盒測試:在測試時,吧、把程序看作一個不能打開的黑盒 黑盒測試 子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口處進行測試。 白盒測試:是一種廣泛使用的邏輯測試技術。它的對象基本白盒測試上是源程序,是以程序的內部邏輯結構為基礎的一種測試技術。 2.動態(tài)測試【
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中小學心理健康教育課程設計及教學新鄭市預防青少年違法犯罪教育培訓
- 競選班長演講稿演講稿體裁6篇
- 閱讀一本好書后的感悟讀后感(5篇)
- 關于環(huán)境保護的議題討論作文(8篇)
- 物流行業(yè)在職表現證明(6篇)
- 2025年電子商務師(初級)職業(yè)技能鑒定試卷:電子商務數據分析競賽賽前準備方案評審標準試題
- 2025年小學語文畢業(yè)升學考試全真模擬卷(綜合素養(yǎng)提升版)十二、文學名著題
- 超市與生鮮電商平臺庫存管理協(xié)議
- 樓宇建筑工程承建合作協(xié)議
- 語文課上的一件事話題探討13篇范文
- 為什么天空是藍色的
- 集團分權管理手冊
- 設計報價單模板
- 自動控制原理:數學模型 PPT
- 星期音樂會智慧樹知到課后章節(jié)答案2023年下同濟大學
- 幼兒園課件小小銀行家
- 離婚登記申請受理回執(zhí)單
- 第章 細菌藥敏試驗及其耐藥表型檢測
- 2022-2023學年廣東省廣州市花都區(qū)四年級數學第二學期期末考試模擬試題含解析
- 星海音樂學院樂理試題A卷
- 機械原理課程設計-旋轉型灌裝機
評論
0/150
提交評論