內容簡介
本書主要介紹了軟體工程學及其套用,內容包括可行性研究、需求分析、概要設計、詳細設計、編碼、軟體質量與質量保證、項目計畫與管理、軟體開發工具與環境方面的內容。為了保持教材內容的先進性,也包含了面向對象軟體工程學。本書可作為高等院校的教材,也可作為從事軟體開發與套用的工程人員的參考書。 本書為普通高等教育“十一五”國家級規劃教材、
圖書目錄
第1章軟體工程概述1
1.1軟體1
1.1.1軟體的發展1
1.1.2軟體定義3
1.1.3軟體的特點3
1.1.4軟體的分類4
1.2軟體工程概念6
1.2.1軟體危機與軟體工程的定義6
1.2.2軟體工程的原則8
1.3軟體生存周期與軟體開發模型9
1.3.1軟體生存周期9
1.3.2軟體開發模型10
1 4小結16
習題16
第2章可行性研究
18
2.1可行性研究的任務18
2.2可行性研究的步驟19
2.3系統流程圖21
2.4成本效益分析22
2.4.1成本估計23
2.4.2費用估計24
2.4.3幾種度量效益的方法25
2 5小結26
習題26
第3章需求分析
27
3.1需求分析的任務與步驟27
3.1.1需求分析的任務27
3.1.2需求分析的步驟29
3.1.3需求分析的原則31
3.2需求分析的方法32
3.2.1面向數據流的需求分析方法32
3.2.2數據流圖33
3.2.3數據字典39
3.3圖形44
3.3.1層次方框圖44
3.3.2Warnier圖44
3.3.3IPO圖45
3.4需求規格說明與評審46
3.4.1需求規格說明的主要內容46
3.4.2需求分析的評審47
3.4.3需求分析評審的方法48
3 5小結49
習題49
第4章概要設計
50
4.1概要設計的任務與步驟50
4 1 1概要設計任務50
4 1 2概要設計步驟50
4 2軟體設計的原則52
4 2 1模組化52
4 2 2抽象與逐步求精53
4 2 3信息隱蔽和局部化53
4 2 4模組獨立性53
4 2 5結構設計原則57
4 3面向數據流的設計方法60
4 3 1基本概念61
4 3 2系統結構圖(SC圖)的組成62
4 3 3變換分析64
4 3 4事務分析68
4 4面向數據結構的設計方法69
4 5概要設計文檔評審78
4 6小結80
習題80
第5章詳細設計
81
5.1詳細設計的任務與原則81
5 1 1詳細設計的任務81
5 1 2詳細設計的原則82
5.2詳細設計的方法82
5 2 1程式流程圖82
5 2 2NS圖84
5 2 3PAD圖85
5 2 4PDL87
5 3詳細設計規格說明與複審89
5 3 1詳細設計說明書89
5 3 2設計複審90
5 4小結91
習題91
第6章面向對象的分析和設計方法
92
6 1面向對象方法的基本概念和特徵92
6 1 1面向對象方法概述92
6.1.2面向對象的軟體工程94
6.1.3面向對象的基本概念和特徵98
6.2面向對象的分析105
6.2.1面向對象分析基本過程及原則105
6.2.2對象與類的確定109
6.2.3確定屬性112
6.2.4定義服務113
6.2.5對象間通信116
6.3面向對象設計122
6.3.1面向對象設計的基本概念122
6.3.2面向對象設計的方法124
6.4UML126
6.4.1UML的產生與發展126
6 4 2UML的表示法132
6 4 3UML軟體開發過程概述145
6 5小結148
習題148
第7章編碼
149
7 1程式設計語言149
7 1 1程式設計語言分類149
7 1 2程式設計語言的特點151
7 1 3程式設計語言的選擇153
7 2編碼風格154
7 2 1源程式文檔化155
7 2 2數據說明157
7 2 3語句結構157
7 2 4輸入輸出159
7 3程式效率及編程安全160
7 3 1有關程式效率的幾條準則160
7 3 2算法對效率的影響160
7 3 3影響存儲器效率的因素160
7 3 4影響輸入輸出的因素161
7 3 5編程安全161
7 4小結162
習題162
735編程安全161
74小結162
習題162
第8章軟體質量與質量保證163
81軟體質量的定義163
82影響軟體質量的因素163
83軟體質量保證策略165
84軟體質量保證活動166
85軟體評審166
851設計質量的評審內容167
852程式質量的評審內容168
86軟體質量保證的標準170
87結構化的軟體測試171
871軟體測試的概念和原則171
872軟體測試技術173
873測試的步驟180
874軟體糾錯技術182
88面向對象的軟體測試184
881面向對象分析和面向對象設計的模型測試184
882面向對象的測試策略186
883面向對象軟體測試集設計187
89軟體測試計畫與測試分析報告189
810軟體維護190
8101軟體維護的定義、分類與特點190
8102軟體維護步驟及組織193
8103軟體的可維護性197
8104軟體維護的副作用198
8105逆向工程和再生工程199
811小結199
習題199
第9章項目計畫與管理201
91軟體項目特點、管理的特殊性及軟體管理功能201
911軟體項目的特點201
912軟體管理的功能202
913確定軟體項目的工作範圍202
92確定軟硬體資源202
921人力資源203
922硬體203
923軟體203
93人員的計畫和組織204
94成本估計及控制205
941軟體開發成本估計方法205
942專家判定技術206
943成本估算模型207
95進度計畫209
951軟體工作的特殊性209
952各階段工作量的分配210
953制定開發進度211
96軟體配置管理211
961基線212
962軟體配置項213
963軟體配置管理過程214
97軟體管理方案217
98小結219
習題219
第10章軟體開發工具與環境概述220
101軟體開發工具概述220
102軟體開發工具的功能221
103軟體開發工具的特性222
104軟體開發工具的分類223
105軟體開發環境225
106常用開發環境226
1061Windows作業系統226
1062UNIX程式開發環境227
1063Linux開發環境232
107軟體開發工具與環境的套用234
108CASE技術235
109小結237
習題237
參考文獻238