?資料&文章更新?
GitHub地址:https://github.com/tyronczt/system_architect
文章目錄
- 軟件工程基礎知識
- 軟件工程概述
- 能力成熟度模型
- 能力成熟度模型CMM
- 能力成熟度模型集成CMMI
- 💯考試真題
- 第一題
- 第二題
- 軟件過程模型
- 瀑布模型(SDLC)
- 螺旋模型
- V模型
- 原型化模型
- 增量模型
- 噴泉模型、基于構件的開發模型、形式化方法模型
- 💯考試真題
- 第一題
- 第二題
- 敏捷模型
- 主要敏捷方法
- 統一過程模型RUP
- 逆向工程
- 💯考試真題
- 第一題
- 第二題
軟件工程基礎知識
軟件工程概述
軟件開發生命周期:定義、開發、運行、維護。
軟件系統文檔:用戶文檔和系統文檔。
軟件工程過程(PDCA):軟件規格說明(Plan)、軟件開發(Do)、軟件確認(Check)、軟件演進(Action)。
軟件系統工具:軟件開發工具、軟件維護工具、軟件管理和軟件支持工具。
軟件設計的四個活動:數據設計、架構(體系結構)設計、人機界面(接口)設計和過程設計。
能力成熟度模型
能力成熟度模型CMM
初始級、可重復級、已定義級、已管理級、優化級。
能力成熟度模型集成CMMI
初始級、已管理級、已定義級、定量管理、優化級。
💯考試真題
第一題
答案:B D
【解析】:
- 系統分析階段結束后,主要輸出是對系統需求的明確描述和解決方案的初步規劃。選項中,**B. 系統方案建議書 **通常是在需求分析后提出的整體解決方案文檔,符合該階段的成果。
- 系統測試階段完成后,需要提供給用戶的最終文檔包括操作指南等。D. 操作手冊是系統測試通過后,為用戶提供的使用說明,屬于該階段完成后的工作產品。
第二題
答案:B
軟件過程模型
瀑布模型(SDLC)
螺旋模型
風險分析 --> 螺旋模型
四個階段:制訂計劃、風險分析、實施工程和客戶評估。
V模型
V模型用于需求明確和需求變更不頻繁的情形。
單元測試 --> 編碼和實現 單編
集成測試 --> 詳細設計 集詳
系統測試 --> 概要設計 系概
驗收測試 --> 需求分析 驗需
原型化模型
原型化模型適用于需求不明確的情形
增量模型
噴泉模型、基于構件的開發模型、形式化方法模型
💯考試真題
第一題
答案:A
解析:功能清晰,也即需求較明確,有這樣的關鍵字都是考察瀑布模型,牢記總結的記憶關鍵字。
第二題
答案:D
解析:螺旋模型的特點是風險分析,應對風險的都正確,螺旋模型適合大型軟件開發。
敏捷模型
核心思想:
(1)敏捷方法是適應型而非可預測型擁抱變化,適應變化。
(2)敏捷方法是以人為本,而非以過程為本。發揮人的特性。
(3)迭代增量式的開發過程。以原型開發思想為基礎,采用法代增量式開發,發行版本小型化。
主要敏捷方法
- 極限編程(XP):一種近螺旋式的開發方法,倡導測試先行。
- 水晶系列:以人為中心,每個都含有獨特的角色、過程模型、工作產品和實踐。
- 并列爭球法(Scrum):一種迭代的增量化過程,把每段時間(如30天)一次的迭代稱為一個“沖刺”(Sprint),并按照需求的優先級別來實現產品。
- 特性驅動開發方法:一個迭代的開發模型,3個要素:人、過程和技術,5個核心過程:開發整體對象模型、構造特征列表、計劃特征開發、特征設計和特征構建。
統一過程模型RUP
四個階段
- 初始階段
- 細化階段
- 構造階段
- 移交階段
三個特點
- 用例驅動
- 以體系結構為中心
- 迭代與增量
逆向工程
逆向工程:軟件的逆向工程是分析程序,力圖在比源代碼更高抽象層次上建立程序的表示過程,逆向工程是設計的恢復過程。逆向工程的四個級別:
- 實現級
- 結構級
- 功能級
- 領域級
領域級抽象級別最高,完備性最低,實現級抽象級別最低,完備性最高。
💯考試真題
第一題
答案:A D
第二題
答案:B D
解析:軟件系統工具通常可以按軟件過程活動將軟件工具分為軟件開發工具、軟件維護工具、軟件管理和軟件支持工具。
軟件開發工具:需求分析工具、設計工具、編碼與排錯工具。
軟件維護工具:版本控制工具、文檔分析工具、開發信息庫工具、逆向工程工具、再工程工具。
軟件管理和軟件支持工具:項目管理工具、酉配置管理工具、軟件評價工具、軟件開發工具的評價和選擇。