200 likes | 557 Views
第 2 章 统一建模语言 UML 简介. 创始人 : Roumbaugh (OMT 91) Jacobson(OOSE92) Booch (OOA/OOD 94). 2.1 UML 的含义. 2.2 UML 发展史. 2.3 UML 模型. 2.4 UML 结构. 2.5 Rose 可视化工具. 模型 (model) 不等于系统 , 它只是系统的一个样貌。. 一个模型呈现一个抽象层面 。一个系统会有多个 不同层面的模型 , 通过这些不同角度的模型来趋 近对系统的认知。.
E N D
第2章 统一建模语言UML 简介 创始人: Roumbaugh (OMT 91) Jacobson(OOSE92) Booch (OOA/OOD 94) 2.1 UML 的含义 2.2 UML发展史 2.3 UML 模型 2.4 UML 结构 2.5 Rose可视化工具
模型(model)不等于系统,它只是系统的一个样貌。模型(model)不等于系统,它只是系统的一个样貌。 • 一个模型呈现一个抽象层面。一个系统会有多个 不同层面的模型,通过这些不同角度的模型来趋 近对系统的认知。 正确认识:模型、建模概念、表示法 • 建模概念是建构模型的基础概念。 • 表示法与建模概念彼此独立,但又互补,两者结 合才能呈现出具体的模型,充分认识系统。 • UML与OO有密切关联,UML是为了表达OO概念 而设计的表示法,但这并不代表UML只能用来表 达OO概念,也不代表仅能使用UML来呈现OO概念。
2.1UML(Unified Modeling Language)的含义 UML是一种定义良好、易于表达、功能强大且 普遍适用的对象统一建模描述语言。 • UML是一种图形语言,不是编程语言。 • UML适合描述软件开发的全过程。 • UML不提供任何建模方法,仅提供用于创建模型 的可视化描述,通过不同的视图耒描述系统的 不同侧面。 • 适应各种不同的编程语言和开发平台。 3
2.2 UML 的发展历史 OMT Rumbaugh State Charts Harel Booch MethodBooch OCL(Object Constraint Language OOSE Jacobson UML0.8 Booch/Rumbaugh OCL IBM XMI UML0.9 Three Amigos 1996 UML1.1 OMG 1997 Unified Process Jacobson UML1.2 OMG 1998 UML1.3 OMG 1999 UML2.0 OMG 2003/adopted UML1.4 OMG 2001 OCUP certification UML2.0 OMG 2005/final UML1.5 OMG 2003 UML2.2 OMG ? 1997 UML成为OMG标准 2000 UML成为ISO标准 UML2.1 OMG 2006 图 2-1 UML的发展历史 UML2.1.1 OMG 2007 4
UML工具 6
2.3 UML模型 模型从一个建模观点出发,抓住事务本质, 而忽略其他方面. 元元模型 事物概念 包含所有组成UML元素 表达重要的语法限制 元模型 解决方案系统建模 UML模型 图 2-2 UML模型
2.4 UML结构 UML 事 物 关 系 图 行为类 分组类 十个图 结构类 注释类 依赖 关联 (聚集) 泛化 实现 用例 类 接口 构件 协作 节点 包 模块 子系统 框架 注释 交互类 状态机 图 2-3 UML结构
UML 的词汇表包含三种构造块: things (事物) relationships (关系) diagrams (图) UML建模的主要构造块 • UML的事物 • structural things (结构事物) • behavioral things (行为事物) • grouping things (分组事物) • annotational things(注释事物) • UML中的关系 • 泛化 (generalization) • 实现 (realization) • 依赖 (dependency) • 关联 (association) 9
UML中的图 Diagram Structure Diagram Behavior Diagram Class Diagram Object Diagram Package Diagram Activity Diagram Use Case Diagram State Diagram Interaction Diagram Component Diagram Deployment Diagram Sequence Diagram Collaboration Diagram 图 2-4 UML中的图
面向对象的符号表示-UML表示法1(UML,Unified Modeling Language) classname Attr:atype Op(par:type):Rtype cname Oname:class Aname 类 关联 子 类 父 类 泛化 活动类 实 现 规 格 说 明 实现 角色 Name:class Kind Oname:class[Role] A B 对象 A依赖B extend 多对象 被扩展 用例 扩展 11
UML表示法 2 include 用例 包含 被包含 用例 Sname 状态 聚合(共享) Sname 组合 并发组 成状态 转换 初始状态 终止状态 《singnal》 信号 H* 深历史状态 历史状态 H Cname 协作 结合状态 分叉或结合 或 《cator customer》 参与者 分支或合并 12
Ename Ename UML表示法 3 输入事件 实现 使用 提供者 客户 输出事件 接口 P:Type Tname 模板 构件 Nname 注释 节点 This class was added by Alan Wright after meeting with the missing planning team. Account 包 Pname 13
Rstional Rose是分析和设计面向对象的软件 系统的强大可视化工具。 2.5 Rose可视化工具 用来先建模再编写代码,从一开始使得系统结 构合理。 传统过程: 代码 需求 Bob 面向对象过程: 需求 对象模型 代码
Rose 支持各种不同种类型的UML框图。对 不同框图显示不同的工具栏。 • Rose 是个菜单驱动的应用程序,用工具栏 帮助使用常用特性。 • Rose 还有弹出菜单。选项有增加类的属性 或操作、浏览和编辑类规范、产生类的代码。 • Rose 界面有五大部分: 浏览器:用于在模型中迅速漫游 文档窗口:用于查看或更新模型元素的文档 工具栏:用于迅速访问常用命令 框图窗口:用于显示和编辑一个或几个UML框图 日志:用于查看错误消息和报告各个命令的结果。
业务模型 • Rose建立模型: 业务 部署 设计 测试 编码
Rose 工具中的类符号 实体类符号 《entity》 Class 控制类符号 《control》 Class
Rose 工具中的类符号 用户界面类符号 修饰 形式 图标 形式 《boundary》 《interface》 图 2-5 Rose 工具中的类符号 18
从www.omg.org上得到UML最详细说明 本章结束 ! 2014年9月22日