软件工程导论 (第五版 ) 1 第 10 章 面向对象分析10
1 面向对象分析的基本过程不论采用哪种软件工程方法开发软件,需求分析的主要工作都是:理解需求、表达需求和验证需求,下面的图概括地表示了参照当前系统建立目标系统的过程
图:参照当前系统建立目标系统面向对象分析 (Object-Oriented Analysis, 简称 OOA )的关键就是识别出对象与类,并分析它们之间的关系,最终建立对象模型、动态模型和功能模型
软件工程导论 (第五版 ) 2 10
1 概述系统分析员要善于学习、勇于实践 ,更重要的是一切从实际出发
[[ 注注 ]]“OOA 就是抽取和整理用户需求并建立问题域精精 确确 模模 型型的过程
”(P231)——这在一开始能做到吗
——扯蛋10
2 3 个子模型与5 个层次面向对象建模需建立包含系统的三个要素:1)静态结构(对象模型)、2)交互次序 (动态模型) 、3)数据交换 (功能模型)
建立系统模型的过程是一个迭代(iterations )式的自顶向下的求精过程
对于一个大型复杂系统来说对对 象象 模模 型型 一般由下述 5 个层次组成:软件工程导论 (第五版 ) 3 图 10
2 复杂问题的对象模型的5 个层次其中主题层是指从一个更高(高于“类”)的抽象层次来描述对象模型 (即从一个相当高的层次上描述总体模型),通过划分“主题”把一个复杂系统的对象模型分解成几个不同的概念范畴
其实上述 5 个层次就是OOA 中建立对象模型的5 项主要工作: 找出类和对象, 识别结构 (类或对象之间的关系),识别主题、定义属性、定义服务
我们知道动态模型和功能模型中都包含了对象模型中的操作,因此人们在定义每个类中的服务前,往往先建立起动态模型和功能模型,这样说来OOA 大体上可按下列顺序进行:(1)确定类和对象(2)确定关联(3)划分主题(4)定义属性(