免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: 一无所有
打印 上一主题 下一主题

软件建模第十篇:交互与交互图 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2002-11-21 15:16 |只看该作者

软件建模第十篇:交互与交互图

图4.7 序列图、对象生存线、控制焦点

论坛徽章:
0
12 [报告]
发表于 2002-11-21 15:19 |只看该作者

软件建模第十篇:交互与交互图

动作(Action):当一个对象收到了消息后,此对象把消息当做执行某种动作的命令。在UML里,一个动作(Action)被定义为动作是一系列的可执行的元计算(atomic computation)的执行,这些元计算的执行可导致系统状态的变化或某一值的返回。函数的执行就是动作的典型的例子。动作有明确的开始时刻和终止时刻。在动作的执行过程中,会导致其它一系列的消息的顺序发送。一个典型的例子是:函数调用其它函数。控制焦点在UML里,由消息引发的动作的执行过程被描述为控制焦点。定义:控制焦点代表一个对象直接地或通过一个子过程间接地执行一个动作的那段时间。绘制:它由位于对象生存线上的一个窄长方形代表控制焦点长方形的顶端代表动作的开始时刻,底端代表动作的结束时刻。控制焦点可以理解为是C语言中一对花括弧(“{}”)内的内容。控制焦点的嵌套:动作的执行过程可以引起其它消息的发送,从而对应子动作的执行就产生了控制焦点的嵌套。控制焦点的嵌套的表示:另一个控制焦点向右叠放在父控制焦点上,子控制焦点中消息发送的顺序号可以用过程顺序号表示(图4.7)。对象生存线和控制焦点是序列图所特有的,它不在协同图里出现。

论坛徽章:
0
13 [报告]
发表于 2002-11-21 15:22 |只看该作者

软件建模第十篇:交互与交互图

图4.8 协同图、消息、连接
协同图是交互图的另一种表现形式。它在语义上和交互图是等价的(图4.
协同图强调的是参加一个交互的各对象的组织。协同图的构成:对象、连接及在此连接上传递的消息。
  连接(link)的定义:在UML里,连接(link)被定义为对象之间的语义联系。连接是类之间的关联关系实例。在序列图中,两个对象之间有消息传递,意味这它们之间在语义上存在着联系,所以它们的对象之间存在着连接关系,反之,只要对象之间存在着连接关系就可以在它们之间发送消息。
  连接的表示:在协同图上,连接用对象之间相连的直线来表示。连接可以有名字,它标在表示连接的直线上。如果在有消息借助此连接关系传递,则把消息的图符沿直线方向绘制,消息的箭头指向接受消息的对象。由于仅从图符的绘制上无法在协同图上读出消息发送的顺序,所以通常在消息上保留对应的序列图的消息顺序号。
  连接的通路(path):连接表明两个对象之间有语义连接,也意味着两对象之间是可以互相访问的,但具体是通过什么方式使两个对象成为互相可见?两对象之间的连接可以有多种形式。例如:通过类的成员变量使对象可见使两对象位于程序的全局使它们互相可见。使两对象位于局部作用域使它们互相可见。UML为连接关系指定了四种特定的变体:来描述对象连接的方式,这四种变体统一称为通路(path)。通路用于分别指定位于连接两端的对象的可见方式。

论坛徽章:
0
14 [报告]
发表于 2002-11-21 15:25 |只看该作者

软件建模第十篇:交互与交互图

通路的四种形式:
1. Field: 对像能被另一个对象看见,是由于此对象是另一个对象的一部分。例如,如果一个对象是另一个对象的成员变量,那么另一个对象肯定可以访问此对象。Filed路径有时又被称为自引用(self)路径。
2.Parameter(参数):对象能被另一个对象看见, 是因为此对象是另一对象的某一操作的参数。
3.Local(局部):此对象能被另一对象看见,是因为此对象存在于另一对象的局部作用域中。例如:某一对象是另一对象的某个函数的局部变量,就可以用此路径描述。
4.Global(全局):此对象能被另一对象看见,是因为此对象存在于全局作用域中。
和消息顺序号不同,通路和连接只能在协同图里描绘。

论坛徽章:
0
15 [报告]
发表于 2002-11-21 15:27 |只看该作者

软件建模第十篇:交互与交互图

[这个贴子最后由一无所有在 2002/11/21 03:29pm 编辑]

  交互图是连接系统边界和系统内部的重要桥梁,当一个待建造的系统的需求分析由用例图描述清楚之后,交互图决定了系统的动态行为,以及为实现此动态行为系统应具备的合理的结构。在绘制交互图时,先描绘相应的序列图,根据已有的用例图绘制。绘制序列图时, 应
考虑软件系统的边界。考虑系统作用者和系统的交互,考虑系统为实现这交互内部应设置的对象及其职责。在设置对象时应顾及软件结构的合理性、软件部件的可重用性、可维护性、可移植性。然后,在序列图上,用对象之间的消息,定义各对象之间为实现系统的功能而进行的交互。在描述消息序列时使用控制焦点来突出为实现特定的动作所需的消息子序列,动作的嵌套通过控制焦点的嵌套来描述,嵌套的消息序列的顺序使用过程顺序号来标识。序列图设计完成后,把它转换为协同图以进一步考察软件的组织结构,为下一步设计类图作好准备。
  绘制交互图时应注意图的组织。对于复杂的问题,依照分治的原则用多张交互图分别描述例如:一个用例的多个场景分别表示的多个事件流程,可以用不同的交互图描述。要充分利用UML的模型包的机制,标注的机制使问题的描述有合理明晰的结构。
  绘制序列图时要突出问题的重点,省略对描述问题无关紧要的细节问题,应有节制地在序列图上描述复杂的分支循环结构,无关紧要的分支循环可留到程序设计时解决重要而复杂的分支循环,可用活动图来描述。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
16 [报告]
发表于 2002-11-22 08:51 |只看该作者

软件建模第十篇:交互与交互图

好贴!我加入精华了

论坛徽章:
0
17 [报告]
发表于 2003-05-20 09:37 |只看该作者

软件建模第十篇:交互与交互图

前九章哪去了?

论坛徽章:
0
18 [报告]
发表于 2004-05-09 12:18 |只看该作者

软件建模第十篇:交互与交互图

原帖由 "一无所有" 发表:

(图4.2)

我是初来者,也是初学者,不要厌烦哦!
请问如何看到您的那些uml图呢?

论坛徽章:
0
19 [报告]
发表于 2009-07-14 14:45 |只看该作者
good article!

论坛徽章:
0
20 [报告]
发表于 2009-11-25 09:25 |只看该作者

没有图啊

怎么我看不到图呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP