Rose从入门到精通操作手册

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件开发阶段
开始阶段 确定用例模型(Use Case) 细化用例 事件流程建模 细化阶段 对系统静态结构和动态行为建模 确定系统构件
正向工程产生框架代码
逆向工程更新模型 创建部署图 更新模型
类图、交互图、状态机图、构件图
构件图 部署图 构件图、部署图
构造阶段
交付阶段
2 Rational Rose工具简介

2.1 Rational Rose 2003特性
– Rose 2003分企业版、专业版和Rose Modeler三种版本 – Rose 2003支持的特性
• 表1.2
2 Rational Rose工具简介

2.2 Rose的基本功能
Hello World 的继承层次

如果针对 Applet 和 Graphics 研究 Java库,将 会发现这两个类是一个更大的类层次的一部分。 跟踪类 Applet 扩展和实现的那些类,能够产成 另一个类图,如下图所示
Hello World 的包

为了管理大规模的类层次图,可以用包来组织类, 如下图所示:

在UML中,对这种应用的建模如下图所示
与 Hello World 直接相关的类

这个类图反映出了 “Hello World!” 这个应用的基本部 分,但还遗漏一些事物。按上述代码的描述,这个应用还 涉及其他两个类,即 Applet 和 Graphics,而且二者的 使用方式不同。类 Applet 是类 HelloWorld 的父类,类 Graphics 则是在类 HelloWorld 的一个操作 paint 的特 征标记和实现中被使用。可以在类图中表示这些类及其他 们与类 HelloWorld 的不同关系
面向对象的建模

面向对象方法是软件开发方法的主流部分,所有 软件系统都用对象或类作为其主要构造块

要从问题空间或解空间的词汇中找出对象 类是对具有共同性质的一组对象的描述 不用太早进入代码的细节 每一个对象都有标识、状态和行为
UML 定义

UML —— Unified Modeling Language. UML 是一种对软件密集型系统的制品进行下述工 作的语言,这些工作包括:

可视化(visualizing) 详述 (specifying) 构造 (constructing) 文档化(documenting)
UML 定义

UML 是可视化语言

UML 是图形化语言,图形便于交流 所建的模型是精确的,无歧义和完整的 UML 既支持正向工程,又支持反向工程

UML 是一种可以详细描述的语言
协作

定义了交互操作 代表构成系统的模式的实现
用例

描述系统对一个特定角色执行的一系列动作 组织动作事物
活动类

类对象有一个或多个进程或线程的类
组件

实现了一个接口集合的物理上可替换的系统部分
节点

在运行时存在的一个物理元素 代表一个可计算的资源 通常占用一些内存和具有处理能力
动作事物

交互

一组对象在特定上下文中,为达到某种特定的目的而进行的一系 列消息交换组成的动作
消息

状态机

由一系列对象的状态组成
分组事物

UML 模型中组织的部分 分组事物只有一种:包 包是一种将有组织的元素分组的机制 包只存在于开发阶段
注释事物

UML 模型的解释部分
UML中的关系
通常用 data flow diagram 描述数据如何经过各个处理流程 适于关系数据库设计(大量数据,数据的处理可由数据之外的 操作处理)

Object-oriented Methods

将数据和对数据的操作统一

建议迭代、增量(iterative, incremental)开发 Example: UML, Shlaer-Mellor
模型和语言

语言 Language

模型 Model + 表示法 Notation 设计系统时可以在高层进行讨论,而不用太早进入代码 的细节

Model: 表示系统的结构


Notation: 以图表将模型文档化
模型的分类

Structured Methods

包括结构化分析,结构化设计等


UML 中的关系(relationships)

结构事物

UML 模型中最基本的结构化事物,包括



类 接口 协作 用例 活动类 组件 节点


类是对具有相同属性、方法、关系和语义的对象的抽象
接口

类或组件提供特定服务的一组操作的集合 描述了类或组件的对外可见的动作
通用划分

型-实例(值)

描述一个通用描述符与单个元素项之间的对应关系

接口-实现
UML 的扩展组件

构造型 标记值 约束
构造型

由建模者设计的新的模型元素 新的模型元素的设计要以 UML 已定义的模型元素为基础 示例:
标记值

附加到任何模型元素上的命名的信息块 示例:
约束
Logical View



用途:描述用例视图中提出的系统功能的实现 逻辑视图既描述系统的静态结构,也描述系统内 部的动态协作关系 静态结构在类图和对象图中描述;动态模型在状 态图、时序图、协作图以及活动图中描述 使用者


设计人员 开发人员
Process View


用途:考虑资源的有效利用、代码的并行执行以 及系统环境中异步事件的处理 组成:状态图、协作图和活动图 使用者:主要是开发人员和系统集成人员
Component View


用途:描述系统的实现模块以及它们之间的依赖 关系 组成:组件图 使用者:主要是开发人员
Deployment View


用途:显示系统的物理部署,并描述位于节点实 例上的运行组件实例的部署情况 组成:配臵图 使用者:开发人员、系统集成人员和测试人员
UML 中的图

关联 依赖


泛化
实现 聚合


通用机制


修饰 注释 规格说明 通用划分 扩展机制
修饰

为图中的模型元素增加了语义 示例:
注释

以自由的文本形式出现的 信息类型是不被UML解释的一个字符串 示例:
规格说明

UML 中预定义的特性:

文档(Documentation) 职责(Responsibility) 永久性(Persistence) 并发性(Concurrency)

用某种形式化语言或自然语言表达的语义关系的文字说明 示例:
建模的步骤
思考
知识、经验、问 题描述等的输入
构造框架
相互交流
组织
在工具里将获 取的信息组织 ,产生图
具体化 更多考虑图的 细节,将图画 得更仔细
集成
核实
有效性验证
将模型或图与同一 项目中其他图或模 型集成,确保他们 之间的一致性
原型构造和 测试
– Rose的优势
• • • • • GUI 允许在同一模型中使用多种构件、语言 逆向工程 团队管理 数据建模和Web建模
1 Rose与可视化建模

1.4 软件开发过程与Rose可视化建模
Rose使用情况 建立业务模型(Business Use Case) 可能用到的Rose模型图及元素 业务用例、业务参与者、业务工人 参与者、用例、关系 参与者、用例、关系 顺序图、协作图、状态图 类图、交互图、状态机图 构件图、关系
51操作规范3异常exceptions标签操作可抛出的异常通过其中的4个按钮添加删除和上下移动异常5操作规范与应用51操作规范4前置条件preconditions标签前置条件preconditions指定操作运行之前应满足的条件即操作的入口行为通常是不等式交互图interactiondiagram说明操作语义的交互图5操作规范与应用51操作规范5语义semantics标签语义semantics指定操作的工作在文本框中用伪代码描述操作逻辑交互图interactiondiagram说明了操作语义的交互图5操作规范与应用51操作规范6后置条件postconditions标签后置条件postconditions指定操作运行之后要符合的条件即操作的出口行为通常是不等式交互图interactiondiagram说明操作语义的交互图5操作规范与应用52操作应用增加一个操作类似于添加一个属性的操作删除一个操作类似于删除一个属性的操作5操作规范与应用61关联规范1general标签关系名name一个动词或动词短语描述关系的作用是可选的关系名在关系线上斜体显示6关联规范与应用61关联规范1general标签角色role描述类在关系中的作用通常是名词或名词短语显示在起这个作用的类旁边角色名前带有一个加号6关联规范与应用6关联规范与应用61关联规范2detail标签链接元素linkelement链接元素也称为关联类可以放置与关联相关的属性使用限制constraints限制是必须符合的条件
模型元素

事物(things)

结构事物(structural things) 动作事物(behavioral things) 分组事物(grouping things) 注释事物(annotational things) 关联(association) 依赖(dependency) 泛化(generalization) 实现(realization) 聚合(polymerization)



