ICONIX 过程起步
author: 大金 05/2006
关键字: 交互建模(时序图), 健壮性分析(健壮图), 用例建模(用例文本和图), 域建模
人们说: "(详细,物理)设计是解决如何(how)做, (概念设计)分析是解决做(what)什么"
我们的目标: 代码
代码之前是: 类图
- 理由来自代码的结构:
- C++, Java
- 基层单位: 类
- 地区单位: 文件
- 组织关系: 名字空间, 包
- C, PHP
- 基层单位: 函数
- 地区单位: 文件 (也能看成是一个对象)
- 组织关系: 全局
- 注意: (嵌入式脚本的) PHP 页本身也是个"大"函数, 认为是一个对象就更好
- 所以我们可以借用 OO 的方法建: 类图; 具体的函数还能用结构化的方法画: 结构图
对象的名字的设计来源: 用例文本
- 合理的次序是先域建模,这样用例文本就能有统一的名词可用
对象的属性呢? 名词可能是对象的名字及属性
对象的名字的猜想来源: 域模型. 从中可猜测对象
- 域模型很像概念级类图(没有属性和行为)或概念级实体-关系图 ERD
(概念级 ERD 中的实体也都是程序中的实体对象)
从用例文本到时序图(及类图)的关键一步: 健壮图. 这是从分析跨越到设计的桥梁
- 健壮图就是用三类对象(界面,实体,控制)描述用例文本,其目的
- 确保用例文本正确; 确保考虑了所有的分支流程
- 发现猜测中遗漏的对象,确定大多数实体对象和界面对象
- 跟踪健壮图上的数据流, 从而发现属性加到类(图)中
- 改进用例文本
ICONIX 过程: 轻量级的用例驱动的 UML 对象建模过程
- 创始于 1992 年,先于 UML, 又在 UML 后进一步发展
- 与 RUP 类似用例驱动,基于 RUP 创始人的理论,侧重于系统分析和设计
(而 RUP 还有很多笔墨在需求分析) - 但是是轻量级的,使用了简化的核心的 UML 建模方法,特色是健壮性分析
ICONIX 过程的基本阶段:

- 原型 |-> 域建模 -> 用例建模 -> 需求复核
- -> 健壮性分析(及概念级类图细化) -> 初步设计复核
- -> 时序图(及详细类图)绘制 -> 关键设计复核 -|
参考:
- 文章 "ICONIX 过程介绍(英文)" (其实是其作者(Rosen/Scott)的书的第一章)
- ICONIX 网站
- 管斌, 袁国忠 译 《用例驱动的UML对象建模应用:范例分析》 (Doug Rosenberg, Kendall Scott "Applying Use Case Driven Object Modeling with UML: An Annotated e-Commerce Example")