中职UML与Rose建模应用子情境2.4课件_第1页
中职UML与Rose建模应用子情境2.4课件_第2页
中职UML与Rose建模应用子情境2.4课件_第3页
中职UML与Rose建模应用子情境2.4课件_第4页
中职UML与Rose建模应用子情境2.4课件_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

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

文档简介

1、(中职)UML与Rose建模应用子情境2.4ppt课件学习情境2:桌面系统建模ATM机UML及Rose建模应用子情境2.4 动态结构建模子情境描述 子情景2.1系统需求和2.2用例分别得到了需求分析表和用例图。现在需要对ATM机系统中与对象操作时间和顺序有关的系统特征、影响更改的事件、事件的序列、事件的组织进行分析,并建立动态结构建模,包括:确定系统操作顺序,绘制系统的顺序图。确定系统状态,绘制系统的状态图。确定活动,绘制系统的活动图。确定协作情况,绘制系统的协作图。 任务1:建立顺序图任务描述 储户到ATM机上取款,其操作为:插卡、输入密码、查询余额、输入取款数额、出钞、取钞、出卡、取卡等。

2、根据以下操作绘制出一个ATM机取款的顺序图。 用例图描述了系统必须做什么;类图描述了组成系统的结构各部分的各种类型。这缺少一部分内容,因为单凭用 例和类还无法描述系统实际上将如何运作。为了满足这方面的要求,就需要使用交互图,特别是顺序图。顺序图描述了对象之间传递消息的时间顺序,它用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或状态机种引起转换的触发事件。它着重显示了参与相互作用的对象和所交换消息的顺序。相关知识 顺序图主要有4个标记符:对象、生命线、消息和激活。在UML中,顺序图用一个二维图描述系统中各个对象之间的交互关系。其中,纵轴是时间轴,时间沿竖线向下

3、延伸。横轴代表了参与相互作用的对象。当对象存在时,生命线由一条虚线表示;当对象的过程处于激活状态时,生命线是一双道线。消息用从一个对象到另一个对象生命线的箭头表示。箭头以事件顺序在图中从上到下排列。图2-40 系统管理员添加图书的顺序图 如图2-40所示。从该图容易看出,顺序图清楚地描述了随时间顺序推移的控制流轨迹。 相关知识 顺序图中的每个对象显示在单独的列里。一个对象标识符放置在代表生成这个对象的消息的箭头的末端,其垂直位置标识这个对象第一次生成的时间。将对象置于顺序图的顶部意味着在开始的时候对象就已经存在。与此相反,如果对象的位置不再顶部,那么标识对象是在对象的交互过程中,由其他对象创建

4、。顺序图中对象的标记符如图2-42所示。图2-41 对象的标记符相关知识 对象在垂直方向拖出的长虚线称为生命线,生命线是一个时间线,从顺序图的顶部一直延续到底部,所用的时间取决于交互的持续长度。生命线表现了对象存在的时段。需要注意的是,一个对象的生命线实际上可以代表一组对象,例如,某个应用、子系统或痛类型对象的集合。相关知识 消息是用来说明顺序图中不同活动对象之间的通信,因此,消息可以激发某个操作、创建或解构某对象。在顺序图中,消息是由从一个对象的生命线指向另一个对象的生命线的直线箭头来表示,箭头上面还可以表明要发送的消息名。在各对象间,消息发送的次序由它们在垂直轴上的相对位置决定。 在UML

5、中,有4种类型的消息:同步消息、异步消息、简单消息和返回消息。这4种消息分别用4种箭头符号表示,如图2-43所示。图2-42 消息的类型相关知识 当一条消息被传递给对象的时候,它会触发该对象的某个行为,这时就说该对象被激活了。在生命线上,激活用一个细长的矩形框表示。如图2-44所示,矩形本身被称为对象的控制期,控制期说明对象正在执行某个动作。图2-43 对象间的消息传递相关知识图2-44 新建顺序图新建顺序图步骤1 在浏览窗口中右键单击“Logical View”,在弹出的菜单上选择菜单项“New”下的“Sequence Diagram”命令,如图2-44所示。 任务实施图2-45 顺序图重命

