4.3.1 面向对象分析的过程

  面向对象的分析着重分析问题域和系统责任,确定问题的解决方案,暂时忽略与系统实现有关的问题,建立独立于实现的系统分析模型。
面向对象分析的基本过程如下:
(1) 问题域分析
  分析应用领域的业务范围、业务规则和业务处理过程,确定系统的责任、范围和边界,确定系统的需求。在分析中,需要着重对系统与外部的用户和其他系统的交互进行分析,确定交互的内容、步骤和顺序。
(2) 发现和定义对象与类
  识别对象和类,确定它们的内部特征,即属性和操作。这是一个从现实世界到概念模型的抽象过程,是认识从特殊到一般的提升过程。
  抽象是面向对象分析的基本原则,系统分析员不必了解问题域中繁杂的事物和现象的所有方面,只需研究与系统目标有关的事物及其本质特性,并且舍弃个体事物的细节差异,抽取其共同的特征而获得有关事物的概念,从而发现对象和类。
(3) 识别对象的外部联系
  在发现和定义对象与类的过程中,需要同时识别对象与类、类与类之间的各种外部联系,即结构性的静态联系和行为性的动态联系,包括一般与特殊、整体与部分、实例连接、消息连接等联系。
  对象和类是现实世界中事物的抽象,它们之间的联系要从分析现实世界事物的各种真实联系中获得。
(4) 建立系统的静态结构模型
  分析系统的行为,建立系统的静态结构模型,并将其用图形和文字说明表示出来,如绘制类图、对象图、系统与子系统结构图等,编制相应的说明文档。
(5) 建立系统的动态结构模型
  分析系统的行为,建立系统的动态行为模型,并将其用图形和文字说明表示出来,如绘制用例图、交互图、活动图、状态图等,编制相应的说明文档。
  现实世界中事物的行为是极其复杂的,需要从中抽象出对建立系统模型有意义的行为。在分析中需要控制系统行为的复杂性,注意确定行为的归属和作用范围,确定事物之间的行为依赖关系,区分主动与被动,认识并发行为和状态对行为的影响。系统的静态结构模型和动态行为模型、必要的需求分析说明书、系统分析说明书等一起构成了系统的分析模型,这是系统分析活动的成果,成为下一步系统设计的基础。