已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
统一建模语言UML 教程学习目标 u 掌握UML的 基本概念、通用机制、扩展机制和规则 u 掌握静态建模和动态建模机制 u 了解物理架构建模和基于UML的统一建模过程统一建模语言UML 教学内容 5.1 UML的基本概念 5.2 UML语言概述 5.3 静态建模 5.4 动态建模 5.5 物理架构建模 5.6 基于UML的统一建模过程RUP 本章小结 5.1 UML的基本概念 主要教学内容: 5.1.1 UML语言的产生 5.1.2 UML的定义 5.1.3 UML的目标 5.1.4 UML语言的应用 5.1 UML的基本概念 UML的产生 5.1.1 UML语言的产生 1995年10月发布了称之为统一方法(Unified Method)的UM0.8。 1996年6月和10月分别发布了UML0.9 和UML0.91两个新的版本,并将UM重新命名为UML(Unified ModelingLanguage)。 1997年1月正式公布了UML1.0 ,11月,OMG(ObjectManagement Group)接纳UML1.1为基于面向对象技术的标准建模语言。 2001年,UML1.4修订完毕 。5.1 UML的基本概念 UML的定义 5.1.2 UML的定义 UML是一种可视化的、用于绘制软件蓝图的标准建模语言。可以用UML对软件系统的各种制品(包括程序、文档等)进行描述。 UML作为一种语言提供了用于交流的词汇表和使用这些词汇的规则,它由一些符号和一套指示如何使用这些符号的规则构成,可以利用这些明确定义的符号和相应的规则,建立待开发系统的各种模型。 5.1 UML的基本概念 UML的目标5.1.3 UML的目标 u 利用面向对象概念为系统建模(不仅仅是编制软件)。u 易于使用、表达能力强,可以进行可视化建模。u 与具体的实现无关,应用于任何语言平台和工具平台,创建一种所有人和所有机器都可以使用的建模语言。u 与具体的过程无关,可普遍应用于软件开发的过程。u 简单、便于扩展,无需对核心概念进行修改。u 为面向对象的设计与开发中出现的高级概念提供支持,强调在软件开发中对架构、框架、模式和组件的重用。u 可升级,具有较强的适用性和可扩展性。u 能解决复杂系统和关键任务的系统中固有的规模问题。u 有利于面向对象工具的市场成长。5.1 UML的基本概念 UML语言的应用5.1.4 UML语言的应用 使用面向对象技术设计系统时,首先是描述需求。其次根据需求建立系统的静态模型,构造系统的结构。这两步所建立的模型都是静态的,属于UML中的静态建模机制。第三步是描述系统的行为。这一步骤中建立的模型或者可以执行,或者表示执行时的时序状态或交互关系,是标准建模语言UML的动态建模机制。 因此,标准建模语言UML的主要内容也可以归纳为静态建模机制和动态建模机制两大类。5.2 UML语言概述 利用UML语言建模有3个主要要素:u UML的基本构造块u 控制这些构造块如何组合的规则u 作用于整个UML模型的通用机制。按照层次结构来划分,UML的基本构造块包含:u 视图(View)u 图(Diagram)u 模型元素(Model Element)。 5.2 UML语言概述本节主要内容:5.2.1 视图5.2.2 图5.2.3 UML的模型元素及表示方法 5.2.4 UML的通用机制和扩展机制 5.2.5 UML的规则 5.2 UML语言概述 视图5.2.1 视图 视图是用来显示系统的不同方面。视图并不是图形(Graph),而是由多个图(Diagram)构成的,是在某一个抽象层上对系统的一个抽象表示。 UML的视图主要有以下5种: u 用例视图(Use Case View) u 逻辑视图(Logical View)u 并发视图(Concurrent View) u 组件视图(Component View) u 部署视图(Deployment View)5.2 UML语言概述 图5.2.2 图 图用来描述一个特定视图的内容。 UML中的图由各种图形构成,图形就是各种模型元素符号。UML提供了静态图和动态图两大类共9种图,用来描述系统的所有视图。u 静态图(Static Diagram)包括用例图、类图、对象图、组件图和部署图。u 动态图(Dynamic Diagram)动态图包括状态图、时序图、协作图和活动图。 5.2 UML语言概述 模型元素及表示方法 5.2.3 UML的模型元素及表示方法 在UML各种图中使用的概念统称为模型元素。模型元素主要是用标准的图形符号表示的,图形符号本身代表了UML的语法。由这些图形符号组成的各种模型,则给出UML的语义。 1、UML的模型元素 2、UML的元模型结构 3、 包5.2 UML语言概述 UML模型元素1、UML的模型元素 UML定义了两类模型元素,都可用图形符号来表示:u 一类模型元素用于表示模型中的某个概念。如类、对象、组件、状态、用例、结点(Node)、接口(Interface)、包(Package)、注释(Note)等 ;u 另一类用于表示模型元素之间相互连接的关系,关系也是模型元素。如:关联(Association)、泛化(Generalization)、依赖(Dependencey)和聚集(Aggregation)等 。 模型元素之间主要连接关系的含义:5.2 UML语言概述UML的模型元素 图5-1 模型元素的图形表示 5.2 UML语言概述 元模型结构2、UML的元模型结构 UML模型按照语义可定义为4个抽象层次。从低到高分别是元元模型、元模型、模型和用户模型。下一层是上一层的基础,上一层是下一层的实例。5.2 UML语言概述 元模型结构5.2 UML语言概述 元模型结构图5-6 用户模型示例 5.2 UML语言概述 包3、包 在OO设计中,可将许多类集合成一个更高层次的单位,形成一个高内聚、低耦合的类的集合。UML把这种将一些模型元素组织成语义上相关的组的分组机制叫包(Package)。 包中的所有模型元素叫作包的内容。包有时也称为子系统,常用于对模型的组织管理。包的实例没有任何语义,仅在模型执行期间,包才有意义。 包与包之间可以有关系,允许的关系有:依赖、细化和泛化。5.2 UML语言概述 通用机制和扩展机制5.2.4 UML的通用机制和扩展机制 1、UML的通用机制 UML语言在所有的图中都利用一些通用机制来描述图的附加信息,这些信息通常无法利用模型元素的基本功能0来表示,常用的通用机制有: u 规格说明(Specification)u 修饰u 注解5.2 UML语言概述 通用机制和扩展机制2、UML的扩展机制 UML是可扩展的,通过它提供的几种扩展机制 。UML提供的扩展机制包括如下方面:(1)构造型(Stereotype)(2)标记值(Tagged Value) (3)约束(Constraint)5.2 UML语言概述 UML的规则5.2.5 UML的规则 UML就是一种由符号和一套指示如何使用这些符号的规则组成的建模语言。其中,符号就是在模型中使用的符号,规则包含语法规则、语义规则和实用规则。 UML从以下几个方面描述符号的语义规则:u 命名:为模型元素起一个名称。 u 范围:给一个模型元素以特定含义的上下文 。u 可见性:如何让其他模型元素使用或看见本模型元素。 u 完整性:各模型如何正确、一致地相互联系。 u 执行:运行或模拟动态模型的含义是什么 。5.3 静态建模 主要教学内容: 5.3.1 用例模型 5.3.2 类和对象模型 5.3.3 类之间的关系 5.3 静态建模 用例模型5.3.1 用例模型 由一组用例图组成,其基本组成部件是用例、角色和系统。用例是系统中的一个功能单元,是对系统的一个用法的通用描述。用例描述的是系统的总体功能。用例之间的关系主要有3种:泛化关系、扩展关系和使用关系。 用例模型的主要作用是:u 确定系统应具备哪些功能,这些功能是否满足系统的需求。u 为系统的功能提供清晰一致的描述。u 为系统验证工作打下基础。5.3 静态建模 类和对象模型5.3.2 类和对象模型 在UML中,类和对象模型分别由类图和对象图表示。 类是用一个矩形表示的,并且该矩形由3部分组成:名称部分、属性部分和操作部分。如图5-9所示。5.3 静态建模 类和对象模型 类的名称:应尽量采用领域中的术语,明确且无歧义 。 类的属性,用以描述该类对象的共同特征。语法为:可见性 属性名:类型=缺省值约束特性 类的操作(Operation)也称为功能,用于属性的状态的改变、查找或执行某些动作。语法为:可见性 操作名(参数表):返回类型 约束特性在UML中,类图可描述类和类之间的静态关系,包括关联、聚集、泛化、依赖及细化等关系。5.3 静态建模 类和对象模型 对象与类具有相同的表示形式。对象图可以看作是类图的一个实例;对象之间的链是类之间相互关联的实例。对象与类的图形表示相似 。5.3 静态建模 类之间的关系5.3.3 类之间的关系类与类之间存在多种关系,主要有四种:1)关联关系(Association)2)聚集关系(Aggregation)5.3 静态建模 类之间的关系3)泛化关系(Generalization)5.4 动态建模主要教学内容: 1、消息 2、状态图和时序图 3、协作图和活动图 5.4 动态建模 消息5.4.1 消息 UML的4个动态模型均采用消息这个概念。对象通过相互间的通信(消息传递)进行合作,并在其生命周期中根据通信的结果不断改变自身的状态。5.4 动态建模 状态图和时序图5.4.2 状态图和时序图 1、状态图(State Diagram) 用来描述一个特定对象的所有可能状态及引起其状态转移的事件。一个状态图包括一系列的状态以及状态之间的转移。 (1)状态 (2)状态转移 (3)事件 (4)状态图之间发送消息 5.4 动态建模 状态图和时序图2、时序图(Sequence Diagram) 用来描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。 时序图存在两个轴:水平轴表示不同的对象,垂直轴表示时间。时序图中的对象用一个带垂直虚线的矩形框表示,并标有对象名和类名。垂直虚线是对象的生命线,用于表示在某段时间内对象是存在的。对象间的通信通过在对象的生命线间传递消息来表示。消息的箭头指明消息的类型。 5.4 动态建模协作图和活动图5.4.3 协作图和活动图1、协作图(Collaboration Diagram) 用于描述相互协作的对象间的交互关系和链接关系。着重体现交互对象间的静态链接关系。 (1)链接 链接是两个对象之间的一种连接,用于表示对象间的各种关系。 (2)消息流 在协作图的链接线上,可以用带有消息串的消息来描述对象间的交互 。5.4 动态建模协作图和活动图2、活动图(Activity Diagram) 显示动作及其结果,它既可用来描述操作(类的方法)的行为,也可以描述用例和对象内部的工作过程。活动图通过对象状态的变化来获取动作(将要执行的操作或活动)与动作的结果。 (1)活动和转移 (2)泳道 (3)对象 (4)信号 5.5 物理架构建模主要教学内容: 5.5.1 逻辑架构与物理架构 5.5.2 组件图与部署图 5.5 物理架构建模 逻辑架构与物理架构 5.5.1 逻辑架构与物理架构 1、逻辑架构 将系统的功能进行处理,分配到各个部分,并详细说明各功能是如何工作的。逻辑架构要解决的问题包括:u 系统提供什么样的功能?u 存在哪些类,类之间是如何联系在一起的?u 类和对象是如何协作来完成系统功能?u 什么是系统功能的时间约束?u 当开发人员在开发架构时,应遵循的合适的计划如何? 在UML中,用来描述逻辑架构的图通常有:用例图、类图、状态图、活动图、协作图和时序图。 5.5 物理架构建模逻辑架构与物理架构 2、物理架构 详细描述系统软件、硬件。它描述硬件结构,包括不同的节点以及节点间如何连接。 要解决下面的问题:u 类和对象物理上分布在哪一个程序或进程中?u 程序和进程在哪台计算机上运行?u 系统中有哪些硬件设备,它们如何连接在一起?u 不同的代码文件之间有何关联?如果某一文件被改变,其他的文件是否需要重新编译? 5.5 物理架构建模组件图与部署图 5.5.2 组件图与部署图 组件图和部署图显示系统实现时的一些特性,包括源代码的静态结构和运行时刻的实现结构。组件图显示代码本身的结构,部署图则显示系统运行时刻的结构。u 组件图 u 部署图 u 结点和连接 u 组件和界面 u 对象 5.6 基于UML的统一建模过程RUP 作者给出了一种推荐性的建模过程指导,即RUP(Rational Unified Process)。 RUP是以用例为驱动、以系统为中心的迭代与增量过程。RUP包括初始、细化、构造和移交4个阶段,每个阶段又分为若干次迭代,每次迭代都有一个核心工作流,包括5个活动:需求、分析、设计、实现和测试。5.6 基于UML的统一建模过程RUP1初始阶段 本阶段确定所设立的项目是否可行。具体要做如下工作:u 对需求有一个大概的了解,确定系统中的大多数角色和用例。u 划分主要子系统,给出系统的体系结构概貌。u 分析项目执行的风险。u 考虑时间、经费、技术、项目规模和效益等因素。u 制定出开发计划。5.6 基于UML的统一建模过程RUP2细化阶段 对当前迭代的每个用例进行细化。主要完成以下工作:u 需求风险:考虑项目的目标是否偏离了用户的需求。应尽量列出所有的用例,并要建立领域的概念模型。u 技术风险:考察所选的技术方案是否可行。u 技能风险:考虑项目的人员素质能否胜任项目的要求。u 政策风险:考虑政策性的因素对项目的影响。u 进行高层分析和设计,并做出结构性决策。u 所产生的简要体系结构以后不能进行过大的变动。u 为构造阶段制订计划。5.6 基于UML的统一建模过程RUP3构造阶段 识别出剩余的用例。每一次迭代开发都针对用例进行分析、设计、编码(如类声明、属性声明、范围声明、函数原型声明和继承的声明等)、测试和集成过程,得到产品满足项目
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏肯帝亚合同
- 午餐快餐外包合同
- 成人学历课程提质项目推进进度、问题及解决方案
- 机房管理合同
- 设备临租结算合同
- 服装发布会合同
- 三兄弟合伙养殖合同
- 私人买卖厂房没有合同
- 阜阳超市摊位转让合同
- 外科学试题库及答案(含10套试卷及答案)
- 照明工程检测方案(3篇)
- 国际贸易安全内部培训课件
- 历年审计学 (军队文职)考试试卷(共六卷)及答案
- 2025年产品经理高级面试题及应对策略
- 阿里新员工培训课件
- 保险电销合同范本
- 四川省成都市蓉城名校联盟2022-2023学年高一上学期期中联考英语试题(含答案)
- 2025年全国高校辅导员结构化面试题50题(含答案)
- 《点面结合》课件
- 2025年天津市教师职称考试(英语)历年参考题库含答案详解(5套)
- 船舶运营风险的精准管理与控制-洞察及研究
评论
0/150
提交评论