(1)建模
当你试图为现实世界建模时,首先要决定的是抽象的角度,即建立这个模型的目的是什么
在面对问题领域的时候首先不要决定去通盘考虑,而是找出问题里包含的抽象角度
(2)用例驱动
- 用例驱动
- 逻辑视图(如何分类组织)
- 进程视图(如何交互)
- 部署视图(进程和线程的物理分布)
- 实施视图()
- 列举实施模型中的所有子系统。
- 说明子系统如何组织为层次和分层结构的构件图。
- 说明子系统间的导入依赖关系的图解。
实施视图用于:
- 为个人(和团队)或分包商分配实施工作。
- 估算要开发、修改或删除的代码数量。
- 阐明大规模复用的理由。
- 考虑发布策略。
(3)抽象层次
自顶向下 用例粒度
(4)视图
问题1:应该为哪些软件信息绘制哪些视图
问题2:应该给哪些干系人展示哪些视角
(5)对象分析方法
- 一切都是对象
- 对象都是独立的:不要将对象局限在那个场景中,对象的独立性带来的正是对象的可抽象能 力和可扩展能力
- 对象都具有原子性:与其他对象交互时是一个整体,不可分割
- 对象都是可抽象的:以接口来命名这种抽象
- 对象都具有层次性
对象分析方法总结: