UML介绍

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

常用UML工具
Rational Rose Togther Microsoft Viso PowerDesigner Visual Paradigm for UML
小结
• UML是一种语言 – 遵循特定的规则 – 允许创建各种模型 – 并不告诉设计者需要创建哪些模型 – 并不提供开发过程 • UML是可视化语言 – UML是图形化语言 – 图形便于交流(一幅图抵上千文字) • UML是用于构造系统或理解系统的语言 – UML既支持正向工程,又支持反向工程
Submission to OMG, Jan ´97 Beta version OOPSLA ´96 WWW - June ´96 OOPSLA ´95
Other methods
Booch
OMT
为什么选择UML
UML集成了Booch,OMT和面向对象软件工程 的概念 UML结合了以下各方面的优点: Data Modeling concepts(实体关系图) Business Modeling (工作流) Object Modeling (对象建模) Component Modeling (组ture diagrams) 强调的 是系统式的建模 行为式图形(Behavior diagrams) 强调系 统模型中触发的事件 沟通性图形(Interaction diagrams), 属于 行为图形的子集合,强调系统模型中的资料流程
结构性图形
行为图形
活动图(Activity diagram)
状态机图 (State Machine diagram)
用例图 (Use Case Diagram)
沟通性图形
通信图(Communication diagram) 交互概述图(Interaction overview diagram) (UML 2.0) 时序图(Sequence diagram) 时间图(UML Timing Diagram) (UML 2.0)
类的关联关系
是模型元素之间的一种语义联系,是类之间的一 种很弱的联系。 关联有双向关联和单向关联。
多重值的表示
基本聚合
在基本的聚合关系中, 部分类 的生命周期独立 于 整体类 的生命周期
组合聚合
子类实例的生命周期依赖于父类实例的生命周期。
泛化
继承 实现
依赖(Dependency)
什么是序列图
序列图主要用于按照交互发生的一系列顺序,显 示对象之间的这些交互。
序列图的组成
分类器 生命线 消息 约束 组合碎片 变体 选择项 循环
序列图的主要目的是定义事件序列,产生一些希 望的输出。重点不是消息本身,而是消息产生的 顺序; 开发者一般认为序列图只对他们有意义。然而, 一个组织的业务人员会发现,序列图显示不同的 业务对象如何交互,对于交流当前业务如何进行 很有用。
用例图中元素关系
参与者之间可以及泛化(继承)关系 用例之间有三种关系: 包含 泛化 扩展
用例图关系示例
用例图关系示例
类图
类图显示了一组类、接口、协作以及他们之间的 关系。
类的UML表示
类名
属性
操作
包和类关系的两种表示方法
类之间的关系
关联 基本聚合 组合聚合 泛化 依赖
状态图
状态图表示某个类所处的不同状态和该类的状态 转换信息 状态图的符号集包括5个基本元素: 起始点; 状态之间的转换; 状态; 判断点; 以及一个或者多个终止点。
状态图示例
活动图和状态图的应用场景
第四部分 序列图
什么是序列图 序列图的组成元素 序列图的应用场景
1. OMT (James Rumbaugh) 2. The Booch method (Grady Booch) 3. OOSE (Ivar Jacobson)
三位面向对象大师
Grady Booch
Ivar Jacobson
James Rumbaugh
Present Mar. 2003 Sep. 2001 ’98~’99
面向对象的历史
1960年 - 70年代
– COBOL, FORTRAN, C – 结构化分析和设计技术
1980年 - 1990年前 1990年中晚期
– Smalltalk, Ada, C++, Visual Basic – 早期面向对象生成(代码)方法
– Java – UML – Unified Process
活动图示例
活动图的组成元素
起始点 过程或活动 转移 决策和警戒条件 泳道 终点
什么情况下使用活动图
活动图可用于在业务单元的级别上对更高级别的 业务过程进行建模,或者对低级别的内部类操作 进行建模。但更适合用于对较高级别的过程建模。 活动图可以达到以下目的: 描述对象内部工作 描述一个执行过程中完成的工作 显示如何执行一组相关动作 说明活动中的角色、工作流、组织和对象的工 作情况。
用例图的作用
获取需求 确定范围 指导测试
如何确定参与者
谁将使用该系统的主要功能。 谁将需要该系统的支持以完成其工作。 谁将需要维护、管理该系统,以及保持该系统处 于工作状态。 与该系统那个交互的是什么系统。 谁或什么系统对本系统产生的结果感兴趣。
如何识别用例
特定参与者希望系统提供什么功能。 系统是否存储和检索信息,如果是,由哪个参与 者触发。 当系统改变状态时,是否通知参与者。 是否存在影响系统的外部事件。 哪个参与者通知系统这些事件。
LOGO
UML统一建模语言介绍
主讲:刘学文
提纲
3 1 2 3 4 5 UML历史和概述
用例图
类图和类关系 活动图和状态图 顺序图和协作图
什么是建模
为什么要建模
分析和设计实际系统。
预测或预报实际系统的某些状态的未来发展趋势
对系统实行最优控制。
软件建模
Modeling (软件模型) 用于表达现实的简化视图,以便于面向对象软 件系统的设计与实现
表示一 个类依赖于另一个类的定义,其中一个类 的变化将影响另外一个类。
第三部分 活动图和状态图
活动图是什么? 活动图的组成元素 什么情况下用活动图 状态图 活动图和状态图的应用场景
活动图是什么
UML 活动图记录了单个操作或方法的逻辑,单 个用户案例,或者单个业务流程的逻辑。是阐明 了业务用例实现的工作流程。 活动图表示在处理某个活动时,两个或者更多类 对象之间的过程控制流。
UML构成元素
结构性事物 行为事物 分组事物 注释事物
UML 2.0 特性的亮点
在语言定义方面精确程度有了相当的提高。 一个改良的语言组织: 其特性是由模块化决定的, 模块化的特点在于它不仅使得语言更加容易的被 新用户所采用,而且促进了工具之间的相互作用。 重点改进大规模的软件系统模型性能。 对特定领域的改进的支持。 全面的合并,合理化,清晰化各种不同的模型概 念: 从而导致一种单一化,更加统一化语言的产 生。
软件建模的出发点
整个系统太复杂,难以一下子抓住,通过模型简 洁地描述系统某个方面 交流。(项目组成员之间,与客户) 将系统体系结构归档
第一部分 UML历史和概述
什么是UML UML的历史 UML结构和特点
UML是什么?
统一建模语言(UML,Unified Modeling Language)是非专利的第三代建模和规约语言。 是一种开放的方法,用于说明、可视化、构建和 编写一个正在开发的、面向对象的、软件密集系 统的制品的开放方法。
Version 2.1.1.
UML UML 2.0
UML 1.5 UML 1.4
UML 1.2,1.3 UML 1.1 UML 1.0 UML 0.9 Unified Method 0.8 WWW Spec only Documentation Set OOSE/ Objectory
OMG Vote, Oct ‘97 Submission to OMG, Sept ‘97
类图 (Class Diagram)
组件图(Component diagram)
复合结构图(Composite structure diagram) 部署图(Deployment diagram) 对象图(Object diagram) 包图(Package diagram) 剖面图(Profile diagram)
分析模型Analysis models 描述应用领域 设计模型 Design models 描述软件系统(如Structure chart ) 面向对象技术分析模型和设计模型之间使用相 同的模型和建模概念,解决从分析阶段到设计 阶段的过渡问题,防止不一致
UML的发展历史
Unified 组合了当前最好的面向对象软件建模方法 Grady Booch, James Rumbaugh, and Ivor Jacobson,UML三位主要贡献者
UML是文档化语言
将所建造的系统记录下来 便于新程序员跟进 开发产品新版本时很有用处
第二部分 用例图
什么是用例图 如何确定参与者 如何识别用例 用例图中各元素关系
用例图
用例图(use case diagram)就是由参与者 (Actor)、用例(Use Case)以及它们之间的关 系加上系统边界、箭头等构成的图。
相关文档
最新文档