內容簡介
本書是一本基於豐富案例的軟體工程實用教程,利用軟體工程核心三要素(方法、工具和過程)貫穿全文;重點介紹軟體工程的基本概念、原理、軟體工程國家相關規範與軟體工程文檔,撰寫國家標準以及傳統軟體工程方法學和面向對象方法學。
本書重點介紹當前主流的面向對象軟體工程的開發、建模UML與工具以及統一過程RUP。通過實例重點講述面向對象分析、設計和實現流程。
書中所有的概念、開發方法都通過實例來演示,內容精練,表達簡明,實例豐富,可以用作高等院校軟體工程專業、計算機科學與技術專業及相關專業本科生、研究生的教材,也可以作為培訓機構相關專業的培訓教材和廣大科技工作者和研究人員參考。
圖書目錄
第1章軟體工程概述3
1.1軟體工程的發展歷程3
1.2軟體危機4
1.2.1軟體的概念、特點及分類4
1.2.2軟體危機7
1.2.3產生軟體危機的原因8
1.2.4解決軟體危機的方法9
1.3軟體工程10
1.3.1軟體工程概述10
1.3.2軟體工程原理11
1.3.3常用的軟體工程開發方法13
1.3.4軟體過程與模型14
1.4軟體工程的相關規範20
1.4.1軟體項目的開發流程20
1.4.2軟體工程的標準化21
1.4.3軟體工程文檔編寫23
1.4.4軟體智慧財產權及道德規範24
小結27
習題128第2章結構化方法、工具和過程30
2.1結構化方法與過程30
2.2常用結構化建模工具31
2.2.1Visio31
2.2.2PowerDesigner35
小結43習題244第3章可行性與計畫研究45
3.1可行性研究45
3.1.1可行性研究的任務45
3.1.2可行性研究的步驟46
3.1.3成本—效益分析48
3.2項目開發計畫52
3.3業務流程建模53
3.3.1系統流程圖53
3.3.2數據流圖55
3.3.3數據字典59
3.4項目案例60
小結67
習題368第4章需求分析70
4.1需求分析的任務和步驟70
4.1.1需求分析的任務71
4.1.2需求分析的步驟72
4.2獲取需求的方法75
4.3結構化分析方法的策略77
4.4結構化分析圖形工具78
4.4.1數據流圖78
4.4.2輸入/處理/輸出圖82
4.4.3實體—聯繫圖85
小結89
習題490第5章軟體設計92
5.1概要設計92
5.1.1概要設計步驟及任務92
5.1.2概要設計原理96
5.1.3軟體體系結構設計104
5.1.4概要設計圖形工具107
5.1.5面向數據流的設計方法110
5.2接口設計119
5.2.1模組間接口設計119
10.1面向對象的需求獲取254
10.1.1需求獲取概述255
10.1.2需求獲取255
10.2面向對象的需求分析260
10.2.1面向對象方法概述260
10.2.2需求分析階段的任務266
10.2.3需求規格說明的評審272
10.3項目案例273
小結286
習題10286第11章面向對象設計與實現288
11.1面向對象設計準則288
11.2面向對象設計290
11.3面向對象實現296
11.3.1面向對象程式設計語言296
11.3.2面向對象的測試策略302
11.3.3面向對象的測試步驟302
11.3.4面向對象測試用例設計304
11.4項目案例306
小結308
習題11309附錄A軟體工程知識體系310附錄A軟體工程國家標準314附錄C軟體工程文檔撰寫國家標準316
C.1可行性研究報告316
C.2開發計畫321
C.3需求規格說明書322
C.4概要設計說明書324
C.5詳細設計說明書326
C.6測試計畫328
C.7用戶操作手冊330參考文獻334
第一部分測試理論第1章軟體測試概論3
1.1軟體與軟體項目3
1.1.1軟體發展史3
1.1.2項目特性4
1.1.3軟體項目5
1.1.4項目生命周期6
1.2軟體缺陷7
1.2.1軟體缺陷案例7
1.2.2軟體缺陷9
1.2.3軟體缺陷流程12
1.3習題13第2章軟體測試基本知識15
2.1測試發展歷程15
2.2測試的幾種觀點16
2.3軟體測試目的與原則18
2.4軟體測試分類20
2.4.1按照測試階段劃分20
2.4.2按照執行主體劃分21
2.4.3按照執行狀態劃分21
2.4.4按照測試技術劃分23
2.5軟體測試模型26
2.5.1V模型26
2.5.2W模型26
2.5.3H模型27
2.5.4X模型282.5.5前置模型28
2.6測試用例29
2.7習題32第3章軟體測試流程33
3.1測試流程概述33
3.2測試計畫34
3.3測試設計35
3.4單元測試35
3.4.1概述35
3.4.2內容36
3.4.3步驟38
3.5集成測試39
3.5.1主要任務39
3.5.2集成測試方法39
3.6確認測試42
3.7系統測試43
3.8驗收測試44
3.8.1α測試和β測試44
3.8.2回歸測試44
3.9評估測試47
3.10習題48第4章黑盒測試50
4.1概述50
4.2等價類劃分51
8.4習題120第9章軟體質量保證121
9.1軟體測試管理121
9.2軟體測試文檔121
9.2.1測試文檔的類型122
9.2.2測試文檔的重要性123
9.3測試人員組織124
9.3.1測試團隊架構124
9.3.2測試團隊階段性125
9.4軟體缺陷管理126
9.4.1概述126
9.4.2缺陷跟蹤流程127
9.4.3缺陷跟蹤管理系統概述127
9.5軟體質量128
9.5.1概述128
9.5.2ISO9000系列129
9.5.3CMM/CMMI130
9.5.4ISO15504過程評估133
9.6習題133
第二部分測試實踐
第10章軟體測試自動化與測試工具137
10.1自動化測試137
10.2測試成熟度模型138
10.3測試工具原理143
10.3.1白盒測試工具143
10.3.2黑盒測試工具144
10.3.3測試設計和開發工具146
10.3.4測試執行和評估工具147
10.3.5測試管理工具147
10.4測試工具選擇148
10.5習題149第11章測試管理工具151
11.1概述151
11.2測試管理工具——TestDirector152
11.2.1TestDirector簡介152
11.2.2TestDirector使用概述153第12章性能測試工具165
12.1綜述165
12.2LoadRunner測試流程166
12.3項目實踐166
12.3.1使用VuGen創建腳本167
12.3.2使用Controller設計場景172
12.3.3使用Controller運行場景174
12.3.4分析場景結果175第13章缺陷管理工具178
13.1Bugzilla178
13.2JIRA182
13.2.1跟蹤操作183
13.2.2查詢操作185
13.2.3生成報表186第14章單元測試工具188
14.1JUnit特點188
14.2JUnit在eclipse中的使用188第15章功能測試工具194
15.1WinRunner194
15.1.1WinRunner測試模式194
15.1.2WinRunner測試流程194
15.1.3WinRunner測試舉例197
15.2QuickTestProfessional簡介202
15.2.1QuickTestProfessional測試過程202
15.2.2使用MercuryTours範例網站202
15.2.3QTP測試範例203第16章嵌入式軟體測試工具213
16.1Logiscope簡介213
16.2Logiscope三大功能214
16.2.1使用Audit215
16.2.2使用RuleChecker224
16.2.3使用TestChecker228第三部分測試考試指導
第17章全國計算機等級考試四級軟體測試工程師241
17.1內容介紹241
17.1.1考試說明242
17.1.2考試大綱及考試重點242
17.2相關資料247第18章軟體測試行業249
18.1測試行業現狀249
18.2軟體測試職位250
18.3軟體測試思維方式251
18.4常用軟體測試工程師筆試題252第19章微軟公司軟體測試256
19.1微軟測試策略256
19.2一道微軟測試題目258
參考文獻259