第5章 系统动态分析与交互模型

上传人:马*** 文档编号:243707772 上传时间:2024-09-29 格式:PPT 页数:55 大小:832.50KB
返回 下载 相关 举报
第5章 系统动态分析与交互模型_第1页
第1页 / 共55页
第5章 系统动态分析与交互模型_第2页
第2页 / 共55页
第5章 系统动态分析与交互模型_第3页
第3页 / 共55页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第5章 系统动态分析与交互模型,概述,动态分析,序列图等,需求捕获,用例图,静态分析,类图、对象图,概述,用例模型中对系统的功能,(,用例,),进行了描述,但所,关注的重点是:系统能做什么,(,What,),问题:怎么做,(,How,),才能实现系统的每一种功能?,在静态模型中,确定了所有构成系统的类,并且确定了类之间的关系以及类的属性、方法。,问题:,对象之间通过哪些交互完成功能需求?,为什么要进行动态分析,概述,用于对系统中一组对象群体的行为建模,主要用来表达对象之间的,动作协作,关系,通常用来描述用例的,行为实现,显示,用例实现,/,类操作(方法)涉及的对象和对象间的消息传递情况,动态分析的任务,概述,动态分析模型描述系统的动态行为,显示对象在系统运行期间不同时刻的动态交互,主要是建立系统的,交互图,和,行为图,。,概述,交互图,对象之间的合作在,UML,里被称作交互。,交互体现了对象之间的作用、对象之间的联系。,序列(顺序、时序)图(,Sequence Diagram,),协作图(,Collabboration,Diagram,),概述,行为图,主要用来设计程序的行为。,状态图(,Statechart,Diagram,),活动图(,Activity Diagram,),概述,序列图,协作图,状态图,活动图,动态分析模型包括下列模型图:,概述,序列图,:,注重表达交互作用的时间顺序,没有明确表示对象间的关系。,(,对象之间,的交互或对象外部的交互行为),协作图:,协作图注重表示对象间的关系,时间顺序可以从消息的序号中获得。,状态图:,状态图主要描述系统行为的结果,。,(表示,对象内部,的状态变化),活动图:,活动图主要描述系统动态行为的过程。,序列图的基本概念,序列图,是用于描述对象之间基于时间顺序的动态交互,并将交互建模成对象之间消息交换的图形。,定义:,序列图的基本概念,在,UML,的表示中,序列图将交互关系表示为一个,二维图,。其中,纵轴是时间轴,时间沿竖线向下延伸。横轴代表了在交互中各独立的对象。,UML,表示:,序列图的基本概念,序列图的基本概念,序列图的基本概念,序列图元素,序列图元素,1,.,角色(Actor),系统角色可以是人或者其他系统,、,子系统。,2,.,对象(Object),对象代表时序图中的对象在交互中所扮演的角色,位于时序图顶部和对象代表对象实例,。,序列图中包括:角色、对象、生命线、激活和消息。,序列图元素,3,.,生命线(Lifeline),生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线,对象间 的消息存在于两条虚线间。,序列图元素,4,.,激活(Activation),对象生命线上的窄矩形条被称为激活,激活表示该对象正在执行某个操作。激活条的长短表示操作的时间。一个被激活的对象要么执行自己的代码,要么等待另一个对象的返回结果。,序列图元素,5,.,消息(Message),消息是从一个对象(发送者)向另一个或其他几个对象(接收者)发送信号或由一个对象(发送者或调用者)调用另一个对象(接收者)的操作。,StartUML,中的消息,创建(,CREATE),同步调用,(CALL),异步调用,(SEND),自调用,(CALL),返回,(RETURN),销毁,(DESTROY),序列图创建,序列图创建,实例(借阅图书),实例(借阅图书),用例名称,借阅图书,标识符,UC0001,用例描述,图书管理员代理借阅者办理借阅手续,参与者,图书管理员,前置条件,图书管理员已经登录系统,后置条件,在系统中存储借阅记录,借阅图书用例的描述,实例(借阅图书),基本工作流:,1,)图书管理员输入借阅证信息。,2,)系统验证借阅证的有效性。,3,)图书管理员输入图书信息。,4,)添加新的借阅记录。,5,)显示借阅后的借阅信息。,备选过程,A,:,所借图书数量超过规定,1,)获取借阅者的借书数量。,2,)系统验证借书数量。,3,)创建一个,“MessageBox”,对象以提示借书数量超过规定的错误。,实例(借阅图书),备选过程,B,:,借阅者的借阅证失效,1,)借阅者实例化对象返回借阅者信息错误。,2,)创建一个,“MessageBox”,对象以提示借书借阅证失效的错误。,备选过程,C,:该借阅者有超期的借阅信息,1,)获取借阅者的所有借阅信息。,2,)查询数据库以获取借阅信息的日期、且系统验证借阅期限。,3,)显示超期的图书信息。,4,)创建一个,“MessageBox”,对象以提示借书借阅超期的错误。,实例(借阅图书),基本工作流的序列图,实例(借阅图书),备选过程,A,的序列图,实例(借阅图书),备选过程,B,的序列图,实例(借阅图书),序列图元素,除常用的元素之外,还包括:,组合片段(Combined Fragment),交互操作符(,I,nteraction Operator,),框图(,Frame,),StarUML,组合片段(,Combined Fragment),交互操作类型,名称,说明,seq,弱顺序,有两个或更多操作数片段,涉及同一生命线的消息必须以片段的顺序发生。 如果消息涉及的生命线不同,来自不同片段的消息可能会并行交错。,alt,选择,包含一个片段列表,这些片段包含备选消息序列。 在任何场合下只发生一个序列。,opt,选项,包含一个可能发生或可能不发生的序列。 可以在临界中指定序列发生的条件。,break,中断,如果执行此片段,则放弃序列的其余部分。 可以使用临界来指示发生中断的条件。,par,并行,并行处理。 片段中的事件可以交错。,strict,强顺序,有两个或更多操作数片段,这些片段必须按给定顺序发生。,loop,循环,片段重复一定次数。,组合片段(,Combined Fragment),分支片段,先选择Combined Fragment,将,I,nteraction Operator设置为,alt,在Combined Fragment 中加入,I,nteraction Operator,并写入条件。,组合片段(,Combined Fragment),选项片段,先选择Combined Fragment,将,I,nteraction Operator设置为,opt,,写入选项条件,组合片段(,Combined Fragment),循环片段,先选择Combined Fragment,将,I,nteraction Operator设置为,loop,,可写入循环次数,框图(,Frame,),简化顺序图复杂度,利于任务和模块分割,sd,表示框图定义,ref,表示框图应用,框图可以嵌套,框图的定义,框图的引用,框图的嵌套,StarUML,序列图的参数设置,参数,显示序号,消息格式,NONE,:不显示参数,TYPEONL,:只显示类型,包括返回值,NAMEONLY,:只显示参数名,NAMEANDTYPE,:显示参数名和类型,StarUML,顺序角色图,顺序角色图表示角色概念间的交互。顺序图是面向实例的交互。,协作图,协作图侧重的是描述对象角色之间的关系,在于对象的作用,。,为什么要使用协作图,协作图作为一种在给定语境中描述协作中各个对象之间的组织交互关系的空间组织结构图形化方式,在使用其进行建模时,可以将其作用分为 以下三个方面:,通过描绘对象之间消息的传递情况来反映具体的使用语境的逻辑表达,,,这和序列图的作用类似。,为什么要使用协作图,显示对象及其交互关系的空间组织结构。,协作图显示了在交互过程中 各个对象之间的组织交互关系以及对象彼此之间的链接。,与序列图不同, 协作图显示的是对象之间的关系,并不侧重交互的顺序,它没有将时间作为一个单独的维度,而是使用序列号来确定消息及并发线程的顺序。,为什么要使用协作图,协作图的另外一个作用是表现一个类操作的实现,。,协作图可以说明类操作中使用到的参数、返回值等,(和序列图类似),。当使用协作图表现一个系统行为时,消息编号对应了程序中嵌套调用结构和信号传递过程。,协作图,序列图和,协作图的异同,:,共同点:,都是交互图,描述对象之间的交互,都包含一系列消息集合,不同点:,时序图注重表达交互作用的时间顺序,没有明确表示对象间的关系,。,协作图注重表示对象间的关系,时间顺序可以从消息的序号中获得。,序列图常用于表示方案。,协作图则用于过程的详细设计。,协作图,针对,StarUML,,序列图和,协作图的不同,:,片段的设计,-,协作图无法表达片段设计,如:分支、循环、或引用片段,协作图均无法呈现,不利于片段设计的重用,也无法表达控制流程的设计。,对象连接,-,在序列图中,没有呈现对象之间的连接。但在协作图中,对象之间的连接是焦点所在。所以,通过协作图的对象连接,立即就明白对象之间先建立起连接,然后才能传送消息。,协作图,消息的顺序,-,序列图擅于呈现依序发送消息的情况,即便隐藏了消息的序号,从图上仍旧可以清楚获知由上而下发送消息的交互状况。而隐藏序号之后的协作图,几乎无法阅读。,协作图组成要素,1.,对象,一个协作代表了为了完成某个目标而共同工作的一组对象。对象的角色表示一个或一组对象 在完成目标的过程中所应起的那部分作用。对象是角色所属的类的直接或者间接实例。,在协作图中,不需要关于某个类的所有对象都出现,同一个类的对象在一个协作图中也可能 要充当多个角色。,协作图组成要素,1.,对象,协作图中对象的表示形式也和序列图中的对象的表示方式一样,与序列图不同的是,对象的下部没有一条被成为,“,生命线,”,的垂直虚线,并且对象存在多对象的形式。,未绑定对象所属类名,完全限定对象名,未指定对象名,协作图组成要素,2.,消息,在协作图中,可以通过一系列的消息来描述系统的动态行为。,在协作图中,消息使用带有标签的箭头来表示,它附在连接发送者和接收者的链上。,链连接了发送者和接收者,箭头的指向便是接收者。每个消息包括一个顺序号以及消息的名称。,消息的名称可以是一个方法,包含一个名字和参数表、可选的返回值表。消息的各种实现的细节也可以被加入,如同步与异步等。,协作图组成要素,3.,链,在协作图中的链和对象图中链的概念和表示形式都相同,都是两个或多个对象之间的独立连接,是关联的实例。,在协作图中,链的表示形式为一个或多个相连的线或弧。在自身相关联的类中,链是两端指向同一对象的回路,是一条弧。为了说明对象是如 何与另外一个对象进行连接的,还可以在链的两端添加上提供者和客户端的可见性修饰。,协作图,序列图,协作图,协作图,Star UML,中,时序图和协作图相互转换,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!