软件工程 第08章 面向数据流的设计方法课件.ppt
《软件工程 第08章 面向数据流的设计方法课件.ppt》由会员分享,可在线阅读,更多相关《软件工程 第08章 面向数据流的设计方法课件.ppt(46页珍藏版)》请在三一办公上搜索。
1、软件工程,教材:主编 曹哲 高诚 中国水利水电出版社,教案:河北工业大学廊坊分院 计算机系 黄南川,.,软件工程,第8章面向数据流的设计方法,面向数据流的设计方法,即通常所说的结构设计法(Structure Design,简称SD方法),由Yourdon和Constantine等人于1874年提出的,与结构化分析(SA)相衔接,根据对数据流的分析设计软件结构。本章所述技术用于软件的概要设计描述,包括模块、界面和数据结构的定义,这是所有后续开发的基础。SD方法对那些顺序处理信息且不含层次数据结构的系统最为有效,例如过程控制、复杂的数值分析过程、以及科学与工程方面的应用。当SD方法用于完全的数据处
2、理时,即使系统中使用层次数据也同样行之有效。,.,软件工程,8.1 SD方法的设计过程和有关概念,SD方法能方便地将数据流图转换为软件结构,其过程分为五步:1 确定信息流的类型;2 划定流界;3 将数据流图映射为程序结构;4 提取层次控制结构;5 通过设计复审和使用启发式策略进 一步精化所得到的结构。第3步所用映射方法涉及信息流的类型。信息流分为变换流和事务流两种类型。,.,软件工程,1)变换流,变换流 在基本系统模型(即顶级数据流图)中信息通常以“外部世界”所具有的形式进入系统,经过处理后又以这种形式离开系统。,输入流,外部表示,内部表示,信息,时间,信息流,输出流,变换流,.,软件工程,1
3、)变换流,典型的变换流变换流的特点是:经过变换B的数据流一部分先经过变换C到达变换E,然后另一部分经过变换D到达E;即C和D是顺序结构。,.,软件工程,2)事务流,事务流单个数据项称为事务(transaction)沿传入路径(也称接受通道)进入系统,由外部形式变换为内部形式后到达事务中心,事务中心根据数据项计值结果从若干动作路径中选定一条继续执行。可见它是一个选择结构。,事务中心,T,B,事务,C,A,事务流,.,软件工程,图面向数据流的设计,.,软件工程,8.2 变换分析,下面以“家庭保安系统”的传感器监测子系统为例说明变换分析的各个步骤。步骤一、复审基本系统模型 基本系统模型指顶级DFD和
4、所有由外部提供的信息。这一设计步骤是对系统规格说明书和软件需求规格说明书进行评估。这两个文档描述软件界面上信息的流程和结构。,.,软件工程,“家庭保安系统”的顶级数据流图,警报类别,家庭保安系统软件,控制面板,显示器,警报器,电话线,传感器,用户命令,显示信息,传感数据,电话拨号音频,.,软件工程,“家庭保安系统”的第一级DFD,电话拨号音频,配置数据,配置 数据,配置数据,用户命令处理,显示信息和状态,传感器监测,系统配置,控制面板,显示器,警报器,电话线,传感器,配置信息,配置 命令,启动/停止命令,原口令,有效口令,传感器信息,报警类别,传感数据,显示 信息,用户命令,口令,启动/停止系
5、统和状态,启动或停止消息,口令核对,用户交互子系统,图8-5,.,软件工程,8.2 变换分析,步骤二、复审和精化软件数据流图 这一步主要是对软件需求规格说明书中的分析模型进行精化,直至获得足够详细的DFD。例如,由“传感器监测子系统”的第一级和第二级DFD进一步推导出第三级数据流图,此时,每个变换对应一个独立的功能,可以用一个具有较高内聚度的模块实现,至此已有足够的信息可用于设计“传感器监测子系统”的程序结构,精化过程亦可结束。,.,软件工程,“传感器监测子系统”的第二级DFD,传感器信息,传感器标志的类型和位置,传感数据,警报类别,警报数据,显示格式,产生警报信号,电话拨号,异常数据判别,读
6、取传感数据,配 置 信 息,配置数据,传感器标识类型,电话号码,电话拨号音频,.,软件工程,“传感器监测子系统”的第三级DFD,配 置 信 息,警报条件码传感器标志定时信息,传感数据,电话号码对应的音频,电话拨号音频,传感器信息,号码表,电话号码,读取传感数据,获取响应信息,建立警报条件,选择电话号码,连通电话网,产生拨号脉冲,产生警报信号,格式化显示,产生显示,传感器标志的类型和位置,格式化标志的类型和位置,置传感器标识,警报数据,警报类别,配 置 数 据,.,软件工程,8.2 变换分析,步骤三、确定DFD的特性,判定它为变换流还是事务流。以图824所示DFD为例,数据沿一个传入路径进来,沿
7、三个传出路径离开,没有明显的事务中心,因此,该信息流应属变换流。步骤四、划定输入流和输出流的边界,孤立变换中心。,.,软件工程,8.2 变换分析,步骤五、执行“一级分解”(first level factoring)一级分解的目标是导出具有三个层次的程序结构,顶层为主控模块;底层模块执行输入、计算和输出功能;中层模块控制、协调底层的工作。,.,软件工程,8.2 变换分析,程序结构可用Yourdon结构图表示。结构图中,方框代表模块,框内名称表示模块的功能;方框之间的有向边(无二义时也可用无向边)表示模块间的调用关系。调用模块上无标志表示顺序调用:从左至右;菱形表示选择调用;弧形箭头表示循环调用
8、。但本书后面除了顺序调用外,并没有遵循这些规定。,a,c,b,a,c,b,a,b,a)顺序调用 b)选择调用 c)循环调用,.,软件工程,8.2 变换分析,对应于一级分解的上两层模块,即主控模块和下面几个中层控制模块:输入流控制模块,接收所有输入数据;变换流控制模块,对内部形式数据进行加工、处理;输出流控制模块,产生输出数据。,.,软件工程,8.2 变换分析,一级分解,输入流,变换流,变换流控制模块,输入流控制模块,输出流,主控模块,输出流控制模块,A,B,C,D,E,F,G,H,.,软件工程,8.2 变换分析,一个简单三叉结构,实际处理大型系统的复杂数据流时,可能需要多个模块对应一个模块的功
9、能。“一级分解”总的原则是,在完成控制功能并保持低耦合度、高内聚度的前提下尽可能地减少模块的数量。“传感器监测子系统”一级分解,其中控制模块的名字概括了所有下属模块的功能。,.,软件工程,传感器监测子系统一级分解结果,警报条件控制模块,传感器输入控制模块,主控模块,警报输出控制模块,配 置 信 息,.,软件工程,8.2 变换分析,步骤六、执行“二级分解”。二级分解的任务是把数据流图中每个处理框映射为结构图中的一个模块。其过程是从变换中心的边界开始沿输入、输出通道向外移动;从变换中心的输入(出)边界向外移动,把遇到的每个处理框映射为结构图中相应控制模块下的一个模块。,.,软件工程,二级分解,输入
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 第08章 面向数据流的设计方法课件 08 面向 数据流 设计 方法 课件

链接地址:https://www.31ppt.com/p-2138433.html