文档详情

chap5系统设计与对象动态交互模型解析.ppt

发布:2017-01-06约8.8千字共65页下载文档
文本预览下载声明
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 总结 UML是一种建模语言,而顺序图、合作图是动态建模机制。 在商业建模阶段,顺序图、合作图可以作为识别对象的一种辅助手段。此时,它们的地位并不明显。 而对于中小型规模的应用程序,顺序图、合作图就显得重要,因为需要在团队中进行沟通;同时,需要指定不同系统、模块之间的交互,这仅仅通过静态机制是无法完成的。 至少要把关键的动态模型画出来,否则设计是不完整的。 Company Logo 总结 先生成类图,而后用顺序图和合作图去验证它。 有书上说,设计师用合作图验证设计的合理性,如果图呈现星形结构说明一些对象负载过重,需重新设计。 Company Logo * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 带约束标记的时序图 约束用分隔符{ }围起。 标记可以是任何类型的,如时间标记和世界约束。 Company Logo 带约束标记的时序图实例 Company Logo 带循环标记的时序图 一个对象向另一个对象连续多次发送同一组消息,称为消息的循环 循环标记用一个矩形框与其包含的一组消息表示。 用[ ]围起的表示停止(或继续)循环的条件,标识在矩形框的底线内侧边上。 可以用一条在发送方竖立的虚线代替方框。 Company Logo 带循环标记的时序图实例 Company Logo 协作图(合作图) 合作图(Collaboration Diagram)用于描述相互合作的对象间的交互关系和链接关系。 虽然顺序图和合作图都用来描述对象间的交互关系,但侧重点不一样。 顺序图着重体现交互的时间顺序 合作图则着重体现交互对象间的静态链接关系。 Company Logo 协作图(合作图) 合作图中对象的外观与顺序图中的一样。如果一个对象在消息的交互中被创建,则可在对象名称之后标以{new}。 类似地,如果一个对象在交互期间被删除,则可在对象名称之后标以{destroy}。 对象间的链接关系类似于类图中的联系(但无多重性标志)。通过在对象间的链接上标志带有消息串的消息(简单、异步或同步消息)来表达对象间的消息传递。 Company Logo 协作图的成分:链接 链接用于表示对象间的各种关系,包括 组成关系的链接(Composition Link) 聚集关系的链接(Aggregation Link) 限定关系的链接(Qualified Link) 导航链接(Navigation Link) 各种链接关系与类图中的定义相同,在链接的端点位置可以显示对象的角色名和模板信息。 Company Logo 协作图实例 Company Logo 协作图实例解释 图中,有 4 个对象类:合同、销售合同、收款单和出库单。 这些对象类之间用实线连接,表示它们之间有关联,关联角色和多重性标志在关联的两端标出。 “:合同”对象类和“:销售合同”对象类之间的关联角色表明销售合同是合同之一;它们之间的多重性是一对多关系。 “:销售合同”对象类与“:收款单”对象类之间的关联角色表明销售合同与收款单之间进行“核对”;它们之间的多重性是一对多关系。 “:销售合同”对象类与“:出库单”对象类之间的关联角色表明销售合同与出库单之间进行“履约核对”;它们之间的多重性也是一对多关系。 “:收款单”对象类与“:出库单”对象类之间的关联角色表明收款单与出库单之间也进行“核对”,核对正确则“提货”;它们之间的多重性是多对多关系。 Company Logo 协作图的成分:消息流 在协作图的链接线上,可以用带有消息串的消息来描述对象间的交互。 消息的箭头指明消息的流动方向。 消息串说明要发送的消息、消息的参数、消息的返回值以及消息的序列号等信息。 Company Logo 协作图中对象的生存期 在协作图的对象框中,可以在{ }内填写文字用来表示该对象的创建或消亡。 对象创建{new},表示该对象在协作期被创建; 对象消亡{destroyed},表示该对象在协作期消亡; 对象创建并消亡{transient},表示该对象在创作期被创建并消亡 Company Logo 一个电梯按钮的协作图 Company Logo 一个电梯按钮的协作图的说明 在该协作图中各个对象之间发送的都是同步消息。协作从一个乘客要求乘电梯时开始,电梯按钮的协作图工作过程如下: “:乘客”:一个电梯“:乘客”压入按钮,向“:按钮”对象发送消息,希望得到电梯。 “:按钮”对象:接收到“:乘客”发送的消息后,向“:电梯控制”对象发送序号为 1 的消息,调用“:电梯控制
显示全部
相似文档