複製鏈接
請複製以下鏈接發送給好友

軟件工程

(2012年宋雨編寫、清華大學出版社出版的圖書)

鎖定
《軟件工程》是2012年9月1日清華大學出版社出版的圖書,作者是宋雨。
中文名
軟件工程
作    者
宋雨
出版時間
2012年09月01日
出版社
清華大學出版社
頁    數
417 頁
ISBN
9787302277583
定    價
46 元
開    本
大32開
裝    幀
平裝
印刷日期
2012.09.29

軟件工程內容簡介

《軟件工程》以軟件開發過程為主線,系統地介紹了軟件工程的基本原理、概念和技術方法。全書分16章,包括基本概念、軟件計劃、軟件需求分析、軟件設計、程序編碼、軟件測試、軟件維護、軟件複用、面向對象的軟件工程、軟件質量保證、軟件的技術度量、軟件開發工具與環境、軟件工程管理、軟件過程管理、基於構件的軟件工程(CBSE)和應用Web工程,每章後面都附有習題供讀者練習之用。本書的編寫基於中國軟件工程學科教程的要求,結合作者多年的教學和科研實踐並參考了同類文獻,包含了軟件工程學科的重要分支。本書體系完整,可作為本科生或研究生軟件工程課程的教材或參考書,也可供對該學科感興趣的讀者閲讀 [1] 

軟件工程圖書目錄

