系统动态分析与交互模型_第1页
系统动态分析与交互模型_第2页
系统动态分析与交互模型_第3页
系统动态分析与交互模型_第4页
系统动态分析与交互模型_第5页
已阅读5页,还剩50页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

第5章系统动态分析与交互模型1概述…动态分析——序列图等需求捕获——用例图静态分析——类图、对象图2概述用例模型中对系统的功能(用例)进行了描述,但所关注的重点是:系统能做什么(What)问题:怎么做(How)才能实现系统的每一种功能?在静态模型中,确定了所有构成系统的类,并且确定了类之间的关系以及类的属性、方法。问题:对象之间通过哪些交互完成功能需求?为什么要进行动态分析3概述用于对系统中一组对象群体的行为建模主要用来表达对象之间的动作协作关系通常用来描述用例的行为实现显示用例实现/类操作(方法)涉及的对象和对象间的消息传递情况动态分析的任务4概述

动态分析模型描述系统的动态行为,显示对象在系统运行期间不同时刻的动态交互,主要是建立系统的交互图和行为图。5概述

交互图——对象之间的合作在UML里被称作交互。交互体现了对象之间的作用、对象之间的联系。序列(顺序、时序)图(SequenceDiagram)协作图(CollabborationDiagram)6概述

行为图——主要用来设计程序的行为。状态图(StatechartDiagram)活动图(ActivityDiagram)7概述序列图协作图状态图活动图动态分析模型包括下列模型图:8概述序列图:注重表达交互作用的时间顺序,没有明确表示对象间的关系。(对象之间的交互或对象外部的交互行为)协作图:协作图注重表示对象间的关系,时间顺序可以从消息的序号中获得。状态图:状态图主要描述系统行为的结果。(表示对象内部的状态变化)活动图:活动图主要描述系统动态行为的过程。9序列图的基本概念序列图是用于描述对象之间基于时间顺序的动态交互,并将交互建模成对象之间消息交换的图形。定义:10序列图的基本概念在UML的表示中,序列图将交互关系表示为一个二维图。其中,纵轴是时间轴,时间沿竖线向下延伸。横轴代表了在交互中各独立的对象。UML表示:11序列图的基本概念12序列图的基本概念13序列图的基本概念14序列图元素15序列图元素1.角色(Actor)

系统角色可以是人或者其他系统、子系统。2.对象(Object)

对象代表时序图中的对象在交互中所扮演的角色,位于时序图顶部和对象代表对象实例。序列图中包括:角色、对象、生命线、激活和消息。16序列图元素3.生命线(Lifeline)

生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线,对象间的消息存在于两条虚线间。17序列图元素4.激活(Activation)

对象生命线上的窄矩形条被称为激活,激活表示该对象正在执行某个操作。激活条的长短表示操作的时间。一个被激活的对象要么执行自己的代码,要么等待另一个对象的返回结果。18序列图元素5.消息(Message)消息是从一个对象(发送者)向另一个或其他几个对象(接收者)发送信号或由一个对象(发送者或调用者)调用另一个对象(接收者)的操作。

19StartUML中的消息

创建(CREATE)同步调用(CALL)异步调用(SEND)自调用(CALL)返回(RETURN)销毁(DESTROY)20序列图创建21序列图创建22实例(借阅图书)23实例(借阅图书)用例名称借阅图书标识符UC0001用例描述图书管理员代理借阅者办理借阅手续参与者图书管理员前置条件图书管理员已经登录系统后置条件在系统中存储借阅记录借阅图书用例的描述24实例(借阅图书)基本工作流:1)图书管理员输入借阅证信息。2)系统验证借阅证的有效性。3)图书管理员输入图书信息。4)添加新的借阅记录。5)显示借阅后的借阅信息。备选过程A:所借图书数量超过规定1)获取借阅者的借书数量。2)系统验证借书数量。3)创建一个“MessageBox”对象以提示借书数量超过规定的错误。25实例(借阅图书)备选过程B:借阅者的借阅证失效1)借阅者实例化对象返回借阅者信息错误。2)创建一个“MessageBox”对象以提示借书借阅证失效的错误。备选过程C:该借阅者有超期的借阅信息1)获取借阅者的所有借阅信息。2)查询数据库以获取借阅信息的日期、且系统验证借阅期限。3)显示超期的图书信息。4)创建一个“MessageBox”对象以提示借书借阅超期的错误。26实例(借阅图书)基本工作流的序列图27实例(借阅图书)备选过程A的序列图28实例(借阅图书)备选过程B的序列图29实例(借阅图书)30序列图元素除常用的元素之外,还包括:组合片段(CombinedFragment)交互操作符(InteractionOperator)框图(Frame)31StarUML组合片段(CombinedFragment)交互操作类型名称说明seq弱顺序有两个或更多操作数片段,涉及同一生命线的消息必须以片段的顺序发生。如果消息涉及的生命线不同,来自不同片段的消息可能会并行交错。alt选择包含一个片段列表,这些片段包含备选消息序列。在任何场合下只发生一个序列。opt选项包含一个可能发生或可能不发生的序列。可以在临界中指定序列发生的条件。break中断如果执行此片段,则放弃序列的其余部分。可以使用临界来指示发生中断的条件。par并行并行处理。片段中的事件可以交错。strict强顺序有两个或更多操作数片段,这些片段必须按给定顺序发生。loop循环片段重复一定次数。32组合片段(CombinedFragment)分支片段先选择CombinedFragment,将InteractionOperator设置为alt在CombinedFragment中加入InteractionOperator,并写入条件。33组合片段(CombinedFragment)选项片段先选择CombinedFragment,将InteractionOperator设置为opt,写入选项条件34组合片段(CombinedFragment)循环片段先选择CombinedFragment,将InteractionOperator设置为loop,可写入循环次数35框图(Frame)简化顺序图复杂度利于任务和模块分割sd表示框图定义ref表示框图应用框图可以嵌套36框图的定义37框图的引用38框图的嵌套39StarUML序列图的参数设置参数显示序号消息格式NONE:不显示参数TYPEONL:只显示类型,包括返回值NAMEONLY:只显示参数名NAMEANDTYPE:显示参数名和类型40StarUML顺序角色图

