复杂问题(大型系统)的对象模型由下 述五个层次组成:主题层(也称为范畴层)、 类与对象层、结构层、属性层和服务层, 如图7.1
Page 7
河南理工大学
2020/10/12
Page 8
图7.1 复杂问题的对象模型
河南理工大学
2020/10/12
我们在概念上可以认为,面向对象分析大 体上按照下列顺序进行:
Page 12
河南理工大学
2020/10/12
7.2 需求陈述
7.2.1
通常,需求陈述的内容包括:问题范 围,功能需求,性能需求,应用环境及假 设条件等。总之,需求陈述应该阐明“做 什么”而不是“怎样做”。
Page 13
河南理工大学
2020/10/12
它应该描述用户的需求而不是提出解 决问题的方法。应该指出哪些是系统必要 的性质,哪些是任选的性质。应该避免对 设计策略施加过多的约束,也不要描述系 统的内部结构,因为这样做将限制实现的 灵活性。
寻找类—&—对象, 识别结构, 识别主题, 定义属性, 建立动态模型,建立功能模型, 定义服务。
但是,正如前面已经多次强调指出过 的,分析不可能严格地按照预定顺序进行, 大型、复杂系统的模型需要反复构造多遍 才能建成。通常,先构造出模型的子集, 然后再逐渐扩充,直到完全、充分地理解 了整个问题,才能最终把模型建立起来。
Page 5
河1.2 三个子模型与五个层次
面向对象建模得到的模型包含系统的三个要素:
即静态结构(对象模型),交互次序(动态模型)和数据 变换(功能模型)。解决的问题不同,这三个子模型的重 要程度也不同: 几乎解决任何一个问题,都需要从客观世界实体及实体 间相互关系抽象出极有价值的对象模型; 当问题涉及交互作用和时序时(例如,用户界面及过程 控制等),动态模型是重要的; 解决运算量很大的问题(例如,高级语言编译、科学与 工程计算等),则涉及重要的功能模型。动态模型和功 能模型中都包含了对象模型中的操作(即服务或方法)。