本書介紹了使用UML進行軟件建模的方法與軟件工程的基礎(chǔ)知識。本書主要分為三部分。
第1部分簡要介紹了軟件工程的產(chǎn)生、發(fā)展歷史及重要作用,對面向?qū)ο蠓椒ǖ母拍詈驮瓌t加以闡釋。由此推出UML的概念和作用,介紹了UML的基本概念模型,并介紹了多種UML建模的重要工具。
第2部分對每種UML圖進行了具體介紹,涵蓋了UML中的用例圖、類圖、對象圖、包圖、順序圖、通信圖、狀態(tài)機圖、活動圖、組件圖、部署圖。
第3部分首先結(jié)合UML的實用過程,介紹了統(tǒng)一軟件開發(fā)過程的相關(guān)概念,并且通過小型網(wǎng)上書店系統(tǒng)、小型二手貨交易系統(tǒng)、汽車服務(wù)管理系統(tǒng)三個具體案例使讀者加深在實際開發(fā)過程中使用UML的理解。
本書理論與實踐結(jié)合,可以很好地幫助讀者掌握UML建模的基本思想,并學(xué)會讀懂和建立UML模型。本書既可以作為軟件從業(yè)人員的學(xué)習(xí)指導(dǎo)用書,也可以作為高等院校計算機與軟件相關(guān)專業(yè)的教材。
目錄
第1部分
第1章軟件工程與面向?qū)ο蠓椒?/p>
1.1軟件工程
1.1.1軟件工程的歷史
1.1.2軟件工程的目標(biāo)和原則
1.2面向?qū)ο蠓椒?/p>
1.2.1面向?qū)ο蠓椒ê喗?/p>
1.2.2面向?qū)ο蠓椒ǖ臍v史
1.2.3面向?qū)ο蠓椒ǖ母拍?/p>
1.2.4面向?qū)ο蠓椒ǖ膬?yōu)點
小結(jié)
習(xí)題
第2章統(tǒng)一建模語言UML
2.1UML簡介
2.2UML的歷史
2.2.1UML出現(xiàn)的歷史背景
2.2.2UML的誕生與標(biāo)準(zhǔn)化
2.2.3UML2的誕生
2.3UML的目標(biāo)與應(yīng)用范圍
2.3.1UML的目標(biāo)
2.3.2UML的應(yīng)用范圍
小結(jié)
習(xí)題
第3章初識UML
3.1UML構(gòu)造塊
3.1.1事物
3.1.2關(guān)系
3.1.3圖
3.2UML通用機制
3.2.1規(guī)格說明
3.2.2修飾
3.2.3通用劃分
3.2.4UML擴展機制
3.3“4+1”架構(gòu)
3.3.1“4+1”架構(gòu)的概念和組成
3.3.2“4+1”架構(gòu)要解決的問題
3.3.3運用“4+1”視圖方法進行軟件架構(gòu)設(shè)計
3.4UML建模工具
小結(jié)
習(xí)題
第2部分
第4章用例圖
4.1用例圖簡介
4.2用例圖的組成元素
4.2.1參與者
4.2.2用例
4.2.3用例圖中的關(guān)系
4.3用例描述
4.3.1什么是用例描述
4.3.2前置條件與后置條件
4.3.3事件流
4.3.4補充約束
4.3.5用例文檔
4.4應(yīng)用用例圖建模
4.4.1用例圖建模技術(shù)
4.4.2用例圖使用要點
4.5實驗:繪制機票預(yù)訂系統(tǒng)的用例圖
小結(jié)
習(xí)題
第5章類圖
5.1什么是類圖
5.2類圖的組成元素
5.2.1類
5.2.2接口
5.2.3類圖中的關(guān)系
5.2.4類的高級概念
5.3應(yīng)用類圖建模
5.3.1類圖建模技術(shù)
5.3.2使用類圖進行正向工程與逆向工程
5.3.3面向?qū)ο蟮脑O(shè)計原則
5.4實驗:繪制機票預(yù)訂系統(tǒng)的類圖
小結(jié)
習(xí)題
第6章對象圖
6.1什么是對象圖
6.2對象圖的組成元素
6.2.1對象
6.2.2鏈
6.3應(yīng)用對象圖建模
6.3.1對象圖建模技術(shù)
6.3.2使用對象圖進行逆向工程
6.3.3對象圖使用要點
6.4實驗:繪制機票預(yù)訂系統(tǒng)的對象圖
小結(jié)
習(xí)題
第7章包圖
7.1什么是包圖
7.2包圖的組成元素
7.2.1包
7.2.2包的依賴關(guān)系
7.3包圖的建模技術(shù)
7.4實驗:繪制機票預(yù)訂系統(tǒng)的包圖
小結(jié)
習(xí)題
第8章順序圖
8.1什么是順序圖
8.2順序圖的組成元素
8.2.1對象與生命線
8.2.2激活
8.2.3消息
8.3順序圖中的結(jié)構(gòu)化控制
8.4順序圖建模技術(shù)
8.5順序圖的變體——時間圖
8.6實驗:繪制登錄用例的順序圖
小結(jié)
習(xí)題
第9章通信圖
9.1什么是通信圖
9.2通信圖的組成元素
9.2.1對象
9.2.2鏈
9.2.3消息
9.3通信圖與順序圖
9.4通信圖建模技術(shù)
9.5實驗:繪制查詢航班用例的通信圖
小結(jié)
習(xí)題
第10章狀態(tài)機圖
10.1什么是狀態(tài)機圖
10.1.1狀態(tài)機
10.1.2狀態(tài)機圖概述
10.2狀態(tài)機圖的組成元素
10.2.1簡單狀態(tài)
10.2.2轉(zhuǎn)換
10.2.3偽狀態(tài)
10.2.4復(fù)合狀態(tài)
10.3狀態(tài)機圖的建模技術(shù)
10.4實驗:繪制航班類的狀態(tài)機圖
小結(jié)
習(xí)題
第11章活動圖
11.1什么是活動圖
11.2活動圖的基本組成元素
11.2.1動作和活動節(jié)點
11.2.2開始和終止
11.2.3控制流
11.2.4判斷節(jié)點
11.2.5合并節(jié)點
11.2.6泳道
11.3活動圖的高級組成元素
11.3.1分叉節(jié)點與結(jié)合節(jié)點
11.3.2對象流
11.3.3擴展區(qū)域
11.4活動圖建模技術(shù)
11.5實驗:繪制用戶購票的活動圖
小結(jié)
習(xí)題
第12章組件圖
12.1什么是組件圖
12.2組件圖的組成元素
12.2.1組件
12.2.2接口
12.2.3端口
12.2.4組件的內(nèi)部結(jié)構(gòu)
12.3組件圖的建模技術(shù)
12.4實驗:繪制機票預(yù)訂系統(tǒng)的組件圖
小結(jié)
習(xí)題
第13章部署圖
13.1什么是部署圖
13.2部署圖的組成元素
13.2.1節(jié)點
13.2.2連接
13.3部署圖建模技術(shù)
13.4實驗:繪制機票預(yù)訂系統(tǒng)的部署圖
小結(jié)
習(xí)題
第3部分
第14章統(tǒng)一軟件開發(fā)過程
14.1統(tǒng)一軟件開發(fā)過程概述
14.1.1什么是軟件開發(fā)過程
14.1.2統(tǒng)一軟件開發(fā)過程簡介
14.1.3統(tǒng)一軟件開發(fā)過程的發(fā)展歷程
14.2過程總覽
14.3階段和迭代——時間維度
14.3.1起始階段
14.3.2細化階段
14.3.3構(gòu)建階段
14.3.4轉(zhuǎn)化階段
14.3.5迭代
14.4過程的靜態(tài)結(jié)構(gòu)
14.4.1工作者
14.4.2活動
14.4.3制品
14.4.4工作流
14.4.5核心工作流
14.5在統(tǒng)一軟件開發(fā)過程中使用UML
14.5.1起始階段常用UML圖
14.5.2細化階段常用UML圖
14.5.3構(gòu)建階段常用UML圖
14.5.4轉(zhuǎn)化階段常用UML圖
小結(jié)
習(xí)題
第15章小型網(wǎng)上書店系統(tǒng)
15.1小型網(wǎng)上書店系統(tǒng)的需求分析
15.1.1項目背景描述
15.1.2系統(tǒng)需求分析
15.1.3用戶管理模塊
15.1.4訂單管理模塊
15.1.5書目管理模塊
15.2系統(tǒng)的UML基本模型
15.2.1需求分析階段模型
15.2.2基本動態(tài)模型
15.3類的設(shè)計與實現(xiàn)
15.3.1系統(tǒng)設(shè)計類
15.3.2類的實現(xiàn)
15.4系統(tǒng)的組件圖和部署圖
15.4.1系統(tǒng)的組件圖
15.4.2系統(tǒng)的部署圖
第16章小型二手貨交易系統(tǒng)
16.1需求分析部分
16.1.1子系統(tǒng)劃分
16.1.2系統(tǒng)功能需求
16.1.3非功能需求
16.2系統(tǒng)設(shè)計部分
16.2.1系統(tǒng)設(shè)計類圖
16.2.2關(guān)鍵用例的動態(tài)模型
16.2.3類的代碼框架
第17章汽車服務(wù)管理系統(tǒng)
17.1汽車服務(wù)管理系統(tǒng)的需求分析
17.1.1系統(tǒng)功能需求
17.1.2車輛及路線管理模塊
17.1.3人員管理模塊
17.1.4信息管理模塊
17.2系統(tǒng)的UML基本模型
17.2.1需求分析階段模型
17.2.2基本動態(tài)模型
17.3系統(tǒng)中的類
17.3.1系統(tǒng)類圖
17.3.2生成類的代碼框架
17.4系統(tǒng)的劃分與部署
17.4.1系統(tǒng)的包圖
17.4.2系統(tǒng)的部署圖
習(xí)題答案
參考文獻