《UML基礎(chǔ)與Rose建模案例(第3版)》介紹了使用UML(統(tǒng)一建模語言)進(jìn)行軟件建模的基礎(chǔ)知識以及RationalRose2007工具的使用方法。
《UML基礎(chǔ)與Rose建模案例(第3版)》在第2版的基礎(chǔ)上,充分吸取了讀者寶貴的反饋意見和建議,更新了大部分案例。書中前11章是基礎(chǔ)部分,對軟件工程思想、UML的相關(guān)概念、RationalRose工具、RUP軟件過程,以及UML的雙向工程等進(jìn)行了詳細(xì)的介紹;后3章是案例部分,通過檔案管理系統(tǒng)、新聞中心管理系統(tǒng)以及汽車租賃系統(tǒng)3個綜合實例,對UML建模(以RationalRose2007為實現(xiàn)工具)的全過程進(jìn)行了剖析;最后的附錄中給出了UML中常用的術(shù)語、標(biāo)準(zhǔn)元素和元模型,便于讀者查詢。
《UML基礎(chǔ)與Rose建模案例(第3版)》是一本基礎(chǔ)與實例緊密結(jié)合的UML書籍,可以作為從事面向?qū)ο筌浖_發(fā)人員的學(xué)習(xí)指導(dǎo)用書,也可以作為高等院校計算機(jī)或軟件工程相關(guān)專業(yè)的教材。
無論編程語言或開發(fā)工具多么復(fù)雜,都是為了用產(chǎn)品或服務(wù)來表達(dá)對事物的分析、解構(gòu)、抽象與重構(gòu),從而滿足客觀存在的需求。 源于一線教學(xué)實踐,融入系統(tǒng)分析經(jīng)驗,深刻詮釋UML理論與工具的實際應(yīng)用,全面剖析面向?qū)ο蠼!?
第1章 軟件工程與UML概述
1.1 軟件工程概述
1.1.1 軟件工程的發(fā)展歷史
1.1.2 軟件工程的生命周期
1.2 建模的目的
1.2.1 建模的重要性
1.2.2 建模四原則
1.2.3 面向?qū)ο蠼?br>1.3 UML概述
1.3.1 UML的歷史
1.3.2 UML包含的內(nèi)容
1.3.3 UML的定義
1.3.4 UML的應(yīng)用領(lǐng)域
第2章 Rational Rose使用
2.1 Rational Rose概論
2.1.1 常用UML建模工具
2.1.2 Rational Rose的優(yōu)勢
2.2 Rational Rose安裝前的準(zhǔn)備
2.3 Rational Rose的安裝
2.3.1 安裝前的準(zhǔn)備
2.3.2 安裝步驟
2.4 Rational Rose使用介紹
2.4.1 Rational Rose主界面
2.4.2 Rational Rose中的四個視圖
2.4.3 使用Rational Rose建模
2.4.4 UML圖設(shè)計
第3章 UML語言初覽
3.1 概述
3.2 視圖
3.2.1 “RUP4+1”視圖
3.2.2 UML視圖
3.3 UML中的事物
3.3.1 結(jié)構(gòu)事物(Structure Things)
3.3.2 行為事物(Behavior Things)
3.3.3 組織事物(Grouping Things)
3.3.4 輔助事物(Annotation Things)
3.4 UML中的關(guān)系
3.4.1 關(guān)聯(lián)(Association)關(guān)系
3.4.2 聚合關(guān)系
3.4.3 依賴(Dependency)關(guān)系
3.4.4 泛化(Generalization)關(guān)系
3.4.5 買現(xiàn)(Realization)關(guān)系
3.5 UML中的圖
3.6 通用機(jī)制
3.6.1 修飾
3.6.2 注釋
3.6.3 規(guī)格說明
3.6.4 通用劃分
3.6.5 擴(kuò)展機(jī)制
3.7 UML建模的簡單流程
第4章 用例視圖
4.1 概述
4.2 參與者(Actor)
4.2.1 參與者概念
4.2.2 確定參與者
4.2.3 參與者間的關(guān)系
4.3 用例(Use Case)
4.3.1 用例的概念
4.3.2 識別用例
4.3.3 用例與事件流
4.3.4 參與者、用例間的關(guān)系
4.4 用例圖建模技術(shù)
4.4.1 對語境建模
4.4.2 對需求建模
4.4.3 用例粒度
4.5 實例--圖書館管理系統(tǒng)中的用例視圖
4.5.1 確定系統(tǒng)涉及的內(nèi)容
4.5.2 確定系統(tǒng)參與者
4.5.3 確定系統(tǒng)用例
4.5.4 使用Rational Rose來繪制用例圖
第5章 靜態(tài)圖
5.1 概述
5.2 類圖
5.2.1 類圖的概念和內(nèi)容
5.2.2 類圖的用途
5.2.3 類圖元素--類
5.2.4 類圖元素--接口(Interface)
5.2.5 類圖元素--關(guān)系
5.2.6 類圖建模技術(shù)
5.3 對象圖
5.3.1 對象圖的概念和內(nèi)容
5.3.2 對象圖建模
5.4 包圖
5.4.1 包的名字
5.4.2 包擁有的元素
……
第6章 交互圖
第7章 狀態(tài)圖和活動圖
第8章 UML組件與配置
第9章 擴(kuò)展機(jī)制
第10章 Rose的雙向工程
第11章 UML與統(tǒng)一開發(fā)過程
第12章 檔案管理系統(tǒng)
第13章 新聞中心管理系統(tǒng)
第14章 汽車租賃系統(tǒng)
附錄A 術(shù)語
附錄B 標(biāo)準(zhǔn)元素
附錄C 元模型
附錄D 軟件菜單列表
參考文獻(xiàn)
第7章狀態(tài)圖和活動圖
狀態(tài)圖是系統(tǒng)分析的一種常用工具,它通過建立類對象的生存周期模型來描述對象隨時間變化的動態(tài)行為。系統(tǒng)分析員在對系統(tǒng)建模時,最先考慮的不是基于活動之間的控制流,而是基于狀態(tài)之間的控制流,因為系統(tǒng)中對象的狀態(tài)變化最易被發(fā)現(xiàn)和理解。
活動圖是UML用于對系統(tǒng)的動態(tài)行為建模的另一種常用工具,它描述活動的順序,展現(xiàn)從一個活動到另一個活動的控制流;顒訄D在本質(zhì)上是一種流程圖。
7.1狀態(tài)圖(StatechartDiagram)
在系統(tǒng)分析員對某對象建模時,最自然的方法并不是著眼于從活動到活動的控制流,而是著眼于從狀態(tài)到狀態(tài)的控制流。例如,按下電燈的開關(guān),電燈改變了它的狀態(tài);拉上臥室的窗簾,臥室里亮度的狀態(tài)由亮變暗等。系統(tǒng)中對象狀態(tài)的變化是最容易被發(fā)現(xiàn)和理解的,因此在UML中,可以使用狀態(tài)圖展現(xiàn)對象狀態(tài)的變化。
7.1.1狀態(tài)機(jī)
狀態(tài)機(jī)是展示狀態(tài)與狀態(tài)轉(zhuǎn)換的圖。在計算機(jī)科學(xué)中,狀態(tài)機(jī)的使用非常普遍:在編譯技術(shù)中通常用有限狀態(tài)機(jī)描述詞法分析過程;在操作系統(tǒng)的進(jìn)程調(diào)度中,通常用狀態(tài)機(jī)描述進(jìn)程的各個狀態(tài)之間的轉(zhuǎn)化關(guān)系。此外,在面向?qū)ο蠓治雠c設(shè)計中,對象的狀態(tài)、狀態(tài)的轉(zhuǎn)換、觸發(fā)狀態(tài)轉(zhuǎn)換的事件、對象對事件的響應(yīng)(即事件的行為)都可以用狀態(tài)機(jī)來描述。
UML用狀態(tài)機(jī)對軟件系統(tǒng)的動態(tài)特征建模。通常一個狀態(tài)機(jī)依附于一個類,并且描述一個類的實例(即對象)。狀態(tài)機(jī)包含了一個類的對象在其生命期間所有狀態(tài)的序列以及對象對接收到的事件所產(chǎn)生的反應(yīng)。
利用狀態(tài)機(jī)可以精確地描述對象的行為:從對象的初始狀態(tài)起,開始響應(yīng)事件并執(zhí)行某些動作,這些事件引起狀態(tài)的轉(zhuǎn)換;對象在新的狀態(tài)下又開始響應(yīng)狀態(tài)和執(zhí)行動作,如此連續(xù)進(jìn)行直到終結(jié)狀態(tài)。
狀態(tài)機(jī)由狀態(tài)、轉(zhuǎn)換、事件、活動和動作5部分組成。
(1)狀態(tài)表示一個模型在其生存期內(nèi)的狀況,如滿足某些條件、執(zhí)行某些操作或等待某些事件。一個狀態(tài)的生存期是有限的一個時間段。
(2)轉(zhuǎn)換表示兩個不同狀態(tài)之間的聯(lián)系,事件可以觸發(fā)狀態(tài)之間的轉(zhuǎn)換。
(3)事件是在某個時間產(chǎn)生的,可以觸發(fā)狀態(tài)轉(zhuǎn)換的部分,如信號、對象的創(chuàng)建和銷毀、超時和條件的改變等。
(4)活動是在狀態(tài)機(jī)中進(jìn)行的一個非原子的執(zhí)行,由一系列動作組成。
……