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