1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
交互图

* 《UML分析与设计》 交互图(上) 授课人:唐一韬 阅读通信图 通信图主要元素 链:连接器,是用来表示对象之间的语义连接,一般而言,链是关联的一个实例(包括《association》、《self》、《global》、《local》等)。不过在UML 2中已经开始弱化它们的使用,因此除非必要,无需过多地考虑它们 消息编号:消息的编号有两种,一种是无层次编号,它简单直观;另一种是嵌套的编号,它更易于表示消息的包含关系 迭代标记:用*号表示,表示循环,通常还有迭代表达式,用来说明循环规则 通信图主要元素 监护条件:通常是用来表示分支的,也就是表示“如果条件为true,才发送消息” 在通信图中使用监护条件一定要有所限制,通常应只列出主要的监护条件,否则会影响其阅读。如果需要,尽可能还是通过顺序图来表示 OUTLINE 交互与交互图 如何阅读交互图 如何绘制交互图 交互图应用说明 定时图 本章小结 准备工作 首先根据自己的喜好和实际的表现需要来选择顺序图或通信图。不过由于它们在语义上是等价的,因此可以绘制出一种,再通过建模工具来自动转换成另一种图 分析模型中的交互图彻重于分析类的职责分配和交互流程,而设计模型中的交互图则彻重于设计类的引入和实际方法的调用与流程控制 先确定参与交互的对象、对象之间的关系(通信图),然后确定对象间的消息交互流程(用同步调用、异步消息、返回消息表示),并利用交互片断(顺序图)或迭代标记及监护条件来表示循环和分支结构 鲁棒分析 Robustness分析不是UML模型的一部分,它是一个强大的草图工具,是介于分析和设计之间的一种有效工具 在Robustness分析中,将应用边界类、控制类和实体类 从一个用例中抽取三类对象的方法: 鲁棒分析—从事件流开始 鲁棒分析—寻找边界对象 图书管理员向系统发出“新增书籍信息”请求——主窗口、“新增书籍信息”按钮 系统要求图书管理员选择要新增的书籍是计算机类还是非计算机类——书籍类别列表框。 图书管理员做出选择 后,显示相应界面, 让图书管理员输入信 息,并自动根据书号 规则生成书号—— “新书信息录入”窗口 及辅助的“提交”按钮 鲁棒分析—寻找控制对象和实体对象 根据事件流中的步骤5,以及扩展路径的描述,就可以在原图上增加相应的控制对象,得到更进一步的Robustness分析图 构建交互模型 OUTLINE 交互与交互图 如何阅读交互图 如何绘制交互图 交互图应用说明 定时图 本章小结 分析阶段的交互模型 工作方法:针对用例图中的每个用例,并结合领域模型中的类,寻找分析类,并通过Robustness分析来理清业务逻辑流程,再用交互模型将其确定下来 注意:主要关注于区分出边界对象、实体对象和控制对象,暂时不要考虑其具体的实现类 说明:对于较复杂的用例,可以按上述的流程逐渐地进行分析、设计、实施;但对于比较简单的用例而言,也是可以直接从用例描述中导出设计阶段交互模型 分析阶段的交互模型之后 引入基础类:包括基础框架、程序库等 质量评审: -- 低耦合:耦合性是指两个类之间的连接强度 -- 高内聚:内聚性是指一个类的属性与方法高度集成 -- 效率:解决方案的执行效率是否满足系统的需求 -- 完整性:是指在任何环境下都可以重复使用 -- 简单性:类越简单,出错的可能性越小,系统的灵活 性和可维护性也越好 优化类设计:设计模式与重构 设计阶段的交互模型 交互建模要点 在分析模型的基础上引入基础类、优化类设计之后,必然会获得新的类模型(设计模型),因此就可能需要基于新引入的“设计类”来更新交互模型,以获得与实际代码相吻合的模型 给出一个能表达其目的的名称;通过修改元素的布局,尽量避免交叉线的存在;可以通过注解和颜色作为可视化提示,以突出图形中的重要特性;尽量少用分支,对于分支很多的场景,可以考虑用活动图来补充 OUTLINE 交互与交互图 如何阅读交互图 如何绘制交互图 交互图应用说明 定时图 本章小结 定时图与顺序图的区别 坐标轴交换了位置,改为从左到右来表示时间的推移 用生命线的“凹下凸起”来表示状态的变化,每个水平位置代表一种不同的状态,状态的顺序可以有意义、也可以没有意义 生命线可以跟在一根 线后面,在这根线上 显示些不同的状态值 可显示一个度量时间 值的标尺,用刻度表 示时间间隔 *

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档