6、名 如图2-45所示,在顺序图“NewDiagram”上单击鼠标右键,在弹出的菜单上单击“Rename”命令,从键盘输入“ATM顺序”,按回车键后,实现重命名。顺序图重命名步骤2 任务实施图2-46 打开顺序图窗口(a)(b) 在顺序图“ATM顺序”上单击鼠标右键,如图2-46(a)所示,在弹出的菜单上选择“Open”命令,打开如图2-46(b)所示的顺序图窗口。打开顺序图窗口步骤3 任务实施图2-47 新建对象示例(a)(b) 如图2-47 (a) 所示,移动光标指向工具箱中“Object”(对象)工具图标,单击选定“Object”图标,移动光标至顺序图窗口中适当位置,单击鼠标左键,出现如图

7、2-47(b)所示的对象。新建对象步骤4 任务实施重复使用“Object”对象工具新建7个顺序图对象,如图2-48所示。图2-48 顺序图对象 任务实施图2-49 选择“Object Mesage”新建对象消息 如图2-49所示,移动光标指向工具箱中“Object Message”(对象消息)工具图标,单击选定“Object Message”工具图标,移动光标至顺序图窗口中,在左边第一对象下方虚线上按住鼠标左键,向右拖动至第二对象的虚线上,松开鼠标左键,这样就建立了一条对象消息,如图2-50所示。步骤5 任务实施如图2-50,使用对象信息传递工具后的效果图。 图2-50 新建对象消息图2-50

8、 新建对象消息 任务实施 对象命名,双击顺序图窗口中左边第一个对象,弹出如图2-51所示的对话框,在标签“Name”对应的文本框中输入对象名“银行储户” 图2-51 对象命名示例对象命名步骤6 任务实施图2-52 对象命名图2-53 直接命名对象依次双击其它6个对象进行命名,如图2-52所示 【提示】也可以在选定一个对象的基础上,再单击该对象,在矩形区出现光标时进行输入命名。如图2-53所示。 任务实施 如图2-54所示,移动光标指向工具箱中“Text Box”工具图标,单击选定该工具图标。图2-54 选定“Text Box”新建消息提示步骤7 任务实施 移动光标指向对象“银行储户”与“读卡机

9、”之间的消息,单击鼠标左键,如图2-55(a)所示,在光标处输入“插入ATM卡”,如图2-55(b)所示,单击顺序图窗口内空白处,结束输入。 图2-55 新建消息提示(a)(b) 任务实施图2-56 选定“Message to Self”新建对象自身消息 如图2-56所示,移动光标指向工具箱中“Message to Self”(自身消息)工具图标,单击选定该工具图标。步骤8 任务实施图2-57 新建自身消息 移动光标指向对象“客户管理”,在其下方虚线上单击鼠标左键,出现如图2-57所示的自身消息。 【注意】此步骤旨在介绍创建“自身消息”的方法。中间跨度较大,并不能说明实际所需,特此声明。 任务

10、实施图2-58 ATM机顺序图绘制完整的顺序图 参照步骤7、8,请自行完成如图2-58所示的ATM机的顺序图。 步骤9 任务实施 任务2:建立状态图任务描述 储户在ATM机上进行存款/取款。在操作中出现了输入密码、选择服务、存款、取款等状态,根据以上述说的状态,绘制出ATM机的存款/取款的状态图。图2-59 状态对象 状态指对象的生命周期中满足某些条件、执行某些活动或者等待某些事件时的一个条件或情况。状态使用了圆角矩形,中间是状态的名称,名称也可以作为一个标记置于状态机图标上面。除了简单的状态,UML还定义了两种特别的状态,即初始状态和终止状态。初始状态是使用一个填充的圆圈表示,终止状态类似于

