目 錄
第1章 軍用軟件工程概述 001
1.1 軟件和軟件危機 001
1.1.1 軟件的概念和特點 001
1.1.2 軟件的發(fā)展歷程 003
1.1.3 軟件危機 005
1.2 軍用軟件分類和特點 008
1.2.1 軍用軟件定義 008
1.2.2 軍用軟件的作用和地位 009
1.2.3 軍用軟件分類 010
1.2.4 軍用軟件特點 013
1.3 軍用軟件工程 014
1.3.1 軟件工程的概念 014
1.3.2 軟件工程的基本原理 016
1.4 軍用軟件生存周期 018
1.4.1 軟件生存周期 019
1.4.2 典型生存周期模型 023
1.4.3 生存周期模型選擇原則 031
1.5 軍用軟件工程的標準化 033
1.5.1 軟件工程標準化的作用 034
1.5.2 軟件工程標準 035
1.5.3 國外軟件工程標準化現狀 038
1.5.4 國內軟件工程標準化現狀 039
習題 042
第2章 軍用軟件需求分析 044
2.1 可行性研究和可行性研究報告 044
2.1.1 可行性研究的目的和內容 044
2.1.2 可行性研究的步驟 047
2.1.3 可行性研究報告 048
2.2 軟件需求分析的目標和過程 049
2.2.1 軟件需求 050
2.2.2 軟件需求分析的目標 053
2.2.3 需求分析的過程 056
2.2.4 需求獲取技術 059
2.2.5 軟件需求分析的原則 060
2.2.6 需求分析的方法 063
2.3 結構化分析方法 066
2.3.1 數據建模 067
2.3.2 功能建模和數據流 071
2.3.3 行為建模 080
2.4 快速原型化方法 083
2.4.1 原型的分類 084
2.4.2 原型類型的選擇 085
2.4.3 原型開發(fā)過程 086
2.5 面向對象分析方法 091
2.5.1 面向對象方法概述 092
2.5.2 面向對象建模 093
2.5.3 面向對象分析 095
2.5.4 用例模型 097
2.6 軟件需求規(guī)格說明和需求評審 100
2.6.1 制定軟件需求規(guī)格說明的原則 100
2.6.2 軟件需求規(guī)格說明框架 101
2.6.3 需求評審 102
本章小結 103
習題 105
第3章 軍用軟件設計 107
3.1 軟件設計的基本概念 108
3.1.1 抽象化 108
3.1.2 逐步細化 109
3.1.3 模塊化 109
3.1.4 控制層次 110
3.1.5 數據結構 112
3.1.6 軟件過程 114
3.1.7 信息隱蔽 114
3.2 軟件設計的過程 115
3.2.1 軟件設計的重要性 115
3.2.2 軟件設計的原則 117
3.2.3 概要設計過程 118
3.2.4 詳細設計過程 123
3.3 軟件體系結構 124
3.3.1 軟件體系結構的概念 124
3.3.2 軟件體系結構的分類 126
3.4 模塊化設計 128
3.4.1 模塊 128
3.4.2 模塊獨立性 129
3.5 結構化設計方法 134
3.5.1 系統(tǒng)結構圖中的模塊 135
3.5.2 變換流與變換型系統(tǒng)結構 136
3.5.3 事務流與事務型系統(tǒng)結構 137
3.5.4 變換映射 139
3.5.5 事務映射 141
3.7 面向對象設計 142
3.7.1 面向對象設計的過程 143
3.7.2 邏輯體系架構設計 145
3.7.3 物理體系架構建模 149
3.7.4 基于構件的建模 153
3.7.5 詳細設計 157
3.8 軟件過程設計 164
3.8.1 程序流程圖 164
3.8.2 N-S圖 165
3.8.3 問題分析圖 167
3.8.4 程序設計語言 168
3.8.5 層次圖加輸入/處理/輸出圖 169
3.9 設計規(guī)格說明與設計評審 174
本章小結 176
習題 178
第4章 軍用軟件測試 179
4.1 軍用軟件測試基礎 179
4.1.1 軟件測試 179
4.1.2 測試的目的和原則 181
4.2 測試用例設計 183
4.2.1 測試用例 183
4.2.2 測試用例的設計原則 185
4.3 軟件測試方法 186
4.3.1 白盒測試 187
4.3.2 黑盒測試 202
習題 211
第5章 軍用軟件維護 219
5.1 軍用軟件維護的基本概念 219
5.1.1 維護的目的 221
5.1.2 維護的類型 221
5.1.3 維護的特點 223
5.1.4 維護的工作量 225
5.2 軍用軟件維護的過程 226
5.2.1 維護組織機構 227
5.2.2 維護工作流程 228
5.2.3 維護文檔 232
5.2.4 維護活動的評價 234
5.3 軍用軟件的可維護性 235
5.3.1 可維護性的定義 235
5.3.2 決定可維護性的因素 235
習題 237
第6章 軍用軟件項目管理 238
6.1 軍用軟件項目管理概述 238
6.1.1 軍用軟件開發(fā)中的問題分析 239
6.1.2 項目管理的發(fā)展歷史 241
6.1.3 軍用軟件項目管理的概念 242
6.2 軍用軟件項目管理過程 243
6.2.1 軍用軟件項目管理 243
6.2.2 項目管理的要素 246
6.2.3 項目的管理過程 248
6.3 軍用軟件項目時間管理 249
6.3.1 活動定義 250
6.3.2 活動排序 253
6.3.3 活動資源估算 259
6.3.4 活動歷時估算 262
6.3.5 制訂進度計劃 265
6.3.6 進度控制 272
第7章 軍用軟件質量管理 278
7.1 軟件質量概述 278
7.1.1 質量的概念 278
7.1.2 軟件產品質量 279
7.2 軟件質量度量與評估 281
7.2.1 軟件質量度量框架 281
7.2.2 軟件質量度量活動 283
7.2.3 軟件質量評估過程 286
7.3 軍用質量管理體系 287
7.3.1 質量管理體系原則 288
7.3.2 質量管理體系建設 293
習題 299
第8章 軍用軟件配置管理 301
8.1 軟件配置管理概述 302
8.1.1 配置管理的基本概念 302
8.1.2 配置管理的發(fā)展歷史 306
8.1.3 配置管理的基本目標 307
8.1.4 配置管理的基本功能 309
8.2 軟件配置管理的關鍵活動 309
8.2.1 配置標識 310
8.2.2 版本控制 311
8.2.3 變更控制 312
8.2.4 配置審計 313
8.2.5 狀態(tài)報告 314
8.3 軟件配置管理的實施 315
8.3.1 配置管理的步驟 315
8.3.2 配置管理角色 317
8.3.3 配置管理過程 319
附錄A 軟件類主要國家軍用標準索引 322
附錄B 英文縮寫詞索引 324
參考文獻 330