軟件工程基礎(chǔ)與實(shí)例分析 第2版
定 價(jià):39 元
叢書名:普通高等教育“十三五”計(jì)算機(jī)類規(guī)劃教材
- 作者:張劍飛 著
- 出版時(shí)間:2018/12/1
- ISBN:9787111610793
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.5
- 頁碼:
- 紙張:膠版紙
- 版次:2
- 開本:16開
本書從實(shí)用的角度出發(fā),系統(tǒng)地介紹了軟件工程基礎(chǔ)知識(shí),包括傳統(tǒng)的軟件工程和面向?qū)ο蟮能浖こ虄纱蟛糠。在傳統(tǒng)的軟件工程部分,按照軟件生存周期的順序介紹各個(gè)階段的任務(wù)?過程?方法?工具和文檔編寫規(guī)范;在面向?qū)ο蟮能浖こ滩糠郑榻B了面向?qū)ο蟮姆治雠c設(shè)計(jì)方法以及統(tǒng)一建模語言(UML)的相關(guān)知識(shí),同時(shí)配有開發(fā)實(shí)例和軟件文檔模板。
本書理論與實(shí)踐相結(jié)合,內(nèi)容循序漸進(jìn)?深入淺出?通俗易懂?側(cè)重應(yīng)用。
本書可作為高等院校計(jì)算機(jī)?通信工程?電子信息工程?自動(dòng)化等相關(guān)專業(yè)軟件工程課程的教材,還可供軟件工程師?軟件項(xiàng)目管理者和應(yīng)用軟件開發(fā)人員參考。
本書配有免費(fèi)電子課件,歡迎選用本書作為教材的教師登錄www.cmpedu.com注冊下載。
前言
軟件工程學(xué)是指導(dǎo)軟件生產(chǎn)?維護(hù)的一門工程科學(xué),從20世紀(jì)60年代起迅速發(fā)展,現(xiàn)已經(jīng)成為計(jì)算機(jī)科學(xué)中一個(gè)重要分支,它的研究范圍非常廣泛,包括技術(shù)?方法?工具和管理等許多方面。
本書從實(shí)用角度出發(fā),系統(tǒng)地介紹了軟件工程基礎(chǔ)知識(shí)。在傳統(tǒng)的軟件工程部分,按照軟件生存周期的順序,介紹了各個(gè)階段的任務(wù)?過程?方法?工具和文檔編寫規(guī)范。在面向?qū)ο蟮能浖こ滩糠,介紹了面向?qū)ο蟮姆治雠c設(shè)計(jì)方法以及統(tǒng)一建模語言(UML) 的相關(guān)知識(shí)及實(shí)例。
本書盡量用實(shí)例來解釋概念,用案例來演繹方法和原理,并選擇典型的軟件工程開發(fā)實(shí)例進(jìn)行剖析,使讀者能夠在牢固掌握理論知識(shí)的同時(shí),思考并嘗試解決實(shí)際問題。本書文字通俗易懂?概念清晰?深入淺出?實(shí)例豐富?實(shí)用性強(qiáng),可作為高等學(xué)校計(jì)算機(jī)?通信工程?電子信息工程?自動(dòng)化等相關(guān)專業(yè)軟件工程課程的教材,還可供軟件工程師?軟件項(xiàng)目管理者和軟件開發(fā)人員參考。
本書的第1~3章由綏化學(xué)院周鳳編寫,第4~7章由哈爾濱石油學(xué)院鄧春偉編寫,第8~9章由中南林業(yè)科技大學(xué)石磊編寫,第10~12?14~15章由黑龍江科技大學(xué)張劍飛編寫,第13章由黑龍江科技大學(xué)高輝編寫。黑龍江科技大學(xué)劉興麗擔(dān)任本書主審。
在本書編寫過程中,參考了大量的相關(guān)資料,同時(shí)得到了各方面有關(guān)專家的大力支持和幫助,在此一并感謝。由于時(shí)間倉促,水平有限,書中難免有不足之處,敬請讀者不吝賜教。
編 者
目錄
前言
第1章 軟件工程概述1
1.1 軟件1
1.1.1 軟件的概念及特點(diǎn)1
1.1.2 軟件的分類2
1.1.3 軟件危機(jī)的原因及解決途徑3
1.2 軟件工程概念4
1.2.1 軟件工程的定義和內(nèi)容4
1.2.2 軟件工程的基本原理4
1.3 軟件生存周期5
1.4 常用軟件開發(fā)過程模型6
1.4.1 瀑布模型6
1.4.2 快速原型模型7
1.4.3 螺旋模型8
1.4.4 噴泉模型9
1.5 軟件開發(fā)方法簡述9
1.5.1 面向數(shù)據(jù)流的結(jié)構(gòu)化方法9
1.5.2 面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法10
1.5.3 面向?qū)ο蟮姆椒?0
1.6 軟件文檔11
1.6.1 軟件文檔在軟件開發(fā)中的地位和作用11
1.6.2 軟件文檔的種類及寫作要求12
小結(jié)14
習(xí)題1 14
第2章 可行性研究15
2.1 問題定義15
2.2 可行性研究的任務(wù)15
2.3 可行性研究的過程16
2.4 可行性研究階段使用的工具17
2.4.1 系統(tǒng)流程圖17
2.4.2 數(shù)據(jù)流圖19
2.4.3 數(shù)據(jù)字典24
2.5 成本效益分析26
2.6 網(wǎng)上招聘系統(tǒng)可行性研究報(bào)告28
小結(jié)31
習(xí)題2 31
第3章 需求分析32
3.1 需求分析的任務(wù)32
3.2 需求分析的過程33
3.3 需求分析階段使用的工具35
3.3.1 實(shí)體關(guān)系圖35
3.3.2 數(shù)據(jù)規(guī)范化36
3.3.3 層次框圖37
3.3.4 Warnier圖37
3.3.5 描述算法的IPO圖38
3.4 網(wǎng)上招聘系統(tǒng)需求規(guī)格說明書38
小結(jié)42
習(xí)題3 43
第4章 概要設(shè)計(jì)44
4.1 軟件設(shè)計(jì)的目標(biāo)和任務(wù)44
4.1.1 軟件設(shè)計(jì)的目標(biāo)44
4.1.2 軟件設(shè)計(jì)的任務(wù)44
4.2 概要設(shè)計(jì)的過程45
4.3 軟件設(shè)計(jì)的原理47
4.3.1 模塊化47
4.3.2 抽象48
4.3.3 信息隱蔽49
4.3.4 模塊獨(dú)立50
4.4 啟發(fā)規(guī)則52
4.4.1 改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性52
4.4.2 模塊規(guī)模適中52
4.4.3 適當(dāng)控制深度?寬度?扇出?扇入52
4.4.4 模塊的作用域應(yīng)該在控制域之內(nèi)53
4.4.5 力爭降低模塊接口的復(fù)雜程度53
4.4.6 設(shè)計(jì)單入口單出口的模塊53
4.4.7 模塊功能可預(yù)測53
4.5 概要設(shè)計(jì)階段使用的工具53
4.5.1 層次圖53
4.5.2 HIPO圖54
4.5.3 結(jié)構(gòu)圖55
4.5.4 程序系統(tǒng)結(jié)構(gòu)圖56
4.6 結(jié)構(gòu)化設(shè)計(jì)方法56
4.6.1 基本概念56
4.6.2 系統(tǒng)結(jié)構(gòu)圖中的模塊57
4.6.3 結(jié)構(gòu)化設(shè)計(jì)過程58
4.6.4 變換分析58
4.6.5 事務(wù)分析61
4.6.6 混合結(jié)構(gòu)分析62
4.7 網(wǎng)上招聘系統(tǒng)概要設(shè)計(jì)說明書62
小結(jié)66
習(xí)題4 66
第5章 詳細(xì)設(shè)計(jì)67
5.1 詳細(xì)設(shè)計(jì)的過程67
5.1.1 詳細(xì)設(shè)計(jì)的基本任務(wù)67
5.1.2 詳細(xì)設(shè)計(jì)方法68
5.2 詳細(xì)設(shè)計(jì)階段使用的工具68
5.2.1 程序流程圖68
5.2.2 盒圖70
5.2.3 問題分析圖70
5.2.4 判定表與判定樹71
5.2.5 過程設(shè)計(jì)語言72
5.3 面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法75
5.3.1 改進(jìn)的Jackson圖76
5.3.2 Jackson方法76
5.4 網(wǎng)上招聘系統(tǒng)詳細(xì)設(shè)計(jì)說明書79
小結(jié)84
習(xí)題5 84
第6章 編碼85
6.1 選擇開發(fā)語言85
6.1.1 程序設(shè)計(jì)語言分類及特點(diǎn)85
6.1.2 選擇的標(biāo)準(zhǔn)87
6.2 軟件編碼的規(guī)范88
6.2.1 程序中的注釋88
6.2.2 數(shù)據(jù)說明88
6.2.3 語句結(jié)構(gòu)89
6.2.4 輸入和輸出90
6.3 網(wǎng)上招聘系統(tǒng)編碼規(guī)范91
小結(jié)93
習(xí)題6 93
第7章 測試94
7.1 測試的目標(biāo)和原則94
7.2 測試用例設(shè)計(jì)95
7.2.1 黑盒測試95
7.2.2 白盒測試98
7.3 測試的步驟100
7.3.1 單元測試100
7.3.2 集成測試102
7.3.3 確認(rèn)測試104
7.3.4 系統(tǒng)測試105
7.4 常用測試工具及特點(diǎn)105
7.5 軟件測試階段文檔寫作規(guī)范107
7.5.1 測試文檔的類型107
7.5.2 軟件測試過程文檔107
7.6 網(wǎng)上招聘系統(tǒng)客戶端測試文檔110
7.6.1 測試計(jì)劃文檔110
7.6.2 測試設(shè)計(jì)文檔112
小結(jié)115
習(xí)題7 115
第8章 維護(hù)116
8.1 軟件維護(hù)的概念及特點(diǎn)116
8.2 軟件的可維護(hù)性118
8.3 軟件維護(hù)的步驟119
8.4 軟件維護(hù)過程文檔寫作規(guī)范121
8.5 用戶手冊的主要內(nèi)容及寫作要求121
8.6 網(wǎng)上招聘系統(tǒng)維護(hù)文檔122
小結(jié)123
習(xí)題8 123
第9章 面向?qū)ο蟮幕靖拍罴癠ML 124
9.1 傳統(tǒng)方法學(xué)與面向?qū)ο蠓椒ū容^124
9.2 面向?qū)ο蟮幕靖拍?25
9.3 UML概述127
9.3.1 UML的主要特點(diǎn)127
9.3.2 UML的應(yīng)用領(lǐng)域127
9.4 UML的構(gòu)成128
9.5 UML的視圖128
9.6 UML的模型元素129
9.6.1 事物129
9.6.2 關(guān)系132
9.7 UML的基本準(zhǔn)則和圖形表示132
9.7.1 UML的基本準(zhǔn)則132
9.7.2 UML的圖形表示133
小結(jié)142
習(xí)題9 142
第10章 面向?qū)ο蠓治?43
10.1 需求分析與用例建模143
10.2 建立對(duì)象類靜態(tài)模型145
10.3 建立對(duì)象類動(dòng)態(tài)模型146
10.3.1 交互模型建模146
10.3.2 狀態(tài)模型建模147
10.4 系統(tǒng)體系結(jié)構(gòu)建模148
10.4.1 軟件系統(tǒng)體系結(jié)構(gòu)模型148
10.4.2 硬件系統(tǒng)體系結(jié)構(gòu)模型148
10.4.3 組件圖建模149
10.4.4 配置圖建模150
小結(jié)150
習(xí)題10 150
第11章 面向?qū)ο笤O(shè)計(jì)151
11.1 面向?qū)ο笤O(shè)計(jì)準(zhǔn)則151
11.2 啟發(fā)式原則152
11.3 系統(tǒng)分解153
11.4 設(shè)計(jì)問題域子系統(tǒng)155
11.5 設(shè)計(jì)人機(jī)交互子系統(tǒng)156
11.6 設(shè)計(jì)任務(wù)管理子系統(tǒng)158
11.7 設(shè)計(jì)數(shù)據(jù)庫管理子系統(tǒng)160
11.8 設(shè)計(jì)類中的服務(wù)161
11.9 設(shè)計(jì)關(guān)聯(lián)162
11.10 設(shè)計(jì)優(yōu)化164
小結(jié)166
習(xí)題11 166