已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用例模型:用操作契约增加细节,目标: 系统行为分析 为系统操作创建契约,提纲,1. 系统行为系统顺序图 2. 系统行为契约,系统行为契约,契约是一个文档,描述系统操作对系统状态的影响,属于系统行为建模的一部分。契约强调发生了什么而不是怎么发生。 流程: 用例描述系统顺序图系统操作契约,如何建立契约,针对每一个用例,识别出系统操作; 针对每一个系统操作,书写契约。,系统行为系统操作契约,每一个系统操作都有一个契约,用于描述这个系统操作的行为,System makeNewSale() addLineItem(itemID,quantity) endSale makePayment(amount),契约段,操作: 职责: 交叉引用: 注释: 异常: 前置条件: 后置条件:,契约段(续),操作:操作和参数的名称 职责:对此操作所履行的职责的非形式化描述 交叉引用:会发生此操作的用例 注释:设计注释、算法注释等 异常:发生的例外情况,契约段(续),前置条件:在操作执行前对系统状态所做的假设 后置条件:操作执行完成后,领域模型对象和系统的状态,系统行为契约,契约文本描述中强调操作的职责和后置条件 后置条件:描述了领域模型内对象状态的变化。领域模型状态变化包括创建实例,形成或消除关联以及改变属性 表示的是结果,而不是执行的活动,定义:后置条件,实用的契约后置条件分为以下三类: 1、实例的创建和删除。 2、属性的修改。 3、关联的形成和断开。,领域模型,定义:后置条件(续),断开举例:删除销售商品条目的操作:“选定的SaleLineItem与Sale之间的关联断开了”,契约举例 enterItem (输入商品),名称: enterItem(itemID:ItemID,quantity:integer) 职责:输入一个商品项信息,并把它记录到 销售项中去 注释:要使用快速数据库存储机制 异常:如果itemID无效,系统要显示出错信息,契约举例 enterItem(续),前置条件: 1)系统预先知道各项商品的itemID 2)正在进行销售,契约举例 enterItem(续),后置条件: 创建了SaleLineItem实例sli(创建实例) sli与当前Sale实例间形成关联(形成关联),契约举例 enterItem(续),后置条件(续): sli与ProductSpecification实例发生关联,这个关联建立在两者的itemID匹配的基础上(形成关联) sli的quantity属性被设置(属性修改),定义:后置条件,后置条件的表达要符合概念模型的语境,通过后置条件能发现概念模型遗漏的概念、属性或关联,从而进行补充。,为什么需要后置条件,使用后置条件的优点:是一个很好的用于问题调查的工具,在不需要清楚系统操作如何进行的情况下描述了系统操作的执行所引起的系统状态变化,使能集中精力分析系统发生了什么而不是怎么发生的。如:,编写后置条件,编写后置条件的注意点: 1)陈述要采用过去时态的声明语气和被动语态。来强调系统状态所发生的变化。如:“创建了一个销售” 比“创建一个销售”要好。 2)不用忘记在新创建的对象和已经存在的对象间建立关联。如:enterItem操作中,光生成一个saleLineItem还不够,还需要和sale实例建立连接。,编写后置条件,后置条件应该详细到什么程度? 在分析阶段为系统操作建立完整和精确的后置条件几乎不可能,但是契约确实是分析系统行为的一项强有力工具。 后置条件中的某些内容可能会在设计阶段得到细化和准确化。,领域模型,契约举例 makeNewSale,s被关联到Register(形成关联) s的属性被初始化(修改属性),创建了Sale的实例s(创建实例),Ledger,契约举例 enterItem,名称: enterItem(itemID:ItemID,quantity:integer) 职责: 输入一个商品项信息,并把它记录到销售项中去 注释: 要使用快速数据库存储机制 异常: 如果itemID无效,系统要显示出错信息 前置条件:1)系统预先知道各项商品的itemID 2)正在进行的销售 后置条件:见下页,契约举例 enterItem(后置条件),一个SaleLineItem实例sli被创建(创建实例) sli与s实例间形成关联(形成关联) sli与ProductSpecification实例发生关联,这个关联建立在两者的itemID匹配的基础上(形成关联) sli的quantity属性被设置(属性修改),系统记录单件商品,并显示该商品的描述、价格和累加值。,契约举例 endSale,契约引起的领域模型的变化,在契约endSale中,描述了其后置条件为一次商品销售的商品条目输入完成(即这次销售结束),而表示这个信息的方法是在sale当中使用isComplete属性,此属性是布尔数据类型。,Sale isComplete:Boolean datetime,契约举例 makePayment,将已经完成的销售项添加到商店的历史记录中去,分析阶段总结,针对本开发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026海南省农业信贷担保有限责任公司招聘高层管理人员1人考前冲刺试卷【夺冠】附答案详解
- 2026安徽淮南某国企外包岗位招聘6人笔试题库(网校专用)附答案详解
- 2026江苏宿迁泗洪县招聘公益性岗位工作人员12人备考题库(易错题)附答案详解
- 2026湖南张家界国家农业科技园区服务中心招聘公益性岗位工作人员的1人考前冲刺密卷附参考答案详解(典型题)
- 2026广西百色田东县机关后勤服务中心补充招聘财政供养编外食堂工作人员1人备考题库附参考答案详解(综合题)
- 2026湖南张家界市事业单位公开招聘(选调)工作人员37人考前冲刺密卷附完整答案详解【全优】
- 2026广东佛山市顺德区(家电)知识产权快速维权中心招聘合同制人员招聘2人考前冲刺试卷【B卷】附答案详解
- 2026福建三明市检验检测中心关于招聘抽样人员兼驾驶员1人模拟试卷(B卷)附答案详解
- 2026江西省妇幼保健院科研助理招聘4人考前冲刺试卷附完整答案详解【必刷】
- 2026天津市天河计算机技术有限公司招聘模拟试卷附参考答案详解(培优A卷)
- 2026年安徽江东文旅康养集团有限公司及子公司公开招聘工作人员16人笔试参考题库及答案详解
- 相似品排产管理规定
- 小学语文教师业务考试试题及答案
- XX中学八年级生物中考实验操作考试注意事项培训会上实验员讲解
- 副校长竞聘笔试题(含答案)
- 2025届“才聚齐鲁成就未来”山东钢铁集团有限公司高校毕业生招聘笔试参考题库附带答案详解
- 实验室EHS安全培训内容课件
- 90°爬梯设计计算书
- 马的繁育教学课件
- 索尼相机DSC-WX350中文使用说明书
- 妇产科学宫颈肿瘤课件
评论
0/150
提交评论