当前位置:文档之家› 第七章 面向数据流的设计方法.

第七章 面向数据流的设计方法.

传入部分
输入 信息
物理 输入
变换中心 结果
传出部分
数据
正确 信息 格式 检查
逻辑 输入
处理
显示
逻辑 输出 物理 输出
特点:具有明确的传入、变换(或称主加 工) 和传出界面的DFD
事务型数据流图举例
B A
L
C
E
I
M N
F G
O
H
D
大型系统DFD中,变换型和事务型 结构往往共存:
传入 变换 传出
T
事务中心

在系统中,各个过滤器必须是相互独立的, 每一个过滤器对它的上游或下游的过滤器的 情况是不知道的,也不能做任何假设。 如果要求最终的输出结果与各个过滤器的执 行次序相关,就是一个数据流方式的体系结 构。 这种结构的优点是:数据流程设计明确,直 接支持复用,系统容易维护和升级,可以进 行某些性能分析(如流量、死锁等),容易 支持并行计算。
SafeHomede的第3层DFD
格式化标志类 型和位置 传 读取传感 感 器数据 数 据 获取响 置传感数 应信息 据标识 传感 器信 息
配置信息
配置数据 格式化 显示 建立警 报条件 号 码 表 警报数据 选择电话 号码
产生 显示
警报 类型
产生警 报信号
连通 电 话 电话网 号 产生拨号 码 脉冲 电话号码对应音频
由变换分 析产生
输入模块 主加工模块 输出模块
事务控制模块
由事务分 析产生
接受模块
动作发送模块
动作1模块 动作2模块 动作3模块
一 变换分析设计方法
步骤:
(1)复审基本系统模型
指顶层DFD和由外部提供的信息
(2)复审和精化软件数据流图
对DFD进行精化,直到获得足够详细的DFD。
期望达到:每个变换对应一个独立的功能,用一个高 内聚的模块实现。
第一级分解的方法
MC MA MT ME
第一级分解后的SC
MC
顶层
c,e
MA
传入模块
u,w c,e u,w
MT
中心变 换模块
ME
第一层
传出模块
第一级分解后的SC(另一种画法)
MC
p
c
e
e
c,p
r r
P
w,u
u,w
w
ME1
MA1 MA2
Q
R
ME2
传入分 支模块
中心加工 分支模块
传出分 支模块
(6)第二级分解(分解SC各分支)

SD系统结构特征可归纳为 两种典型形式:
变换型结构 事务型结构
数据流图可分为两种类型: 变换型数据流 事务型数据流
基本模型
变换型 输入 结构 变换 输出 中心
特征
由输入、变换 中心和输出三 部分组成
接受 事务型 路径
结构
事务 中心
动 作 路 径
具有在多种 事务中选择 执行某类事 物的能力
监控传感器的第2层DFD
显示格式 配置信息 传感器id 类型定位 异常数据 判别 读传感器 传感器id类型 传感器数据 拨号 电话号码拨音 传感器信息 警告类型 产生警告 信息
配置数据
SafeHomede的第3层DFD
格式化标志类 型和位置 传 读取传感 感 器数据 数 据 获取响 置传感数 应信息 据标识 传感 器信 息
例:SafeHomede的第0层DFD
控制面板
用户命令 和数据
显示信息
控制面板 显示
警告类型
SafeHomede 软件系统
传感器
传感器 状态 电话号码 拨音
警铃
电话线
SafeHomede的第1层DFD
控制 面板 配置 系统 配置请求 配置信息
用户命令 和数据
与用户 交互 开始 停止 密码
显示 控制 激活/不 信息 面板 状态信息 激活系统 显示 显示信息 警 和状态 密码 铃 检验id信息 传感器信息 处理 电 警告类型 监控 话 传感器 传感器状态 传感器 线 电话号码拨音
传 w,u w,u 出 ME ME 分 u w w u 支 的 W U Write W Put U 分 u v v v 解 U to V Write V V (1) (2)
中心加工分支的分解
MT
e p
Q
c,p
P
r
u,w r
R
(7)采用启发式设计策略,精化所得软件结构 以模块独立为指导思想,追求:高内聚、低 耦合、易实现、易测试和易维护
面向数据流的设计方法
2009.11
基本概念 面向数据流的设计方法(SD)是根 据需求阶段对数据流的分析(数据流图 和数据字典)设计软件结构
SD以数据流图为基础,它定义了把DFD 变换成软件结构的不同映射方法
DFD (问题结构)
映射 软件系统的结构 (程序结构)
The Data Flow Hierarchy
SD设计过程




确定信息流的类型 划定流界 将数据流图映射为程序结构 提取层次控制结构 精化结构
精化数据流图 流的类型
确定事务中心和各动作路径
映射为事务结构 提取控制结构
确定输入、输Leabharlann 流界映射为变换结构事务分析
变换分析
利用启发式策略精化软件结构 描述接口和全局数据结构 复审 详细设计
主模块
电 话 拨 号 音 频
(3)确定DFD的特性,判定为变换流还是事务流
主要根据主流的信息流类型判定,支流用于精化 (4)区分传入、变换中心、 传出部分,在 DFD 上 标明分界线
A
a
B
b
变换中心 C
传入 部分
c
P
d e D E
R p Q u
r
w
W 传出 部分
v U V
(5)第一级分解 (建立初始框架) 设计顶层和第一层模块
x a
P
b
y
level 0
a
c
p1
p2
f
p4
d level 1
p3
e
g
5
b
数据流模型
在数据流模型中,将系统分解为一系列功能模 块。 这种结构包括批处理和管道及过滤器。 在体系结构中的每一个成份都有一套输入和输 出数据,都依输入-处理-输出的方式工作。 进行数据变换的构件叫做过滤器。 把数据从一个过滤器的输出导入到另一个过滤 器的输入,就叫做管道。
变换型 数据流 结构
传入 部分 传入
变换 中心 变换
传出 部分
传出 动作 1
动作 2 动作 3
事务型 数据流 结构
接受 部分 接受
事务 中心 事务 分析
变换流示意图:信息以“外部世界”所具有的形式
进入系统,经过处理后又以这种形式离开系统
信息 外部 表示 输入流
信息流 输出流
交换流
内部 表示
变换型数据流举例
自顶向下分解,设计出每个 分支的中、下层模块
传 入 分 支 的 分 解
(1)
c
C
b
c,e MA
e
E
d
B
a
D
A
Get C Get E c e b d b d Get B B to C Read D D to E b a a (2) Read D A to B
传 入 分 支 的 分 解
c,e
c
MA
e
相关主题