UML专业知识讲座_第1页
UML专业知识讲座_第2页
UML专业知识讲座_第3页
UML专业知识讲座_第4页
UML专业知识讲座_第5页
已阅读5页,还剩89页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

UML介绍第1页建模“一图胜过千言万语”第2页模型是现实简化,为系统提供蓝图模型也许包括详细计划,好模型包括元素具有广泛抽象有助于如实或根据实际需要将系统视觉化模型允许指定系统构造或行为模型提供引导构建系统模板模型能统计已经作出决定建模长处第3页用于表达模型语言称为建模语言创建模型原理选择创建什么样模型对如何处理问题和如何形成处理方案具有深刻影响单个模型是无法满足要求。每个完美系统都是通过为数不多一系列近乎独立模型以最合理方式实现每一种模型能够在不一样精度级别上表达最佳模型与现实情况是紧密相连建模语言第4页面向对象建模办法面向对象建模办法是通过应用面向对象模式,分析、设计和实现规划中系统办法分析系统设计对象设计实现迭代第5页可视化建模可视化建模将模型中信息用标准图形元素直观地显示第6页UML4-1UML功臣!第7页UML4-2致力于并推进UML发展某些主要公司有:Hewlett–PackardMicrosoftOracleIBMUnisys第8页UML4-3统一建模语言(UML)主要用于建模UML能用于任何面向对象办法论用例图演示系统与顾客交互类图演示系统逻辑构造对象图演示对象和链接状态图演示行为组件图演示软件物理构造布署图展示软件与硬件配备间对应关系第9页UML4-4UML是帮助形象化、指定、构建和统计开发中系统建模语言。UML功能如下:图形符号可展示和体现系统概观是为规划中系统精密且明确地建模一种办法使用UML构建模型与语言无关,能够使用任何语言编程帮助完成从开始至交付过程中所有归档为了执行所有任务和功能,UML提供了一组特定图和元素,可用来描述开发中系统不一样状态

第10页UML和OOP统一建模语言是对描述面向对象系统分析和设计工作所用符号进行标准化尝试一种语言其目标是建立一套不依赖于完成设计所用办法符号UML开发意图是用于所有面向对象开发办法、生命循环阶段、应用程序域第11页UML应用领域信息系统:与数据库有关系统技术系统:处理和控制技术设备嵌入式系统:控制像移动电话这样设备以及家用设备分布式系统:使用面向对象机制分布在不一样系统上数据库系统系统软件:用于操作系统和编写系统实用程序业务系统:与工作流有关系统第12页UML图2-1UML借助图形符号展示和体现系统概观,据此能够开发出表达系统各个方面不一样图示。有助于理解系统行为和状态典型图有:用例图用例为一系列事务,其中每个事务是从系统外部调用,需要与内部对象合作,方便在对象与系统周围之间创建关联类图此图是系统静态构造,也是类以及这些类表达关系集合时序图是通过展示系统与其环境之间交互,描述系统行为简单而直观办法

时序图第13页UML图2-2协作图表达特定环境和交互中一系列关联对象。

活动图是状态机图变更或特例。在状态机图中,状态是展示执行操作活动,操作完成后将触发转换。状态图展示办法执行状态和对象执行活动。

协作图活动图状态图第14页RationalRose2023介绍工具箱窗口第15页用例图第16页用例图介绍统一建模语言为实现其建模目标使用了不一样图用例图是其中之一,此概念由IvarJacobson提出,这是他对UML主要奉献编写系统用例图有助于在初始开发阶段构建系统业务需求第17页用例Jacobson对用例定义“对话中参与者所执行交互动作序列,系统为参与者提供了某些可测量值。”用例简单解释“系统一组使用场景,每个场景描述了一种系统执行动作序列。执行动作序列,产生特定参与者可看得见成果值

