《实时UML与Rational Rose RealTime建模案例剖析》目录

2008-01-05 10:35:42  作者

第1部分 基 础 篇

第1章 实时系统概述3

1.1 实时系统的基本概念3

1.1.1 什么是实时系统3

1.1.2 实时系统的一些重要概念4

1.2 典型的实时系统——嵌入式实时软件5

1.2.1 嵌入式实时操作系统5

1.2.2 嵌入式实时支撑软件7

1.2.3 嵌入式实时应用软件7

1.2.4 嵌入式实时系统开发工具7

1.3 实时系统的设计方法与技术7

1.3.1 实时系统的主要抽象层次8

1.3.2 实时系统设计的一些考虑8

1.3.3 典型的实时系统模型10

1.3.4 实时系统的设计方法学15

1.3.5 统一建模语言18

1.3.6 基于UML的实时系统开发概述23

1.4 实时系统的统一开发过程模型23

1.4.1 4种典型的实时系统开发模型24

1.4.2 实时系统的统一开发过程简介25

1.4.3 开发过程中的静态结构28

1.4.4 实时系统开发的核心工作流29

1.5 本书案例简介30

1.5.1 纸牌游戏31

1.5.2 咖啡机控制系统31

1.5.3 ATM自动取款机控制系统32

1.5.4 电梯控制系统33

第2章 实时统一建模语言35

2.1 统一建模语言35

2.2 实时统一建模语言模型的基本特性36

2.3 基本建模元素38

2.3.1 基本建模元素概述38

2.3.2 基本建模元素39

2.4 关系56

2.4.1 关联56

2.4.2 实现58

2.4.3 泛化58

2.4.4 依靠59

2.5 图60

2.5.1 概述60

2.5.2 用例图61

2.5.3 类图61

2.5.4 状态图62

2.5.5 协作图63

2.5.6 Capsule结构图64

2.5.7 顺序图65

2.5.8 组件图65

2.5.9 部署图66

第3章 实时对象约束语言67

3.1 对象约束语言67

3.1.1 何时使用对象约束语言68

3.1.2 同UML元模型的关系68

3.1.3 基本值类型71

3.1.4 对象和属性73

3.1.5 集合操作77

3.1.6 OCL中的消息79

3.2 实时对象约束语言80

3.2.1 OCL-RT事件元模型81

3.2.2 OCL-RT约束表达式子句82

3.2.3 不变量、前置和后置条件、动作子句82

第4章 Rational Rose RealTime建模环境85

4.1 Rational Rose RealTime概述85

4.1.1 支持实时系统开发85

4.1.2 语言支持和代码生成86

4.1.3 使用服务库86

4.1.4 新的实时建模元素86

4.1.5 模型构造87

4.1.6 开发过程和RUP工作流支持87

4.2 Rational Rose RealTime的安装88

4.2.1 安装需求88

4.2.2 安装Rational Rose RealTime89

4.3 Rational Rose RealTime的使用92

4.3.1 Rational Rose RealTime的主界面92

4.3.2 Rational Rose RealTime的使用98

4.3.3 设置全局选项100

4.3.4 图设计102

4.3.5 代码生成104

第2部分 建 模 篇

第5章 实时系统的需求分析与用例建模109

5.1 实时系统的需求分析109

5.2 用例及用例图110

5.2.1 参与者与用例110

5.2.2 用例模型之间的关系110

5.2.3 用例图112

5.3 用例建模技术112

5.3.1 确定系统参与者112

5.3.2 确定系统用例113

5.3.3 描述用例说明信息113

5.3.4 复查和调整用例模型113

5.3.5 创建实时系统的需求规格说明书114

5.4 实例分析117

5.4.1 创建非投币式咖啡机控制系统的用例模型118

5.4.2 创建ATM自动取款机系统的用例模型121

5.5.3 创建电梯控制系统的用例模型127

第6章 实时系统的静态建模129

6.1 创建包图129

6.1.1 包129

6.1.2 包之间的依靠关系130

6.1.3 创建咖啡机控制系统的包图130

6.1.4 创建ATM自动取款机控制系统的包图132

6.2 创建类图133

6.2.1 类图的基本建模元素133

6.2.2 创建类图的步骤135

6.2.3 咖啡机控制系统的类图138

6.2.4 ATM自动取款机控制系统的类图142

6.2.5 电梯控制系统的类图143

6.3 创建Capsule结构图和协作图143

6.3.1 Capsule结构图概述143

6.3.2 协作图概述144

6.3.3 结构图和协作图的建模元素144

6.3.4 创建咖啡机控制系统Capsule的结构图145

第7章 实时系统的动态建模149

7.1 创建状态图149

7.1.1 状态图概述149

7.1.2 状态图的基本建模元素149

7.1.3 状态图的建模技术151

