软件工程 第6章 面向对象分析 CUMT 2.ppt

  1. 1、本文档共91页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5、提交报销单 【备选事件序列】 A1、删除报销记录 A3、保存当月报销单 A4、报销记录不合理 返回(Return)消息 完成(Call)消息指定的功能中出现异常 A5、人事数据库不可用 返回(Return)消息 完成(Call)消息指定的功能中出现异常 A6、邮件未及时发出 返回(Return)消息 完成(Call)消息指定的功能中出现异常 例5 提交报销申请的协作图 ①新建 ②退回 ③同意 下面,我们采用一个简单的例子说明用例模型的基本概念和建立过程。 因此,我们可以识别出如图所示的角色。 在UML语言中,用例用一个椭圆图形和名称表示。 我们通过上述提问可以识别以下用例: 通过用例图,分析应用领域的业务范围、业务规则和业务处理过程,确定系统的责任、范围和边界,确定系统的需求。 在这里,实体类表示系统存储和管理的永久信息,边界类表示角色与系统之间的交互,控制类表示由系统支持和用户执行的任务,我们使用UML中的构造型entity、boundary和control分别表示实体类、边界类和控制类。 对于用户接口来说,边界类集中描述了用户与系统的交互信息,而不是描述用户接口的显示形式,如按钮、菜单等;对于系统接口和设备接口来说,边界类集中描述所定义的通信或交换协议,而不是说明协议如何实现的。 在有些情况下,用例的行为十分简单,这时可以没有控制类,学生注册课程系统中的用登录就是这种情况。 没有管理员和学生、课程、教师的关系描述,所以也没有其间的控制类;而学生和课程、学生和成绩之间有; 由于管理员不需要保存从课程、教师、学生边界类中提供的数据,所以也没有对应的控制类。 对于每个对象,从以下方面考虑并发现对象的属性: 对于初步发现的属性,检查这些属性是否系统使用的特征、是否描述了对象本身的特征、是否可以通过继承得到、是否可以从其他属性直接导出等,对这些属性进行整理和筛选。 对象之间的关系,使对象类构成一个整体的、有机的系统模型 动态模型即系统如何应对外部事件 对象间的交互通过事件驱动 通过对用例建立交互图,实现了将系统责任分配到对象类中, 即交互图中的每一个消息就是消息接收对象的一个服务。 最后,审查和整理对象图,删除一些不必要的冗余操作,分解或合并某些对象类。 主导Actor ①活动 服务层的表示 6.4 建立系统的静态结构模型 1.类图 主要是描述类和类之间的关系。 2.对象图 主要是描述对象和对象之间的关系。 3.结构类型 一般-特殊 整体-部分 4.主题或子系统 可相互协作共同完成一组内聚功能的模型中的子集 5.步骤 复审需求描述和用例图,找出存在的类之间的关系,用线连接,并命名 对每一个关系,指出关系基数/重数 4.主题或子系统 面向对象的模型相当大,是一个包含大量类和对象的平面图 主题可以看成是高层的模块或子系统,通过对主题的识别,将这些类和对象做进一步的组合。 现代银行业务系统主题 【例2、员工报账系统——提交报账申请】类图 员工通过报帐系统填写报销申请,输入相关活动产生的费用,在一次或者多次填写后提交,经过验证之后,以电子邮件的方式通知经理批复。 类图 ⑴员工employee。公司的正式雇员。 ⑵经理manager。公司的正式雇员。 ⑶报销单Claim_report 员工在一个(自然)月内的所有报销记录的集合。 ⑷报销记录Claim_record 与业务有关的某一项具体的花费,包括业务活动发生的时间、地点、客户名称(可选)、原因以及费用金额和种类(交通、餐饮、会议、通讯和杂项)。 ⑸验证规则valid_rule 验证为合理的报销记录必须满足几种条件: 第一,不同种类的费用不超过相应的限额; 第二,报销费用的类型要和员工的职能匹配。 类图 6.5建立系统的动态模型 要想对一个系统了解得比较清楚,首先应当考察它的静态结构,即在某一时刻它的对象和这些对象之间相互联系的结构;然后应当考察在任何时刻对象及其联系的改变。系统的这些涉及时序和改变的状况,用动态模型来描述。 动态模型着重于系统的控制逻辑。 建立对象交互图,将用例的行为分布到对象中 事件追踪图 状态图 时序图 协作图 事件追踪图 事件追踪图侧重于说明发生于系统执行过程中的一个特定“场景”。 场景也叫做脚本,是完成系统某个功能的一个事件序列。 场景通常起始于一个系统外部的输入事件,结束于一个系统外部的输出事件,它可以包括发生在这个期间的系统所有的内部事件,也可以只包括那些撞到的或由系统中某些对象生成的事件。 电话的一个场景 从对象角度考虑的事件追踪图 解题步骤7:选课系统的时序图 【例4 学校登记新生】 《become》 从一个对象值变化到另一个对象值 关联关系 关联关系 关联关系 关联关系 关联关系 已登记属性——Boo

文档评论(0)

000 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档