。”第18页用例图元素4-1系统用例参与者第19页用例图元素4-2系统系统是用例图一种组成部分,它代表是一种活动范围,而不是一种真正软件系统。系统边界用来说明构建用例应用范围。系统边界框定义系统边界或限制,因此,系统所有功能或过程会被限制在系统内,即此边界将系统所有过程/功能与外界环境分隔。第20页用例图元素4-3用例用例是系统执行功能或过程,它能够由外部对象或系统内部另一种用例启动。第21页用例图元素4-4参与者参与者是负责启动系统过程外部实体,它能够是使用系统人或为某些访问系统外部过程。第22页用例符号3-1系统边界框系统边界功能功能功能投币饮料售货机系统第23页用例符号3-2用例符号1.投掷硬币2.计算币值3.送出饮料第24页用例符号3-3参与者用例1用例2参与者符号第25页用例长处用例将详细说明需求表达为系统和一种或多种参与者之间一系列交互这些交互有助于向顾客描述所提出系统功能就复杂系统来说,用例也以需要构建内容提供系统分析起点用例有助于确定系统必须实现类第26页用例必要性有助于理解系统需求有助于正确设计系统功能有助于正确建立功能间关系第27页构建用例图2-1步骤1.定义系统和系统边界步骤2.确定参与者及其目标步骤3.确定用例步骤4.确定参与者和用例之间关系第28页构建用例图2-2系统边界框用例用例问题详述参与者

开发典型用例第29页用例举例第30页用例举例第31页用例之间关系4-1用例之间常见关系扩展关系包括关系泛化关系第32页用例之间关系4-2“泛化”关系用于表白专用用例是实现由另一种通用用例表达目标一种特定方式。箭头应指向更通用用例。第33页扩展行为用例之间关系4-3扩展关系:“扩展”链接用于表白一种用例能够在特定情况下向另一种用例添加功能。箭头应指向被扩展主用例。满足条件用例1<<extend>>用例2第34页用例之间关系4-3第35页用例之间关系4-4包括关系:使用“包括”关系能够表白一种用例用于描述另一种用例某些细节。用例1用例2<<include>>用例1具有用例2功能用例1体现出用例2功能第36页用例之间关系4-4第37页“在线拍卖”系统需求序号UseCase描述1浏览拍卖目录顾客浏览目前有效拍卖物项,并不需要顾客已登录入系统。2终止拍卖当一项拍卖结束时间达届时,该用例被执行,此时买主和卖主会被通知拍卖已经成交、成交价格以及双方联系方式,方便真正完成这笔交易。系统将从卖主信用卡中收取交易有关费用。假如卖主信用卡不能付款,系统将针对该卖主建立一种未付款统计。3创建帐户允许顾客建立和激活一种帐户,输入顾客信息-能够选择包括信用卡信息。当帐户被建立和激活后,顾客被以为处于登录状态。4创建拍卖项卖主创建一种在线拍卖物项,在建立一种拍卖项之前,卖主必须要登录系统,并且不能有任何未付款统计。5管理帐户允许顾客更新维护其帐户中有关信息。6竞拍允许登录买主在浏览拍卖目录时针对特定拍卖物项竞拍。7登录顾客提供顾客名称和密码来通过身份验证。8退出顾客通知系统该顾客目前不想继续使用系统,退出之前必须要登录。第38页使用RationalXDE编写用例“在线拍卖”系统用例图第39页类图与对象图第40页回忆用例图用于描述系统需求用例之间关系有:包括或扩展关系用例图用于表达系统行为或功能用例图各个组成部分包括:系统、参与者和用例RationalRose2023能够方便编写用例图第41页关键抽象是在系统范围上某些主要概念,主要是从需求中得到(例如词汇表、业务规约以及用例模型),这些概念也会包括到系统所针正确业务领域知识。关键抽象一般体现为系统实体。关键抽象在线拍卖系统拍卖和拍卖物项信用卡竞拍

分类

顾客帐户和未付款项关键抽象业务实体

实体之间关系强调与系统设计有关实体排除系统外部多出实体最后,关键抽象成为分析模型中类

第42页识别类3-1类是一组对象,这些对象具有共同属性和共同行为类是创建对象模板

类可捕捉对象本质

对象是类实例化第43页识别类3-2在标识类时,需查找:

有形事物事件扮演角色交互位置组织单位第44页识别类3-3标识类也称为候选类。可从下列方面标识类:需求说明

用例应用程序专家

研究系统

分析下列方面可标识其他候选类:相同系统

