面向对象分析
Created: 2024-03-05 Tue 16:42
Figure 1: 系统的参与者与系统边界
面向对象分析模型由3种独立的模型构成:
建立用例模型的目的是提取和分析足够的需求信息。 用例模型应能表述用户需要什么,而不涉及系统如何构造和实现的特定细节。
Figure 2: 选课系统的环境图
Figure 3: 将场景抽象为用例
用例图(Use Case Diagram) 是若干个 参与者 和 用例 以及它们间的 关系 构成的图形表示。
Figure 4: 选课系统的总体用例图
用例建模往往不是一次就能完成的,需要多次迭代、逐步完善。
建立对象模型的5项主要活动:
Figure 5: 对象模型的5个层次
对于选课系统,可以划分以下主题:
系统分析员的主要任务就是根据需求规格说明和用例模型确定问题的类与对象。
类与对象是对问题域中有意义的事物的抽象, 它们既可能是可见的物理实体,也可能是抽象的概念。
可以将客观事物分为以下5类:
筛选时主要依据下列标准来删除不正确或不必要的类或对象:
在类分析时首先从问题域的实体类入手, 如果在建立对象模型时区分实体类、边界类和控制类,将有助于理解系统。
Figure 6: 分析对象模型中的对象
Figure 7: 自上而下地从一般类发现特殊类
Figure 8: 自下而上地从特殊类抽取出一般类
类之间最普遍存在的关系不是泛化(继承)关系,而是 关联关系 。 关联关系表示的是 两个 或 多个 类的 实例 之间的连接关系。
对象收到消息后所能执行的操作称为它可提供的服务。
Figure 9: 具有5个包的主视图
Figure 10: 类的分视图
Figure 11: 增加类之间的关联关系
Figure 12: 增加关联数量
Figure 13: 增加了聚合关系的类图
Figure 14: 增加了关联类的类图
Figure 15: 增加了泛化关系的类图
Figure 16: Register for a course用例的顺序图
Figure 17: 通信图
Figure 18: CourseTask类对象的状态图