軟件工程案例教程:軟件項(xiàng)目開(kāi)發(fā)實(shí)踐 第3版
定 價(jià):45 元
叢書(shū)名:國(guó)家示范性軟件學(xué)院系列教材
- 作者:韓萬(wàn)紅 姜立新等
- 出版時(shí)間:2017/3/1
- ISBN:9787111559849
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類(lèi):TP311.5
- 頁(yè)碼:332
- 紙張:膠版紙
- 版次:3
- 開(kāi)本:16開(kāi)
本書(shū)以一個(gè)貫穿始終的軟件項(xiàng)目案例為基礎(chǔ),講解軟件項(xiàng)目開(kāi)發(fā)中需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試、產(chǎn)品交付以及維護(hù)等各個(gè)過(guò)程中涉及的理論、方法、技術(shù)、交付的產(chǎn)品和文檔等。本書(shū)系統(tǒng)、全面、注重實(shí)效,可以幫助讀者在短時(shí)間內(nèi)掌握軟件項(xiàng)目開(kāi)發(fā)的基本知識(shí)和基本過(guò)程,并有效提高實(shí)踐能力。本書(shū)既適合作為高等院校計(jì)算機(jī)及相關(guān)專(zhuān)業(yè)軟件工程、軟件測(cè)試課程的教材,也適合作為廣大軟件技術(shù)人員的培訓(xùn)教程或參考書(shū)。
前 言本書(shū)第1、2版出版后得到了廣大讀者的好評(píng),被眾多高校選為教材,也收獲了很多反饋,其中既有熱情的贊揚(yáng),也有很多中肯的建議,在此表示深深的感謝。參考這些建議,同時(shí)結(jié)合近年對(duì)軟件工程理論新發(fā)展的研究,以及多年的教學(xué)經(jīng)驗(yàn)和項(xiàng)目實(shí)踐,我們對(duì)第2版進(jìn)行了全面修訂。第3版的主要更新之處包括:面向軟件工程新技術(shù),總結(jié)了軟件開(kāi)發(fā)實(shí)踐的過(guò)程、經(jīng)驗(yàn)和方法;重新甄選項(xiàng)目案例,并對(duì)這些案例進(jìn)行了精心整理。本書(shū)是理論與實(shí)踐相結(jié)合的典范,每章都有對(duì)應(yīng)的項(xiàng)目案例展示和分析,并且提供案例文檔。通過(guò)對(duì)軟件工程中的需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試、產(chǎn)品交付、維護(hù)等過(guò)程的學(xué)習(xí),學(xué)生可以掌握軟件開(kāi)發(fā)的基本流程;同時(shí)結(jié)合每章的案例分析,學(xué)生可以更加深入地理解軟件開(kāi)發(fā)實(shí)踐過(guò)程,在短時(shí)間內(nèi)提高軟件開(kāi)發(fā)技能。
本書(shū)是一本系統(tǒng)的、有針對(duì)性且有實(shí)效性的書(shū)籍,對(duì)從事軟件項(xiàng)目開(kāi)發(fā)以及希望學(xué)習(xí)軟件開(kāi)發(fā)的人員都有非常好的借鑒作用。
本書(shū)由韓萬(wàn)江、姜立新編著,感謝陸天波、楊金翠、孫藝、孫泉、楊元民、岳鵬、郭士榕等的參與,同時(shí)對(duì)薛憶非、陳甜、韓新雨、郭捷、錢(qián)蘊(yùn)哲、王鐿臻等的貢獻(xiàn)也一并表示感謝!
由于作者水平有限,書(shū)中難免有疏漏之處,誠(chéng)請(qǐng)各位讀者批評(píng)指正,并希望你們將使用本書(shū)的體會(huì)和遇到的問(wèn)題告訴我們,以便我們?cè)谙乱话嬷羞M(jìn)行完善。
韓萬(wàn)江casey_han@263.net2016年12月于北京
北京郵電大學(xué)軟件學(xué)院軟件項(xiàng)目管理講師,有著10余年的軟件項(xiàng)目管理開(kāi)發(fā)經(jīng)歷和各層次軟件項(xiàng)目管理課程的教學(xué)經(jīng)驗(yàn)。編著的《軟件項(xiàng)目管理案例教程》是國(guó)內(nèi)普通高校軟件學(xué)院和應(yīng)用型高校軟件項(xiàng)目管理課程的主流教材,前兩版累計(jì)印量接近8萬(wàn)冊(cè),被選為普通高等教育十一五規(guī)劃教材,同時(shí)也是教育部-IBM精品課程的指定教材,目前正在申報(bào)十二五規(guī)劃教材
目 錄
前言
第1章 軟件工程概述 1
1.1 軟件工程的背景 1
1.2 軟件工程知識(shí)體系 3
1.3 軟件工程的三段論 5
1.4 軟件工程模型 6
1.4.1 軟件項(xiàng)目開(kāi)發(fā)路線(xiàn)圖 8
1.4.2 軟件項(xiàng)目管理路線(xiàn)圖 8
1.4.3 軟件過(guò)程改進(jìn)路線(xiàn)圖 9
1.5 軟件開(kāi)發(fā)模型 12
1.5.1 瀑布模型 12
1.5.2 V模型 13
1.5.3 原型模型 13
1.5.4 增量式模型 14
1.5.5 噴泉模型 14
1.5.6 智能模型 14
1.5.7 敏捷生存期模型 14
1.6 軟件工程中的復(fù)用原則 22
1.7 小結(jié) 24
1.8 練習(xí)題 24
第2章 軟件工程方法學(xué) 26
2.1 軟件工程方法比較 26
2.2 結(jié)構(gòu)化軟件工程方法 27
2.2.1 結(jié)構(gòu)化需求分析 28
2.2.2 結(jié)構(gòu)化設(shè)計(jì) 28
2.2.3 結(jié)構(gòu)化編碼 29
2.2.4 結(jié)構(gòu)化測(cè)試 29
2.2.5 結(jié)構(gòu)化維護(hù) 29
2.3 面向?qū)ο筌浖こ谭椒? 29
2.3.1 面向?qū)ο蠓治? 30
2.3.2 面向?qū)ο笤O(shè)計(jì) 31
2.3.3 面向?qū)ο缶幊? 31
2.3.4 面向?qū)ο鬁y(cè)試 31
2.3.5 面向?qū)ο缶S護(hù) 31
2.3.6 面向?qū)ο蠼9ぞ遀ML 32
2.4 面向構(gòu)件軟件工程方法 34
2.5 面向代理軟件工程方法 35
2.6 軟件工程方法總結(jié) 36
2.7 軟件逆向工程 36
2.8 基于容器技術(shù)的軟件工程化管理 37
2.9 項(xiàng)目案例說(shuō)明 38
2.10 小結(jié) 38
2.11 練習(xí)題 38
第3章 軟件項(xiàng)目的需求分析 40
3.1 軟件項(xiàng)目需求概述 40
3.1.1 需求定義 40
3.1.2 需求類(lèi)型 41
3.1.3 需求的重要性 42
3.2 需求工程 42
3.2.1 需求獲取 43
3.2.2 需求分析 45
3.2.3 需求規(guī)格說(shuō)明編寫(xiě) 46
3.2.4 需求驗(yàn)證 47
3.2.5 需求變更 47
3.3 結(jié)構(gòu)化需求分析方法 48
3.3.1 數(shù)據(jù)流圖方法 49
3.3.2 系統(tǒng)流程圖 50
3.3.3 實(shí)體關(guān)系圖 50
3.4 面向?qū)ο笮枨蠓治龇椒? 52
3.4.1 UML需求建模圖示 53
3.4.2 UML需求建模過(guò)程 56
3.5 其他需求建模方法 65
3.6 原型設(shè)計(jì)工具 66
3.6.1 Axure RP 66
3.6.2 Balsamiq Mockups 67
3.6.3 Prototype Composer 67
3.6.4 GUI Design Studio 67
3.7 需求規(guī)格說(shuō)明文檔 67
3.8 項(xiàng)目案例分析 70
3.9 小結(jié) 72
3.10 練習(xí)題 73
第4章 軟件項(xiàng)目的概要設(shè)計(jì) 75
4.1 軟件設(shè)計(jì)簡(jiǎn)介 75
4.1.1 軟件設(shè)計(jì)的定義 75
4.1.2 概要設(shè)計(jì)的定義 76
4.2 體系結(jié)構(gòu)設(shè)計(jì) 76
4.2.1 H/T體系結(jié)構(gòu) 77
4.2.2 C/S體系結(jié)構(gòu) 78
4.2.3 B/S體系結(jié)構(gòu) 78
4.2.4 多層體系結(jié)構(gòu) 80
4.2.5 面向服務(wù)的體系結(jié)構(gòu) 84
4.2.6 面向工作流引擎 85
4.2.7 云架構(gòu) 88
4.2.8 應(yīng)用程序框架結(jié)構(gòu) 90
4.3 模塊(構(gòu)件)設(shè)計(jì) 94
4.3.1 模塊分解 94
4.3.2 耦合度 95
4.3.3 內(nèi)聚度 96
4.4 數(shù)據(jù)模型設(shè)計(jì) 98
4.4.1 數(shù)據(jù)庫(kù)設(shè)計(jì) 99
4.4.2 文件設(shè)計(jì) 106
4.5 接口設(shè)計(jì) 107
4.5.1 用戶(hù)界面設(shè)計(jì) 107
4.5.2 外部接口和內(nèi)部接口設(shè)計(jì) 109
4.6 結(jié)構(gòu)化設(shè)計(jì)方法 109
4.6.1 變換流與事務(wù)流 110
4.6.2 功能模塊劃分 111
4.6.3 數(shù)據(jù)流映射為結(jié)構(gòu)圖 113
4.6.4 輸入/輸出設(shè)計(jì) 113
4.7 面向?qū)ο蟮脑O(shè)計(jì)方法 114
4.7.1 UML的設(shè)計(jì)圖示 116
4.7.2 識(shí)別對(duì)象類(lèi) 121
4.7.3 確定屬性 121
4.7.4 定義對(duì)象的操作 122
4.7.5 確定對(duì)象之間的通信 122
4.7.6 完成對(duì)象類(lèi)的定義 122
4.8 軟件設(shè)計(jì)指導(dǎo)原則 128
4.9 概要設(shè)計(jì)文檔標(biāo)準(zhǔn) 129
4.10 項(xiàng)目案例分析 131
4.10.1 體系結(jié)構(gòu) 131
4.10.2 模塊設(shè)計(jì) 132
4.10.3 數(shù)據(jù)庫(kù)設(shè)計(jì) 133
4.10.4 界面設(shè)計(jì) 135
4.11 小結(jié) 135
4.12 練習(xí)題 135
第5章 軟件項(xiàng)目的詳細(xì)設(shè)計(jì) 138
5.1 詳細(xì)設(shè)計(jì)的概念 138
5.2 詳細(xì)設(shè)計(jì)的內(nèi)容 138
5.3 結(jié)構(gòu)化詳細(xì)設(shè)計(jì)方法 139
5.3.1 詳細(xì)設(shè)計(jì)工具 139
5.3.2 JSD方法 145
5.3.3 Warnier方法 147
5.3.4 結(jié)構(gòu)化詳細(xì)設(shè)計(jì)的例子 148
5.4 面向?qū)ο笤敿?xì)設(shè)計(jì)方法 150
5.4.1 詳細(xì)設(shè)計(jì)工具 150
5.4.2 詳細(xì)設(shè)計(jì)步驟 151
5.4.3 面向?qū)ο笤敿?xì)設(shè)計(jì)的例子 152
5.5 詳細(xì)設(shè)計(jì)文檔 154
5.6 項(xiàng)目案例分析 155
項(xiàng)目詳細(xì)設(shè)計(jì)簡(jiǎn)介 155
5.7 小結(jié) 163
5.8 練習(xí)題 163
第6章 軟件項(xiàng)目的編碼 165
6.1 編碼概述 165
6.2 編碼方法 165
6.2.1 結(jié)構(gòu)化編程 166
6.2.2 面向?qū)ο缶幊? 170
6.2.3 面向組件編程 172
6.3 編碼策略 172
6.3.1 自頂向下的開(kāi)發(fā)策略 172
6.3.2 自底向上的開(kāi)發(fā)策略 173
6.3.3 自頂向下和自底向上相結(jié)合的開(kāi)發(fā)策略 173
6.3.4 線(xiàn)程模式的開(kāi)發(fā)策略 173
6.4 McCabe程序復(fù)雜度 173
6.5 編碼語(yǔ)言、編碼規(guī)范和編碼文檔 174
6.5.1 編碼語(yǔ)言 174
6.5.2 編碼標(biāo)準(zhǔn)和規(guī)范 175
6.5.3 編碼文檔 180
6.6 重構(gòu)理念和重用原則 180
6.6.1 重構(gòu)理念 180
6.6.2 重用原則 181
6.7 項(xiàng)目案例分析 182
6.7.1 項(xiàng)目開(kāi)發(fā)環(huán)境的建立 182
6.7.2 編碼標(biāo)準(zhǔn)和規(guī)范 182
6.7.3 代碼說(shuō)明 205
6.8 小結(jié) 211
6.9 練習(xí)題 212
第7章 軟件項(xiàng)目的測(cè)試 213
7.1 軟件測(cè)試概述 213
7.1.1 什么是軟件測(cè)試 213
7.1.2 軟件測(cè)試技術(shù)綜述 214
7.2 靜態(tài)測(cè)試