类图 (class diagram ) 对象图 (object diagram ) 用例图 (use case diagram ) 顺序图 (sequence diagram ) 协作图 (collaboration diagram ) 状态图 (statechart diagram ) 活动图 (activity diagram ) 构件图 (component diagram ) 配臵图 (deployment diagram )


UML 是用于构造系统或理解系统的语言


UML 是文档化语言


将所建造的系统记录下来 便于新程序员跟进 开发产品新版本时很有用处
UML 的发展历史
为 UML 创建做出贡献的人们
UML 工具
UML 的特点

统一标准:已成为面向对象的标准化的统一的建 模语言
Βιβλιοθήκη 面向对象 可视化、表示能力强大 独立于过程 概念明确,建模表示法简洁,图形结构清晰,容易掌握 使用
软件开发工具
第1章 UML 简介
什么是模型?

模型就是现实的简单化
建模的目的和用途

建模是为了能够更好地理解我们正在开发的系统


模型帮助我们按照实际情况或按照我们所需要的样式将 系统可视化 模型允许我们详细说明系统的结构或行为 模型给出了一个指导我们构造系统的模板 模型对我们作出的决策进行文档化 在构建物理实体之前先测试 与客户交流 降低复杂度
1)可视化应用程序
2)说明应用程序的完整结构和行为 3)创建模板,引导应用程序的构建工作 4)将质量保证贯穿于整个开发生命周期 5)将开发过程中的所有决策信息整理归档
1 Rose与可视化建模

1.2 可视化建模工具的发展与UML
– 常见的可视化建模方法:OMT、Booch、 OOSE – UML:统一建模语言
构造原型 并测试
评估 评估结果,如 果不符合要求 ,返回修改
Hello World(一个 UML 例子)

关键抽象:

在浏览器中打印“Hello World!”的 Java applet 程 序 import java.awt.Graphics;
public class HelloWorld extends java.applet.Applet { public void paint (Graphics g) { g.drawString("Hello World!", 10,10); } }
UML 和代码的关系


用 Java,C++ 等 programming language 是 用编码实现一个系统 用 UML 是对一个系统建立模型 一些 CASE 工具可以根据 UML 所建立的系统模 型来产生 Java,C++ 或其它程序设计语言代码 框架
UML 的构成

视图(Views) 图(diagrams) 模型元素 通用机制

HelloWorld 依赖包 Java.applet java.applet 依赖包 java.awt
Painting 机制

可以使用顺序图对事件的顺序建模,展示了对象 的协作
Hello World 的构件


“Hello World!” 是一个程序,不能单独运行,通 常是嵌入在 Web 页中 下面是 HelloWorld 的构件图
视图(Views)

飞机的三视图
视图(Views)

视图是表达系统某一方面特征的 UML 建模元素 的子集,它是由一个或者多个图组成的对系统某 个角度的抽象
Use-Case View


用途:描述系统应该具备的功能,即被称为参与 者的外部用户所能观察到的功能。 用例视图是几个视图的核心,它的内容直接驱动 其他视图的开发
第1章 Rose入门
内 容

Rose与可视化建模 Rational Rose工具简介


Rational Rose 2003企业版的安装
Rose应用程序界面 Rose模型 Rose视图
1 Rose与可视化建模

1.1 理解可视化建模
– 是开发人员及其团队获得应用程序完整设计蓝图的 理想方法,是理解复杂问题和相互交流的有效手段 – 可视化建模有助于软件开发人员:
• 是OMG批准的标准建模方法 • 集OMT、Booch、OOSE的优点于一身
1 Rose与可视化建模

1.3 Rose:优秀的可视化建模工具
– Rose占据了市场上可视化建模工具的主导 – 衡量可视化建模工具的标准:
• • • • • 易于使用 灵活性 整合到应用程序生命周期的容易程度 可伸缩性 基于的标准
相关文档
最新文档