




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向数据流的设计方法面向数据流的设计方法 又称结构化设计即SD StructuredDesign 结构化设计的目标 将软件设计为多个结构合理 功能单一的模块 建立系统的模块结构图 它的主要表示方法是一种分层次的结构图 面向数据流的设计方法 SD设计方法的主要思想 认为一个程序 一组程序或一个系统 是由一组功能模块来构成的 软件设计者首先必须无视程序 模块或过程的内部情况 而只对它们之间的关系进行分析 将系统看作是逻辑功能的抽象集合 功能模块的集合 面向数据流的设计方法 结构化设计的优点 1 减少设计复杂性 将对大目标的实现转化为一些小目标来实现 结构化设计是一种减少设计复杂性的技术 2 结构独立 结构化设计将功能性程序划分成多个相对独立的程序模块 3 单一的功能模块 易于进行软件修改 易于开发和维护 4 加强了代码的可重用性 面向数据流的设计方法 描述工具 结构化设计方法提出了一种图形工具 结构图 结构图是精确表达程序结构的图形表示方法 它作为软件文档的一部分 清楚地反映出程序中模块之间的层次调用关系和联系 它不仅严格地定义了各个模块的名字 功能和接口 而且还集中反映了设计思想 面向数据流的设计方法 结构图的主要内容 1 模块 方框表示 并用名字标识该模块 2 模块的调用关系 用单向箭头或直线连接模块间的控制关系 3 模块间的信息传递 用带注释的短箭头表示模块间传递的信息 4 两个附加符号 弧形线表示循环调用 菱形表示选择调用 面向数据流的设计方法 模块间的控制关系及信息传递 模块间选择调用 模块间循环调用 面向数据流的设计方法 系统结构图中有4种类型的模块 1 传入模块 从下属模块取得数据 经过某些处理 再将其送给上级模块 它传送的数据叫做逻辑输入数据流 2 传出模块 从上级模块取得数据 进行某些处理后 传送给下属模块 它传送的数据流叫做逻辑输出数据流 3 变换模块 从上级模块取得数据 进行特定处理后 送回原上级模块 它加工的数据流叫做变换数据流 4 协调模块 对其下属模块进行控制和管理的模块 在一个好的系统结构图中 协调模块应在较高层出现 面向数据流的设计方法 系统结构图中主要有4种类型的模块 Y 面向数据流的设计方法 数据流图的类型SD方法是以数据流图为基础设计系统的模块结构的 不同类型的数据流图设计的过程以及所导出的初始的软件结构不同 不管系统的数据流图如何庞大和复杂 一般均可分为变换型 事务型和变换 事务混合型 面向数据流的设计方法 变换型 IPO型 变换型的数据流图是一个线性结构 由输入 变换和输出三部分组成 信息沿输入通路进入系统 同时由外部形式变换成内部形式 进入系统的信息通过变换中心 经加工处理以后再沿输出通路变换成外部形式离开软件系统 面向数据流的设计方法 物理输入 物理输出 输入流 变换中心 输出流 逻辑输出 逻辑输入 变换型DFD图 面向数据流的设计方法 事务型事务型的数据流图中 数据沿输入通路到达一个加工处理 如下图中的C 这个处理将输入分为许多相互平行的加工路径 并根据输入数据的类型 选择某一加工路径 其中C为事务处理中心 其任务是得到输入数据 输入数据又称为事务 分析每个事务以确定它的类型 根据事务类型选取一条活动通路 面向数据流的设计方法 事务型DFD图 面向数据流的设计方法 面向数据流设计方法的过程 1 精化DFD 去除数据流图中的数据存储等信息 对数据流图进行精化 2 确定DFD类型 和逻辑输入 逻辑输出的界限 映射出变换结构的顶层合第一层 如果为事务型 确定事务中心和加工路径 映射出事务结构的顶层合第一层 3 分解上层模块 设计中下层模块结构 4 根据优化准则对软件结构求精 5 描述模块功能 接口及全局数据结构 6 复查 如有错转向2 修改完善 否则进入详细设计 面向数据流的设计方法 变换分析设计 1 确定DFD中的变换中心 逻辑输入 逻辑输出 通常几股数据流的汇合处就是系统的加工中心 也可用以下方法确定加工中心 从物理输入 出 端开始 沿 逆 数据流方向向系统中心寻找 直到有这样的数据流 它不能再被看作是系统的输入 出 时 则它的前一数据流就是系统的逻辑输入 出 介于逻辑输入和逻辑输出间的加工就是加工中心 面向数据流的设计方法 2 设计软件结构的顶层和第一层 变换结构 顶层就是主模块的位置 其功能是完成对所有模块的控制 其名称就是系统名称 第一层一般至少有输入 变换 输出三种功能模块 面向数据流的设计方法 3 设计中 下层模块 对第一层模块自顶向下逐层分解 输入模块下属模块的设计 为每个输入模块设计两个下属模块 一个接受数据 一个将数据转换成调用模块所需的信息 用类似的方法一直分解下去 直至物理输入端 输出模块下属模块的设计 为每个输出模块设计两个下属模块 一个将数据转换成下属模块所需的信息 一个发送数据 用类似的方法一直分解下去 直至物理输出端 变换模块下属模块的设计 根据变换中心的组成情况 按照模块独立性原则 为每个基本加工建立一个功能模块 面向数据流的设计方法 4 设计优化 根据优化准则对初始结构进行细化和改进 根据设计准则 对模块进行合并和调整 为每个物理输入和物理输出设计专门模块 以体现系统的外部接口 面向数据流的设计方法 变换型分析设计 面向数据流的设计方法 变换型分析设计 面向数据流的设计方法 事务分析设计 1 确定DFD中的事物中心和加工路径 通常当DFD中的某个加工具有明显的将一个输入数据流分解成多个发散的输出数据流时 该加工就是系统的事务中心 从事务中心辐射出去的数据流就是各个加工路径 面向数据流的设计方法 2 设计软件结构的顶层和第一层 事务结构 顶层就是主模块的位置 有两个功能 一是接收数据 二是根据事务类型调度相应的处理模块 因此事务型软件结构应包括两个部分 接收分支和发送分支 接收分支 负责接收数据 其设计方法与变换型DFD的输入部分相同 发送分支 通常包含一个调度模块 控制管理所有的下层事务处理模块 3 设计中 下层模块并优化 具体过程同变换结构设计 面向数据流的设计方法 A B 加工路径 输入流 事务处理中心 事务分析设计 C D f1 面向数据流的设计方法 事务分析设计 面向数据流的设计方法 举例 事务分析举例 结构图的形态特征 深度表示控制的层数 宽度表示控制的总分布 扇出是对由某一模块直接控制的模块数目的度量 扇入指出有多少个模块直接控制一个给定的模块 如果一模块控制另一个模块便称前者 统帅 后者 反之 称后者 从属 于前者 面向数据流的设计方法 画结构图应注意的事项 1 同一名字的模块在结构图中仅出现一次 2 调用关系只能从上到下 3 结构图不严格表示模块的调用次序 习惯上从左到右 有时为了减少连线的交叉 适当地调整同一层模块的左右位置 以保持结构图的清晰 面向数据流的设计方法 例1 高考录取统分子系统有如下功能 1 计算标准分 根据考生原始分计算 得到标准分 存入考生分数文件 2 计算录取线 根据标准分 招生计划文件中的招生人数 计算录取线存入录取线文件 要求 对以上问题画出数据流图 画出该子系统的软件结构图 面向数据流的设计方法 例2 某培训中心要研制一个计算机管理系统 它的业务是 将学员发来的信件收集分类后 按几种不同情况处理 1 如果是报名的 则将报名数据负责给报名事务的职员 他们将查阅课程文件 检查该课程是否额满 然后在学生文件 课程文件上登记 并开出报名单交财务部门 财务人员开出发票给学生 2 如果是想注销原来已选修的课程 则由注销人员在课程文件 学生文件和帐目文件上做相应的修改 并给学生注销单 3 如果是付款的 则由财务人员在帐目文件上登记 也给学生一张收费收据 要求 对以上问题画出数据流图 画出该培训管理系统的软件结构图的主图 面向数据流的设计方法 在实际的软件系统中 数据流图往往是变换型和事务型的混合体 综合设计方法 一般以 变换分析 为主 事务分析 为辅进行设计 即先找出子加工 设计出结构图的上层 然后根据数据流图的各个部分的结构特点适当地运用 变换分析 或 事务分析 进行处理 可得到初始的结构图 综合设计 1 概要设计说明书 参考标准文档 2 详细设计说明书 参考标准文档 软件设计文档 其他设计方法 面向数据结构的设计方法是根据数据结构设计程序处理过程的方法 目前比较成熟的有M A Jackson提出的Jackson系统开发方法 JSD JacksonSystemDevelopment 和J D warnier提出的程序逻辑构造方法LCP LogicalConstructionofPrograms Jackson方法Jackson方法思想面向数据结构的设计是根据某些过程 从一些数据结构中导出程序结构 着重于问题域数据结构到问题解的程序结构之间的转换 而不强调模块定义 首先要充分了解所涉及的数据结构 而且用工具清晰地描述数据结构 然后按一定的步骤根据数据结构 导出解决问题的程序结构 完成设计 其他设计方法 2 Jackson图Jackson图表示的三种基本结构 由方框 连线和一些附加标记组成 标记 o 代表选择 标记 代表重复 连线可以理解为 包含 或 由 组成 顺序 选择 重复 其他设计方法 Jacks
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 信阳选调面试题库及答案
- 逐步提升系统分析师考试试题及答案
- 连结员复习测试附答案
- 运营消保练习卷含答案
- 输气工(高级)理论复习测试附答案
- 面试指导系统分析师考试试题及答案
- 安全监管人员试题及答案
- 22商务应知应会复习测试卷含答案
- 积累经验软件评测师试题及答案
- 2025贷款协议合同(民间借贷)
- 浙江开放大学2025年《社区治理》终考测试答案
- 田亩转户协议书
- 资产委托购买协议书
- 2025-2030中国半导体行业市场现状供需分析及投资评估规划分析研究报告
- 庭院绿化养护合同协议书
- 退休返聘合同和协议书
- 2025年MySQL开发趋势试题及答案研究
- 山东省济宁市2025年高考模拟考试化学试题及答案(济宁三模)
- 胃癌护理个案护理
- 2025年汽车经销行业深度研究报告
- 河南2025年生态环境部黄河流域生态环境监督管理局生态环境监测与科学研究中心招聘笔试历年参考题库附带答案详解
评论
0/150
提交评论