面向对象系统分析——类图
类图是面向对象建模的最重要的图。
一个类图应该注重表达系统静态结构的一个方面,并且要与抽象的层次相一致。
结构
1.结构是由种种转换规律组成的体系,结构就是由具有整体性的若干转换规律组成的一个有自身调整性质的体系。
2.结构的的三个特征
a) 整体性
i. 代数结构
ii. 类的类属性
iii. 面向对象系统的功能
b) 转换性
i. 具有转换规律和法则,如运算。
c) 自身调整性
i. 结构的守恒和封闭性,一个结构所固有的各种转换不会越出结构的边界之外。
3.母结构
a) 代数结构
i. 群 环 体 域
b) 序结构
i. 格
c) 拓扑结构
i. 邻接性 连续性 界限
ii. 图
一、对象和类
1.概念与表示法
a) 对象:是系统中用来描述客观事物的一个实体,是具有明确语义边界的实体;作为构成系统的一个基本单位,一个对象由一组属性和对这组属性进行操作的一组服务构成。
b) 类:是具有相同属性、服务、关系和语义的一组对象的集合,它为属于该类的全部对象提供了一个统一的抽象描述,其内部包括属性和服务两个主要部分。
c) 类和对象的关系——模板与实例;类的实例是对象。类的外延是其所产生的对象集。
d) 类的外延公理:两个类“相等”的充要条件是它们的元素完全相同,这就是说,类完全由其元素确定。类的所有元素可以通俗地称为它的外延。
e) 类的内涵:一个类的所有元素所共同具有的、而且是这个类的元素所独有的性质(也就是说不是该类的元素就不具有该性质)称为该类的内涵。
f) 类的内涵与外延之间存在着直观是“反比关系”:类的内涵越多。其外延越小;内涵越少,其外延越大。
g) 由一个类生成的一个对象可以扮演不同的角色。一个类的一个角色是在特定的语境下该类的对象所呈现的行为。
h) 主动对象(active object):是拥有线程或进程并能够启动控制活动的对象。是用于描述具有主动行为的事物。
i) 主动类:主动对象所属于的类叫做主动类。
j) 特征标记:服务的名称及其后的位于括号内的参数列表叫做特征标记(或基调)(signature)。
k) 类的各种表示法
2.识别对象与类的方法
a) 研究用户需求,明确系统责任
i. 阅读:阅读一切与用户需求有关的书面材料
ii. 交流:澄清疑点,指导需求
iii. 调查:到现场调查
iv. 记录、整理:产生需求文档(补充用况图)
b) 研究问题域
i. 亲临现场调查,掌握第一手资料
ii. 听取问题域专家的见解
iii. 阅读与问题域有关的材料
iv. 借鉴相同或类似问题域已有的系统开发经验及文档