11、在初始状态外加一个圆圈,图2-60演示了状态标记符。相关知识图2-62 新建状态图 在浏览窗口中右键单击“Logical View”(逻辑视图),在弹出的菜单上选择菜单项“New”(新建)下的“Statechart Diagram”(状态图)命令,如图2-62所示。新建状态图步骤1 任务实施图2-63 状态图重命名状态图重命名如图2-63所示,在顺序图“NewDiagram”上单击鼠标右键,在弹出的菜单上单击“Rename”命令,从键盘输入“ATM状态”,按回车键后,实现重命名。 步骤2 任务实施图2-64 打开状态图窗口(b) (a)打开状态图窗口在状态图“ATM状态”上单击鼠标右键,如图2

12、-64(a)所示,在弹出的菜单上选择“Open”命令,单击打开如图2-64(b)所示的状态图窗口。步骤3 任务实施 如图2-65(a)所示,移动光标指向工具箱中“Start State”(起始状态)工具图标,单击选定该图标,移动光标至状态图窗口中适当位置,单击鼠标左键,出现如图2-65(b)所示的对象。图2-65 新建起始状态(a)(b)新建起始状态对象步骤4 任务实施 如图2-66(a)所示,移动光标指向工具箱中“Start”(状态)工具图标,单击选定该图标,移动光标至状态图窗口中适当位置,单击鼠标左键,出现名为“NewState”的状态对象,从键盘输入“输入密码”进行重命名,如图2-66(

13、b)所示 。 图2-66 新建状态对象示例(a)(b)新建状态对象步骤5 任务实施 如图2-68(a)所示,移动光标指向工具箱中“End State”(结束状态)工具图标,单击选定该图标,移动光标至状态图窗口中适当位置,单击鼠标左键,如图2-68(b)所示,创建完成。图2-68 创建结束状态对象(a)(b)创建结束状态对象步骤6 任务实施图2-69 新建状态之间转换(a)(b)新建状态之间转换 如图2-69(a)所示,移动光标指向工具箱中“Start Transition”(状态转换)工具图标,单击选定该图标,移动光标指向“起始状态”对象,按住鼠标左键,向右拖动至“输入密码”状态对象,松开鼠标

14、,建立两者之间的转换,如图2-69(b)所示。步骤7 任务实施 如图2-73(a)所示,移动光标指向工具箱中“Transition to Self”(自转换)工具图标,单击选定该图标,移动光标指向“输入密码”状态对象,单击鼠标左键其自转换,如图2-73(b)所示。 图2-73 新建状态自转换(a)(b)新建状态的自转换步骤8 任务实施 如图2-74(a)所示,移动光标指向工具箱中“Text Box”(文本框)工具图标,单击选定该图标,移动光标指向“起始状态”对象与“输入密码”状态对象间的转换上端,单击鼠标左键,在光标处输入文本“插入磁卡”,类似的,在“输入密码”状态对象的自转换上端,新建转换提

15、示,输入文本“密码输入不正确”,如图2-74(b)所示。图2-74 新建转换提示(a)(b)新建转换提示步骤9 任务实施 参照步骤8,如图2-75所示,在状态对象间转换上端加上相应的提示,最终完成状态图的绘制。图2-75 ATM机状态图绘制完整的状态图步骤10 任务实施 任务3:建立活动图任务描述 根据2.3.3的ATM机的存款/取款状态图,加入泳道、分叉、合并等扩展机制,绘制一个细致、详实的ATM机存款/取款活动图。相关知识 1活动 活动(动作状态)是活动图的核心符号,它表示工作流过程中命令的执行或活动的进行。与等待事件发生的一般等待状态不同,活动用于等待计算处理工作的完成。当活动完成后,执

