ooad
分析与设计
- 分析强调的是问题和需求的调查(investigation),而不是答案。
- 设计强调的是满足需求的概念型答案(conceptual solution),而不是实现。
- 分析:do the right thing。设计:do the thing right。
面向对象的分析与设计
- 面向对象的分析强调找到并描述问题领域中的对象
- 面向对象的设计强调定义软件对象并定义让它们如何相互结合以满足需求。
面向对象模型的一个例子:
- 需求和分析
- use case diagram
- interface model
- business/domain object model
- application object model
- object interaction model
- dynamic model
- 分析:
- design object model
- design object interaction model
- design dynamic model
- 实现:源代码
- 测试:测试用例
UML
unified modeling language.
- UML不是一个过程或者一个方法论。
- UML不是面向对象的分析与设计
- UML不是设计的参考准则
使用UML的三个地方:
- 用作sketch,即非正式不完全的图
- 用作blueprint,蓝图。用于各种设计图,还可以反向工程生成代码。
- 用作编程语言,有的UML还可以直接生成可执行代码。