鲁棒分析
鲁棒图可以很多的解决需求分析和架构设计之间的差别。更详细的说明请看最后的解释。
Robustness分析不是UML模型的一部分,它是一个强大的草图工具,是介于分析和设计之间的一种有效工具
在Robustness分析中,将应用边界类、控制类和实体类,分别对应MVC 架构的3个层
从一个用例中抽取三类对象的方法
鲁棒分析—从事件流开始
下面是用例描述
鲁棒分析—寻找边界对象
图书管理员向系统发出“新增书籍信息”请求——主窗口、“新增书籍信息”按钮
系统要求图书管理员选择要新增的书籍是计算机类还是非计算机类——书籍类别列表框。
图书管理员做出选择后,显示相应界面,让图书管理员输入信息,并自动根据书号规则生成书号——“新书信息录入”窗口及辅助的“提交”按钮
鲁棒分析—寻找控制对象和实体对象
新添两个逻辑:
一 是基本事件流中的步骤2、3要求根据用户选择的类别,自动获得书号;
二 是当书名重复性检查没有通过(有重名),则应返回要求其重输
构建交互模型
转换成通信图
走到这里,我们已经能够知道,MDA的建模顺序,是先用例图,用例描述,鲁棒图,鲁棒顺序图(通信图),类图,数据库设计图
交互图应用说明
交互模型的类型与演变
分析阶段的交互模型
工作方法:针对用例图中的每个用例,并结合领域模型中的类,寻找分析类,并通过Robustness分析来理清业务逻辑流程,再用交互模型将其确定下来
注意:主要关注于区分出边界对象、实体对象和控制对象,暂时不要考虑其具体的实现类
说明:对于较复杂的用例,可以按上述的流程逐渐地进行分析、设计、实施;但对于比较简单的用例而言,也是可以直接从用例描述中导出设计阶段交互模型
分析阶段的交互模型之后
引入基础类:包括基础框架、程序库等