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

軟件工程

(2023年9月1日清華大學出版社出版的圖書)

鎖定
《軟件工程》是2023年9月1日清華大學出版社出版的圖書,作者:祁燕、楊大為、劉麗萍、李芳、崔寧海。 [1] 
中文名
軟件工程
作    者
祁燕
楊大為
劉麗萍
李芳
崔寧海
出版時間
2023年9月1日
出版社
清華大學出版社
ISBN
9787302641315
定    價
59.80 元
印    次
1-1
印刷日期
2023.09.15

軟件工程內容簡介

本書簡明扼要地介紹軟件工程的基本原理和技術,旨在幫助讀者瞭解軟件工程的主要框架知識,並掌握基本的軟件開發方法。本書以軟件開發過程為時間軸,以結構化方法和麪向對象方法為重點,結合豐富的案例詳細闡述需求分析、系統設計、實現和測試的方法,以及軟件的維護。本書不僅着重於軟件工程基本知識和理論的掌握,同時也強調軟件工程實踐能力的培養和提高。內容覆蓋軟件資格考試所需的基本軟件工程理論知識,也為指導實踐提供了較為完整的案例和文檔規範,具有較強的實用性。 本書適合作為高等院校計算機與信息類相關專業的教材,也可以作為研究生及軟件工程實踐者的參考資料。 [1] 

軟件工程圖書目錄