顺序角色图表示角色概念间的交互。顺序图是面向实例的交互。41协作图

协作图侧重的是描述对象角色之间的关系,在于对象的作用。42为什么要使用协作图

协作图作为一种在给定语境中描述协作中各个对象之间的组织交互关系的空间组织结构图形化方式,在使用其进行建模时,可以将其作用分为以下三个方面:通过描绘对象之间消息的传递情况来反映具体的使用语境的逻辑表达,这和序列图的作用类似。43为什么要使用协作图显示对象及其交互关系的空间组织结构。

协作图显示了在交互过程中各个对象之间的组织交互关系以及对象彼此之间的链接。

与序列图不同,协作图显示的是对象之间的关系,并不侧重交互的顺序,它没有将时间作为一个单独的维度,而是使用序列号来确定消息及并发线程的顺序。44为什么要使用协作图协作图的另外一个作用是表现一个类操作的实现。协作图可以说明类操作中使用到的参数、返回值等(和序列图类似)。当使用协作图表现一个系统行为时,消息编号对应了程序中嵌套调用结构和信号传递过程。45协作图序列图和协作图的异同:共同点:都是交互图,描述对象之间的交互都包含一系列消息集合不同点:时序图注重表达交互作用的时间顺序,没有明确表示对象间的关系。协作图注重表示对象间的关系,时间顺序可以从消息的序号中获得。序列图常用于表示方案。协作图则用于过程的详细设计。46协作图针对StarUML,序列图和协作图的不同:片段的设计--协作图无法表达片段设计,如:分支、循环、或引用片段,协作图均无法呈现,不利于片段设计的重用,也无法表达控制流程的设计。对象连接--在序列图中,没有呈现对象之间的连接。但在协作图中,对象之间的连接是焦点所在。所以,通过协作图的对象连接,立即就明白对象之间先建立起连接,然后才能传送消息。47协作图消息的顺序--序列图擅于呈现依序发送消息的情况,即便隐藏了消息的序号,从图上仍旧可以清楚获知由上而下发送消息的交互状况。而隐藏序号之后的协作图,几乎无法阅读。48协作图组成要素1.对象一个协作代表了为了完成某个目标而共同工作的一组对象。对象的角色表示一个或一组对象在完成目标的过程中所应起的那部分作用。对象是角色所属的类的直接或者间接实例。在协作图中,不需要关于某个类的所有对象都出现,同一个类的对象在一个协作图中也可能要充当多个角色。49协作图组成要素1.对象协作图中对象的表示形式也和序列图中的对象的表示方式一样,与序列图不同的是,对象的下部没有一条被成为“生命线”的垂直虚线,并且对象存在多对象的形式。未绑定对象所属类名完全限定对象名未指定对象名50协作图组成要素2.消息在协作图中,可以通过一系列的消息来描述系统的动态行为。在协作图中,消息使用带有标签的箭头来表示,它附在连接发送者和接收者的链上。链连接了发送者和接收者,箭头的指向便是接收者。每个消息包括一个顺序号以及消息的名称。消息的名称可以是一个方法,包含一个名字和参数表、可选的返回值表。消息的各种实现的细节也可以被

温馨提示

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

最新文档

评论

0/150

提交评论