此前系统用例应用程序专家需求说明此前系统相同系统候选类第45页候选类在分析初始过程中说明类称为候选类冗余类

无关类

标识类角色

多种类定义同一种实体

任何不属于应用程序域类都需清除

保存基类,而排除所有作为角色类

标识候选类含糊类

没有明确功能类称为含糊类第46页类图2-1类是对一组对象描述,这些对象具有相同属性、操作、关系和行为。Window

size:Size

visibility:boolean

display()

hide()类名称属性操作类名称属性办法

构造说明语法类对一组对象描述,这些对象具有相同属性、操作、措施、关系和语义第47页类图2-2类名称一般可对应于现实生活中实体类名称类属性类办法属性(:特性,特性)属性是深入描述对象实例数据。操作(:办法、服务和行为)操作是对象可执行过程。AccountHolder-Name:String-Age:Integer+Status:Boolean#Hobby:String

AccountHolder-Name:String-Age:Integer+Status:Boolean#Hobby:String+GetName():String+SetName(sName:String)Order<<Constructor>>+Order(id:integer)<<accessor>>+getQuantity():integer<<mutator>>+setQuantity(id:integer)<<businesslogic>>+addOrder(id:integer)+cancelOrder(id:integer)类名称办法参数类型参数名称办法名称-id:integer-quantity:integer=0访问模式属性属性名称属性类型属性值第48页类不是孤立存在因此,类与类之间创建了一种关系:类关系也许指明某种共享关系类关系也许指明某种类型语义连接类关系关联接口与实现组合泛化(继承)聚合依赖类关系第49页关联2-1构造说明语法关联两个或多种类符之间一种关系,此关系包括类各个实例之间连接识别类之后,需要识别关联多重性(multiplicity)定义有多少对象参与了某个关系各个类都也许与本身有关联公司部门雇员示例:“雇员为公司工作”第50页关联2-2第51页泛化2-1构造说明语法泛化

它是较一般类和较详细类之间分类关系泛化:标识各个类之间共同性。指明特化类(子类)对象可取代泛化类(父类)对象。是“is-a”关系。形状

{抽象}圆圈父类子类抽象类泛化关系第52页泛化2-2第53页依赖2-1构造说明语法依存假如一种类依靠另一种类服务来完成其角色,则它们之间关系称为依存关系依赖关系指明两个或多种类之间语义关系,尽管两个类之间没有明确关联,一种类发生变化也会造成另一种类发生变化。可用一种构造型来表达依赖类型。第54页依赖2-2第55页聚合2-1构造说明语法聚合一种特殊形式关联,指定了聚合(整体)和组件部分之间整体-部分关系共享聚合(空心菱形)意味着在组合端多重性有多种。模拟“整体-部分”关系。整体部分门房子1..*2..*汽车第56页聚合2-2第57页组合2-1构造说明语法组合

一种特殊形式聚集,指定了聚合(整体)和组件部分之间整体-部分关系这是一种更强聚合,体现了类与类之间更强耦合(不能分离,就如衬衣与衣领袖口关系)组合图形为实心菱形。圆圈点多边形点圆圈第58页组合2-2第59页接口和实现2-1接口:几个类并不和某个特定父类有关,但事它们行为中也许包括同样操作和同样构造。能够对其中某个类编码,然后在其他类中重用这些编码。另一种也许情况事开发了一种系统中类一组操作并在另一种类中重用这些操作。不论哪种方式,都需要这些可重用操作集,接口是描述类部分行为一组操作,它也是一种类提供应另一种类一组操作。实现:类与接口之间关系被称为实现。第60页接口和实现2-1

类接口符号验证类实现符号第61页接口和实现2-2第62页绘制”在线拍卖”系统类图

第63页总结在派生关键抽象时,一定要记住抽象层次不应过高或过低UML类是一种包括类名、属性和操作三个部分矩形

可通过下列方面标识类:需求说明

用例

应用程序专家

研究系统

第64页总结类之间多种类型关系包括:关联

泛化

依赖

聚合

