




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第6章 面向对象建模技术 本章主要内容 UML的特点UML发展过程和主要内容UML模型图 1第6章 面向对象建模技术 本章结构:6.1 UML概述 6.2 USE CASE图6.3 类与类图 6.4 交互图 6.5 状态图 6.6 活动图 26.1 UML概述 6.1.1 UML定义UML是一种绘制软件蓝图的标准建模语言,可以使用UML对软件密集型系统制品进行可视化、详述、构造和文档化。它不仅统一了Booch、Rumbaugh和Jacobson的表示方法,而且对其做了进一步的发展,并最终统一为大众所接受的标准建模语言。 6.1.2 UML的发展历史从1989年到1994年,其数量超过五十种 。
2、1994年Grady Booch和Jim Rumbaugh开始致力于统一建模语言工作,之后OOSE 的创始人Ivar Jacobson加入。经过三人的共同努力,于1996年发布了统一建模语言UML(Unified Modeling Language)。然后成立了UML成员协会,以完善、加强和促进UML的定义工作。当前广泛使用的是UML 2.0版本。 36.1 UML概述 6.1.3 UML主要内容作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分。 UML语义描述基于UML的精确元模型定义。UML表示法定义UML符号表示,为开发者或开发工具使用这些图形符号和文本语法为系统建模提
3、供了标准。 46.1 UML概述 UML有如下几种图: 1用例图(Use Case Diagram);2类图(Class Diagram);3对象图(Object Diagram);4顺序图(Sequence Diagram);5协作图(Collaboration Diagram);6状态图(State Diagram);7活动图(Activity Diagram);8构件图(Component Diagram);9部署图(Deployment Diagram)。 56.1 UML概述 6.1.4 UML主要特点UML是一种语言,提供了用于交流的词汇表和在词汇表中组合词汇的规则;UML是一种通
4、用建模语言。UML是一种离散的建模语言,适合对诸如由计算机软件、固件或数字逻辑构成的离散系统建模,不适合对诸如工程和物理学领域中的连续系统建模。是一种可视化的语言、图形化的语言、清晰的模型描述语言。是一种用于详细描述的语言。所构造的模型是精确的、无歧义的和完整的。是一种文档化语言。适于建立系统体系结构及其所有的细节文档。 66.2 USE CASE图 6.2.1 USE CASE图功能用例图(use case diagram)在软件开发中起着非常重要的作用,它是捕获、描述用户需求非常有力的工具。用例图展现了一组用例、参与者(一种特殊的类)以及它们之间的关系。用例图给出系统的静态用例视图,这些图
5、对于系统的行为进行组织和建模非常重要。用例模型是系统需求分析阶段的成果之一,不但有助于帮助分析员理清思路,验证用户需求;而且也是开发人员之间进行交流的重要手段。 用例图主要的作用有三个:(1)获取需求(2)指导测试(3)驱动开发过程中的其他工作流,如分析、测试等。 76.2 USE CASE图 6.2.2 系统边界与参与者识别 参与者代表在系统边界之外的真实事物,并不是系统的组成部分。参与者透过系统边界直接与系统交互。与系统进行间接交互的事物不是系统的参与者。交互是需要有意义的,与系统进行无意义交互的事物不作为系统参与者。该“意义”是指业务层面上的意义,因为用例本身是用来描述业务需求的。参与者
6、可以是任何事物,系统的参与者不仅仅是系统的用户、操作员,有可能是其他事物。 86.2 USE CASE图 6.2.3 USE CASE获取 一个用例应具有如下一些特点,缺一不可:用例存在于系统边界之内,与参与者恰恰相反,用例是系统执行的一系列动作用例必须具备一个业务目标,每个用例相对于参与者必定有可观测的结果值,参与者触动一个用例是因为参与者有一些需要使用它来满足的目标。结果值由系统用例生成,用例产生一个可观测性的结果,就是能够被用户识别的具有业务意义的结果,产生这一结果的行为是系统行为的一部分,而不是由其他系统外部行为的结果。用例的行为序列是从参与者的角度描述的,所使用的语言是业务语言,而非
7、从开发人员的角度描述,更不能采用开发人员的语言。用例应从用户的角度以动词命名,从参与者的角度阅读,应该是一个完成的有业务意义的句子(包括主语和谓语两部分)。96.2 USE CASE图 6.2.4 参与者、用例之间的关系 用例之间有着三种关系:包含关系、扩展关系和泛化关系。1包含关系2扩展关系3泛化关系106.2 USE CASE图 6.2.5 USE CASE脚本规约 用例的核心是“一组行为序列”,作为一个总图使用简洁明了,但是用例本身需要文字,用文字描述其行为序列。用例所描述的行为序列往往包含着许多分支点和异常点,如下 图 所示 。116.3 类与类图 6.3.1 类图 类图是逻辑视图的重
8、要组成部分,用于对系统的静态结构建模。在系统分析阶段,类图主要用于显示角色和提供系统行为的实体的职责;在系统设计阶段,类图主要用于捕捉组成系统体系结构的类结构;在系统实现阶段,根据类图中的类及它们之间的关系实现系统的功能。 6.3.2 基本要素 1类类是一组具有相同属性、相同行为、和其他对象有相同关系、有相同表现的对象描述,类具有属性和操作,在UML中通常表示如下图。126.3 类与类图 如左图 ,类图具有类名、属性、操作三个类元素,往往可以隐藏或省略属性和操作部分,如右图 。 136.3 类与类图 2对象相对一个类的实例是对象,对象是一个类的实例,对象的每一个属性都具有具体的值,在UML中用
9、如下图 所示 。左图说明John是对象名,是类Person的一个实例。若仅仅指明是某一个类的一般性对象,可表示为右图 。 146.3 类与类图 3接口接口是一组可重用的操作,描述类的部分行为 。在UML中,接口的表示方法有两种,如下图 所示。接口和它所依附的类之间往往用一条实线连接,以此来描述这种依附关系。156.3 类与类图 6.3.3类中的关系常见的关系有:一般化关系(泛化关系)(Generalization),关联关系(Association),聚合关系(Aggregation),合成关系(Composition),依赖关系(Dependency)。其中,聚合关系、合成关系属于关联关系。
10、1泛化关系泛化关系是继承机制中产生的类与类之间的关系,是“is a part of”关系 。其表示如下图所示。166.3 类与类图 2关联关系 关联关系表示两个类在概念上有连接关系,类之间的连接称为关联,是对不同类的对象可以相互作用的描述。关联关系用一根连接类的实线表示,用箭头表示关联的方向;如果不明确指明方向,则默认关联是双向的。如下图表示。 176.3 类与类图 关联关系表示两个类在概念上有连接关系,类之间的连接称为关联,是对不同类的对象可以相互作用的描述。关联关系用一根连接类的实线表示,用箭头表示关联的方向;如果不明确指明方向,则默认关联是双向的。如下图表示。 186.3 类与类图 (1
11、)聚合关系 聚合关系是关联关系的一种,是强的关联关系。关联关系的两个类处于同一层次上,聚合关系两个类处于不同的层次,一个是整体,一个是部分。(2)合成关系合成关系也是关联关系的一种,类似聚合关系,但是比聚合关系强的关系。它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期,合成关系不能共享。 196.3 类与类图 3依赖关系在类图中,依赖关系也是一种类与类之间的连接,表示一个类依赖于另一个类的定义。如下图 ,表示客户类依赖提供者类存在,或客户类使用了另一个提供者类。 206.3 类与类图 4实现关系类图中的实现关系用于接口和它的实现类之间,即类和接口之间的关系是实现关系,表示类实现
12、接口提供的操作。其图形表示因接口的表示方法而异,如下图所示。216.4 交互图 6.4.1系统交互特征面向对象的程序设计,使用对象模型描述事物及其静态结构关系;采用交互图(Interaction Diagram)描述这些事物为实现某一主题所进行的交互、协作关系,用以描述系统的动态行为特征。顺序图(Sequence Diagram)和协作图(Collaboration Diagram)都是交互图。 226.4 交互图 6.4.2 顺序图顺序图(也称时序图)表示实例之间按时间顺序组织的交互,是描述消息时间顺序的交互图。支持实时系统和复杂场景的详细建模。在图形上,顺序图是二维的。其中,垂直方向表示时
13、间,水平方向表示不同的对象,显示的对象沿横轴排列,从左到右分布在图的顶部;而消息则沿纵轴按时间顺序排序。如下图所示。 236.4 交互图 顺序图示例246.4 交互图 6.4.3 协作图协作图是强调发送和接受消息的对象之间的结构组织的交互图,可显示对象、对象之间的链接以及对象之间的消息,还可以显示当前模型中的简单类实例和类实体实例。如某一取款过程的协作图如下图 所示。256.4 交互图 协作图示例266.5 状态图 6.5.1 状态及状态描述状态图是对类的一种补充描述,它展示了此类对象所具有可能的状态以及某些事件发生时其状态的转移情况。与交互图不同,交互图对共同工作的对象群体的行为建模,而状态图对单个对象的状态变化行为建模。276.5 状态图 6.5.2 状态图构成要素状态图的主要构成要素是状态 、转换、事件和动作 。通常把一个状态表示成一个四角均为圆角的矩形。如下图 6所示。 状态图示例286.6 活动图 6.6.1 活动图概念活动图(Activity Diagram)和交互图是UML中对系统动态方面建模的两种主要形式。活动图主要用于系统分析,它描述系统的行为,显示系统中动作之间的转移。活动图一般从开始节点开始,经过若干动作后,最后到达结束节点,提供了一种建模业务工作流的方法。与交互图不同,交
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 内混色喷射技术发展趋势内混色喷射稳定性研究考核试卷
- 农业机械化项目风险管理法律框架分析考核试卷
- 信托资本补充中的股权激励计划设计研究考核试卷
- 培训项目可持续性评估标准考核试卷
- 2024年新疆泽普县急诊医学(副高)考试题含答案
- 新疆新冠管理办法
- 政府采供管理办法
- 2024年天津市宁河区急诊医学(副高)考试题含答案
- 拉萨苗木管理办法
- 2024年四川省宜宾县普通外科学(副高)考试题含答案
- 2025至2030中国沉淀硫酸钡行业产业运行态势及投资规划深度研究报告
- 2025年北京市社区工作者招聘笔试考试题库及答案解析
- 火灾事故桌面演练记录
- 2025民用建筑智能配电设计标准
- 新入职员工职业素养培训
- 2025中国临床肿瘤学会CSCO肿瘤厌食-恶病质综合征诊疗指南解读课件
- 中国平安钻石俱乐部课件
- 质量改进活动管理制度
- 现代农业技术专业教学标准(高等职业教育专科)2025修订
- 2025年广东省高考物理真题(含答案)
- 驾驶考试试题及答案
评论
0/150
提交评论