软件工程基础
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
映射成事务结构
映射成变换结构
事务分析
用启发式规则 精化软件结构
导出接口描述 和全程数据结构
复查
错误
详细设计
变换分析
基于数据流( SD )的方法
变换流 信息沿输入通路进入系统,同时由外部形式变
换成内部形式,进入系统的信息通过变换中心, 经过加工处理以后再沿输出通路变换成外部形 式离开软件系统 。
a
c2 1d b3
基于数据流( SD )的方法
接收 通路
总控
调度
A_CTL B_CTL C_CTL
B通路 C通路
A通路
事务分析的映射方法
基于数据流( SD )的方法
➢ 变换型软件结构是典型的三叉型,事务型软件结 构是典型的二叉型
系统流程图
图例
原始单据 处理操作 磁盘
I/O报表 显示或输 入输出
实例
磁带文 件
事务
生成的文件
库存清单程序
人工操作 X 连接下页
数据流向
定货 信息
报告生成程序
通信链路
订货报告
库存清单 主文件
库存清单系统 系统流程图
数据流图出发设想供选择的物理方案一
D1 库存清单
1.1 1.2
1.3
仓库 事务 接 事务 更
1 2 3
n
基于数据流( SD )的方法
变换分析 ➢ 复查并精化数据流程图 ➢ 确定数据流程图具有变换特性还是事务特 性
基于数据流( SD )的方法
➢ 确定输入流和输出流的边界,从而孤立出变换中 心 检查“输入流”的边界
检查“输出流”的边界
得到变换中心
基于数据流( SD )的方法
➢完成“第一级分解” 控制模块Cm是抽象出来的,它位于软件结 构最顶层,协调控制下属模块。 输入信息处理控制模块Ca,协调对所有输 入数据的接收。 变换中心控制模块Ct,管理对内部形式的 数据的所有操作。 输出信息处理控制模块Ce,协调输出信息 的产生过程。
e 4f
g
5
h
6x 7y
8
z
输入通路 变换中心 输出通路
基于数据流( SD )的方法
读 原始 编辑 格式化 输入 输入 输入 输入
计算 解 结果 格式化 结果
解
格式化 的解 显示
输入通路 ——对输入的 逻辑变换
变换中心 ——质变
输出通路
——对输出的 逻辑变换
基于数据流( SD )的方法
事务流
... T
基于数据流( SD )的方法
Cm
Ca
Ct
Ce
第一级分解的方法
基于数据流( SD )的方法
➢ 完成“第二级分解” 把数据流程图中的每个处理映射成软件结构 中一个适当的模块。
基于数据流( SD )的方法
Cm
DC A
B
Ca
C
B
D
A
第二级分解的方法
基于数据流( SD )的方法
H
J
I
K
Cm
Ce
H
I
J
K
输出结果
编辑 结果
解
格式化
的解
格式化 的解
读输入
编辑输入
结果格式化 显示结果
软件结构设计
结构设计方法: ➢ 基于数据流的设计方法(SD方法) ➢ 基于数据结构的设计方法(Jackson方法)
基于数据流( SD )的方法
“事务流”
区分事务中心 和数据接收通路
精化数据流图
流类型
“Biblioteka Baidu换流”
区分输入 和输出分支
基于数据流( SD )的方法
事务分析
➢ 由事务流映射成的软件结构包括一个接收 分支和一个发送分支。
➢ 映射出接收分支结构的方法和变换分析映 射出输入结构的方法相似,即从事务中心的边 界开始,把沿着接收流通路的处理逻辑映射 成模块。
基于数据流( SD )的方法
➢ 发送分支的结构包含一个调度模块,它控制 下层的所有活动模块;然后把数据流程图中 的每一个活动流通路映射成与它的特征相 对应的结构。
D3 事务 订货系统 数据流图
软件结构设计
软件结构设计确定程序由那些模块组成,这些模块 之间的关系.---不涉及模块内部算法流程 ➢ 功能分解; ➢ 软件结构设计----即模块结构图(MSD) ; ➢ 数据结构设计,主要是完成数据库的物理设计,
确定数据库名,表名,设计数据字典; ➢ 书写文档
软件结构设计
设计中的图形工具:
➢ HIPO图=层次图(H图)+IPO表
➢ 模块结构图
正文加 工系统
输入 输出 编辑 加标题 存储 检索 编目录 格式化
添加 删除 插入
修改
合并
列表
层次图图例
软件结构设计
模块结构图图例:
好输入
产生最佳解
解
好输入
解
传递的 是数据
传递的 是控制
得到好输入
原始 输入
原始 输入
计算最佳解
***总体设计阶段组成系统的物理元素处于黑 合子级,这些黑合子里的具体内容将在以后阶段详细 设计。对构成软件的模块内部详细设计也在后续阶 段。
总体设计的好处:?----对前面问题的回答。
系统设计
设计中用到的工具: ➢ 数据流图 ➢ 系统流程图 ➢ 体会两者的区别与联系
系统设计方法 ➢ 从数据流图出发设想供选择的物理方案; ➢ 选取合理方案-----其中用到系统流程图; ➢ 推荐最佳方案;
软件工程基础
总体设计 详细设计
设计
设计与需求分析的区别--------? 总体设计与详细设计的区别-------- ? 划分设计阶段的好处-------?
客户想要做什么
设计软件结构
系统需要做些什么 接口 设计系统物理元素
设计模块算法
需求分析
设计
需求表达 (数据流图等)
总体设计
2
3
5
4
需求规格说明之一(数据流图)
基于数据流( SD )的方法
EF G
Cm Ct
F
E
G
基于数据流( SD )的方法
完成第二级分解的方法是: 从变换中心的边界开始沿着输入通路向外移 动,把输入通路中每个处理逻辑映射成软件结 构中Ca控制下的一个低层模块; 沿输出通路向外移动,把输出通路中每个处 理逻辑映射成直接或间接受模块Ce控制的一 个低层模块; 把变换中心内的每个处理映射成受Ct控制的 一个模块。
模块0
模块1
模块3
模块4
模块2
模块5
软件结构设计之一(模块结构图)
详细设计
模块A
...
模块B 模块过程描述
模块A 模块B ...
模块结构图
总体设计
总体设计的任务 面向数据流的设计方法 示例 总体设计原理及启发式规则
总体设计的任务
系统设计-----划分出组成系统的物理元素。
软件结构设计-----确定软件结构、数据结构。
管理
受
新
员
事
库
务
存
清
单
库存 信息
处 理 订
货
2 产 订货报表 采购员 生 报 表
D2 订货信息
订货系统 数据流图
数据流图出发设想供选择的物理方案二
D1 库存清单
1.1
仓库 事务 接
管理
受
员
事
务
事务
1.2
1.3
更 新 库
库存 信息
处 理 订
存
货
清
单
2 产 订货报表 采购员 生 报 表
事务
D2订货信息