7.1.4 咖啡机控制系统的状态图示例154

7.1.5 ATM自动取款机控制系统的状态图示例159

7.2 创建活动图160

7.2.1 活动图概述160

7.2.2 活动图的基本建模元素161

7.2.3 ATM自动取款机控制系统活动图示例162

7.3 创建顺序图165

7.3.1 顺序图概述165

7.3.2 顺序图的建模元素166

7.3.3 顺序图的建模方法166

7.3.4 咖啡机控制系统的顺序图示例167

第8章 UML的实现与部署171

8.1 创建组件图171

8.1.1 组件图的概述171

8.1.2 组件图的建模元素172

8.1.3 创建咖啡机控制系统的组件图175

8.2 代码生成179

8.3 创建部署图180

8.3.1 部署图的概述180

8.3.2 部署图的建模元素181

8.3.3 创建咖啡机控制系统的部署图182

第3部分 案例篇

第9章 纸牌游戏187

9.1 概述187

9.2 模型创建和工具集配置187

9.3 创建用例和初始Capsule190

9.3.1 创建用例190

9.3.2 定义类191

9.3.3 描述类的行为192

9.3.4 创建类和Capsules192

9.3.5 RTClasses包194

9.3.6 创建Capsule结构194

9.4 创建顺序图、协议、端口和连接子197

9.4.1 创建顺序图198

9.4.2 创建协议200

9.4.3 创建端口和连接子203

9.5 编译和执行模型208

9.5.1 创建原型系统208

9.5.2 编译模型208

9.5.3 创建部署视图211

9.5.4 执行编译212

9.5.5 运行组件实例213

9.6 对Capsule添加行为215

9.6.1 打开状态图215

9.6.2 创建发牌人的行为215

9.6.3 创建玩家的行为219

9.7 调试和运行226

9.7.1 重新编译模型226

9.7.2 调试“Player”Capsule229

9.8 类建模232

9.8.1 创建包232

9.8.2 创建初始类结构233

9.8.3 定义类之间的关系234

9.8.4 对“Card”类添加属性237

9.8.5 为“CardList”类添加实现细节237

9.8.6 实现“Deck”类241

9.8.7 实现“Hand”类242

9.8.8 实现“PokerHand”类243

9.9 为Capsule行为添加纸牌类244

9.9.1 完成“Dealer”Capsule行为定义244

9.9.2 为“Dealer”Capsule添加析构函数246

9.9.3 完成“Player”Capsule行为定义246

9.9.4 添加依靠关系247

9.9.5 添加引用251

9.9.6 编译与执行252

第10章 咖啡机控制系统255

10.1 咖啡机概述255

10.2 需求分析256

10.2.1 需求描述256

10.2.2 创建初始模型257

10.2.3 创建用例的包模型257

10.2.4 创建全系统用例模型258

10.2.5 创建非投币式咖啡机控制系统用例模型260

10.2.6 创建投币式咖啡机控制系统的用例模型262

10.3 系统设计263

10.3.1 创建包图263

10.3.2 静态建模265

10.3.3 动态建模273

10.4 咖啡机控制系统的测试建模294

10.5 创建组件图299

10.5.1 创建Wondows环境下的组件300

10.5.2 创建SUN5T环境下的组件304

10.6 代码生成308

第11章 ATM自动取款机系统311

11.1 ATM自动取款机系统概述311

11.1.1 ATM自动取款机简介311

11.1.2 ATM自动取款机的开发流程312

11.1.3 ATM自动取款机系统初始需求描述312

11.2 ATM自动取款机系统的初始模型的创建319

11.3 ATM自动取款机系统用例模型的创建320

11.3.1 识别与创建参与者321

11.3.2 识别与创建用例322

11.3.3 创建用例图324

11.3.4 创建初始功能测试用例326

11.4 ATM自动取款机系统的概要设计329

11.4.1 分析初始类模型329

11.4.2 创建ATM的CRC卡330

11.4.3 创建类及类图334

11.4.4 创建状态图335

11.4.5 创建顺序图337

11.4.6 创建协作图340

11.5 ATM自动取款机系统的具体设计与实现342

11.5.1 具体设计342

11.5.2 创建包图347

11.5.3 编码与实现348

11.6 ATM自动取款机系统模拟360

第12章 电梯控制系统361

12.1 电梯控制系统概述361

12.1.1 实时系统设计的RUP模型361

12.1.2 电梯控制系统的需求描述361

12.2 电梯控制系统的静态建模362

12.2.1 电梯控制系统用例图的创建362

12.2.2 电梯控制系统类图的创建363

12.2.3 电梯控制系统静态结构的概述368

12.3 电梯控制系统的动态建模368

12.3.1 电梯控制系统的顺序图368

12.3.2 电梯控制系统的状态图376

12.4 利用实时Java实现电梯控制系统377