欢迎来到天天文库
浏览记录
ID:39622755
大小:3.94 MB
页数:20页
时间:2019-07-07
《系统顺序图和操作契约》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、面向对象分析与设计绘制顺序图叶文来1Intheory,thereisnodifferencebetweentheoryandpractice.But,inpractice,thereis.JanL.A.vandeSnepscheut23系统顺序图(SystemSequenceDiagrams)描述与系统相关的输入和输出事件,以快速获得系统边界责任。针对用例的一个特定场景系统被视为黑盒SSD展示了直接与系统交互的外部参与者、系统及外部事件使用系统的过程UML没有系统顺序图,只有顺序图。(这是过渡制品)4系统顺序图P128系统顺序图目的:
2、确定系统事件描述与系统相关的输入和输出事件,以快速获得系统边界责任。为用例场景创建系统顺序图进而分析系统需要实现的系统操作,为编写操作规约打基础56系统顺序图对于用例的一个特定场景,外部参与者产生的与系统的交互的事件。系统视为黑盒,描述系统做什么,无需解释如何做。系统顺序图的好处明确外部对系统操作的事件(系统事件)从高层次分析系统行为,容易入手对主成功场景,频繁发生或复杂的场景绘制SSD7系统顺序图的目的主要捕捉系统事件系统需要处理和响应的事件类型有:参与者的外部事件时间事件错误或异常针对用例中一个场景考察系统顺序图使用操作契约详细描
3、述系统事件8处理销售示例P1299系统事件的命名事件意图的抽象以动词开始,明确事件是命令或请求如:增加、输入、结束、产生系统顺序图中出现有数据元素应放入词汇表中,在词汇表中详细描述为复杂的场景建立系统顺序图不用为所有场景创建SSD10Monopoly模拟游戏场景11操作契约目的定义系统操作为系统操作创建契约使用前置和后置条件的形式,描述领域模型里对象的详细变化围绕领域模型(过渡制品)12操作契约的编写操作契约更为详细和精确的描述领域内对象的变化针对一个系统操作,分析领域模型内的对象变化(实为对待这一系统操作的内部实现过程)13操作:e
4、nterItme(itemID,quantity)交叉引用:处理销售前置条件:正在进行的销售后置条件:创建saleLineItem的实例slisli与当前sale关联sli.quantitiy赋值为quantity基于itemId的匹配,将sli关联到ProductDesc操作契约P135关键元素是后置条件SSD中展示系统操作14操作:操作名称和参数交叉引用:发生此操作的用例前置条件:执行操作之前,领域模型的状态后置条件:完成后,领域模型的状态处理销售的系统顺序图15后置条件不是操作过程中执行的活动是对领域模型对象的观察结果,希望操作
5、完成后达到的效果着重关注后置条件创建或删除实例属性值的变化形成或消除关联后置条件检测操作的正确与否并不描述如何实现,强调产生结果16示例:enterItem后置条件创建或删除实例输入商品ID和数量后,创建SalesLineItem实例属性修改由商品数量,设置SalesLineItem的数量属性形成或消除关联新的SalesLineItem与Sale关联,并与ProductDescription关联17准则在考虑操作契约时,发现新的概念类、属性或关联,需要对领域模型进行改进在需要时编写契约对SSD中复杂的系统操作构造契约也可以使用OCL表
6、示18操作契约实例P13919操作:makeNewSale()交叉引用:前置条件:后置条件:创建了Sale实例,关联到Register,初始化Sale实例操作:enterItem(itemID,quantity)交叉引用:前置条件:后置条件:根据itemID获取ProductDescription,由此创建了SaleLineItem实例,关联到SalePOS部分领域模型20
此文档下载收益归作者所有