新软件建模技术2_设计.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
分析阶段的总结 系统开发的分析阶段强调对需求、概念和操作的理解。这个阶段的调查和分析的焦点是要找出问题是什么---概念是什么、过程是什么,等等。 6设计阶段的开始 在这个阶段中,将开发出一个基于面向对象的系统的逻辑解决方案。这个解决方案的核心是要建立交互图(interaction diagram),它能够展示为了满足系统需求各个对象相互之间如何进行通信。 在交互图建立之后,接着要建立设计类图(design class diagram),它对要实现的软件类(和接口)的定义进行总结。 6.1描述真实用例 真实用例能够展示出用例是如何具体设计实现的。 创建真实用例是一个开发周期的设计阶段中最初要进行的活动之一。创建真实用例要以前面已经建立好的基本用例为基础。 真实用例描述了用例的真实的或实际的设计情况,要涉及到具体的输入输出技术和系统的整体实现等方面(如图形窗口的描述以及底层的交互等) 6.2交互图 交互图(interaction diagram),展示出多个对象之间如何通过消息传递来协作完成任务。这些消息交互的出发点是为了满足操作契约中的后置条件。 UML中定义了2中交互图,两者都能够表达相似或完全相同的消息交互: 1)协作图 2)顺序图 6.3建立协作图 1)在当前的开发周期中,为每个要开发的系统操作建立一个单独的图,其中每个系统操作消息都作为这个单独的图的其始消息。 2)如果这样绘制的图太复杂,那么将这个大图分成若干个小图 3)使用操作契约和契约的后置条件以及用例描述文档作为起点来设计一个系统。这个系统是为完成任务而进行交互的各个对象的集合。 6.4协作图的基本表示法 -类和实例的表示法 在一个交互图中展示一个类的实例的时候,使用类的图框,但是类的名字要加下划线。除此之外,在一个协作图中,类名称之前总带一个分号。 6.5链的表示法 链是两个实例之间的连接路径,它表明在两个实例之间具有某种形式的可见性联系和导航关系。 6.6消息的表示法 在对象之间传递的消息用一个带有标记箭头的链线来表示。一个链线上可以承载任何数量的消息流动。每个消息上带有一个顺序号来表示在当前的控制线程下,消息的传递顺序。 6.7参数的表示法 消息所带的参数用圆括号括起来,跟在消息名后。参数的类型可以写在参数后也可以不写。 6.8返回值的表示法 消息名后面可以写上返回值的变量名和一个赋值符号(“:=”)。返回值的类型是可选的。 6.9传送到“self”或“this”的消息表示法 一个对象可以向自身发送一个消息。用一个指向自身的链来表示,所发送的消息在这个链上流动。 6.9迭代的表示法 迭代可以通过在消息序号上附带一个‘*’来表示。这样的表示法说明消息在一个循环中反复的被发送给接收者。 为了表示在同一个迭代子句中要发送多个不同名的消息,在每个消息上都要加上迭代子句。 6.10职责分配模式 -职责和方法 职责(responsibility):一个类或类型的契约或者义务。职责与对象在行为上的义务密切相关。 职责基本上可以分为两类(做型、知道型) 6.11“知道”(knowing)型职责 知道自己的私有的、封装了的数据 知道与自己密切相关联的对象信息 知道自己派生出来或计算出来的事物 6.12做型职责 自己完成某件任务 发起其他对象执行动作 控制和协调其他对象类的活动 在面向对象的设计中,职责是分配给对象的。 将职责转换为对应类的方法要受到职责粒度的影响。 职责的履行是通过方法来实现的。实现职责的方法要么是一个单独起作用的方法,要么是与其他方法和对象进行合作的方法。 6.13职责和交互图 在UML制品中,通常是在建立交互图这个背景之下来考虑对象职责分配(通过方法来实现)。 6.14专家模式 将一个职责分配给信息专家—掌握了为履行职责所必须的信息的类 优点: 1)封装能够得以维持,因为对象只使用他们自己所包含的信息来完成任务。封装支持低耦合度(low couling),低耦合度会提高系统的健壮性和可维护性 2)系统行为只分布在具有所需信息的类中,这样能够使类具有聚合度高的“轻量级”类定义,这样定义的类容易被理解也容易被维护。支持高聚合度(high cohesion) 6.15创建者模式 将创建一个类A 的实例的职责指派给类B的实例,如果下列条件满足的话: B聚集了A对象 B包含了A对象 B记录了A对象的实例 B要经常使用A对象 当A的实例被创建时,B具有传递给A的初始化数据(也就是说B是创建 A的实例这项任务的信息专家。)? 那么B是A对象的创建者。 6.16低耦合度原则 在分配一个职责时要保持低耦合度 ?耦合度(coupling)是一个类与其他类关联、知道其他类的信息或者依赖其他类的强弱程度。

文档评论(0)

PPT精品 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档