心智圖資源庫 需求分析軟體測試軟體工程軟體設計自學心智圖
需求分析軟體測試軟體工程軟體設計自學心智圖,整理了需求分析、軟體設計、軟體測試、軟體維護、軟體重複使用、軟體開發環境的內容,希望這份腦圖對你有幫助。
編輯於2023-02-23 22:55:01Il s'agit d'une carte mentale sur les anévrismes intracrâniens, avec le contenu principal, notamment: le congé, l'évaluation d'admission, les mesures infirmières, les mesures de traitement, les examens auxiliaires, les manifestations cliniques et les définitions.
Il s'agit d'une carte mentale sur l'entretien de comptabilité des coûts, le principal contenu comprend: 5. Liste des questions d'entrevue recommandées, 4. Compétences de base pour améliorer le taux de réussite, 3. Questions professionnelles, 2. Questions et réponses de simulation de scénarios, 1. Questions et réponses de capacité professionnelle.
Il s'agit d'une carte mentale sur les méthodes de recherche de la littérature, et son contenu principal comprend: 5. Méthode complète, 4. Méthode de traçabilité, 3. Méthode de vérification des points, 2. Méthode de recherche inversée, 1. Méthode de recherche durable.
Il s'agit d'une carte mentale sur les anévrismes intracrâniens, avec le contenu principal, notamment: le congé, l'évaluation d'admission, les mesures infirmières, les mesures de traitement, les examens auxiliaires, les manifestations cliniques et les définitions.
Il s'agit d'une carte mentale sur l'entretien de comptabilité des coûts, le principal contenu comprend: 5. Liste des questions d'entrevue recommandées, 4. Compétences de base pour améliorer le taux de réussite, 3. Questions professionnelles, 2. Questions et réponses de simulation de scénarios, 1. Questions et réponses de capacité professionnelle.
Il s'agit d'une carte mentale sur les méthodes de recherche de la littérature, et son contenu principal comprend: 5. Méthode complète, 4. Méthode de traçabilité, 3. Méthode de vérification des points, 2. Méthode de recherche inversée, 1. Méthode de recherche durable.
需求分析軟體測試軟體工程軟體設計自學心智圖
需求分析
需求分類
功能需求(軟體做什麼,系統必須完成的事及具備的品質)、效能需求(可靠性、容錯性、效能、回應時間)、設計約束(約束說明限制條件,如指定資料庫、作業系統、開發工具)
業務需求(總經理說我要開發一個......系統實現......業務)、用戶需求(管理經理說需要......功能和性能)、系統需求(開發使用的)
基本需求(使用者明確提出的要求)、期望需求(使用者沒有明說但認為不用說都應該有的)、興奮需求(超出使用者的期望,增加的功能是使用者沒有想到的是不需要做的)
需求工程
需求開發(確定功能、效能、資料和介面,包括需求擷取、分析、編寫規格說明書、需求驗證四個階段)
需求管理
制定需求管理計畫、定義需求基準、求得對需求的理解與承諾、管理需求變更、維護對需求的雙向追蹤、識別專案工作與需求之間的不一致性
需求的雙向追蹤:正向追蹤中原始需求在哪個用例實現,是不是原始需求都已實現,逆向追蹤中一個用例沒有實現任何一個原始需要,就是一個興奮需要
需求獲取
要捕獲的資訊(what)
問題域相關資訊、要求解決的問題相關資訊、使用者的期望和約束
資訊的來源(where)
涉眾、原有系統、竟爭對手、領域專家
需求捕獲的技術(how)
共同討論需求會(多方討論)、使用者訪談(關鍵使用者準備問題)、書面調查(人員多的時候)、現場觀摩、閱讀歷史文件、參加業務實踐
圖形工具:層次方框圖、用例圖、IPO圖、Warnier圖
需求捕獲的策略
需求開發為非瀑布,迭代式的演化過程,對問題自頂向下、逐層分解、給出系統邏輯視圖與物理視圖
需求分析
任務
繪製系統與外部實體關係範圍圖、建立使用者介面原型、分析需求的可行性、確定需求的優先順序、為需求建立分析模型(使用案例模型、ER圖、資料流程圖)、建立資料字典、使用品質功能調配
方法
結構化分析方法
依賴資料流程圖的自頂向下逐步分解的建模方法,以圖形表達系統中資訊的變換和傳遞過程
業務流程分析
調查掌握基本狀況、描述確認分析現有業務流程、發現問題,提出解決方案、提出最佳化的業務流程
畫數據流程圖DFD
頂層圖明確系統與外部哪些實體有關係,需要傳輸什麼數據,頂層圖採用自頂向下,逐層分解,細化部件
包括資料流(具有名字和流向的資料)、加工(資料流的變換)、資料儲存(可存取的儲存資訊)、外部實體(資料來源及資料去向)
資料字典
對資料流程圖中出現的所有資料元素給予邏輯定義
包括結構化語言、判定樹、判定表
面向對象分析方法
面積問題域分析法
撰寫軟體需求說明書
方法(用好的結構化和自然語言編寫文字型文件、建立圖形化模型、編寫形式化規格說明)
要求(完整性、一致性、可修改性、可追蹤性)
需求驗證
需求評審:客戶參與簽字確認,是驗收標準之一,評審需求是不是依照流程來做,需求結果是不是客觀公正合理的
需求測試
軟體設計
基本原則
資訊隱蔽性(模組間的資料與方法不允許不相關模組使用)、抽象化、自頂向下,逐層細化、模組獨立性(高內聚低耦合)
步驟
架構設計
邏輯視圖(滿足功能需求)、流程視圖(並發問題)、元件視圖(實作問題)、部署視圖(分佈問題)
摘要設計
將軟體需求轉化為資料結構和軟體的系統結構,主要完成整體設計,包括功能劃分模組,確定模組功能及模組間的呼叫關係和組成關係
詳細設計
自頂向下,逐步求精,資訊隱藏(操作介面),模組獨立(高內聚、低耦合)
對每個模組進行資料結構及演算法的設計,效能、週轉時間、回應時間、吞吐量、精確度等
編寫設計文件
設計評審
設計方法
系統結構圖中的模組
傳入模組、傳出模組、變換模組、協調模組
常用系統結構圖
變換型、事務型、混合型
使用者介面
可使用性、靈活性、複雜性、可靠性
設計評審
設計負責人、高階主管、主審人員、評審組
軟體測試
測試原則
儘早、不斷的進行測試,程式設計師避免測試自己設計的程序,既要選擇有效合理的數據,也要選擇無效不合理的數據,修改後進行回歸測試,尚未發現的錯誤數量與該程序已發現的錯誤成正比
設計測試案例包括輸入、執行條件、預期輸出
測試方法
黑盒測試
根據規格說明書功能設計測試案例,檢查功能是否符合要求,不考慮程式的結構和處理過程
等價類劃分
劃分等價類,測試等價類的代表值就等價於對這類其它值的測試,每個等價類分有效和無效兩種情況測試
邊界值分析
在輸入、輸出邊界上設計測試案例,邊界值最容易出錯(取剛好等於、剛大於或剛小於邊界的值)
錯誤推測法
經驗和直覺推測可能的錯誤
因果圖
分析需求規格找出各種輸入和輸出(原因和結果),找出輸入條件的各種組合與輸出的對應關係畫出因果圖,因果圖轉換成判定表,判定表的每一列是一個測試案例
白盒測試
測試內容
程式內部邏輯設計測試案例,檢查邏輯通路是否按預定要求工作,比黑盒測試全面詳細
對程式模組所有路徑至少測試一次、對所有邏輯判斷,真和假至少都測試一次、測試循環邊界和運行界限內測試、內部資料結構的有效性測試
測試方法
語句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋、條件組合覆蓋、路徑覆蓋
灰盒測試
黑盒與白盒測試結合測試
測試階段
單元測試
編碼階段進行,一般白盒測試,如模組介面函數測試、局域資料結構測試、路徑測試、錯誤處理測試、邊界條件測試
整合測試
發現設計階段的錯誤,模組組裝後對模組之間的介面和通訊測試,一般是黑盒測試
確認測試
檢查軟體的功能、效能是否與使用者的需求一致,以需求規格說明書為依據,模擬環境下有效性測試、軟體設定複查、驗收測試(分析報告、使用者手冊、開發總結報告)
系統測試
生產環境測試,基於需求說明書的黑盒測試,覆蓋所有聯合的部件,評估軟體產品的質量
包括軟體、硬體、週邊、資料、支援軟體等,具體有復原測試、安全性測試、強度測試、效能測試、可靠性測試、安裝測試
測試
產品類的軟體,@開發者在場由客戶來實作測試,b開發者不在場
測試類型
功能測試
性能測試
目的(評估系統的能力,辨識弱點,系統調優,驗證穩定性與可靠性)、類型(負載測試、強度測試、容量測試)
驗收測試
軟體需求分析、編制驗收測試計畫和專案驗收準則、測試設計和測試案例設計、測試環境建構、測試實施、結果分析、測試報告
第三方測試
中介--北京軟體評測中心
回歸測試(驗證以前出現過但修復好的缺陷不再重新出現)、恢復測試、可靠性測試、啟動/停址測試、配置測試、安全性測試、可使用性測試、安裝測試、製程測試、相容性測試
面向對象測試
物件導向分析測試、物件導向設計測試、物件導向程式設計測試(物件導向單元測試、物件導向整合測試、物件導向系統測試)
測試工具
不需要定期確認、不需要校準、採用驗證或保持其適用性的組態管理來確認
測試管理
對測試團隊的管理很困難,因為測試人員的績效指標不好統計,高手和新寫的程序BUG數差距很大,如何確定測試人員找BUG的工作能力
錯誤(缺陷)追蹤管理
軟體維護
軟體維護是生命週期的完整部分,為需要提供軟體支援的全部活動,軟體可理解、可測試、可修改,具有可維護性
軟體的可維護性
軟體工程提高可維護性
需求分析--可能的改進和修改加以說明
設計階段--易於擴充、可移植、可重複使用的方案,面向對象
編碼階段--註釋、品質、物件導向
測試階段--測試好,維護就好;測試相關文件全
維護階段--配置管理好,同步文檔
系統文件(維護需求、原始碼、設計文件、測試文件)
使用者文件(使用手冊、安裝文件、參考手冊、管理員指南)
可維護性度量
環路數(原始碼複雜度)、軟體規模、其它因素
軟體維護分類
改正型(診斷和改正錯誤的過程)
適應型(適應外部環境新的軟體硬體、資料環境資料庫,資料格式,儲存媒體發生變化去修改軟體的過程,如昇級作業系統而修改軟體)
預防型(為提高軟體可維護性可靠性為以後改進軟體打下基礎修改軟體的過程,目前不是錯誤時間久了會成為錯誤,如99年解決千年蟲問題)
完善型(滿足新功能和效能修改軟體或再開發軟體的過程)
軟體維護實施
建立維護組織、提出維護需求、實施維護作業、記錄維護要素、評估維護活動
交付前的維護包括交付後運行的計劃和維護計劃,交付後的維護包括軟體修改、培訓、幫助資料等
軟體複用
利用已有軟體的各種有關知識建構新的軟體,以縮減軟體開發和維護的費用,是提高軟體生產力和品質的重要技術
程式碼重複使用、設計重複使用、分析多用、測試案例重複使用
構件是具有一定的功能,能夠獨立工作或能同其它構件裝配協調工作的程序體,為了切合實際,更有效復用,構件應具備可變性和靈活性以提高通用性
軟體開發環境
一組相關軟體工具的集合,整合開發環境(資料整合、控制整合、介面整合)