[关闭]
@1234567890 2018-01-04T09:28:24.000000Z 字数 2808 阅读 1577

面向对象分析与设计框架

设计


背景

好像总是没有足够的时间来完成建模、 分析和设计工作,总是过早地进入到 编码阶段

以最少的投入,完成需求到编码的过渡

构造系统时需要弄明白的几个问题

问题答案

问题 UML工具/技术
用户与用户活动? Use-case
“现实世界”对象? 高层类图
为每个用例建立对象? Robustness分析
对象交互? 顺序图/协作图
实时控制活动? 状态图
如何建立? 低层类图

4个阶段

image_1c2u8v37t16s71f42m21b7q1u6e19.png-198kB

需求分析

产出:用户界面原型、用例模型、领域模型、高层类图
里程碑:需求评审

初步设计

产出:用例图、健壮性图、领域模型、类图
里程碑:初步设计评审

详细设计

产出:时序图、完整的类图、(协作图、状态图)
里程碑:详细/关键设计评审

画时序图注意点:

编码实现

产出:代码
里程碑:交付

领域建模

领域建模任务

领域建模的任务:找到代表现实世界中的事务与概念的对象

建模活动

这些活动的执行没有固定必然的顺序,是不断重复细化的

识别类

建立归纳关系

建立类间关联

开发关联类

产出

高层类图

image_1c2r4j2mg9s4bkv139g7f110s6p.png-176.6kB

用例建模

用例建模目的

用例图使我们对系统的功能有了一个整体的认知,我们可以知道有哪些参与者会与系统发生交互,每一个参与者需要系统为它提供什么样的服务。

用例描述的是参与者与系统之间的对话,但是这个对话的细节并没有在用例图中表述出来,针对每一个用例我们可以用事件流来描述这一对话的细节内容。

用例图(Use Case Diagram)

确定系统中所包含的参与者、用例和两者之间的对应关系,用例图描述的是关于系统功能的一个概述。

寻找参与者

确定用例

用例规约(Use Case Specification)

针对每一个用例都应该有一个用例规约文档与之相对应,该文档描述用例的细节内容。

用例规约-转帐.doc54.5kB

用例建模参考

健壮性分析

我们通过健壮性图进行健壮性分析:先绘制健壮性图,仔细检查用例文本,检查每一个 句子,然后根据句子的描述绘制出参与者、边界对象、实体对象和控制器以及图中不同元素间的关系。然后评审健壮性图,通过观察用例文本和图是否‘图文一致’ 来发现问题,修改用例文本,当然也要修改静态模型。在这个阶段,因该把一些关键属性添加到类图中。

健壮性分析的目的

健壮性分析的产出

健壮性图的规则

image_1c2uafq9r1fdanje8f01q1q1t5a26.png-79kB

实例

需求

用例:进行交易

健壮性图

image_1c2uamvl0lbh1c7812pgpdose92j.png-130.3kB

时序图

动态模型的核心,描述了系统在运行时间的行为,包括系统如何完 成这些行为

目的

产出

画时序图步骤

1、将用例描述复制到时序图的左 边空白处
2、添加实体对象
3、添加边界对象与参与者
4、设法解决控制体,一次一个, 然后弄清楚如何在协作对象中分配 行为

时序图要素

image_1c2ubagif1ada1iom1f4flqh1nld3d.png-116.5kB

实例

image_1c2ub88cg1lot1q0fkgeles8or30.png-247.4kB

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注