软件工程概论 Software Engineering.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.3 结构化设计方法 结构化设计方法(简称SD方法) 基于数据流的设计方法 把数据流图变换成软件结构 因为任何软件系统都可以用数据流图表示,所以面向数据流的设计方法理论上可以设计任何软件的结构。 4.3.1 概念 信息流有变换流和事物流两种类型。 变换流(transform flow) 特点:从同一数据源进入系统的数据,它在数据流图中流动的逻辑路径是相同的。 变换流 变换流的DFD是一个线性结构,由输入、变换和输出三部分组成。 变换是系统的变换中心,变换输入端的数据流为系统的逻辑输入,输出端为逻辑输出。而系统输入端的数据流为物理输入,输出端为物理输出。 物理输入 物理输出 物理输入 逻辑输入 逻辑输入 4.3.1 概念 事务流(transaction flow) 特点:“以事务为中心的”,也就是说,数据沿输入通路到达一个处理T,这个处理(事务中心)根据输入数据的类型在若干个动作序列中选出一个来执行。 4.3.1 概念 SC图(结构图) 用矩形框来表示模块, 用带箭头的连线表示模块间的调用关系, 在调用线的两旁,应标出传入和传出模块的数据流。 4.3.1 概念 SC图(结构图) 6种模块:传入模块、传出模块、变换模块、源模块、漏模块、控制模块。 4.3.1 概念 SC图中的模块调用 简单调用 B属于变换模块,C属于漏模块 选择调用:用菱形符号表示 循环调用:用叠加在调用线始端的环形箭头表示 结构化设计方法的五个基本步骤: 分析DFD:用一组分层的DFD来表示系统划分的功能、数据流和对数据流所做的处理。 确定DFD的特点及边界:区分事务流、变换流。 映射为软件结构:有两个设计映射策略:变换分析和事务分析可供采用。 细化后,得到初始结构图:顶层模块负责控制处理服务,实际工作较少;每个下层模块较少执行控制功能而较多作具体处理工作;底层模块应有高度聚合,较少有外部控制的特性。 获得最终的软件结构图:使用设计的质量度量:耦合性和内聚性。 变换分析 变换分析方法由以下四步组成: 重画数据流图; 区分有效(逻辑)输入、有效(逻辑)输出和中心变换部分; 进行一级分解,设计上层模块; 进行二级分解,设计中、下层模块。 重画数据流图:描述系统中的数据是如何流动的,确定其具有变换流特征。 区分有效(逻辑)输入、有效(逻辑)输出和中心变换部分 试探法来确定系统的逻辑输入和逻辑输出 中心变换部分 从输入设备获得的物理输入一般要经过编辑、数制转换、格式变换、合法性检查等一系列预处理,最后才变成逻辑输入传送给中心变换部分。 从中心变换部分产生的是逻辑输出,它要经过格式转换、组成物理块等一系列后处理,才称为物理输出。 * 物理输入 物理输出 * 进行一级分解,设计顶层和第一层 设计一个主模块,并用系统的名字为它命名,然后将它画在与中心变换相对应的位置上,作为系统的顶层。 第一层设计:为每一个逻辑输入设计一个输入模块;为每一个逻辑输出设计一个输出模块;为中心变换设计一个变换模块,它的功能是将逻辑输入转换成逻辑输出。 第一层模块与主模块之间传送的数据应与数据流图相对应。 * 例子 物理输入 物理输出 * 预变换? 后变换? * 进行二级分解,设计中、下层模块 自顶向下,逐层细化,为第一层的每一个输入模块、输出模块、变换模块设计它们的从属模块。 输入模块:一个子输入模块和一个子变换模块。 输出模块:一个子变换模块和一个子输出模块。 * 事务分析 某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能,这种数据流就叫做事务。 与变换分析一样,事务分析也是从分析数据流图开始,自顶向下,逐步分解,建立系统的结构图。 * 例子 事务中心 * 取得事务 给出结果 处理事务 * 事务分析方法的步骤: 识别事务源; 规定适当的事务型结构; 识别各种事务和它们定义的操作; 注意利用公用模块; 对每一事务,或对联系密切的一组事务,建立一个事务处理模块; 对事务处理模块规定它们全部的下层操作模块; 对操作模块规定它们的全部细节模块。 * 如果数据流不具有显著的事务流的特点,最好使用变换分析;反之,如果具有明显的事务中心,则应该采用事务分析技术。 变换型结构和事务型结构的混合结构:以变换分析为主,事务分析为辅。 首先利用变换分析方法把软件系统分为输入、中心变换和输出三个部分,设计上层模块。 然后根据数据流图各部分的结构特点,适当地利用变换分析或事务分析,就可以得到初始系统结构图的某个方案。 4.3.4 设计的后处理 为每个模块开发一份处理说明 为每个模块提供一份接口描述 定义局部的和全程的数据结构 给出所有的设计限制和约束 进行概要设计的评审 如果需要且合算的话,对结构进行优化。 4.4.1 数据设计的原则 数据

文档评论(0)

a13355589 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档