高中信息技術(shù)第3章軟件工程基礎(chǔ)課件滬教版選修.ppt
《高中信息技術(shù)第3章軟件工程基礎(chǔ)課件滬教版選修.ppt》由會員分享,可在線閱讀,更多相關(guān)《高中信息技術(shù)第3章軟件工程基礎(chǔ)課件滬教版選修.ppt(115頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、1,第3章 軟件工程基礎(chǔ),,2,內(nèi)容提要,軟件工程基本概念,軟件生命周期概念,軟件工具與軟件開發(fā)環(huán)境。 結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖,數(shù)據(jù)字典,軟件需求規(guī)格說明書。 結(jié)構(gòu)化設(shè)計方法,總體設(shè)計與詳細設(shè)計。 軟件測試的方法,白盒測試與黑盒測試,測試用例設(shè)計,軟件測試的實施,單元測試、集成測試和系統(tǒng)測試。 程序的調(diào)試,3,3.1 軟件工程基本概念,4,3.1.1 軟件定義與軟件特點,1軟件的定義和組成 定義: 計算機軟件(Software)是計算機系統(tǒng)中與硬件相互依賴的另一部分。 組成: 程序 數(shù)據(jù) 文檔 國標(GB)定義 與計算機系統(tǒng)的操作有關(guān)的計算機程序、規(guī)程、規(guī)則,以及可能有的文件、文檔及數(shù)據(jù)。,
2、5,3.1.1 軟件定義與軟件特點(續(xù)),2軟件的特點 軟件是一種邏輯實體,而不是具體的物理實體,具有抽象性 軟件沒有明顯的制造過程。對軟件的質(zhì)量控制,必須在軟件開發(fā)方面下功夫 軟件不存在老化問題,但存在退化問題,必須要修改和維護 對計算機系統(tǒng)有著依賴性軟件移植的問題 軟件復(fù)雜性高,開發(fā)和維護成本高 軟件開發(fā)涉及諸多社會因素,6,3.1.1 軟件定義與軟件特點(續(xù)),3軟件的分類 應(yīng)用軟件 系統(tǒng)軟件 操作系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng) 設(shè)備驅(qū)動程序 支撐軟件,7,3.1.2 軟件危機與軟件工程,1軟件危機 軟件工程源自于軟件危機 主要表現(xiàn): 軟件需求的增長得不到滿足 軟件開發(fā)成本和進度無法控制 軟件質(zhì)量
3、難以保證 軟件不可維護或維護程度非常低 軟件成本不斷提高 軟件開發(fā)生產(chǎn)效率的提高趕不上硬件的發(fā)展和應(yīng)用需求的增長 歸結(jié)為成本、質(zhì)量和生產(chǎn)率等問題,8,3.1.2 軟件危機與軟件工程,2軟件工程的產(chǎn)生與定義 軟件工程學(xué)工程學(xué)的新興領(lǐng)域 定義: 國標(GB):應(yīng)用于計算機軟件的定義、開發(fā)和維護的一整套方法、工具、文檔、實踐標準和工序。 德國人Fritz Bauer:軟件工程是建立并使用完善的工程化原則,以較經(jīng)濟的手段獲取能在實際機器上有效運行的可靠軟件的一系統(tǒng)方法。 IEEE:將系統(tǒng)的、規(guī)范的、可度量的方法應(yīng)用于軟件開發(fā)、運行和維護的過程,即將工程應(yīng)用于軟件中。 主要思想:在軟件開發(fā)過程中需要應(yīng)用
4、工程化原則的重要性,9,3.1.2 軟件危機與軟件工程,2軟件工程的產(chǎn)生與定義 軟件工程3個要素: 方法 工具 過程,10,3.1.3 軟件工程過程與軟件生命周期,1軟件工程過程 P(Plan)軟件規(guī)格說明 D(Do)軟件開發(fā) C(Check)軟件確認 A(Action)軟件演進,11,3.1.3 軟件工程過程與軟件生命周期,軟件產(chǎn)品從提出、實現(xiàn)、使用維護、停止使用到退役的過程 3個階段 6個階段工作,12,3.1.3 軟件工程過程與軟件生命周期,定義階段 制定計劃:”能做嗎?“ 需求分析:“做什么?” 開發(fā)階段: 軟件設(shè)計:“如何做?”,分為概要設(shè)計和詳細設(shè)計兩個階段。 軟件實現(xiàn):“實現(xiàn)”,
5、編碼。 軟件測試:”做的怎么樣?“ 運行維護階段 使用,不斷維護,13,3.1.4 軟件工程的目標與原則,1軟件工程的目標 成功的項目: 成本 功能 移植 維護費用 按時 及時交付 目標: 在給定成本、進度的前提下,開發(fā)出具有有效性、可靠性、可理解性、可維護性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性且滿足用戶需求的產(chǎn)品,14,3.1.4 軟件工程的目標與原則,2軟件工程學(xué)的范疇,,,15,3.1.4 軟件工程的目標與原則,3軟件工程的原則 抽象 信息隱蔽 模塊化 局部化,確定性 一致性 完備性 可驗證性,,,16,3.1.5 軟件開發(fā)工具與軟件開發(fā)環(huán)境,1軟件開發(fā)工具 協(xié)助開發(fā)人員
6、進行軟件開發(fā)活動所使用的軟件或環(huán)境 需求分析工具、設(shè)計工具、編碼工具、排錯工具、測試工具等。 2軟件開發(fā)環(huán)境 全面支持軟件開發(fā)全過程的軟件工具的集合 計算機輔助軟件工程:CASE,17,3.2 結(jié)構(gòu)化分析方法,18,3.2.1 需求分析與需求分析方法,1需求分析 定義: 任務(wù):導(dǎo)出目標系統(tǒng)的邏輯模型,解決“做什么”的問題 全面理解用戶的各項要求 準確地表達各項要求 主要工作: 需求獲取 需求分析 編寫需求規(guī)格說明書 需求審評,19,3.2.1 需求分析與需求分析方法,2需求分析方法 結(jié)構(gòu)化分析方法 面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法(SA) 面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法(JSD) 面向數(shù)據(jù)結(jié)構(gòu)的結(jié)
7、構(gòu)化數(shù)據(jù)系統(tǒng)開發(fā)方法(DSSD) 面向?qū)ο蠓治龇椒ǎ∣OA) 靜態(tài)分析方法 動態(tài)分析方法,20,3.2.2 結(jié)構(gòu)化分析方法,1關(guān)于結(jié)構(gòu)化分析方法 結(jié)構(gòu)化程序設(shè)計理論在需求分析階段的運用 面向數(shù)據(jù)流進行需求分析的方法 自頂向下、逐層分解 主要工具:數(shù)據(jù)流圖、數(shù)據(jù)字典,21,3.2.2 結(jié)構(gòu)化分析方法,2結(jié)構(gòu)化分析的常用工具 數(shù)據(jù)流圖(DFD) 數(shù)據(jù)字典 判定樹 判定表,22,3.2.2 結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖,23,3.2.2 結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖:基本圖形元素,,24,3.2.2 結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖:分層數(shù)據(jù)流圖,,25,3.2.2 結(jié)構(gòu)化分析方法,2結(jié)構(gòu)化分析的常用工具 數(shù)據(jù)字典
8、 結(jié)構(gòu)化分析方法的核心 對數(shù)據(jù)流圖中出現(xiàn)的被命名的圖形元素的確切解釋判定樹 判定樹 判定表,26,3.2.3 軟件需求規(guī)格說明書,需求分析階段的最后成果 作用: 便于用戶、開發(fā)人員進行理解和交流; 反映出用戶問題的結(jié)構(gòu),可以作為軟件開發(fā)工作的基礎(chǔ)和依據(jù); 作為確認測試和驗收的依據(jù)。 主要內(nèi)容 概述、數(shù)據(jù)描述、功能描述、性能描述、參考文獻、附錄 特點: 正確性;無歧義性;完整性;可驗證性;一致性;可理解性;可修改性;可追蹤性。,27,3.3 結(jié)構(gòu)化設(shè)計方法,28,3.3.1 軟件設(shè)計的基本概念,1軟件設(shè)計的基礎(chǔ) 開發(fā)階段:設(shè)計、實現(xiàn)(編碼)和測試 需求分析:主要解決“做什么”問題 軟件設(shè)計:主要
9、解決“怎么做”問題,29,3.3.1 軟件設(shè)計的基本概念,1軟件設(shè)計的基礎(chǔ) 重要性: 主要內(nèi)容: 結(jié)構(gòu)設(shè)計、數(shù)據(jù)設(shè)計、接口設(shè)計、過程設(shè)計 步驟: 概要設(shè)計和詳細設(shè)計,,30,3.3.1 軟件設(shè)計的基本概念,2軟件設(shè)計的基本原理 抽象 一種思維工具 抽出事物本質(zhì)的共同特點,不考慮細節(jié) 模塊化 模塊 模塊化 信息隱蔽 每個模塊的實現(xiàn)細節(jié)對于其它模塊來說是隱蔽的 模塊獨立性 每個模塊只涉及軟件要求的具體的子功能和軟件系統(tǒng)中其它的模塊的接口是簡單的 衡量指標:耦合性、內(nèi)聚性,31,3.3.1 軟件設(shè)計的基本概念,內(nèi)聚性 度量一個模塊功能強度的一個相對指標。 一個模塊只做一件事 7種類型,,32,3.
10、3.1 軟件設(shè)計的基本概念,耦合性 度量模塊之間的相互聯(lián)系程度 取決于接口的復(fù)雜程度、調(diào)用方式、哪些信息通過接口 模塊連接方式有7種,構(gòu)成耦合性的7種類型,,33,3.3.2 概要設(shè)計,1概要設(shè)計的基本任務(wù) 系統(tǒng)結(jié)構(gòu)設(shè)計 主要任務(wù):劃分為模塊 數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫的設(shè)計 實現(xiàn)需求定義和規(guī)格說明過程中提出的數(shù)據(jù)對象的邏輯表示 編寫概要設(shè)計文檔 概要設(shè)計說明書、數(shù)據(jù)庫設(shè)計說明書、用戶手冊和集成測試計劃。 概要設(shè)計的評審 對概要設(shè)計文檔中給出的設(shè)計方案可行性、正確性、有效性、一致性等進行審核,34,3.3.2 概要設(shè)計(續(xù)),2軟件結(jié)構(gòu)圖 用來表示軟件結(jié)構(gòu) 基本圖符,,,35,3.3.2 概要設(shè)計(續(xù))
11、,兩個附加符號,,,,36,3.3.2 概要設(shè)計(續(xù)),系統(tǒng)結(jié)構(gòu)圖(SC)中的模塊 原子模塊 4種類型的模塊,,,37,3.3.2 概要設(shè)計(續(xù)),結(jié)構(gòu)圖的形態(tài)特征 深度、寬度、扇出、扇入,,,,,38,3.3.2 概要設(shè)計(續(xù)),3面向數(shù)據(jù)流的設(shè)計方法 數(shù)據(jù)流圖(DFD):需求分析工具 系統(tǒng)結(jié)構(gòu)圖(SC):概要設(shè)計工作 主要任務(wù):數(shù)據(jù)流圖變換成結(jié)構(gòu)圖 數(shù)據(jù)流的類型 變換流 事務(wù)流,,,,39,3.3.2 概要設(shè)計(續(xù)),變換流 數(shù)據(jù)流圖:取得數(shù)據(jù)、變換數(shù)據(jù)、給出數(shù)據(jù),,,,40,3.3.2 概要設(shè)計(續(xù)),變換流 系統(tǒng)的結(jié)構(gòu)圖:輸入、中心變換、輸出,,,41,3.3.2 概要設(shè)計(續(xù)),事務(wù)
12、流 數(shù)據(jù)流圖,,,,,42,3.3.2 概要設(shè)計(續(xù)),事務(wù)流 系統(tǒng)的結(jié)構(gòu)圖:,,,,,,,,43,3.3.2 概要設(shè)計(續(xù)),實施要點與設(shè)計過程 分析、確認數(shù)據(jù)流圖的類型,區(qū)分是事務(wù)型還是變換型 說明數(shù)據(jù)流的邊界 數(shù)據(jù)流圖映射為程序結(jié)構(gòu) 根據(jù)設(shè)計準則把數(shù)據(jù)流轉(zhuǎn)換成程序結(jié)構(gòu)圖,,,,,44,3.3.2 概要設(shè)計(續(xù)),變換分析 確定數(shù)據(jù)流圖是否具有變換特性 確定輸入流和輸出流的邊界,劃分出輸入、變換和輸出,獨立出變換中心 第一級分解 按上述步驟如出現(xiàn)事務(wù)流的映射方式對各個子流進行逐級分解,直至分解到基本功能; 對每個模塊寫一個簡要的說明 利用軟件的設(shè)計原則對軟件結(jié)構(gòu)透一步轉(zhuǎn)化 事務(wù)分析 與變換
13、分析類似 主要差別:映射方法不同,,,,,45,3.3.2 概要設(shè)計(續(xù)),4.設(shè)計準則 提高模塊獨立性 深度、寬度、扇度和扇出適度 使模塊的作用域在該模塊的控制域內(nèi) 應(yīng)減少模塊的接口和界面的復(fù)雜性 設(shè)計成單入口、單出口的模塊 設(shè)計功能可預(yù)測的模塊,,,,,46,3.3.3 詳細設(shè)計,詳細設(shè)計的任務(wù): 確定實現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu) 不同于編碼或編程 詳細設(shè)計的常用工具: 圖形工具:程序流程圖、N-S、PAD和HIPO 表格工具:判定表; 語言工具:PDL(偽碼),47,3.3.3 詳細設(shè)計(續(xù)),程序流程圖 圖形元素: 方框:處理步驟 菱形:邏輯條件 箭頭:控制流 5種控制結(jié)構(gòu) 順序型 選擇型
14、先判斷重復(fù)型 后判斷重復(fù)型 多分支選擇型。,,48,3.3.3 詳細設(shè)計(續(xù)),程序流程圖,,,49,3.3.3 詳細設(shè)計(續(xù)),N-S圖 流程圖:隨意性與靈活性 N-S圖:限制了隨意的控制轉(zhuǎn)移,保證了程序的良好結(jié)構(gòu) 5種基本控制結(jié)構(gòu):,,50,3.3.3 詳細設(shè)計(續(xù)),N-S圖,,,51,3.3.3 詳細設(shè)計(續(xù)),N-S圖 特點: 每個構(gòu)件具有明確的功能域 控制轉(zhuǎn)移必須遵守結(jié)構(gòu)化設(shè)計要求; 易于確定局部數(shù)據(jù)和(或)全局數(shù)據(jù)的作用域 易于表達嵌套關(guān)系和模塊的層次結(jié)構(gòu),,,52,3.3.3 詳細設(shè)計(續(xù)),PAD圖 PAD問題分析圖,Problem Analysis Diagram 表現(xiàn)程序
15、邏輯結(jié)構(gòu)的圖形工具 5種基本控制結(jié)構(gòu),,53,3.3.3 詳細設(shè)計(續(xù)),PAD圖,,,54,3.3.3 詳細設(shè)計(續(xù)),PAD圖 特征 結(jié)構(gòu)清晰,結(jié)構(gòu)化程度高 易于閱讀 程序的縱線數(shù)等于程序的層次數(shù) 程序執(zhí)行從PAD圖最左主干線上端結(jié)點開始,自上而下、自左向右依次執(zhí)行,程序終止于最左主干線,,,55,3.3.3 詳細設(shè)計(續(xù)),PDL(偽碼) PDL過程設(shè)計語言,Program Design Language 混合語言,類似編程語言 常用詞匯: 順序: 條件:IFTHENELSEETIDIF 循環(huán):DOWHILEENDDO 循環(huán):REPEAT UNTILENDREPEAT 分支:CASE O
16、FWHENSELECTWHENSELECTENDCASE PDL特征: 有為結(jié)構(gòu)化構(gòu)成元素、數(shù)據(jù)說明和模塊化特征提供的關(guān)鍵詞語法; 處理部分的描述采用自然語言語法 可以說明簡單和復(fù)雜的數(shù)據(jù)結(jié)構(gòu) 支持各種接口描述的子程序定義和調(diào)用技術(shù)。,56,3.4 軟件測試,57,3.4.1 軟件測試的目的,檢驗它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實際結(jié)果之間的差別 Grenford J.Myers觀點: 測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤 一個好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤 一個成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤的測試,58,3.4.2 軟件測試的準則,所有測試都應(yīng)追溯到需求 嚴格執(zhí)行測試計劃
17、,排除測試的隨意性 充分注意測試中的群集現(xiàn)象 程序員應(yīng)避免檢查自己的程序 窮舉測試不可能 妥善保存測試計劃、測試用例、出錯統(tǒng)計和最終分析報告,為維護提供方便,59,3.4.3 軟件測試技術(shù)與方法綜述,1靜態(tài)測試與動態(tài)測試 靜態(tài)測試 人工評審軟件文檔或程序,借以發(fā)現(xiàn)其中的錯誤 主要方法:代碼檢查、靜態(tài)結(jié)構(gòu)分析、代碼質(zhì)量度量 動態(tài)測試 上機測試 關(guān)鍵:設(shè)計高效、合理的測試用例 分兩類:白盒測試方法和黑盒測試方法,60,3.4.3 軟件測試技術(shù)與方法綜述(續(xù)),2白盒測試方法與測試用例設(shè)計 也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試 測試用例是根據(jù)程序的內(nèi)部邏輯來設(shè)計 主要用于單元測試 基本原則 保證所測模塊中每一
18、個獨立路徑至少執(zhí)行一次 保證所測模塊所有判斷的每一個分支至少執(zhí)行一次 保證所測模塊每一個循環(huán)都在邊界條件和一般條件至少執(zhí)行一次 驗證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性 主要方法:邏輯覆蓋、基本路徑測試,61,3.4.3 軟件測試技術(shù)與方法綜述(續(xù)),邏輯覆蓋測試 程序中的邏輯:判斷、分支、條件 可分為: 語句覆蓋:每一個語句都能執(zhí)行一次 路徑覆蓋:所有的可能路徑都至少經(jīng)歷一次 判定覆蓋:每個判定至少都獲得一次“真值”和“假值”的機會 條件覆蓋:每個判定中每個條件都獲得一次 “真”和“假”的機會 判斷-條件覆蓋:判定中的每個條件都能取得各種可能的“真”和“假”值,并且使每個判定都能取到“真”和“假”兩種結(jié)
19、果 強度順序 語句覆蓋<路徑覆蓋<判定覆蓋<條件覆蓋<判定-條件覆蓋,62,3.4.3 軟件測試技術(shù)與方法綜述(續(xù)),基本路徑測試 把覆蓋的路徑數(shù)壓縮到一定限度內(nèi) 思想和步驟: 根據(jù)軟件過程性描述中的控制流程確定程序的環(huán)路復(fù)雜性度量,用此度量定義基本路徑集合,并由此導(dǎo)出一組測試用例對每一條獨立執(zhí)行路徑進行測試,63,3.4.3 軟件測試技術(shù)與方法綜述(續(xù)),3黑盒測試方法與測試用例設(shè)計 也稱功能測試或數(shù)據(jù)驅(qū)動測試 對軟件已經(jīng)實現(xiàn)的功能是否滿足需求進行測試和驗證 根據(jù)程序的功能說明來設(shè)計測試用例 主要用于確認測試 主要方法 等價類劃分法 邊界值分析法 錯誤推測法,64,3.4.3 軟件測試技術(shù)與
20、方法綜述(續(xù)),等價類劃分法 有效等價類 無效等價類 邊界值分析法 大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上 錯誤推測法 根據(jù)經(jīng)驗或直覺推測程序易出錯的地方,65,3.4.4 軟件測試的實施,,66,3.4.4 軟件測試的實施(續(xù)),1單元測試 對象:針對程序模塊,進行正確性檢驗的測試 目的:發(fā)現(xiàn)各模塊內(nèi)部可能存在的各種差錯 依據(jù):從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計測試用例,其依據(jù)是詳細的設(shè)計說明書和源程序 方法:以白盒測試為主,輔以黑盒測試,,67,3.4.4 軟件測試的實施(續(xù)),1單元測試 內(nèi)容: 模塊接口測試 局部數(shù)據(jù)結(jié)構(gòu)測試 路徑測試 錯誤處理測試 邊界測試 步驟: 在編碼階段進行 源程序代碼
21、編制完成,經(jīng)過評審和驗證,確認沒有語法錯誤之后 利用設(shè)計文檔,設(shè)計可以驗證程序功能、找出程序錯誤的多個測試用例 對于每一組輸入,應(yīng)有預(yù)期的正確結(jié)果,,68,3.4.4 軟件測試的實施(續(xù)),1單元測試 驅(qū)動模塊、樁模塊,,,69,3.4.4 軟件測試的實施(續(xù)),2集成測試 任務(wù):把模塊在按照設(shè)計要求組裝起來的同時進行測試 目的:發(fā)現(xiàn)與接口有關(guān)的錯誤 依據(jù):集成測試的依據(jù)是概要設(shè)計說明書 內(nèi)容:軟件單元的接口測試、全局數(shù)據(jù)結(jié)構(gòu)測試、邊界條件和非法輸入的測試 方式:非增量方式組裝與增量方式組裝。,,,70,3.4.4 軟件測試的實施(續(xù)),2集成測試 非增量方式組裝 也稱為一次性組裝方式 增量方
22、式組裝 也稱漸增式集成方式 3種方式: 自頂向下 自底向上 自頂向與自底向上相結(jié)合,,,71,3.4.4 軟件測試的實施(續(xù)),自頂向下,,,72,3.4.4 軟件測試的實施(續(xù)),自底向上,,,,73,3.4.4 軟件測試的實施(續(xù)),3確認測試 又稱有效性測試 目的:驗證軟件的功能和性能及其它特性是否與用戶的要求一致 依據(jù):軟件需求規(guī)格說明書 方法:黑盒測試法 4系統(tǒng)測試 任務(wù):在實際運行(使用)環(huán)境下,對計算機系統(tǒng)進行一系列的組裝測試和確認測試 目的:在于通過與系統(tǒng)的需求定義作比較,發(fā)現(xiàn)軟件與系統(tǒng)定義不符合或與之矛盾的地方 依據(jù): 需求分析規(guī)格說明來設(shè)計 內(nèi)容:功能測試、性能測試、操作測
23、試、配置測試、外部接口測試、安全性測試,,,,74,3.5 程序的調(diào)試,75,3.5.1 基本概念,任務(wù):診斷和改正程序中的錯誤 時機:調(diào)試主要在開發(fā)階段進行,76,3.5.1 基本概念(續(xù)),1.基本步驟 錯誤定位、糾正錯誤、回歸測試,,77,3.5.1 基本概念(續(xù)),2程序調(diào)試原則 確定錯誤的性質(zhì)和位置的原則 用頭腦去分析思考與錯誤征兆有關(guān)的信息 避開死胡同。 只把調(diào)試工具當作輔助手段來使用 避免用試探法,最多只能把它當作最后手段 修改錯誤的原則 在出現(xiàn)錯誤的地方,很可能還有別的錯誤 只修改了這個錯誤的征兆或這個錯誤的表現(xiàn),而沒有修改錯誤的本身。 當心修正一個錯誤的同時有可能會引入新的錯
24、誤 修改錯誤的過程將迫使人們暫時回到程序設(shè)計階段 修改源代碼程序,不要改變目標代碼,,78,3.5.2 軟件調(diào)試方法,1強行排錯法 通過內(nèi)存全部打印來排錯(Memory Dump) 在程序特定部位設(shè)置打印語句 自動調(diào)試工具 2回溯法 3原因排除法 演繹法 歸納法 二分法,79,典型考題分析,80,【例3-1】下列描述中正確的是______。(2005年4月) A)程序就是軟件 B)軟件開發(fā)不受計算機系統(tǒng)的限制 C)軟件既是邏輯實體,又是物理實體 D)軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合 答案 D,81,【例3-2】下列描述中正確的是______。(2005年9月) A)軟件工程只是解決軟件項目的管
25、理問題 B)軟件工程主要解決軟件產(chǎn)品的生產(chǎn)率問題 C)軟件工程的主要思想是強調(diào)在軟件開發(fā)過程中需要應(yīng)用工程化原則 D)軟件工程只是解決軟件開發(fā)中的技術(shù)問題 答案 C,82,【例3-3】下面不屬于軟件工程的3個要素的是______。 A)工具B)過程 C)方法D)環(huán)境 答案 D,83,【例3-4】下列敘述中正確的是______。(2005年9月) A)軟件交付使用后還需要進行維護 B)軟件一旦交付使用就不需要再進行維護 C)軟件交付使用后其生命周期就結(jié)束 D)軟件維護是指修復(fù)程序中被破壞的指令 答案 A,84,【例3-5】下列選項中不屬于軟件生命周期開發(fā)階段任務(wù)的是______。(2006年9月
26、) A)軟件測試B)概要設(shè)計 C)軟件維護D)詳細設(shè)計 答案 C,85,【例3-6】軟件工程學(xué)一般包括軟件開發(fā)技術(shù)和軟件工程管理兩方面的內(nèi)容。軟件工程經(jīng)濟學(xué)是軟件工程管理的技術(shù)內(nèi)容之一,它專門研究______。 A)軟件開發(fā)的方法學(xué) B)軟件開發(fā)技術(shù)和工具 C)軟件成本效益分析 D)計劃、進度和預(yù)算 答案 C,86,【例3-7】下面不屬于軟件工程原則的是______。 A)抽象B)模塊化 C)自底向上D)信息隱蔽 答案 C,87,【例3-8】計算機輔助軟件工程,簡稱為______。 A)SAB)SD C)SCD)CASE 答案 D,88,【例3-9】需求分析階段的任務(wù)是確定______。 A)
27、軟件開發(fā)方法 B)軟件開發(fā)工具 C)軟件開發(fā)費用 D)軟件系統(tǒng)功能 答案 D,89,【例3-10】軟件需求分析階段的工作,可以分為四個方面:需求獲取,需求分析,編寫需求規(guī)格說明書,以及______。 A)階段性報告 B)需求評審 C)總結(jié) D)都不正確 答案 B,90,【例3-11】結(jié)構(gòu)化分析方法是面向______的自頂向下逐步求精進行需求分析的方法。 A)對象 B)數(shù)據(jù)結(jié)構(gòu) C)數(shù)據(jù)流 D)目標 答案 C,91,【例3-12】下列工具中為需求分析常用工具的是______。 A)PAD B)PFD C)N-S D)DFD 答案 D,92,【例3-13】數(shù)據(jù)流圖用于抽象描述一個軟件的邏輯模型,數(shù)
28、據(jù)流圖由一些特定的圖符構(gòu)成。下面圖符號不屬于數(shù)據(jù)流圖的是______。 A)控制流 B)加工 C)數(shù)據(jù)存儲 D)源和潭 答案 A,93,【例3-14】下列敘述中,不屬于軟件需求規(guī)格說明書的作用的是______。 A)便于用戶、開發(fā)人員進行理解和交流 B)反映出用戶問題的結(jié)構(gòu),可以作為軟件開發(fā)工作的基礎(chǔ)和依據(jù) C)作為確認測試和驗收的依據(jù) D)便于開發(fā)人員進行需求分析 答案 D,94,【例3-15】Jackson方法是一種面向______的結(jié)構(gòu)化方法。 答案 數(shù)據(jù)結(jié)構(gòu),95,【例3-16】從工程管理角度,軟件設(shè)計一般分為兩步完成,它們是______。(2006年9月) A)概要設(shè)計與詳細設(shè)計 B
29、)數(shù)據(jù)設(shè)計與接口設(shè)計 C)軟件結(jié)構(gòu)設(shè)計與數(shù)據(jù)設(shè)計 D)過程設(shè)計與數(shù)據(jù)設(shè)計 答案 A,96,【例3-17】兩個或兩個以上模塊之間關(guān)聯(lián)的緊密程度稱為______。(2006年4月) A)耦合度 B)內(nèi)聚度 C)復(fù)雜度 D)數(shù)據(jù)傳輸特性 答案 A,97,【例3-18】為了提高模塊的獨立性,模塊之間最好是______。 A)控制耦合 B)公共耦合 C)內(nèi)容耦合 D)數(shù)據(jù)耦合 答案 D,98,【例3-19】為了使模塊盡可能獨立,要______。(2005年4月) A)模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量強 B)模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量弱 C)模塊的內(nèi)聚程度要盡量低
30、,且各模塊間的耦合程度要盡量弱 D)模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量強 答案 B,99,【例3-20】軟件的結(jié)構(gòu)化開發(fā)過程各階段都應(yīng)產(chǎn)生規(guī)范的文檔,以下______不是在概要設(shè)計階段應(yīng)產(chǎn)生的文檔。 A)集成測試計劃 B)軟件需求規(guī)格說明書 C)概要設(shè)計說明書 D)數(shù)據(jù)庫設(shè)計說明書 答案 B,100,【例3-21】軟件結(jié)構(gòu)設(shè)計的圖形工具是______。 A)DFD圖B)程序圖 C)PAD圖D)N-S圖 答案 B,101,【例3-22】下列軟件系統(tǒng)結(jié)構(gòu)圖的寬度為______。(2006年9月) 答案 3,,102,【例3-23】數(shù)據(jù)流圖的類型有______和事務(wù)型。 答案 變換
31、型,103,【例3-24】在軟件設(shè)計中,不屬于過程設(shè)計工具的是______。(2005年9月) A)PDL(過程設(shè)計語言) B)PAD圖 C)N-S圖 D)DFD圖 答案 D,104,【例3-25】程序流程圖(PFD)中的箭頭代表的是______。 A)數(shù)據(jù)流 B)控制流 C)調(diào)用關(guān)系 D)組成關(guān)系 答案 B,105,【例3-26】為了避免流程圖在描述程序邏輯時的靈活性,提出了用方框圖來代替?zhèn)鹘y(tǒng)的程序流程圖,通常也把這種圖稱為______。 A)PAD圖 B)N-S圖 C)結(jié)構(gòu)圖 D)數(shù)據(jù)流圖 答案 B,106,【例3-27】下列對于軟件測試的描述中正確的是______。(2005年4月) A
32、)軟件測試的目的是證明程序是否正確 B)軟件測試的目的是使程序運行結(jié)果正確 C)軟件測試的目的是盡可能地多發(fā)現(xiàn)程序中的錯誤 D)軟件測試的目的是使程序符合結(jié)構(gòu)化原則 答案 C,107,【例3-28】為了提高測試的效率,應(yīng)該______。 A)隨機地選取測試數(shù)據(jù) B)取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù) C)在完成編碼以后制定軟件的測試計劃 D)選擇發(fā)現(xiàn)錯誤可能性大的數(shù)據(jù)作為測試數(shù)據(jù) 答案 D,108,【例3-29】程序測試分為靜態(tài)分析和動態(tài)測試,其中______是指不執(zhí)行程序,而只是對程序文本進行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯誤。(2006年4月) 答案 靜態(tài)分析,109,【例3-30
33、】使用白盒測試方法時,確定測試數(shù)據(jù)應(yīng)根據(jù)______和指定的覆蓋標準。 A)程序的內(nèi)部邏輯 B)程序的復(fù)雜結(jié)構(gòu) C)使用說明書 D)程序的功能 答案 A,110,【例3-31】等價類型劃分法是______測試常用的方法。 答案 黑盒,111,【例3-32】在進行模塊測試時,要為每個被測試的模塊另外設(shè)計兩類模塊:驅(qū)動模塊和承接模塊(樁模塊)。其中______的作用是將測試數(shù)據(jù)傳送給被測試的模塊,并顯示被測試模塊所產(chǎn)生的結(jié)果。(2005年9月) 答案 驅(qū)動模塊,112,【例3-33】檢查軟件產(chǎn)品是否符合需求定義的過程稱為______。 A)系統(tǒng)測試 B)集成測試 C)驗收測試 D)單元測試 答案 C,113,【例3-34】______的任務(wù)是診斷和改正程序中的錯誤。(2006年9月) 答案 調(diào)試,114,【例3-35】下列敘述中正確的是______。(2005年9月) A)程序設(shè)計就是編制程序 B)程序的測試必須由程序員自己去完成 C)程序經(jīng)調(diào)試改錯后還應(yīng)進行再測試 D)程序經(jīng)調(diào)試改錯后不必進行再測試 答案 A,115,【例3-36】以下所述中,______是軟件調(diào)試技術(shù)。 A)錯誤推斷 B)集成測試 C)回溯法 D)邊界值分析 答案 C,
- 溫馨提示:
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)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 市教育局冬季運動會安全工作預(yù)案
- 2024年秋季《思想道德與法治》大作業(yè)及答案3套試卷
- 2024年教師年度考核表個人工作總結(jié)(可編輯)
- 2024年xx村兩委涉案資金退還保證書
- 2024年憲法宣傳周活動總結(jié)+在機關(guān)“弘揚憲法精神推動發(fā)改工作高質(zhì)量發(fā)展”專題宣講報告會上的講話
- 2024年XX村合作社年報總結(jié)
- 2024-2025年秋季第一學(xué)期初中歷史上冊教研組工作總結(jié)
- 2024年小學(xué)高級教師年終工作總結(jié)匯報
- 2024-2025年秋季第一學(xué)期初中物理上冊教研組工作總結(jié)
- 2024年xx鎮(zhèn)交通年度總結(jié)
- 2024-2025年秋季第一學(xué)期小學(xué)語文教師工作總結(jié)
- 2024年XX村陳規(guī)陋習(xí)整治報告
- 2025年學(xué)校元旦迎新盛典活動策劃方案
- 2024年學(xué)校周邊安全隱患自查報告
- 2024年XX鎮(zhèn)農(nóng)村規(guī)劃管控述職報告