面向对象的设计建模.ppt
《面向对象的设计建模.ppt》由会员分享,可在线阅读,更多相关《面向对象的设计建模.ppt(69页珍藏版)》请在三一办公上搜索。
1、本章学习导航,本章学习导航,本章学习要点,动态建模概述 状态图及其绘制 活动图及其绘制 活动图拾遗 顺序图及其绘制 协作图及其绘制 顺序图拾遗,任务1,了解动态模型的基本功能和基本组成。,任务目标,分组教学法 资料查询法 案例教学法,教学方法,8.1 动态建模概述,动态建模概述,所有系统(包括软件系统)均可表示为两个方面:静态结构和动态行为。UML提供了状态图、活动图、顺序图和协作图来描述系统的结构和行为。状态图、活动图、顺序图和协作图则适合于描述系统中的对象在执行期间不同的时间点是如何动态交互的。一组对象为了实现一些功能而进行通信称之为交互,可以通过状态图、活动图、顺序图和协作图来描述系统的
2、动态行为。,任务2,了解状态图的基本功能和绘制方法,并绘制员工下班回家的状态图。,任务目标,分组教学法 资料查询法 案例教学法,教学方法,8.2.1 状态图概述,状态图概述,状态图(Statechart Diagram)是软件系统进行面向对象分析的一种常用工具,它通过建立对象的生存周期模型(状态)来描述对象随时间变化的动态行为。状态图主要用来描述对象、子系统、系统的生命周期。通过状态图可以了解到一个对象所能到达的所有状态以及对象收到的事件(收到消息、超时、错误和条件满足等)对对象状态的影响等。并不是对所有的对象都创建状态图,只有当行为的改变和状态有关时才创建状态图。与类图、对象图和用例图不同,
3、状态图只能对单个对象建立模型,而类图、对象图和用例图可以对一个系统或一组类建立模型。,8.2.2 状态图组成,状态图组成,状态图是由表示状态的节点和表示状态之间转换的带箭头的直线组成。若干个状态由一条或者多条转换箭头连接,状态的转换由事件触发。,8.2.2 状态图组成,状态图组成,1起点和终点 起点代表状态图的一个初始状态,此状态代表状态图的起始位置。起点只能作为转换的源,而不是作为转换的目标。起点在一个状态图中只允许有一个。终点代表状态图的最后状态,此状态代表状态图的终止位置。终点只能作为转换的目标,而不是作为转换的源。终点在一个状态图中可以有一个或多个,表示一个活动图的最后和终结状态。,8
4、.2.2 状态图组成,状态图组成,2.状态状态是指在对象的生命期中的一个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件。,8.2.2 状态图组成,员工下班回家,在员工下班回家的过程中,经历的状态包括:到下班时间了,收拾东西准备回家(不考虑加班);开始等待电梯;乘坐电梯到达楼下;(发现没带家里钥匙,上楼拿)乘坐电梯上楼;去公交车站等车;乘公共汽车去菜场;买菜;回到家。,8.2.2 状态图组成,状态的特征,(1)进入/退出动作:对象本身的一个操作。如果在电梯里是一个状态的话,那员工进电梯和出电梯就是状态“在电梯里”的进入/退出动作。(2)内部转换:例如员工在去等电梯的时候发现钥
5、匙没带,此时我们不用在“等电梯”以后,而是在“准备回家”的状态中就去拿钥匙了。虽然整体的状态没有发生变化,但对于对象本身来说,前后是不一样的,一个是有钥匙,一个是没有钥匙。(3)子状态:如果需要进一步描述员工对象在电梯里聊天、打电话等状态时,这些状态就是该对象的“在电梯里”状态的子状态。(4)延迟事件:现在不立即产生的事件,该事件是在一段时间以后才产生的事件。员工必须等待到达17:50的时候,才能下班。,8.2.2 状态图组成,状态图组成,一个状态一般包含三个部分,如图所示。第一部分为状态的名称,如空闲、已付、移动、在菜场等。第二部分为可选的状态变量的变量名和变量值。属性(变量)指的是状态图中
6、类的属性。第三部分为可选的活动表,列出有关的事件和活动。,8.2.2 状态图组成,状态图组成,3.事件事件是对一个在时间和空间上占有一定位置的有意义的事情的规格说明。在状态机中,一个事件是一次激发的产生,激发可以触发一个状态转换。“事件”指的是发生的且引起某些动作执行的事情,即事件表示在某一特定的时间或空间出现的能够引发状态改变的运动变化。,8.2.2 状态图组成,状态图组成,4.转换转换表示当一个特定事件发生或者某些条件满足时,一个源状态下的对象完成一定的动作后将发生状态转变,转向另一个称之为目标状态的状态。当发生转换时,转换进入的状态为活动状态,转换离开的状态变为非活动状态。,8.2.3
7、绘制员工下班回家状态图,绘制状态图,(1)打开工程WebShop.mdl。(2)新建状态图。在视图区域中右键单击“Logical View”节点,依次选择【New】【Statechart Diagram】,默认的状态图的名称为“NewDiagram”,输入新的状态图的名称(如员工下班回家),8.2.3 绘制员工下班回家状态图,绘制状态图,(3)添加状态选择状态图绘图工具栏上的相应按钮,在绘图区域中单击鼠标左键,就可以绘制状态。,8.2.3 绘制员工下班回家状态图,绘制状态图,(4)添加状态之间添加状态转换单击状态图绘制工具栏上的按钮,在状态之间添加转换,由此得到的员式下班回家的状态图及其状态转
8、换,8.2.3 绘制员工下班回家状态图,绘制状态图,(5)设置状态转移事件在不同的状态之间进行转换时,需要指定从一种状态转换到另一种状态的事件。右键单击表示状态转换的箭头,选择【Open Specification】,如图所示。打开状态转换属性设置对话框,在【General】选项卡中输入【Event】中的内容,即可完成状态转移事件的设置,8.2.3 绘制员工下班回家状态图,绘制状态图,(6)添加活动在绘制状态图时,一般情况下需要指定状态的活动。右键单击对应的状态(如:等待电梯),选择【Open Specification】,如图8-11所示。打开状态属性设置对话框,选择【Actions】选项卡
9、,右键单击中间空白区域,选择【Insert】菜单,完成活动的添加。,8.2.3 绘制员工下班回家状态图,绘制状态图,(6)调整大小和位置最后,遵循美观、实用的原则,调整状态图的大小和位置,得到的员工下班回家的状态图。,8.2.3 绘制员工下班回家状态图,WebShop商品状态图,课堂实践 1,(1)绘制图书管理系统的图书状态图,并对不同状态间的转换进行描述(参照书中的提示)。(2)绘制WebShop电子商城系统的前台购物用户帐号的状态图,并对不同状态间的转换进行描述(参照书中的提示)。(3)阅读如图所示的学生选课系统中的课程状态图,试着对不同状态间的转换进行描述(参照书中的提示)。,操作要求,
10、课堂实践 1,(1)maxstudents表示选修某一门课程的最多人数。(2)students表示选修了某一门课程的人数。(3)after this term表示学期结束,操作提示,任务3,了解活动图的基本功能和绘制方法,并绘制WebShop电子商城系统中前台购物用户购买活动的活动图。,任务目标,分组教学法 案例教学法 SDSPR教学法,教学方法,8.3.1 活动图概述,活动图概述,活动图(Activity Diagram)显示活动动作及其结果,着重描述操作(方法)实现中所完成的工作以及用例实例或对象中的活动。活动是某件事情正在进行的状态,既可以是现实生活中正在进行的某一项工作,也可以是软件系
11、统某个类对象的一个操作。活动图与常用的程序流程图相似,它们的主要区别在于程序流程图一般用来表示串行过程,而活动图则可以用来表示并行过程。,使用活动图主要目的是:描述一个操作执行过程中(操作实现的实例化)所完成的工作(动作);描述对象内部的工作;显示如何执行一组相关的动作,以及这些动作如何影响它们周围的对象;显示用例的实例是如何执行动作以及如何改变对象状态;说明一次商务活动中的参与者、工作流、组织和对象是如何工作的。,8.3.1 活动图概述,典型活动图,8.3.2 活动图组成,活动图组成,1动作状态动作状态是指执行原子的、不可中断的动作,并在此动作完成后转换到另一个状态。动作状态有如下特点:动作
12、状态是原子的,它是构造活动图的最小单位,无法分解为更小的部分;动作状态是不可中断的,它一旦运行就不能中断,一直运行到结束;动作状态是瞬时的行为,它所占用的处理时间极短,有时甚至可以忽略;动作状态有入转换,入转换可以是动作流,也可以是对象流。动作状态至少有一条出转换,这条转换以内部动作的完成为起点,与外部事件无关;动作状态与状态图中的状态不同,它不能有入口动作和出口动作,也不能有内部转移;动作状态允许多处出现在同一活动图中。,8.3.2 活动图组成,活动图组成,2活动状态活动状态用于表达状态机中的非原子的运行。活动状态有如下特点:活动状态可以分解成其他子活动或动作状态,由于它是一组不可中断的动作
13、或操作的组合,所以可以被中断;活动状态的内部活动可以用另一个活动图来表示;活动状态可以有入口动作和出口动作,也可以有内部转移;动作状态是活动状态的一个特例,如果某一个活动状态只包括一个动作,那么它就是一个动作状态。,8.3.2 活动图组成,活动图组成,3动作流:动作流是指所有动作状态之间的转换。4.分支与合并分支是软件系统流程中很常见的一种逻辑,它一般用来表示对象所具有的条件行为。合并包括两个带条件的入转换和一个出转换(即两个入口和一个出口),用来表示从对应的分支开始的条件行为的结束。,8.3.2 活动图组成,活动图组成,5.分叉与汇合 分叉用于将动作流分为两个或多个并发运行的分支 汇合则用于
14、将不同的分支汇聚一起,8.3.2 活动图组成,活动图组成,6泳道泳道的本义是用来分隔游泳池的,以保证不同的选手可以在指定的区域中进行比赛,而不会互相干扰。,8.3.2 活动图组成,活动图组成,7对象流对象可以在活动图中显示,表示动作状态或者活动状态与对象之间的依赖关系。对象可以作为动作的输入或输出,或简单地表示指定动作对对象的影响。对象用矩形符号来表示,在矩形的内部有对象名或类名。对象流用带有箭头的虚线表示。对象流中的对象有如下特点:一个对象可以由多个动作操纵;一个动作输出的对象可以作为另一个动作输入的对象;同一个对象可以多次出现在活动图中,每一次出现表明该对象正处于对象生存期的不同时间点。,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 设计 建模

链接地址:https://www.31ppt.com/p-6442739.html