- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
状态图
动态建模
系统的动态行为是指对象是如何通过通信来进行协作的,以及系统中的对象是如何在系统的生命周期内改变状态的。
交互(Interaction):为产生某种功能而在一组对象之间进行的通信过程。
描述交互的动态图:
· 状态图(State Diagram):可以描述一个对象在其生命周期中拥有哪些状态,该对象在这些状态下的行为,以及什么样的事件会导致状态发生改变。
· 交互图(Interaction Diagram):可以描述对象之间是如何进行交互和通信的。包括顺序图(Sequence Diagram)、协作图(Communication Diagram)。其中,顺序图和协作图都可以显示交互。但是顺序图的焦点在时间上, 而通信图的焦点在空间上。
· 活动图(Activity Diagram):是另外一种显示交互的方法,但是活动图的主要焦点是工作。
4.1 对象之间的交互
两个对象之间的交互是通过一个对象向另一个对象发送消息来实现的。
消息的类型:
· 简单消息:一个平直的控制流。简单消息显示了控制是如何从一个对象传递到另一个对象的,这个过程中并没有描述任何有关对象之间通信的细节信息。
· 同步消息:一个嵌套的控制流,一般是作为操作调用来实现的。只有在处理该消息的操作结束之后,调用者才能恢复继续执行。
· 异步消息:异步的控制流。对象之间的异步消息表明了不等待语义;发送者不必等待该消息处理完就可以继续执行。
4.2 状态图
4.2.1 状态和转换
⒈ 状态和状态转换的概念
一个对象的状态是该对象在此之前所执行的所有活动的结果,通常是由对象的属性值所决定的,并且会链接到其他对象。
有关对象状态的例子:
· 货物(对象)已经付款(状态);
· 小轿车(对象)静止不动(状态);
· 机器的引擎(对象)在运转(状态);
· Jim(对象)担任销售员的角色(状态);
· Kate(对象)结婚了(状态)。
当一个事件发生时,对象就可能会改变状态。
对象的动态行为可以表现在两个方面:交互和内部状态的变化。
⒉ 状态图的组成部分
· 起始点(初态)(Initial State)
· 结束点(终态)(Final State)
· 状态(State)
· 状态转换(State Transition)
· 导致状态发生转换的事件:
状态转换激发(Fire)或状态转换被触发(Triggered)
货物对象的状态图
电梯对象的状态图
⒊ 状态的组成部分
状态的三个部分:状态名、状态变量和活动
⒋ 活动组成
通过活动可以列出响应各种事件的行为。
UML保留了三种标准事件:entry, exit和do。
活动组成的形式语法(Formal Syntax)是:
event-name argument-list ‘/’action-expression
一个名为login的状态
5 状态转换
不带显式事件的状态转换
用于确定一个状态转换的形式语法是:
event-signature ‘[’guard-condition‘]’‘/’ action-expression ‘^’send-clause
其中,event-signature的语法定义为:
event-name‘(’parameter‘,’, ...‘)’
并且send-clause的语法是:destination-expression‘.’destination-event-name‘(’argument‘,’…‘)’
Event-Signature:事件签名,包括一个事件名(event-name)和相关的参数。
参数列表的语法是:
Parameter-name‘:’type-expression, Parameter-name‘:’type-expression …
状态转换上所附的事件带有一个参数floor
带event-signature的状态转换的例子如下:
draw (f : Figure , c : Color )
redraw ( )
redraw
print ( invoice )
Guard-Condition(保护条件)
guard-condition:[timer = time-out]
带一个guard-condition的状态转换的例子如下:
[ t = 15 sec ]
[ number of invoices n ]
withdrawal ( amount ) [ balance =
您可能关注的文档
最近下载
- 【《家庭养育环境评价探究的国内外文献综述3000字》】 .docx VIP
- 一(上)数学必考:100道看图列式+应用题.pdf VIP
- 贵州财经大学 汉语写作与百科知识A卷 2017年考研专业课真题.pdf VIP
- 【家庭养育环境评价探析的国内外文献综述3000字】.docx VIP
- 苏教版(2019) 选择性必修1 课时7 逻辑电路设计(选学) 课件.pptx VIP
- 【GB_T51455-2023】 城镇燃气输配工程施工及验收规范.docx VIP
- 新项目方法验证能力确认报告(固定污染源排放烟气黑度的测定 林格曼烟气黑度图法HJT 398-2007)展示版.pdf VIP
- 县级干部党校培训个人总结.docx VIP
- 《黑白装饰画课件》教学课件.pptx VIP
- 苏教版(2019) 选择性必修1 课时3 两种组合逻辑门——与非门、或非门 课件.pptx VIP
文档评论(0)