第2章UML系统建模与分析设计统一建模语言UML36.ppt
《第2章UML系统建模与分析设计统一建模语言UML36.ppt》由会员分享,可在线阅读,更多相关《第2章UML系统建模与分析设计统一建模语言UML36.ppt(93页珍藏版)》请在三一办公上搜索。
1、2023/2/12,1,第二章 统一建模语言UML,本章目的:,掌握UML特点和基本图标元素的表示符掌握UML软件系统体系结构的五种视图和九种基本图了解UML的用例模型、静态模型、动态模型的简单建模方法了解UML的系统体系结构模型掌握UML与软件开发统一过程,2023/2/12,2,2.1 UML模型系统体系结构,2.1.1 UML的诞生与发展2.1.2 UML的主要特点2.1.3 软件系统体系结构的描述2.1.4 UML模型元素,2023/2/12,3,2.1.1 UML的诞生与发展,20世纪70年代出现了面向对象的程序设计语言。20世纪80年代,出现了面向对象的建模语言。在1989年到19
2、94年期间,面向对象的方法从不到十种增加到了五十多种;一些方法脱颖而出,包括Booch方法、OMT和OOSE等方法;其他的方法还有Fusion方法、Shlaer-Mellor 方法和Coad-Yourdon方法经过Booch、Rumbaugh和Jacobson三人的共同努力,于1996年发布了UML(Unified Modeling Language)。,2023/2/12,4,UML的标准化,1997年11月14日,UML1.1版本被OMG(对象管理组织)采纳为标准,并陆续修订颁布了1.3、1.4和1.5等版本。2000年-2003年,UML2.0版本问世。2005年,UML2.0标准版本被
3、OMG采纳。,Booch Rumbaugh Jacobson,2023/2/12,5,UML 的形成过程,2023/2/12,6,2.1.2 UML的主要特点,统一的标准UML是被OMG接受为标准,越来越多的开发人员使用UML进行软件开发,越来越多的厂商支持UML。面向对象是支持OO软件开发的建模语言。可视化、表达能力强(概念明确)建模表示法简洁,图形结构清晰,可视化、表示能力强大,容易掌握和使用。独立于过程UML不依赖于特定的软件开发过程。,2023/2/12,7,可视化,UML通过它的元模型和表示法,把那些通过文字或其他表达方法很难表达清楚的、隐晦的潜台词用简单直观的图形表达和暴露出来,准
4、确而直观地描述其复杂的含义。例如:造一辆车身是红色金属漆的小轿车,装备四个普利司通牌子的轮胎,它是一辆四门车,车门时加厚的,并且前后门玻璃上贴黑色的膜。前后挡风玻璃里都装有电热丝,后视镜是电动可调的。,2023/2/12,8,2023/2/12,9,UML模型系统体系结构,UML构成,2023/2/12,10,事物,关系,结构事物,行为事物,分组事物,辅助事物,关联关系,依赖关系,泛化关系,实现关系,用例,类,接口,协作,主动类,组件,节点,状态机,交互机,包,注释,模型元素,UML,聚合关系,通用机制,视图,2023/2/12,11,2023/2/12,12,2023/2/12,13,描述系
5、统的功能需求,找出用例和执行者;客户、分析者、设计者、开发者和测试者;描述用图:用例图和活动图;重要性:系统的中心,它决定了其他视图的开发,用于确认和最终验证系统。,1用例视图,2.1.3 软件系统体系结构的描述,2023/2/12,14,2逻辑视图,描述如何实现系统内部的功能;分析者、设计者、开发者;类图和对象图、状态图、顺序图、合作图和活动图;重要性:描述了系统的静态结构和因发送消息而出现的动态协作关系。静态结构:类图、对象图动态行为:状态图、活动图、时序图、协作图,2023/2/12,15,描述系统代码构件组织和实现模块,及它们之间的依赖关系;设计者、开发者;构件图;描述系统如何划分软件
6、构件,如何进行编程。,3构件视图,2023/2/12,16,描述系统的并发性,并处理这些线程间的通信和同步;开发者和系统集成者;状态图、顺序图、合作图、活动图、构件图和配置图;将系统分割成并发执行的控制线程及处理这些线程的通信和同步。,4进程视图,2023/2/12,17,描述系统的物理设备配置;开发者、系统集成者和测试者;配置图;描述硬件设备的连接和哪个程序或对象驻留在哪台计算机上执行。,5配置视图,2023/2/12,18,2023/2/12,19,高级语言程序设计,2.1.4 UML模型元素,2023/2/12,20,事物,关系,结构事物,行为事物,分组事物,辅助事物,关联关系,依赖关系
7、,泛化关系,实现关系,用例,类,接口,协作,主动类,组件,节点,状态机,交互机,包,注释,模型元素,UML,聚合关系,通用机制,视图,2023/2/12,21,1 构件事物:UML模型的静态部分,描述概念或物理元素 它包括以下几种:类:具有相同属性相同操作 相同关系相同语义的对象的描述接口:描述元素的外部可见行为,即服务集合的定义说明协作:描述了一组事物间的相互作用的集合用例:代表一个系统或系统的一部分行为,是一组动作序列的集合构件:系统中物理存在,可替换的部件节点:运行时存在的物理元素 另外,参与者、信号应用、文档库、页表等都是上述基本事物的变体2 行为事物:UML模型图的动态部分,描述跨越
8、空间和时间的行为交互:实现某功能的一组构件事物之间的消息的集合,涉及消息、动作序列、链接状态机:描述事物或交互在生命周期内响应事件所经历的状态序列3 分组事物:UML模型图的组织部分,描述事物的组织结构包:把元素组织成组的机制4 注释事物:UML模型的解释部分,用来对模型中的元素进行说明,解释注解:对元素进行约束或解释的简单符号,2023/2/12,22,关联:连接(connect)模型元素及链接(link)实例。依赖:表示一个元素以某种方式依赖于另一种元素。泛化:表示一般与特殊的关系,即“一般”元素是“特殊”关系的泛化。聚合:表示整体与部分的关系。,2023/2/12,23,关系(Relat
9、ionships),关系是将事物联系在一起的方式,UML中定义了四种关系:,2023/2/12,24,类之间的关系-泛化关系,在 UML 中,泛化关系用来表示类与类,接口与接口之间的继承关系.泛化关系有时也称为”is a kind of”关系在 UML 中泛化关系用一条实线空心箭头有子类指向父类,2023/2/12,25,类之间的关系-实现关系,在 UML 中,实现关系用来表示类与接口之间的实现关系.在 UML 中实现关系用一条虚线空心箭头由子类指向父类,2023/2/12,26,类之间的关系-依赖关系,对于两个相对独立的系统,当一个系统负责构造另一个系统的实例,或者依赖另一个系统的服务时,这
10、两个系统之间体现为依赖关系.例如生产零件的机器和零件,机器负责构造零件对象;充电电池和充电器,充电电池通过充电器来充电;自行车Bicycle和打气筒Pump,自行车通过打气筒来充气在现时生活中,通常不会为某一辆自行车配备专门的打气筒,而是在需要充气的时候,从附近某个修车棚里借个打气筒打气。在程序代码中,表现为Bicycle类的expand()方法有个Pump类型的参数。以下程序代码表示某辆自行车先后到两个修车棚里充气:,2023/2/12,27,类之间的关系-关联关系,对于两个相对独立的系统,当一个系统的实例与另一个系统的一些特定实例存在固定的对应关系时,这两个系统之间为关联关系。例如客户和订
11、单,每个订单对应特定的客户,每个客户对应一些特定的订单;公司和员工,每个公司对应一些特定的员工,每个员工对应一特定的公司;自行车和主人,每辆自行车属于特定的主人,每个主人有特定的自行车。而充电电池和充电器之间就不存在固定的对应关系,同样自行车和打气筒之间也不存在固定的对应关系。Person 类与 Bicycle 类之间存在关联关系,这意味着在 Person 类中需要定义一个 Bicycle 类型的成员变量,2023/2/12,28,类之间的关系-关联关系,在现时生活中,当骑自行车去上班时,只要从家里推出自己的自行车就能上路了,不象给自行车打气那样,在需要打气时,还要四处去找修车棚。因此,在Pe
12、rson类的goToWork()方法中,调用自身的bicycle对象的run()方法。假如goToWork()方法采用以下的定义方式:,那就好比去上班前,还要先四处去借一辆自行车,然后才能去上班。,依赖,2023/2/12,29,关联关系的名称,关联关系的名称:关联关系可以有一个名称,用于描述该关系的性质.此关联名称应该是动词短语,因为它表明源对象正在目标对象上执行动作.,2023/2/12,30,关联关系的角色,当一个类处于关联的某一端时,该类就在这个关系中扮演一个特定的角色.具体来说,角色就是关联关系中一个类对另一个类所表现的职责.角色名称是名词或名称短语.,2023/2/12,31,关联
13、关系的多重性,关联关系的多重性是指有多少对象可以参与该关联,多重性可以用来表达一个取值范围,特定值,无限定的范围.,2023/2/12,32,关联关系-聚合关系,聚合关联是一种特殊的关联.它表示类间的关系是整体与部分的关系.简言之:关联关系中的一个类描述了一个较大的事物,它由较小的事物组成.聚合关系描述了“has a”的关系,即整体对象拥有部分对象整体和部分之间用空心菱形箭头的连线连接,箭头指向整体,2023/2/12,33,关联关系-组成关系,组合关系是更强形式的聚合.组合关系中,整件拥有部件的生命周期,所以整件删除时,部件一定会跟着删除.而且,多个整件不可以同时共享同一个部件。聚合关系中,
14、整件不会拥有部件的生命周期,所以整件删除时,部件不会被删除.再者,多个整件可以共享同一个部件.UML 中组成关系用实心的菱形实线表示,2023/2/12,34,关联关系-导航性,导航性表示可从源类的任何对象到目标类的一个或多个对象遍历.即:给定源类的一个对象,可以得到目标类的所有对象.可以在关联关系上加上箭头表示导航方向.只在一个方向上可以导航的关联称为单向关联,用一个带箭头的方向表示;在两个方向上都可以导航的关联称为双向关联,用一条没有箭头的实线表示.,2023/2/12,35,2.2 UML系统模型与建模,2.2.1 用例模型及组成成分2.2.2 静态模型与系统体系结构建模2.2.3 动态
15、模型与行为控制流建模,2023/2/12,36,2.2 UML系统模型与建模,三大类九种图表示,用例模型图:由用例图组成。静态模型图:由类图、对象图、包图、构件图和配置图组成。动态模型图:由活动图、顺序图、状态图和合作图组成。,2023/2/12,37,2.2.1 用例模型及组成成分,用例模型描述的时外部执行者所理解的系统功能。用例模型有若干用例图组成。用例图从用户的角度出发描述系统的功能需求,展示系统外部的各类角色与系统内部的各种用例之间的关系。用例模型驱动需求分析之后各阶段的开发。,2023/2/12,38,静态模型:指对系统中对象之间相互进行的联系构建模型,这些关系不随时间发生变化。UM
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UML 系统 建模 分析 设计 统一 语言 UML36
链接地址:https://www.31ppt.com/p-2336494.html