面向对象的分析与设计1.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象的分析与设计1

Free Template from 面向对象的分析与设计 初始 创建初始用例图 用例图是“表示了系统内的参与者与用例之间关系的一个图”(UML v1.4spec page B-21) 参与者(Actors) 参与者就是代表与系统进行交互的角色 用例(Use Cases) 一个用例封装了为达到某个成果的系统的主要行为 用例是用椭圆形表达的,它内部的文字就是用例的标题 用例编码能够被用在标题的前面,用来建立与SRS的对应关系 系统边界 “用例可选择附在一个长方形里表示系统内部的边界(UML v1.4spec.page354)” 用例关联 用例关联描述了“在用例中一个用户的参与。”(UML v1.4spec.page357) 一个参与者必须关联一个或者多个用例 一个用例必须关联一个或者多个参与者 它们之间的关联是用一条没有箭头的实线来表示的 精化用例 精化用例 创建用例表 按照下面的步骤确定用例表中应填写的信息: 依照SRS文档来填写数据。 依据用例场景决定前置条件; 依据用例场景决定触发条件; 依据用例主要用例场景决定主事件流; 依据用例次要用例场景决定可选事件流 决定后置条件 第一步—根据需求规约文档填写相关信息 根据需求规约文档填写下列元素: 第二步—根据用例场景确定前置条件 一个好的用例场景应该在第一段就描述用例开始时系统 的状态。它们就是前置条件: Santa Cruz 的床位和早餐的预约代理Medoca Sansumi 正耐心地等着电 话,此刻旅店管理系统的主页面已经被打开。 第三步—根据用例场景确定触发条件 用例场景还应该陈述参与者如何才能知道应该去启动一 个特定的用例。 这时候,来自纽约的Ms. Jane Googol 打来了电话,Ms. Jane Googol 说“你好,我是Ms. Jane Googol 。我想为新年前夕预约房间”。 第四步—根据主要用例场景确定主事件流 根据主要用例场景确定主事件流。 Medoca: “你什么时候入住?”。Jane: “ 12月31日,我会一直住到1月5日”。Medoca在表格中输入日期。Medoca: “你想要什么类型的房间?”。Jane: “我和我丈夫住一块,所以一间单人房就足够了。还有没有雅间?”Medoca在定单表中选择“单人房间”并做查询。 第五步—根据次要用例场景确定可选事件流 根据次要用例场景确定可选事件流。 在主要场景和每一个次要场景之间按顺序做差异分析 。 可选事件流就是主要场景和次要场景中不同的那些步骤。 第六步—决定后置条件 一个好的用例场景应该在最后一段描述用例结束时系统 的状态。它们就是后置条件。 Medoca把系统提供的预约编号告诉 Jane: “你还需要什么帮助 吗?” Jane: “没有了。” Medoca向她表示感谢并挂断电话。 Medoca关闭预约窗口,返回旅店管理系统Main HotelApp主页面。 展开高级用例 一些在需求捕获阶段获取的用例太高级。这种情况就 要引入新的用例来分解工作流。 展开高级用例(续) 优化前的用例图: 展开高级用例(续) 展开版本产生了更多的联系: 参与者继承 一个参与者可以继承父参与者的所有用例关系: 用例的特殊化 一个用例可以派生出多个特殊化的用例: 分析用例依赖 用例可以以两种方式依赖于其他用例: 一个用例(a)包含(include)另外一个用例(b)。 用例a需要用例b的功能并且总是执行这个内含的用例。 一个用例(a)扩展(extend)另外一个用例(b)。 用例a可能(可选择的)用到用例b的功能,于是去扩展用例b。 include依赖 extend依赖 extend依赖使你找出那些不属于主事件流,而是 可选场景中的系统行为。 extend依赖 识别和记录与用例可选事件流有关的行为。 回顾用例场景找出重要的行为序列。 给这个行为取一个名字并在用例图中绘制出扩展关系 一个旅店预约系统的组合实例 用活动图来验证用例 在活动图中描绘用例的主事件流: CRC 软件需求说明书中的名词 以下是从酒店预定系统的需求说明书中摘录的一部分,名词用蓝色标记. “酒店预定系统负责管理多种类型的酒店预定, 包括(但不仅限于)BB,还有一些商务酒店预定.这个系统同时也包含了一个web应用,允许客人随时查看房间和酒店,查看当前和过去的预定记录,或者进行新的预定.系统同时也能调整一些小事件(例如商务和小型会议)” 候选的关键抽象表格(示例) 建立域模型 建立域模型(续) 从关键抽象,你可以利用这些步骤创造域模型: 1.每个关键节点画类抽象 并且: a. 列出已知属性 b. 列出已知操作 2. 画协作类之间的管理 3. 定义并记录相关文件的名称和作用 4.

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档