UML系統(tǒng)建模及系統(tǒng)分析與設計
-
【作 者】王欣 張毅 編著
【I S B N 】978-7-5170-1097-5
【責任編輯】李炎
【適用讀者群】本專通用
【出版時間】2013-08-26
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數(shù)】320
【千字數(shù)】504
【印 張】20
【定 價】¥36
【叢 書】普通高等教育“十二五”規(guī)劃教材
【備注信息】
簡介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關圖書
本書結(jié)合統(tǒng)一建模語言UML2.0和軟件開發(fā)項目案例,重點闡述以面向?qū)ο笙到y(tǒng)分析和設計方法為主線的軟件工程領域關鍵技術(shù),并介紹了模型驅(qū)動開發(fā)、基于復用的開發(fā)等最新技術(shù)。
全書共分9章,第1章為軟件開發(fā)方法,第2章為UML建模語言,第3章至第6章為面向?qū)ο蠓治觥⒚嫦驅(qū)ο笤O計與實現(xiàn),第7章為軟件復用與軟件架構(gòu)技術(shù),第8章為Rose使用,第9章為案例。通過一個貫穿全書的案例對面向?qū)ο蟮能浖_發(fā)過程和用例圖、類圖、交互圖、活動圖、狀態(tài)機圖以及構(gòu)件圖與部署圖的繪制方法與步驟進行了具體的講解,最后結(jié)合應用實例對軟件開發(fā)與UML建模進行詳細闡述,使學生掌握軟件開發(fā)方法和UML建模技術(shù)及其應用。
本書理論與實際相結(jié)合、實用性與可讀性相結(jié)合。可作為高等院校工科和管理類相關專業(yè)的教材或教學參考書,也可供有一定實際經(jīng)驗的軟件工作人員和需要開發(fā)應用軟件的廣大計算機用戶閱讀使用。
•圍繞案例展開——理論介紹后,通過案例將知識點串聯(lián)起來,使讀者能夠融會貫通
•大型綜合案例——主要內(nèi)容應用于實踐,提告讀者的應用能力
•設置本章目的——便于讀者深入學習前掌握每章的重點、難點
•配套電子課件——制作精良的電子課件有效輔助教學工作的開展
筆者多年來一直為本科生和研究生講授管理信息系統(tǒng)和軟件工程課程,在講授的過程中,對軟件工程的基本理論進行了較為深入的研究。在實際開發(fā)過程中,深感明確一些基本概念,樹立系統(tǒng)工程的開發(fā)思想是很重要的。
隨著UML的廣泛使用,發(fā)現(xiàn)使用UML2.0進行講述的教材不多,而且目前出版的教材欠缺系統(tǒng)性,缺少案例,因此,筆者萌生了編著《UML系統(tǒng)建模及系統(tǒng)分析與設計》的念頭。從目前的系統(tǒng)開發(fā)方法發(fā)展來看,比較著名的有結(jié)構(gòu)化方法、原型化方法和面向?qū)ο蠓椒ā9P者在本教材中對結(jié)構(gòu)化開發(fā)方法進行了詳細的闡述。本書以軟件工程和面向?qū)ο蠹夹g(shù)的基本理論框架為基礎,全面系統(tǒng)地講述了軟件工程的概念、原理,典型的軟件開發(fā)方法學以及系統(tǒng)體系架構(gòu)和軟件復用理論,重點講述基于UML的面向?qū)ο箝_發(fā)。對于創(chuàng)建對象系統(tǒng)來說,面向?qū)ο笳Z言和UML是必要的,但重要的是理解“對象的思想”,對象的思想是本書的重點和難點。本書重點介紹在國內(nèi)外廣泛流行的面向?qū)ο蠓椒癠ML語言。筆者總結(jié)多年的教學與實踐經(jīng)驗,認為:只講UML語言不行,重要的是要清楚面向?qū)ο蟮乃枷搿?/p>
本書的特色是:圍繞案例逐步展開教學,在一些主要的章節(jié)介紹理論后,通過案例將知識點串聯(lián)起來,使讀者能夠做到融會貫通;通過一個大型的綜合案例,將本書所講的主要內(nèi)容應用于實踐,提高讀者的應用能力;每章開頭都列出了本章的目的,便于學生掌握本章的重點、難點。本書附有制作精良的配套教學課件,讀者可以免費到中國水利水電出版社和萬水書苑網(wǎng)站上下載。
本書共分9章。第1章至第5章由王欣編寫,第6章至第9章由張毅編寫,全書由王欣統(tǒng)稿。本書在校稿過程中得到了吳言杰、劉泓利、劉宇航和李萍萍的大力幫助,并獲得東北電力大學“優(yōu)質(zhì)教材”編寫資助,同時本書的完成也離不開石永峰先生的熱情鼓勵,在此致以最誠摯的謝意!最后向中國水利水電出版社的廣大員工致以深深地感謝!感謝他們對本書的大力支持!
本書參考了許多同行的著作,書后只是列出了部分參考文獻。在此一并表示感謝!
由于本人水平有限,再加上編寫時間倉促,書中一定有不妥之處,敬請讀者批評斧正。
作 者
2013年6月
第1章 面向?qū)ο筌浖_發(fā)方法 1
1.1 軟件發(fā)展與軟件工程 1
1.1.1 軟件的發(fā)展與特征 1
1.1.2 軟件工程 4
1.2 軟件過程和開發(fā)方法 8
1.2.1 軟件過程 8
1.2.2 軟件開發(fā)方法 16
1.3 面向?qū)ο箝_發(fā)方法概述 19
1.3.1 面向?qū)ο箝_發(fā)方法的由來 19
1.3.2 面向?qū)ο蠓椒ǖ幕舅枷?20
1.3.3 面向?qū)ο蟮幕靖拍?21
1.4 面向?qū)ο笾饕_發(fā)方法 25
1.4.1 Coad Yourdon方法 26
1.4.2 Booch方法 27
1.4.3 OMT方法 28
1.4.4 OOSE方法 28
1.4.5 Rational 軟件統(tǒng)一開發(fā)過程 29
1.4.6 幾種方法的比較 33
1.5 面向?qū)ο筌浖_發(fā) 33
1.5.1 可行性分析 33
1.5.2 需求分析與面向?qū)ο蠓治?40
1.5.3 面向?qū)ο笤O計 41
1.5.4 面向?qū)ο髮崿F(xiàn) 41
1.5.5 面向?qū)ο鬁y試與維護 42
1.6 面向?qū)ο箝_發(fā)方法的特點 42
小結(jié) 44
復習思考題 44
第2章 UML建模語言 46
2.1 UML概述 46
2.1.1 UML的發(fā)展與應用 46
2.1.2 UML的特點 51
2.2 UML模型體系結(jié)構(gòu) 52
2.2.1 UML體系結(jié)構(gòu) 52
2.2.2 UML模型元素 55
2.2.3 UML中的關系 57
2.2.4 UML規(guī)則 61
2.2.5 UML擴展機制 62
2.3 UML系統(tǒng)模型圖 65
2.3.1 UML圖的分類 65
2.3.2 UML結(jié)構(gòu)模型 68
2.3.3 UML行為模型 74
2.3.4 UML各種圖的應用 83
2.4 UML系統(tǒng)體系結(jié)構(gòu)模型 86
2.4.1 子系統(tǒng)組織的體系結(jié)構(gòu) 86
2.4.2 系統(tǒng)模型組織的系統(tǒng)體系結(jié)構(gòu) 91
小結(jié) 93
復習思考題 93
第3章 需求分析與用例建模 96
3.1 客戶需求分析 96
3.1.1 系統(tǒng)調(diào)查 97
3.1.2 系統(tǒng)需求陳述 101
3.1.3 系統(tǒng)需求分析 103
3.2 需求建模 105
3.2.1 用例建模 106
3.2.2 確定系統(tǒng)邊界和范圍 110
3.2.3 確定參與者 112
3.2.4 確定需求用例 113
3.2.5 用例模型的關系 114
3.2.6 構(gòu)造業(yè)務用例模型圖 116
3.2.7 用例規(guī)格說明 118
3.3 活動圖 121
3.3.1 活動圖的符號 121
3.3.2 活動圖的基本概念 121
3.3.3 活動圖的構(gòu)建 123
3.4 需求分析規(guī)格說明 125
3.5 需求分析用例建模案例 128
3.5.1 需求陳述 128
3.5.2 需求分析 129
3.5.3 系統(tǒng)開發(fā)方案 132
3.5.4 系統(tǒng)可行性分析 133
小結(jié) 133
復習思考題 134
第4章 面向?qū)ο笙到y(tǒng)分析與對象類建模 136
4.1 面向?qū)ο笙到y(tǒng)分析 136
4.2 系統(tǒng)用例建模 137
4.2.1 分析系統(tǒng)用例 137
4.2.2 構(gòu)造系統(tǒng)用例模型 139
4.3 類與對象建模概述 140
4.3.1 類圖及對象圖的圖符 140
4.3.2 對象/類的關系 148
4.4 類與對象建模 153
4.4.1 類圖的構(gòu)建 153
4.4.2 對象圖的構(gòu)建 158
4.5 系統(tǒng)用例與類建模實例 160
4.5.1 建立系統(tǒng)用例模型 160
4.5.2 系統(tǒng)類建模 161
小結(jié) 162
復習思考題 162
第5章 面向?qū)ο笙到y(tǒng)設計與行為建模 165
5.1 面向?qū)ο笙到y(tǒng)設計概述 165
5.1.1 面向?qū)ο笙到y(tǒng)體系結(jié)構(gòu)設計 165
5.1.2 系統(tǒng)對象設計 166
5.1.3 面向?qū)ο笙到y(tǒng)設計優(yōu)化 169
5.2 系統(tǒng)交互建模 172
5.2.1 順序圖 172
5.2.2 通信圖 178
5.2.3 交互建模的選擇 181
5.3 系統(tǒng)行為建模 182
5.3.1 狀態(tài)機圖符號 183
5.3.2 狀態(tài)機圖的構(gòu)建 191
5.4 系統(tǒng)設計實例 193
5.4.1 順序圖建模 194
5.4.2 通信圖建模 195
5.4.3 狀態(tài)機圖建模 197
小結(jié) 198
復習思考題 199
第6章 系統(tǒng)體系結(jié)構(gòu)建模 202
6.1 系統(tǒng)體系結(jié)構(gòu)模型 202
6.1.1 信息系統(tǒng)體系結(jié)構(gòu) 202
6.1.2 系統(tǒng)體系結(jié)構(gòu)模型 204
6.2 軟件系統(tǒng)體系結(jié)構(gòu)建模 206
6.2.1 構(gòu)件圖的圖符表示 207
6.2.2 構(gòu)件分類與接口 210
6.2.3 構(gòu)件圖建模 212
6.3 硬件系統(tǒng)體系結(jié)構(gòu)建模 213
6.3.1 部署圖的基本元素 213
6.3.2 部署圖構(gòu)件與接口 216
6.3.3 部署圖建模 217
6.4 系統(tǒng)體系結(jié)構(gòu)建模案例 218
小結(jié) 221
復習思考題 221
第7章 軟件復用與軟件構(gòu)件技術(shù) 223
7.1 軟件復用技術(shù)的發(fā)展與應用 223
7.1.1 軟件復用技術(shù)的發(fā)展 223
7.1.2 軟件復用的形式 224
7.1.3 軟件復用的類型與優(yōu)點 226
7.1.4 可復用軟件構(gòu)件的生產(chǎn)與使用 226
7.1.5 可復用軟件的生產(chǎn)與復用 228
7.1.6 面向?qū)ο蠹夹g(shù)與軟件復用的關系 230
7.2 軟件構(gòu)件技術(shù) 231
7.2.1 軟件構(gòu)件技術(shù) 231
7.2.2 軟件架構(gòu) 234
7.3 軟件再工程 238
7.3.1 軟件運行維護遇到的問題 238
7.3.2 軟件再工程的概念 239
7.3.3 軟件再工程的模型 240
7.3.4 實用的重用戰(zhàn)略 242
7.3.5 再工程活動類型級別 243
7.3.6 再工程活動的步驟 243
7.3.7 再工程的相關軟件技術(shù) 244
小結(jié) 244
復習思考題 245
第8章 Rose的使用 246
8.1 Rose概述 246
8.1.1 Rational Rose的版本 247
8.1.2 Rational Rose的主要功能 247
8.1.3 Rational Rose模型視圖 248
8.1.4 Rational Rose工具簡介 248
8.2 Rose建模 255
8.2.1 用例圖建模 255
8.2.2 活動圖建模 260
8.2.3 對象類建模 262
8.2.4 順序圖建模 264
8.2.5 通信圖建模 267
8.2.6 狀態(tài)機圖建模 269
8.2.7 構(gòu)件圖建模 272
8.2.8 部署圖建模 275
8.3 Rational Rose生成代碼 277
8.3.1 選擇待轉(zhuǎn)換的目標模型 277
8.3.2 檢查Java語言的語法錯誤 277
8.3.3 設置代碼生成屬性 279
8.3.4 生成代碼 279
8.4 Rational Rose逆向工程 281
小結(jié) 282
復習思考題 283
第9章 信息系統(tǒng)開發(fā)實例 286
9.1 可行性研究 286
9.1.1 概述 286
9.1.2 系統(tǒng)開發(fā)的背景、必要性和意義 286
9.1.3 現(xiàn)行系統(tǒng)需求分析 286
9.1.4 新系統(tǒng)開發(fā)方案 292
9.1.5 可行性研究 300
9.1.6 結(jié)論 301
9.2 面向?qū)ο蠓治雠c建模 301
9.2.1 系統(tǒng)用例建模 302
9.2.2 系統(tǒng)對象類建模 303
9.3 面向?qū)ο笤O計與建模 306
9.3.1 系統(tǒng)設計 306
9.3.2 系統(tǒng)交互模型構(gòu)建 307
9.3.3 系統(tǒng)行為模型構(gòu)建 307
9.4 面向?qū)ο蟮捏w系結(jié)構(gòu)建模 310
9.4.1 系統(tǒng)體系結(jié)構(gòu)設計 310
9.4.2 系統(tǒng)部署圖設計 311
復習思考題 311
參考文獻 312
- Python程序設計案例教程(微課版) [主編 石利平 田輝平 余以勝]
- Java面向?qū)ο蟪绦蛟O計 [主編 姜春磊 陳虹潔]
- C語言程序設計實驗指導與實訓(第二版) [主編 倪燃]
- Python程序設計及實踐教程 [肖朝暉]
- C語言程序設計 [魏琴 劉祖珉 趙仕波 肖陽春]
- C語言程序設計實驗教程 [張小剛 司春景]
- 電氣控制與PLC程序設計(第二版) [胡冠山]
- Java Web項目化設計實踐教程 [邱云 曾陳萍]
- C語言程序設計(第三版) [主編 丁紅 王立新 蔡開立]
- Python數(shù)據(jù)分析 [主編 馮志輝 趙磊 李放]
- Python程序設計與應用(第二版) [主編 張廣淵]
- C程序設計實踐教程 [劉衛(wèi)國]
- C程序設計(慕課版) [劉衛(wèi)國]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- SwiftUI完全開發(fā) [李智威 著]
- MySQL數(shù)據(jù)庫項目式教程 [陳亞峰]
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現(xiàn)實應用開發(fā)實踐 [主 編 劉龍]
- Python程序設計 [主編 姜春磊 陳虹潔]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向?qū)ο蟪绦蛟O計 [主編 張勇 張平華 趙小龍]
- Python程序設計基礎及實戰(zhàn) [主編 劉健]
- C語言程序設計 [姜雪]
- Python程序設計實踐教程 [王鶴琴 蔡正保]
- C++程序設計實踐教程(第三版) [主編 劉衛(wèi)國 曹岳輝]
- C++程序設計(第三版) [主編 曹岳輝 劉衛(wèi)國]
- C語言程序設計項目化教程(活頁式) [主編 張利華 潘曉利]
- 機器人流程自動化(RPA)實戰(zhàn)——基于UiPath [主編 金鑫]