目錄
第1章軟件工程概述1
1.1軟件1
1.1.1軟件的概念和特點1
1.1.2軟件的分類2
1.1.3軟件的發展歷程3
1.2軟件危機5
1.2.1軟件危機及其表現5
1.2.2軟件危機的啓示6
1.3軟件工程7
1.3.1軟件工程的概念7
1.3.2軟件工程的要素7
1.3.3軟件工程的基本原則8
1.3.4軟件工程知識體系9
1.4軟件生命週期11
1.4.1軟件生命週期的概念11
1.4.2軟件生命週期的階段劃分11
1.5軟件開發過程13
1.5.1軟件過程13
1.5.2軟件過程模型13
1.5.3軟件開發方法21
1.5.4軟件過程模型的選定23
1.6軟件工程的相關規範24
1.6.1軟件工程的標準化24
1.6.2軟件工程文檔編制26
1.7練習題28第2章軟件項目管理30
2.1工作量估算30
2.1.1估算軟件規模31
2.1.2專家判斷33
2.1.3算法方法34
2.1.4機器學習方法36
2.2進度計劃37
2.2.1基本原則37
2.2.2Gantt圖38
2.2.3PERT圖38
2.3項目人員40
2.3.1人員角色和特性40
2.3.2工作風格41
2.3.3項目組織42
2.4風險管理44
2.4.1風險評價44
2.4.2風險控制45
2.5質量保證46
2.5.1軟件質量及特徵46
2.5.2軟件質量保證措施47
2.6配置管理48
2.6.1軟件配置要素48
2.6.2配置管理過程49
2.7練習題50第3章可行性與計劃研究52
3.1可行性研究52
3.1.1可行性研究的目的52
3.1.2可行性研究的內容53
3.1.3可行性研究的步驟56
3.1.4軟件項目的立項57
3.2軟件開發計劃58
3.2.1軟件開發計劃的內容58
3.2.2軟件開發計劃文檔59
3.3練習題60第4章結構化分析61
4.1需求分析概述61
4.1.1需求的概念61
4.1.2需求分析的重要性61
4.1.3需求分析的過程62
4.2結構化分析建模67
4.2.1結構化分析模型67
4.2.2數據建模68
4.2.3功能建模70
4.2.4行為建模74
4.2.5數據字典76
4.3汽車租賃系統結構化分析77
4.3.1系統需求描述77
4.3.2建立數據模型78
4.3.3建立功能模型79
4.3.4建立行為模型82
4.3.5系統數據字典82
4.4練習題83第5章面向對象分析85
5.1面向對象方法學概述85
5.1.1面向對象的概念85
5.1.2面向對象方法的要點87
5.1.3面向對象方法學的優點87
5.1.4面向對象開發方法88
5.2統一建模語言UML89
5.2.1UML簡介89
5.2.2UML的概念模型90
5.2.3UML的應用範圍94
5.2.4UML建模工具95
5.2.5使用UML的準則96
5.3面向對象分析建模96
5.3.1面向對象分析方法96
5.3.2功能模型98
5.3.3對象模型105
5.3.4動態模型112
5.4校園招聘系統面向對象分析119
5.4.1需求描述119
5.4.2用例分析121
5.4.3識別分析類124
5.4.4分析交互126
5.4.5統一分析類128
5.5練習題128第6章軟件體系結構131
6.1軟件體系結構概述131
6.1.1軟件體系結構的組成131
6.1.2軟件體系結構建模132
6.1.3軟件體系結構的作用133
6.2軟件體系結構風格134
6.2.1管道和過濾器134
6.2.2客户服務器135
6.2.3對等網絡136
6.2.4發佈訂閲136
6.2.5信息庫137
6.2.6分層138
6.2.7組合風格138
6.3質量屬性和策略139
6.3.1可修改性140
6.3.2性能140
6.3.3安全性141
6.3.4可靠性142
6.3.5健壯性143
6.3.6易使用性143
6.3.7商業目標144
6.4體系結構框架144
6.4.1MVC框架144
6.4.2MVP框架145
6.4.3J2EE框架146
6.4.4PCMEF框架147
6.4.5PCBMER框架147
6.5練習題148第7章結構化設計150
7.1軟件設計概述150
7.1.1軟件設計的目標150
7.1.2結構化設計的任務150
7.2軟件設計的原則151
7.2.1模塊化151
7.2.2接口156
7.2.3信息隱藏156
7.2.4抽象和逐步求精157
7.2.5通用性158
7.2.6結構化設計啓發式規則158
7.3體系結構設計161
7.3.1描述軟件結構的工具161
7.3.2面向數據流的設計方法163
7.3.3設計優化170
7.4接口設計171
7.4.1接口設計概述171
7.4.2人機界面接口172
7.5數據設計174
7.5.1數據庫設計步驟174
7.5.2邏輯結構設計174
7.5.3物理結構設計175
7.6過程設計176
7.6.1程序流程圖176
7.6.2盒圖177
7.6.3PAD圖178
7.6.4判定表179
7.6.5判定樹180
7.6.6過程設計語言180
7.7軟件設計文檔181
7.7.1設計文檔的內容181
7.7.2設計文檔的評審181
7.8汽車租賃系統結構化設計182
7.8.1設計系統體系結構182
7.8.2設計數據庫183
7.9練習題185第8章面向對象設計187
8.1面向對象設計概述187
8.1.1面向對象設計的基本原則187
8.1.2更復雜的面向對象設計原則189
8.1.3面向對象設計的啓發規則192
8.1.4面向對象設計的基本任務193
8.1.5面向對象的設計模式194
8.2系統設計201
8.2.1系統分解201
8.2.2問題域部分的設計202
8.2.3人機交互部分的設計205
8.2.4任務管理部分的設計207
8.2.5數據管理部分的設計209
8.3對象設計212
8.3.1設計類212
8.3.2創建設計類213
8.3.3設計類間的關係215
8.4校園招聘服務系統面向對象設計219
8.4.1架構設計219
8.4.2用例設計219
8.4.3類設計221
8.4.4數據庫設計223
8.5練習題225第9章軟件實現227
9.1編程語言227
9.1.1編程語言的發展227
9.1.2編程語言的選擇228
9.2編程的指導原則229
9.2.1控制結構229
9.2.2算法效率229
9.2.3數據結構230
9.2.4通用性指導原則230
9.3程序文檔232
9.3.1內部文檔232
9.3.2外部文檔235
9.4編程過程236
9.4.1編程方法236
9.4.2編程風格237
9.5練習題239第10章軟件測試241
10.1軟件測試概述241
10.1.1軟件測試的目標241
10.1.2軟件測試的準則242
10.1.3軟件測試的步驟242
10.2白盒測試技術243
10.2.1邏輯覆蓋法243
10.2.2基本路徑法246
10.2.3循環測試249
10.3黑盒測試技術250
10.3.1等價類劃分法250
10.3.2邊界值分析法253
10.3.3錯誤推測法253
10.3.4因果圖法254
10.4軟件測試過程257
10.4.1單元測試257
10.4.2集成測試259
10.4.3系統測試263
10.4.4測試文檔269
10.5面向對象測試269
10.5.1面向對象測試和傳統測試的區別269
10.5.2面向對象測試過程270
10.6自動化測試工具271
10.6.1代碼分析工具271
10.6.2測試執行工具273
10.6.3測試用例生成器273
10.7調試274
10.7.1調試過程274
10.7.2調試途徑274
10.8練習題275第11章軟件維護277
11.1軟件維護概述277
11.1.1軟件維護的定義277
11.1.2軟件維護的實施278
11.2軟件的可維護性280
11.2.1可維護性的度量280
11.2.2軟件維護的副作用282
11.3自動化維護工具283
11.4軟件再生284
11.4.1重組285
11.4.2文檔重構285
11.4.3逆向工程286
11.4.4再工程286
11.4.5軟件再生的前景287
11.5練習題287第12章從大學生到軟件工程師289
12.1個人發展289
12.1.1軟件工程師的任務289
12.1.2軟件工程師的成長290
12.1.3軟件工程師的思維誤區291
12.1.4軟件工程師的職業發展292
12.2團隊合作293
12.2.1結對編程293
12.2.2如何影響他人294
12.2.3如何給予反饋294
12.3軟件工程師倫理守則295
12.3.1PEO倫理守則295
12.3.2ACM/IEEE軟件工程倫理守則和職業實踐296
附錄A計算機軟件文檔編制規範301
A.1可行性分析(研究)報告(FAR)301
A.2軟件開發計劃(SDP)302
A.3軟件需求規格説明(SRS)304
A.4軟件(結構)設計説明(SDD)307
A.5軟件測試計劃(STP)308
A.6軟件測試説明(STD)309
A.7軟件測試報告(STR)309附錄B部分練習題答案311參考文獻313 [2] 
參考資料