使用 UML 的面向对象分析和设计 课堂笔记(二)

一.静态建模

1.静态建模基本概念

  • 创建类关系图:标识类、接口、协作及其关系
  • 创建对象关系图:表示类的特定实例的属性值 以及 对象之间的关系
  • 创建 类和对象关系图 是为了 对软件系统的静态结构建模

2.确定类和对象

  • 从以下方面了解软件系统的类和对象,并对系统静态结构进行建模:
  1. 用例:使用 UML 的面向对象分析和设计 课堂笔记(二)
  2. 软件系统的职责:使用 UML 的面向对象分析和设计 课堂笔记(二)
  3. SRS 文档:使用 UML 的面向对象分析和设计 课堂笔记(二)

3.类关系图

  • UML 为类的属性和操作提供以下可见性:
  1. +:表示 属性或操作 对其他类 可见
  2. -:表示 属性或操作 对其他类 不可见
  3. #:表示 基类中的属性或操作 对派生类 可见
  4. ~:表示 属性或操作 对同一个包里的类 可见
  • 使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 对象引用的类,必须已经存在:使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 对象关系图:表示对象的名称和属性,还包含类名以及特定实例的属性值
  • 类和对象之间的 关系 如下:
  1. 关联:表示两个类的对象间的静态关系,关联是双向 或 单向的
  2. 依赖:一个类的属性和操作的变化 会影响 另一个类的属性和操作
  3. 泛化:超类(基类)和子类(派生类)如何相关
  4. 实现:组件会指定另一个组件实现的协定,这两个类关系图的组件就是 共享实现关系
     
  5. 使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 关联关系:使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 关联关系:使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 关联关系分类:
  • 聚合:如果类 A 是类 B 的一部分,而类 A 可以 独立存在,类 A 和 B 是 共享聚合关系
  • 复合:如果类 A 包含类 B 并 控制 类 B 的生存期,类 A 和 B 是 共享复合关系
  • 依赖关系:使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 泛化关系:使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 实现关系:使用 UML 的面向对象分析和设计 课堂笔记(二)
  • 类的对象之间可能存在以下几类 多重性 关系:
  1. 一个 (1)
  2. 一或零个 (0..1)
  3. 多个 (0..*)
  4. 一或多个 (1..*)
 

使用 UML 的面向对象分析和设计 课堂笔记(二)