组合接口与实现第65页对象图对象图(ObjectDiagram)是显示了一组对象和某时刻它们之间关系。一种对象图可当作一种类图特殊用例。对象图是类图实例,几乎使用与类图完全相同标识。不一样点在于对象图显示类多种对象实例,而不是实际类。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。第66页对象图CAH:

AccountHolderName=“Charles”Age=35Status=True实例化于属性变量赋予值

类对象第67页动态模型第68页目标列出动态模型长处理解动态模型组件

第69页介绍模型模型表达系统静态和动态行为。这种表达形式可为同一系统提供不一样视角静态模型动态模型静态模型展示了构思中系统构造方面动态模型是系统表达形式,也就是过程和行为集合第70页采取动态建模长处明确性简易性可视性动态模型优越性2-1动态模型着重于描述系统控制逻辑,考查在任何时候对象及其关系变化,描述时序和状态变化。第71页操作和维护模型比操作和维护实际系统容易得多使顾客和开发人员都能更容易地理解构思中系统可助于解释状态变化和减少复杂度可监视构思中系统是否存在任何类型缺陷动态模型优越性2-2动态模型优越性第72页动态模型组件5-1状态图时序图活动图协作图动态模型组件第73页动态模型组件5-2状态图状态图(StatechartDiagram)主要用于描述一种对象在其生存期间动态行为,体现为一种对象所经历状态序列,引发状态转移事件(Event),以及因状态转移而伴随动作(Action)。一般能够用状态机对一种对象生命周期建模,状态图用于显示状态机(StateMachineDiagram),重点在与描述状态图控制流。如下列图例子,状态机描述了门对象生存期间状态序列,引发转移事件,以及因状态转移而伴随动作(Action).第74页状态图元素状态(States)指在对象生命周期中某个条件或者情况,在此期间对象将满足某些条件、执行某些活动活活等候某些事件。所有对象都有状态,状态是对象执行了一系列活动成果,当某个事件发生后,对象状态将发生变化。第75页状态图元素状态(States)初态和终态(InitialandFinalStates)初态用实心圆点表达,终态用圆形内嵌圆点表达。第76页状态图元素转移(Transitions)

转移(Transitions)是两个状态之间一种关系,表达对象将在源状态(SourceState)中执行一定动作,并在某个特定事件发生并且某个特定警界条件满足时进入目标状态(TargetState)第77页状态图元素事件标识(Trigger):是转移诱因,能够是一种信号,事件、条件变化(achangeinsomecondition)和时间体现式。警界条件(GuardCondition):当警界条件满足时,事件才会引发转移(Transition)。成果(Effect):对象状态转移后成果。

第78页状态图举例教师上传课件状态图第79页动态模型组件5-3时序图时序图显示了在对象生命线上各点之间对象传递消息,演示了在时间序列中对象之间交互。时序图是一种强调消息时序交互图,它由活动者(Actor)、对象(Object)、消息(Message)、生命线(Lifeline)和控制焦点(Focusofcontrol)组成。在UML中:对象表达为一种矩形,其中对象名称标有下划线;消息在时序图中由有标识箭头表达;生命线由虚线表达;控制焦点由薄薄矩形表达。第80页动态模型组件5-3时序图时序图示例如下所示:第81页时序图元素角色(Actor)系统角色,能够是人、及其甚至其他系统或者子系统。对象(Object)对象包括三种命名方式:第一种方式包括对象名和类名;第二中方式只显示类名不显示对象名,即表达他是一种匿名对象;第三种方式只显示对象名不显示类明。第82页时序图元素第83页时序图元素生命线(Lifeline)生命线在时序图中表达为从对象图标向下延伸一条虚线,表达对象存在时间第84页时序图元素控制焦点(FocusofControl)控制焦点是时序图中表达时间段符号,在这个时间段内对象将执行对应操作。用小矩形表达第85页时序图元素消息(Message)消息一般分为同步消息(SynchronousMessage),异步消息(AsynchronousMessage)和返回消息(ReturnMessage)。第86页时序图元素同步消息=调用消息(SynchronousMessage)消息发送者把控制传递给消息接收者,然后停顿活动,等候消息接收者放弃或者返回控制。用来表达同步意义。异步消息(AsynchronousMessage)消息发送者通过消息把信号传递给消息接收者,然后继续自

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论