第1章概述1
1.1計算機系統的開發過程1
1.2軟件及其分類3
1.3軟件工程的由來和發展4
1.4軟件的生命週期6
1.5軟件生存期模型7
1.6小結13
第2章軟件計劃15
2.1確定軟件範圍15
2.2軟件開發中的資源需求15
2.3軟件成本估算17
2.3.3面向對象項目的估算30
2.3.4自行開發或購買的決策31
2.4軟件開發進度的安排32
2.4.1甘特圖32
2.4.2PERT圖33
2.4.3兩種圖的結合34
2.5小結36
第3章軟件需求分析41
3.1需求分析的任務41
3.2需求規約説明書42
3.3結構化需求分析方法44
3.3.1數據流圖44
3.3.2數據詞典50
3.3.3功能説明52
3.4原型化需求分析方法55
3.4.1原型開發的分類56
3.4.2快速原型技術58
3.4.3用户界面開發61
3.5面向對象方法62
3.5.1Coad/Yourdon方法62
3.5.2Booch方法63
3.5.3Rumbaugh的OMT方法63
3.5.4Jacobson方法63
3.5.5UML方法64
3.6小結67
第4章軟件設計70
4.1軟件設計的任務70
4.1.1概要設計70
4.1.2詳細設計71
4.1.3軟件設計的目標和準則71
4.2軟件設計的概念和原則71
4.2.1軟件體系結構71
4.2.2軟件結構中的若干概念72
4.2.3軟件的模塊化73
4.3軟件概要設計76
4.3.1充分理解SRS,確定設計策略76
4.3.2模塊化準則77
4.3.3模塊設計中的具體方法77
4.3.4概要設計文檔80
4.4軟件詳細設計81
4.4.1圖示工具81
4.4.2表格工具85
4.4.3語言工具85
4.4.4工具的比較85
4.4.5程序複雜性的度量87
4.4.6詳細設計文檔89
4.5結構化設計方法91
4.5.1軟件結構圖92
4.5.2從DFD導出軟件結構圖92
4.5.3軟件設計的評判98
4.6面向數據結構的設計方法100
4.6.1Jackson方法101
4.6.2LCP方法105
4.7面向對象的設計方法107
4.7.1OOD基本概念108
4.7.2OOD任務110
4.7.3Coad與Yourdon的OOD方法113
4.7.4層次化OOD方法114
4.8其他設計方法116
4.8.1面向方面程序設計116
4.8.2面向Agent的設計方法117
4.8.3泛型程序設計117
4.8.4面向構件的技術118
4.8.5敏捷方法118
4.8.6Rational統一過程118
4.8.7功能驅動開發模式118
4.8.8極端編程119
4.9小結119
第5章程序編碼124
5.1程序設計語言的分類124
5.1.1第一代語言--機器語言時代124
5.1.2第二代語言--彙編語言時代124
5.1.3第三代語言--高級語言時代124
5.1.4第四代語言--非過程語言時代125
5.2編碼風格125
5.2.1語句結構125
5.2.2源程序文檔化127
5.2.3數據説明128
5.2.4輸入和輸出129
5.3面向對象的編程語言130
5.3.1Smalltalk130
5.3.2Eiffel130
5.3.3SDL130
5.3.4C++131
5.3.5面向對象的Pascal131
5.3.6Java131
5.3.7C#131
5.4小結132
第6章軟件測試133
6.1軟件測試基礎133
6.1.1測試目標133
6.1.2測試原則133
6.1.3可測試性134
6.2測試步驟和策略134
6.2.1軟件測試過程與開發過程的對應關係134
6.2.2測試信息流135
6.2.3單元測試135
6.2.4集成測試136
6.2.5確認測試141
6.2.6系統測試142
6.3.1概述143
6.3.2邏輯覆蓋144
6.3.3等價類劃分147
6.3.4邊界值分析148
6.3.5劃分測試與隨機測試148
6.3.7因果圖法149
6.3.8人工測試149
6.3.9調試150
6.4軟件可靠性151
6.4.1可靠性和可用性152
6.4.2影響軟件可靠性的因素152
6.4.3軟件可靠性模型153
6.4.4軟件可靠性工程155
6.5面向對象的測試155
6.5.1OO軟件測試策略155
6.5.2OO類測試方法156
6.5.3繼承層次的測試158
6.6小結160
第7章軟件維護163
7.1軟件維護的概念163
7.1.1改正性維護164
7.1.2適應性維護164
7.1.3完善性維護164
7.1.4預防性維護164
7.2軟件的可維護性164
7.2.1可理解性165
7.2.2可測試性165
7.2.3可修改性165
7.2.4可靠性166
7.2.5可移植性166
7.2.6可使用性166
7.2.7效率166
7.3提高可維護性的方法166
7.3.1提供完整和一致的文檔167
7.3.2建立明確的軟件質量目標和優先級167
7.3.3使用現代化的開發技術和工具168
7.3.4進行明確的質量保證審查168
7.3.5選擇可維護性好的程序設計語言169
7.3.6採用軟件維護的新方法169
7.4軟件再工程170
7.4.1業務過程再工程170
7.4.2軟件再工程過程模型171
7.4.3逆向工程172
7.4.4軟件重構173
7.4.5正向工程174
7.4.6再工程經濟學174
7.5小結175
習題7 175
第8章軟件複用177
8.1軟件複用概念177
8.1.1軟件複用的類型177
8.1.2軟件複用的粒度178
8.1.3軟件複用機會的識別179
8.2領域工程181
8.2.1領域分析181
8.2.2領域特徵182
8.3可複用構件的建造及複用183
8.3.1構件應具有的特徵183
8.3.2領域構件的設計框架184
8.3.3幾種流行的構件技術184
8.3.4建立可複用的構件庫186
8.3.5軟件構件的複用187
8.3.6基於Agent的軟件複用188
8.3.7基於複用的數據挖掘系統189
8.4面向對象的軟件複用技術190
8.4.1複用技術對OO方法的支持190
8.4.2OO軟件複用技術191
8.5小結192
習題8193第9章面向對象的軟件工程194
9.1面向對象的基本概念194
9.1.1對象195
9.1.2類196
9.1.3消息、方法和變量197
9.1.4面向對象的基本特徵198
9.2面向對象建模及統一建模語言UML203
9.2.1面向對象建模203
9.2.2統一建模語言UML204
9.2.3UML模型208
9.2.4UML的擴展機制216
9.2.5UML建模工具219
9.3面向對象的軟件需求分析及設計220
9.3.1常用的面向對象軟件工程方法220
9.3.2基於UML的軟件分析與設計222
9.4面向對象的軟件需求分析方法及其在圖書館系統的應用223
9.4.1系統需求224
9.4.2用面向對象方法進行系統需求分析224
9.5基於UML的網絡管理平台的分析與設計228
9.5.1系統開發過程228
9.5.2系統的實現231
9.6小結232
習題9233第10章軟件質量保證235
10.1軟件質量的概念235
10.2軟件質量保證236
10.2.1SQA活動236
10.2.2軟件可靠性與軟件質量保證237
10.2.3軟件質量檢驗與軟件質量保證238
10.3軟件複審238
10.3.1軟件錯誤的危害性238
10.3.2軟件複審與審核計劃239
10.3.3正式技術複審239
10.4統計質量保證240
10.5ISO9000質量標準242
10.5.1ISO9000簡介242
10.5.2ISO9000認證標準243
10.5.3我國對ISO9000標準的使用246
10.6軟件質量預測模型及應用247
10.6.1軟件質量度量和質量預測模型的關係247
10.6.2廣義迴歸神經網絡結構及特點248
10.6.3軟件質量預測模型的應用249
10.7小結250
習題10251第11章軟件的技術度量252
11.1軟件技術度量概述252
11.1.1軟件技術度量要解決的問題252
11.1.2軟件技術度量考慮的軟件質量因素252
11.1.3軟件技術度量的原則256
11.2軟件分析模型的度量256
11.2.1基於功能點的度量256
11.2.2基於原語的度量--Bang度量258
11.2.3SRS質量的度量259
11.3軟件設計模型的度量259
11.3.1體系結構設計度量259
11.3.2構件級度量262
11.3.3界面設計度量265
11.4源代碼度量266
11.4.1Halstead度量方法266
11.4.2Thayer複雜性度量266
11.5軟件測試的度量267
11.5.1測試過程S曲線267
11.5.2缺陷追蹤和管理268
11.5.3外包軟件驗收測試中的度量268
11.6軟件維護的度量269
11.6.1UKSMA和NESMA標準269
11.6.2軟件維護的度量269
11.7面向對象的度量270
11.7.1面向對象度量方法270 [2] 
11.7.2面向對象系統中考慮結構因素的類的內聚度量274
11.8小結276
習題11276第12章軟件開發工具與環境279
12.1軟件開發工具279
12.2軟件開發環境280
12.2.1軟件開發環境的組成280
12.2.2軟件開發環境的分類281
12.3.1CASE環境283
12.3.2軟件開發CASE工具簡介283
12.4小結289
習題12289第13章軟件工程管理290
13.1軟件工程文化290
13.1.1軟件文化概念290
13.1.2軟件項目的五要素291
13.1.3肯定開發者的成就292
13.1.4不斷學習新知識292
13.1.5尋找卓越的需求293
13.1.6質量文化293
13.1.7方法、測量和工具294
13.2現代人件295
13.2.1團隊開發295
13.2.2程序員個人對軟件系統的影響296
13.2.3工作組織297
13.3軟件工程36計302
13.3.1方法篇302
13.3.2設計篇305
13.3.3實現篇306
13.3.4管理篇308
13.4軟件風險分析與管理309
13.4.1軟件風險及分類309
13.4.2風險預測310
13.4.3風險的緩解、監控和管理312
13.5軟件配置管理314
13.5.1軟件配置314
13.5.2配置標識315
13.5.3里程碑與變更控制315
13.5.4配置狀態登錄316
13.5.5配置審查316
13.6軟件工程標準化317
13.6.1軟件工程標準化的意義317
13.6.2軟件工程標準化的研究內容317
13.6.3軟件工程國家標準318
13.7軟件的知識產權保護319
13.7.1軟件知識產權的法律保護319
13.7.2計算機軟件是著作權法保護的客體320
13.7.3軟件著作權人享有的專有權利321
13.7.4軟件著作權的登記323
13.8小結323
習題13324第14章軟件過程管理326
14.1.1CMM的必要性326
14.1.2CMM的提出與發展327
14.1.3CMM的作用328
14.2CMM的主要內容329
14.2.1CMM的專業術語329
14.2.2CMM的內容330
14.2.3CMM的內部結構332
14.3CMM各級之間的關係336
14.3.1評估軟件企業的CMM級別337
14.3.2從初始級向可重複級過渡337
14.3.3從可重複級向已定義級過渡338
14.3.4向可管理級和優化級過渡338
14.4CMM實施的人員構成和組織機構的劃分339
14.4.1人員的構成339
14.4.2組織機構的劃分340
14.5.1PSP概述342
14.5.2PSP的設計原則343
14.5.3PSP進化的框架343
14.5.4PSP的應用345
14.5.5PSP的擴展--團隊軟件過程347
14.6小結349
習題14349第15章基於構件的軟件工程351
15.1基本概念351
15.1.1CBSE過程351
15.1.2領域工程352
15.1.3基於構件的開發352
15.1.4CBSE經濟學354
15.1.5軟構件的可測試性355
15.2可複用構件的分類與查詢357
15.2.1主要的分類方法357
15.2.2基於刻面的檢索358
15.3基於構件的軟件重用成熟度359
15.3.1重用成熟度359
15.3.2構件重用與軟件成熟度的關係360
15.4構件技術應用361
15.4.1CORBA構件模型CCM361
15.4.2基於構件技術的移動通信監控系統362
15.4.3構件技術在電力信息化中的應用363
15.4.4基於演化構件的軟件開發364
15.4.5基於複用技術的仿真系統軟件364
15.5小結367
習題15368第16章應用Web工程369
16.1Web工程369
16.1.1基於Web的系統及應用的特點369
16.1.2WebApp工程的層次371
16.1.3Web工程過程371
16.1.4Web工程的最佳實踐373
16.2WebApp項目計劃374
16.2.1表述WebApp項目374
16.2.2制定WebApp項目計劃376
16.2.3組建Web工程團隊377
16.2.4Web工程的項目管理378
16.3WebApp分析382
16.3.1WebApp的需求分析382
16.3.2WebApp的分析模型385
16.3.3內容模型385
16.3.4交互模型387
16.3.5功能模型388
16.3.6配置模型389
16.3.7關係導航分析390
16.4WebApp設計392
16.4.1Web工程設計392
16.4.2WebApp界面設計395
16.4.3美學設計399
16.4.4內容設計400
16.4.5體系結構設計400
16.4.6導航設計403
16.4.7構件級設計404
16.4.8超媒體設計模式404
16.4.9面向對象的超媒體設計方法405
16.5WebApp測試406
16.5.1WebApp測試概念406
16.5.2WebApp測試過程408
16.5.3WebApp測試策略409
16.6小結411
習題16413
參考文獻415 [2] 
參考資料
  • 1.    簡介  .清華大學出版社[引用日期2016-04-14]
  • 2.    簡介  .清華大學出版社[引用日期2016-04-15]