chap05用例分析.ppt

  1. 1、本文档共108页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 此处可以考虑增加交互纵览图的内容 * * * * 常见的关系 关联关系(Association) 聚合关系( Aggregation) 组合关系(Composition) 依赖关系( Dependency) 泛化关系(Generalization) 实现关系(Realization) 3.1 关联关系 关联是类之间的一种结构化关系,是类之间的语义联系 表明类的对象之间存在着链接 对象是类的实例,而链接是关联的实例 识别关联的基本思路 从交互模型中发现对象之间的链接,从而在相应的类上建立关联关系:如VOPC图中关联关系 从业务领域出发,分析领域中所存在的实体类之间的语义联系,为那些存在语义联系的类之间建立关联关系:如实体类之间的各种语义联系 实例:实体类之间的关联关系 细化关联关系 关联具有:名称、端点和角色名、多重性 名称:动词短语 端点和角色名 多重性表达式:*,1..*,1-40,5,3,5,8,… 自反关联 自反关联是指一个类自身之间存在关联,它表明同一个类的不同对象之间存在链接 多重性指示器 实现中的关联 class Part{ private string name; private int number; private double cost; public double getCost () { return cost; } } class Component{ private Part entry; public double cost () { return entry.getCost(); } } Part screw= new Part(“screw”, 28834, 0.02); Component component = new Cmponent(screw) ; component.cost(); 关联类 关联类(Association Class) 是一种被附加到关联上的类,用来描述该关联自身所拥有的属性和行为 当某些属于关联自身的特征信息无法被附加到关联两端的类时,就需要为该关联定义关联类 3.2 聚合关系 聚合(Aggregation)关系是一种特殊的关联关系 除了拥有关联关系所有的基本特征之外 两个关联的类还分别代表“整体”和“部分”,意味着整体包含部分 可以在已有的关联关系基础上,通过分析两个关联的类之间是否存在如何语义来识别聚合关系 A(整体)由B(部分)构成 B(部分)是A(整体)的一部分 3.3 泛化关系 泛化是指类间的结构关系、亲子关系 子类继承父类所具有的属性、操作和关联 分析阶段的泛化关系主要来自与业务对象模型,针对实体类,结合业务领域的需求,从两个方面来提取泛化关系: 是否有类似的结构和行为的类,从而可以抽取出通用的结构和行为构成父类 单个实体类是否存在一些不同类别的结构和行为,从而可以将这些不同类别的结构抽取出来构成不同的子类 泛化-Generalization class Employee {…...}; class Manager : public Employee {..}; class Engineer : public Employee {…};. class Employee {…...} class Manager extends Employee {..} class Engineer extends Employee {…} 实例:实体类间的聚合和泛化 4.依赖-Dependency 依赖描述了建模元素之间的一种关系, 一个元素的改变将导致另一个元素的改变 非结构性关系, “使用” 关系 Client Supplier Package ClientPackage SupplierPackage Client Supplier Class Dependency relationship Dependency relationship Component 依赖示例 Professor Course class Professor { public void teach(Course c) { ……..} …………….. } class Professor { public void teach() { Course c = new Course(); ……..} …………….. } 依赖示例:HelloWorld.java import java.appl

文档评论(0)

2232文档 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档