freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

軟件工程技術基礎-預覽頁

2025-03-12 10:38 上一頁面

下一頁面
 

【正文】 ? 速成原型的工作模型是一個循環(huán)的模型 循環(huán)的速成原型工作模型 ? 速成原型循環(huán)方式步驟: – 快速分析 ? 快速確定軟件系統的基本要求 ? 確定原型所要體現的特征 ( 界面 ,總體結構 , 功能 , 性能 ) – 構造原型 ? 在快速分析的基礎上根據基本規(guī)定說明 , 忽略細節(jié) , 只考慮主要特征 ,快速構造一個可運行的系統 ? 它有三類原型:用戶界面原型 , 功能原型 , 性能原型 – 運行和評價原型 ? 用戶試用原型并與開發(fā)者之間頻繁交流 , 發(fā)現問題 , 目的是驗證原型的正確性 – 修正與改進 ? 對原型進行修改 , 增刪 快速分析或修改 運行 構造 評價 原型 循環(huán)的速成原型工作模型 ? 細化的速成原型工作模型 快速分析,確定初步規(guī)格說明 構造原型 運行 /評價原型 原型完成否 要細部說明否 效果滿意否 嚴格說明細部 整理原型提供文檔 修正改進原型 N N Y Y Y N 2 軟件開發(fā)方法與工作模型 ? 結構化開發(fā)方法 ? 原型化方法 ? 面向對象的開發(fā)方法 面向對象的開發(fā)方法 ? 面向過程的開發(fā)方法 –面向數據流設計 –面向數據結構設計 ? 面向對象的開發(fā)方法 ( OOSD) –面向對象的分析 ( OOA) –面向對象的設計 ( OOD) –面向對象的程序設計 ( OOP) 面向過程的開發(fā)方法 ? 早期的高級語言都是面向過程的 ? 程序設計者必然要專注于: –程序對數據的處理過程 ——面向數據流設計 –數據結構 ——面向數據結構設計 ? 因此 , 由軟件解決的問題通常用軟件系統的 數據流圖 或 數據結構 來表示 面向過程的開發(fā)方法 ? 數據流圖 –描述軟件系統的數據從輸入到輸出的流程 ,適用于幾乎所有順序處理的軟件 ? 數據結構 –描述軟件系統的輸入輸出數據結構 , 適用于數據處理 , 尤其輸入與輸出數據結構相似的軟件系統 面向對象的開發(fā)方法 (OOSD) ? 面向對象的開發(fā)方法 ( OOSD, ObjectOriented Software Development) –根據穩(wěn)定的對象建立系統模型 , 可很好地適應需要的變化 –具有良好的可維護性 、 可擴充性和可重用性 –是軟件工程領域的一個研究重點 –被譽為 90年代軟件的核心技術之一 面向對象的開發(fā)方法 ——基本思想 ? 對問題領域進行自然的分割 , 以便接近人類通常思維的方式 ? 建立問題領域的模型 , 以便對客觀的信息實體進行結構和行為的模擬 , 從而使設計的軟件更直接地表現問題的求解過程 ? 以對象作為最基本的元素分析和解決問題的核心 面向對象的開發(fā)方法 ——組成 ? 面向對象的開發(fā)方法的組成 –面向對象的分析 ( OOA, ObjectOriented Analysis) –面向對象的設計 ( OOD, ObjectOriented Design) –面向對象的程序設計 ( OOP, ObjectOriented Programming) ? OOP是 OOSD的基礎 ? OOA和 OOD是應用 OOP的基礎 面向對象的分析 (OOA) ? OOA分析階段將系統水平劃分為五個層次 – 主體 – 類和對象 – 結構 – 屬性 – 方法 ? OOA的任務就是通過分析問題域 , 建立系統的概念模型 面向對象的分析 (OOA) ? OOA提供了三種模型: – 信息模型 ——定義構成系統的類和對象 , 它們的屬性與操作 – 狀態(tài)模型 ——描述系統的控制結構 , 即描述任何時刻對象的聯系以及聯系的變化 , 或稱為時序 ,常用狀態(tài)圖和事件追蹤圖來描述 – 處理模型 ——描述系統內部數據的傳送和處理方法 ? 面向對象的分析 ( OOA) 和設計 ( OOD) 就是把面向對象的方法應用到軟件工程的分析和設計階段 , 從而建立更加適應當今龐大 、復雜且易變的系統的模型 面向對象的設計 (OOD) ? 在 OOA建立的五個水平層次 ( 主體 、 類和對象 、 結構 、 屬性 、 方法 ) 基礎上 ,將系統結構在縱向上劃分為: –問題部件 –人機交互部件 –任務管理部件 –數據管理部件 面向對象的設計 (OOD) ? OOD法分為 – 概要設計 ? 細化對象行為 ? 添加新對象 ? 認定類 ? 組類庫 ? 確定外部接口 ? 主要數據結構 – 詳細設計 ? 加細對象描述 面向對象的程序設計 (OOP) ? 使用面向對象的程序設計語言進行程序設計 –如: C++ , Delphi , Ada , SmallTalk ,Java ? 面向對象的定義: –面向對象 = 對象 + 類 + 繼承 + 消息 –如果一個軟件系統是按照這樣四個概念設計和實現的 , 則可以認為這個軟件系統是面向對象的 面向對象的程序設計 (OOP) ? OOP具有三個重要特征: –封裝 ?封裝是將數據和對這些數據進行處理所需的各種操作連接在一個根下的技術 –繼承 ?繼承是引用已經定義的各種類 , 并將它們擴充以滿足新的功能的一種技術 –多態(tài)性 ?多態(tài)性實質上就是同一個名字可以用于多種目的 面向過程與面向對象 ? 傳統的面向過程( 函數 ) 的編程方法 – 代碼和數據是分開的 – 函數是最重要的 ,一個程序中的所有代碼都應圍繞這些函數來設計 ? 面向對象編程方法 – 必須將代碼與數據構造在一個程序塊中 ,并且統一來管理 – 對象是最重要的 , 程序是圍繞這些對象來設計的 , 函數是第二位的 – 用對象調用函數 , 而不是簡單地將對象( 數據 ) 傳遞給函數 面向對象的基本概念 ? 對象 ( Object) ? 類 ( Class) ? 繼承 ( Inheritance) ? 消息 ( Message) ? 軟件 IC( Integrate Circuit) 面向對象的基本概念 ? 對象 ( Object) – 是對客觀存在的事物的描述 , 可以是事 、 物 , 或概念 – 對象是將一組數據和使用該數據的一組基本操作或過程封裝在一起的實體 – 用戶不必知道對象行為的實現細節(jié) , 只需根據對象提供的外部特征接口訪問對象 – 對象的動作取決于發(fā)送給該對象的消息 , 消息通知對象要求完成某個功能 。 ? 加工 – 表示對數據進行的加工或變換 。 ? 數據源點及數據終點 – 標明數據處理過程的數據來源和數據去向 , 數據流圖中已有名的方框表示 , 它只起到注釋作用 , 補充說明系統與其他外界環(huán)境的聯系 。 ? 用例圖 : 從用戶角度描述系統的行為 , 并指出各功能的操作者 ? 狀態(tài)圖 :描述由事件驅動的系統 /對象的狀態(tài)轉移 ? 活動圖 :描述活動之間的控制流 ? 交互圖:描述對象之間的交互情況 ?順序圖 :重點描述消息發(fā)生的事件順序 ?合作圖 :重點描述各個對象之間收發(fā)消息的情況 UML的五類基本視圖 構件視圖 用例視圖 配置視圖 邏輯視圖 并發(fā)視圖 3 結構化開發(fā)方法概述 ? 結構化分析方法 ? 結構化設計方法 ? 軟件編碼 ? 軟件測試 ? 軟件維護 軟件編碼 ? 編碼的目的 , 為了把詳細設計產生的文檔翻譯成用選定語言編寫的源程序 –根據軟件系統的應用范圍 , 語言內在特點等選擇程序設計語言 –良好的程序設計風格 ( 包括代碼文件 , 數據說明方法 , 語言構成方法 , 輸入輸出技術 ) –重視用戶界面設計 3 結構化開發(fā)方法概述 ? 結構化分析方法 ? 結構化設計方法 ? 軟件編碼 ? 軟件測試 ? 軟件維護 軟件測試 ? 軟件測試的目的和重要性 –因為開發(fā)工作的前期不可避免地會引入錯誤 , 測試的目的是為了檢查發(fā)現和改正錯誤 , 這對于重要軟件項目顯得尤其必要 ? 軟件測試方法 –靜態(tài)分析方法 –動態(tài)分析方法 ? 軟件測試和軟件調試是兩個不同的概念 靜態(tài)分析方法 ? 指不執(zhí)行程序本身 , 分析程序正文可能導致錯誤的異常情況 – 檢查軟件結構是否合理 , 功能是夠達到設計說明中的要求 – 各模塊之間的接口是否正確 – 各模塊內部控制邏輯的正確性 – 進行數據結構分析和語法分析 ? 代碼評審常用的方法有: – 桌前檢查 – 代碼會審:由軟件開發(fā)者主持 , 聘請其他程序員或分析員參加的軟件審查會 , 對源程序進行審查 – 步行檢查:測試人員閱讀程序 , 扮演計算機的角色 , 讓測試用例沿程序的邏輯運行一遍 , 從中發(fā)現程序中的錯誤 動態(tài)分析方法 ? 通過選擇適當的測試用例 , 上機執(zhí)行程序 , 發(fā)現軟件中的錯誤 ? 測試用例應由兩部分組成: –輸入數據及預期的輸出結果 –將運行結果與預期結果比較 , 查出錯誤 ? 常用的方法有: –白盒法 –黑盒法 白盒法 ? 分析程序的內部邏輯結構 , 注意選擇適當的覆蓋標準 , 設計測試用例 , 對主要路徑進行盡可能多的測試 ? 白盒測試又稱結構測試或邏輯驅動測試 ? 白盒測試主要考慮的是測試用例對程序內部邏輯的覆蓋程度 , 而不考慮程序的功能 ? 按照對被測程序所作測試的有效程度 , 邏輯覆蓋測試可由弱到強區(qū)分為五種覆蓋標準 ,如圖所示 白盒法 弱強 發(fā)現錯誤的能力 語句覆蓋 每條語句至少執(zhí)行一次 判定覆蓋 每一次判定的每個分支至少執(zhí)行一次 條件覆蓋 每一判定中的每個條件 , 分別按 “ 真 ” 、“ 假 ” 至少執(zhí)行一次 判定條件覆蓋 同時滿足判定覆蓋和條件覆蓋的要求 條件組合覆蓋 求出判定中所有條件的各種可能組合值 ,每一可能的條件組合至少執(zhí)行一次 黑盒法 ? 不考慮程序的內部結構與特征 , 只根據程序功能設計測試用例 , 常用的方法有: – 等價分類法 ? 把輸入數據的可能值劃分為若干個等價類 , 使每類中的任何一個測試用例 , 都能代表同一等價類中的其他測試用例 ? 也就是說 , 如果從某一等價類中任意選出一個測試用例未能發(fā)現程序的錯誤 , 就可以合理地認為在該例中的其他測試用例也不會發(fā)現程序的錯誤 ? 選擇具有代表性的測試用例 ——關鍵是劃分 “ 等價類 ” , 應按照輸入條件選擇測試用例 ( 例如 , 輸入值的范圍 , 值的個數和無效等價類 ) ? 一個測試用例覆蓋多個有效等價類 , 但是一個測試用例只能覆蓋一個無效等價類 黑盒法 –邊緣值分析法 ?選擇等價類的邊緣值作為測試用例 。 – 錯誤推測法 ?憑經驗或直覺推測可能的錯誤 , 選擇測試 。 – A. 運籌學 B. 工程學 – C. 軟件學 D. 數學 C B 4 習題 ——選擇題 3. 瀑布模型把軟件生存周期劃分為軟件定義 、軟件開發(fā)與 ( ) 三個階段 , 而每一階段又可分為若干更小的階段 。 – A. DFD圖 B. PAD圖 – C. 結構化英語 D. 判定表 A C D B 4 習題 ——選擇題 7. 結構化設計是以 ( ) 為基礎 、 自頂向下 、 逐步求精和模塊化的過程 。 – A. 模塊說明書 B. 軟件規(guī)格說明書 – C. 項目開發(fā)計劃 D. 合同文檔 A B 4 習題 ——選擇題 11. 軟件開發(fā)方法從 1945年至今 , 經歷了( ) 、 ( ) 、 ( ) 三個階段 。 – A. 單元測試 B. 人工測試 – C. 組裝測試 D. 上機測試 C E A C 4 習題 ——選擇題 15. 軟件的維護指的是 ( ) 。 – A. 程序流程圖 B. 具體的語言程序 – C. 模塊結構圖及模塊的功能說明書 – D. 分層數據流圖和數據詞典 – E. 分解與抽象 F. 分解與綜合 – G. 歸納與推導 H. 試探與回歸 – I. 從數據結構導出程序結構 – J. 從數據流圖導出初始結構圖 – K. 從模塊結構導出數據結構 – L. 從模塊結構導出程序結構 D C J I 4 習題 ——選擇題 18. 概要設計的任務是決定系統中各個模塊的( ) , 即其 (
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1