軟體工程基礎與套用(第2版)

軟體工程基礎與套用(第2版)

《軟體工程基礎與套用(第2版)》是2017年9月清華大學出版社出版的圖書,作者是馬小軍、張玉祥。

基本介紹

  • 書名:軟體工程基礎與套用(第2版)
  • 作者:馬小軍、張玉祥
  • ISBN:9787302474111
  • 定價:35元
  • 出版社:清華大學出版社
  • 出版時間:2017年9月
內容簡介,圖書目錄,

內容簡介

本書以軟體工程基本理論知識的普及和常用開發方法的介紹為出發點,對軟體工程的主要原理、基本概念、主流技術方法的特點和使用規則、軟體測試與維護的一般方法以及軟體規模估算與項目的管理等進行了全面描述。全書共10章,第1、2章是軟體工程綜述;第3章是需求調研與可行性分析;第4~6章是系統分析與設計,並重點介紹基於結構化技術的分析與設計方法以及編碼實現的基本原則;第7、8章是基於面向對象技術的分析與設計方法以及統一建模語言UML;第9章是軟體測試技術與維護方法;第10章是軟體項目管理。配合各章知識點的介紹,每章不但有簡單舉例和豐富的習題,而且還以一個規模和難度適中的項目為中心進行綜合舉例說明,並貫穿書中的主要章節,便於讀者對所學內容的正確理解和實際套用的認識。
本書既注重理論也強調實際套用,所述內容講解清晰、實用,所畫圖形規範、統一,所選案例簡明、完整,本書既可作為高等院校相關專業本科生軟體工程課程的教材或參考書,也可作為套用軟體開發人員、項目管理人員和專業技術人員編寫技術文檔的參考資料。

圖書目錄