16、行流程转入到活动图的下一个活动。 2状态 状态通常用一个批示系统当前状态的词或短语来标识。状态可以在活动图中为读者 说明转折点的转换,或者用来标记工作流中以后的条件。状态标记符与活动标记符有相似之处。 3转换 一个活动图有很多动作或者活动状态,活动图通常开始于初始状态,然后自动转换到活动图的第一个动作状态,一旦该状态的动作完成后,控制就会不加延迟地转换到下一个动作状态或者活动状态。所有活动之间的转换称为转换。转换不断重复进行,直到碰到一个分支或者终止状态为止。 4判断节点与合并节点 (1)判断节点 判断可以进行简单的真/假测试,并根据测试条件使用转换到达不同的活动或状态。 (2)合并节点 合并

17、将两条路径连接到一起,合并成一条路径。前面使用菱形用途判断,并根据条件转向不同的活动或状态。 相关知识 5分叉和汇合 在前面曾经讲过菱形标记符,它能根据不同条件将控制流分为多个方向,也可以将多个控制流合并成一个路径。图2-76是UML中分叉的标记符 。图2-77显示了连接标记符。 6泳道 为了对活动的职责进行组织而在活动图中将活动分为不同的组,称为泳道。每个泳道代表选定含义的状态职责部分。在活动图中,每个活动只能明确地属于一个泳道,泳道明确地表示了哪些活动是由哪些对象进行的。图2-76分叉标记符 图2-77汇合标记符相关知识新建活动图图2-78(a) 新建活动图步骤1 在浏览窗口中右键单击“L

18、ogical View”(逻辑视图),在弹出的菜单上选择菜单项“New”(新建)下的“Activity Diagram”(活动图)命令,如图2-78(a)所示。 任务实施图2-78(b) 新建活动图 接下来输入文本“ATM活动”对其进行重命名,按回车确认,如图2-78(b)所示。 任务实施图2-79(a) 新建“泳道”示例新建泳道(Swimlane) 步骤2 双击活动图“ATM活动”打开活动图窗口。移动光标指向工具箱中的“Swimlane”(泳道)工具图标,如图2-79(a)所示。 任务实施图2-79(b) 新建“泳道”示例 接下来移动光标至活动图窗口中,单击鼠标左键,如图2-79(b)所示,

19、出现名为“NewSwimlane”的新泳道,输入文本“Customer”进行重命名。 任务实施 移动光标指向工具箱中的“Start State”工具图标,单击选定该图标,移动光标至泳道“Customer”中的适当位置,单击添加“Start State”状态,如图2-81所示。图2-81 添加初始状态在泳道中添加初始状态 步骤3 任务实施在泳道中新建活动 步骤4 如图2-82(a)所示,移动光标指向工具箱中的“Activity”工具图标,单击选定该图标。 图2-82(a) 新建活动示例 任务实施 移动光标至泳道“Customer”中的适当位置,单击创建名为“NewActivity”的活动,输入文

20、本重命名为“Insert card”,如图2-82(b)所示。 图2-82(b) 新建活动示例 任务实施 【提示】参照步骤4,创建活动“Enter pin”、“Enter Amount”及“Authorize”,并创建它们之间的转换(请自行参阅2.3.3节:任务实施中的步骤7),绘制效果如图2-83所示。图2-83 创建活动与转换 任务实施 移动光标指向工具箱中的“Decision”(判断)工具图标,单击选定该图标,移动光标至泳道“Bank”中“Authorize”活动的下端,单击出现“判断”菱形框,然后建立它与“Authorize”、“Enter Amount”活动间的转换,如图2-84所示

21、。图2-84 新建判断节点示例新建判断节点 步骤5 任务实施 【提示】合并节点的创建办法与此类似,参照图2-85所示,可自行绘制。图2-85 合并节点示例 任务实施 在工具箱中单击选定“Horizontal Synchronization(水平同步)”工具图标,移动光标至泳道“Customer”中适当位置单击新建“Horizontal Synchronization”,同样的,在“ATM Machine”泳道中适当位置新建“HorizontalSynchronization”如图2-86所示。图2-86 创建Horizontal Synchronization新建水平同步 步骤6 任务实施 (

22、1)创建分叉:参照图2-86所示,在泳道“Customer”中的“Horizontal Synchronization”、“Take money from slot”活动与泳道“Bank”中的“判断”、“Debit account”活动之间建立转换,即可实现分叉,如图2-87(a)所示。 图2-87(a)分叉创建分叉与合并 步骤7 任务实施 (2)创建合并:参照图2-86所示,分别建立“Take money from slot”活动、“Debit account”活动与泳道“ATM Machine”中的“Horizontal Synchronization”之间的转换,接着建立“Horizon

