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