第1章概述/1
1.1軟體的基本概念及特點1
1.1.1軟體是什麼1
1.1.2軟體的分類3
1.1.3軟體的發展5
1.2軟體工程的提出6
1.2.1軟體工程提出的導火索6
1.2.2軟體工程的原理8
1.2.3軟體工程的目標9
1.3軟體開發方法10
1.3.1結構化方法10
1.3.2原型化方法11
1.3.3面向對象方法12
1.3.4敏捷開發方法13
1.4軟體工程師的職業道德與素質14
本章小結15
習題16
第2章軟體生存周期模型/17
2.1軟體生存周期及其組成17
2.1.1軟體生存周期的概念和提出的意義17
2.1.2軟體生存周期的劃分與組成18
2.2軟體開發模型19
2.2.1瀑布模型20
2.2.2快速原型模型21
2.2.3增量模型22
2.2.4螺旋模型22
2.2.5噴泉模型23
2.3常用軟體建模工具24
2.3.1Microsoft Visio24〖1〗軟體工程基礎與套用(第2版)[3]〖3〗2.3.2Rational Rose27
本章小結28
習題29
第3章用戶需求調研與可行性分析/30
3.1用戶需求調研30
3.1.1關於需求30
3.1.2用戶需求調研的必要性30
3.1.3需求調研方法32
3.1.4調研內容和步驟32
3.2業務描述35
3.2.1業務流程定義35
3.2.2業務流程圖36
3.3軟體項目可行性分析39
3.4成本/效益分析41
3.4.1軟體開發成本估算41
3.4.2軟體效益分析42
本章小結44
習題44
第4章基於結構化方法的需求分析/45
4.1需求分析簡述45
4.1.1何為需求分析45
4.1.2需求分析的主要任務46
4.1.3需求分析的原則47
4.1.4需求分析方法的分類48
4.2結構化分析48
4.2.1結構化分析的特點和原則48
4.2.2結構化分析的主要工具49
4.3數據流程圖的構建50
4.3.1構建數據流程圖的作用50
4.3.2數據流程圖的基本符號51
4.3.3構建數據流程圖的步驟52
4.3.4構建數據流程圖需要注意的問題53
4.4數據字典56
4.4.1構建數據字典的意義和用途56
4.4.2數據字典的主要內容56
4.4.3構建數據字典使用的符號57
4.4.4數據字典舉例58
4.5結構化分析建模綜合舉例58
4.5.1系統數據流程圖58
4.5.2系統數據字典61
本章小結64
習題64
第5章系統概要設計/66
5.1簡述66
5.1.1概要設計基本任務66
5.1.2概要設計基本方法67
5.2概要設計基本原理69
5.2.1模組化69
5.2.2抽象70
5.2.3逐步求精70
5.2.4信息隱藏和局部化71
5.2.5模組獨立性71
5.3結構化系統設計74
5.3.1軟體結構圖種形式74
5.3.2數據流程圖的分類75
5.3.3變換型設計76
5.3.4事務型設計77
5.4軟體結構的其他描述工具——HIPO圖81
5.5軟體結構的最佳化準則83
5.6結構化設計綜合舉例85
本章小結88
習題88
第6章詳細設計與編碼實現/90
6.1詳細設計的基本任務90
6.2詳細設計的常用工具90
6.2.1程式流程圖91
6.2.2盒圖92
6.2.3PAD圖93
6.2.4判定表與判定樹93
6.2.5過程設計語言的使用95
6.3人機界面的設計96
6.3.1人機界面一般風格97
6.3.2人機界面設計原則及相關問題99
6.3.3人機界面設計過程100
6.4詳細設計綜合舉例100
6.4.1人機界面100
6.4.2資料庫表設計101
6.4.3模組設計103
6.5編碼實現106
6.5.1編碼工具介紹106
6.5.2編碼工具的選擇107
6.5.3編碼原則107
6.5.4編碼舉例108
本章小結111
習題112
第7章面向對象技術/113
7.1面向對象概述113
7.1.1面向對象提出的背景113
7.1.2面向對象方法簡介114
7.1.3面向對象基本概念115
7.1.4面向對象的特徵118
7.2面向對象分析119
7.2.1面向對象分析任務概述119
7.2.2面向對象分析模型120
7.2.3面向對象分析過程126
7.3面向對象設計128
7.3.1面向對象設計任務128
7.3.2面向對象設計與面向對象分析的關係129
7.3.3面向對象設計基本原則130
7.3.4面向對象設計模型132
7.3.5面向對象設計過程132
本章小結135
習題135
第8章UML建模/137
8.1UML概述137
8.1.1發展歷史137
8.1.2UML簡介138
8.1.3視圖138
8.1.4UML中的圖139
8.2用例模型的構建140
8.2.1用例圖的模型元素141
8.2.2確定參與者142
8.2.3確定用例142
8.3靜態模型的構建146
8.3.1類圖和對象圖146
8.3.2標識類的方法150
8.3.3包圖153
8.4動態模型的構建156
8.4.1順序圖156
8.4.2協作圖157
8.4.3狀態圖和活動圖158
8.5物理體系結構的構建161
8.5.1組件圖161
8.5.2部署圖162
8.6綜合實例163
8.6.1系統分析163
8.6.2系統設計172
8.6.3物理結構設計176
本章小結180
習題181
第9章測試與維護/183
9.1軟體測試簡介183
9.1.1測試定義183
9.1.2軟體測試的原則184
9.1.3軟體測試的對象185
9.2軟體測試模型185
9.2.1V模型185
9.2.2W模型186
9.3軟體測試的一般過程187
9.3.1測試需求分析階段187
9.3.2測試計畫階段187
9.3.3測試方案設計階段188
9.3.4測試用例實現階段188
9.3.5測試執行階段188
9.3.6評價與關閉階段189
9.4軟體測試常用方法189
9.4.1黑盒測試與白盒測試189
9.4.2黑盒測試法189
9.4.3白盒測試法194
9.5面向對象測試197
9.6軟體測試自動化與測試工具199
9.6.1軟體測試自動化199
9.6.2軟體測試工具200
9.7軟體調試201
9.7.1軟體調試基本概念201
9.7.2軟體測試和軟體調試的區別201
9.7.3軟體調試的步驟201
9.7.4軟體調試方法202
9.8軟體維護203
9.8.1軟體維護的定義203
9.8.2影響維護工作量的因素203
9.8.3軟體維護成本204
9.8.4軟體維護過程204
9.8.5軟體的可維護性與提高方法206
本章小結207
習題207
第10章軟體項目管理/209
10.1軟體規模估算209
10.1.1軟體規模估算概述209
10.1.2軟體規模估算常用方法210
10.2風險管理211
10.2.1軟體項目風險定義及管理重要性211
10.2.2風險識別212
10.2.3風險分析及量化212
10.2.4風險應對計畫212
10.2.5風險監控213
10.3人員組織213
10.3.1團隊管理概述213
10.3.2軟體項目組織計畫213
10.3.3項目組織形式214
10.3.4團隊的組建215
10.3.5團隊合作與溝通217
10.4進度管理217
10.4.1進度管理定義217
10.4.2進度管理過程217
10.4.3軟體項目任務分解218
10.4.4軟體項目進度計畫219
10.4.5進度控制223
10.5質量管理224
10.5.1軟體質量的定義224
10.5.2軟體質量模型225
10.5.3軟體質量保證226
10.5.4軟體質量控制226
本章小結228
習題228
參考文獻/230

相關詞條

熱門詞條

聯絡我們