23、tal Synchronization”与“判断”之间的转换即可实现合并,如图2-87(b)所示。图2-87(b)合并 【提示】参照步骤4-7添加其它所需的活动状态(具体实现可参照图2-89)。 任务实施 最后在泳道“Customer”中添加“End State”(结束状态)(请参照2.3.3节中状态图实施过程完成),如图2-88所示。图2-88 添加“End State” 【注意】在一个活动图中只能有一个开始状态,但可以有一个以上的结束状态。最终创建的完整的活动图如图2-89所示。 任务实施图2-89 ATM活动图 任务实施 任务4:建立协作图任务描述 根据2.3.3的ATM机的存款/取款状

24、态图,加入泳道、分叉、合并等扩展机制,绘制一个细致、详实的ATM机存款/取款活动图。相关知识 协作图(Collaboration Diagram,也叫合作图)是一种交互图(interaction diagram),强调的是发送和接收消息的对象之间的组织结构。一个协作图显示了一系列的对象和在这些对象之间的联系以及对象间发送和接收的消息。对象通常是命名或匿名的类的实例,也可以代表其他事物的实例,例如协作、组件和节点。使用协作图来说明系统的动态情况 图2-90(a) 新建协作图新建协作图 在浏览窗口中右键单击“Logical View”(逻辑视图),在弹出的菜单上选择菜单项“New”(新建)下的“C

25、ollaboration Diagram”(协作图)命令,如图2-90(a)所示。步骤1 任务实施 接下来输入文本“ATM协作”对其进行重命名,按回车确认,如图2-90(b)所示。图2-90(a) 新建协作图 任务实施添加参与者 双击协作图“ATM协作”打开协作图窗口。移动光标指向协作图“ATM用例”中的“NewClass”类,如图 2-91(a)所示。步骤2图2-91(a) 添加参与者对象 任务实施 选定后按住鼠标左键,拖动至协作图窗口中适当位置,松开鼠标,添加名为“NewClass”对象,双击该对象,弹出的如图2-91(b)所示对话框,在标签“Name”对应的文本框中输入文本“主角1”,实

26、现对参与者对象的重命名。 图2-91(b) 添加参与者对象 任务实施图2-92 新建Object(对象)示例新建Object(对象) 单击选定工具箱中“Object”工具图标,移动光标至窗口中适当位置,单击鼠标添加该对象,如图2-92所示,命名为“读卡机”。步骤3 【提示】为实现对象命名,可以在选定对象的前提下,单击该对象,在光标处输入文本。 任务实施图2-93 建立对象链示例(b) (a) 建立对象链 如图2-93(a)所示,在工具箱中单击选定“Object Link”(对象链),移动光标指向对象“主角1”,按住鼠标左键,拖动对象“读卡机”,松开鼠标,建立对象链,如图2-93(b)所示。步骤4 任务实施建立对象链消息 如图2-94(a)所示,在工具箱中单击选定“Link Message”(链消息),移动光标指向对象“主角1”与对象“读卡机”之间的链,单击左键,建立对象链消息,输入消息内容为“插入ATM卡”,如图2-94(b)所示。步骤5 【提示】对象链消息内容的输入可以采取两种方式实现。 方式一:双击链消息“箭头”,在弹出对话框中输入链消息内容; 方式二:在选定“1:”的前提下,单击鼠标,在光标处输入链消息内容。(a) (b) 2-94 建立对象链消息示例 任务实施图2-95 ATM机协作图创建其它对象、链及链消息 参照步骤3-5,完成其它

温馨提示

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

评论

0/150

提交评论