首页 > 知识点讲解
       数据流图到模块结构图的变换
知识路径: > 信息系统开发和运行管理知识 > 系统分析设计基础知识 > 系统总体结构设计、详细设计 > 系统总体设计 > 模块结构设计 > 
相关知识点:3个      
        结构化系统设计方法与结构化系统分析有着密切的联系。系统分析阶段,用结构化分析方法获得用DFD等工具描述的系统说明书。设计阶段则以DFD为基础设计系统的模块结构。本节讨论如何从数据流程图导出初始结构图。
        数据流程图有两种典型的结构:变换型(transform)结构和事务型(transaction)结构。对这两种结构,可以分别通过变换分折方法和事务分析方法导出标准形式的结构图。采用这些方法时,都是先设计结构图的顶端主模块,然后自顶向下逐步细化,最后得到满足数据流程图要求的系统结构。
        (1)变换分析。
        变换结构是一种线性结构。它可以明显地分成逻辑输入、主加工和逻辑输出。下图(a)是一个典型的例子。变换分析(Transform Analysis)过程可以分为三步:找出逻辑输入、主加工和逻辑输出;设计顶层模块和第一层模块;设计中、下层模块。下面分别进行讨论。
        ①找出系统的逻辑输入、主加工和逻辑输出。
        如果设计人员经验丰富,又熟悉系统说明书,则很容易确定系统的主加工。例如,几股数据流的汇合处往往就是系统的主加工。若一时不能确定哪是主加工,可以用下面的方法先确定哪些数据流是逻辑输入,哪些数据流是逻辑输出。
        从物理输入端开始,一步步向系统的中间移动,直至这样一个数据流:它已不能再被看作系统的输入,则它的前一个数据流就是系统的逻辑输入。在下图(a)中,从“原始数据”这个数据流开始向中间移动,逐个分析数据流,发现数据流“P3→P4”不能再被理解为系统的输入了。因此,数据流“P2→P3”是逻辑输入。
        同理,从物理输出端开始,逆数据流方向往中间移动,可以确定系统的逻辑输出。介于逻辑输入和逻辑输出之间的加工就是主加工。下图(a)中的处理框P3就是主加工。
        当然,实际的数据流程图往往比这个例子复杂,输入、输出数据流都可能有多个。这时,需要对每个输入、输出数据流进行分析,确定相应的逻辑输入、逻辑输出。处于这些逻辑输入、逻辑输出之间的处理框就是主加工。主加工可能包括数据流程图中的多个处理框。
        
        变换分析
        
        (续)
        从上面的分析过程可以看出,逻辑输入、逻辑输出的划分涉及对数据流的理解。各人的理解不同,结果就有差异,但一般出入不会太大。
        ②设计顶层模块和第一层模块
        找到主加工之后,遵照“自顶向下,逐步加细”的原则,设计各层的模块。每创建一个模块,必须确定该模块的外部特征:模块的功能、与其他模块的界面(调用时传送的信息)。为每个模块起一个名字,这个名字应当恰如其分地反映出这个模块的功能。
        系统的主加工就是系统的顶层模块,其功能就是整个系统的功能。
        第一层模块按输入、变换、输出等分支来处理:为每一个逻辑输入设计一个输入模块,其功能是为顶层模块提供相应的数据;为每一个逻辑输出设计一个输出模块,它的功能即是输出顶层模块的输出信息;为主加工设计一个变换模块,它的功能就是将逻辑输入变换成逻辑输出。第一层模块与顶层模块之间传送的数据应该同数据流程图相对应。
        上图(a)有一个逻辑输入,一个逻辑输出。所以对应结构图第一层模块共三个,即宽度为3,如上图所示。
        ③设计中、下层模块
        对输入、变换、输出模块逐个分解,便可得到初始结构图。
        输入模块要为系统提供逻辑输入,一般要进行变换,先确定实现最后变换的变换模块。这个变换模块显然又需要某些输入,对每个这样的输入,对应一个新的输入模块。用类似方法依次分解下去,直到最终的物理输入为止。
        对输出模块的分解与上面的办法相似。
        对变换模块的分解,目前还没有与上面类似的方法。此时,需要研究数据流程图中相应加工的组成情况。
        (2)事务分析。
        下图是事务型结构的例子。这种结构中,某个加工将它的输入分离成一串平行的数据流,分别执行后面的某些加工。对于这种类型的数据流程图,可以通过事务分析得到相应的结构图。
        
        事务型结构
        事务分析也是按“自顶向下,逐步细化”的原则进行的。先设计主模块,其功能就是整个系统的功能。下面有一个“分析模块”和“调度模块”。前者分析事务的类型,后者根据不同的类型调用相应的下层模块。这样得到与上图相应的结构图,如下图所示。这里作用范围可能在控制范围之外,从而产生控制耦合。对于不太复杂的系统,可以通过采用逐模块判别事务类型来解决这一问题。对于复杂的问题。还得分开设模块。
        
        事务分析
        前面讨论了变换分析、事务分析。但实际应用中并非这么典型。这两种分析方法往往交替使用。数据流图的某一个局部可能是变换型,另一个局部可能是事务型,如此等等。这时,一般以变换分析为主,辅以事务分析。各个系统有不同的特点,初始结构图的设计方法也不同。凡是满足系统说明书要求的结构图都可以作为初始结构图。这里称之为初始结构图,是因为数据流图并没有完全反映出用户的要求(如查询要求、控制流),因此,按数据流图导出的结构图还要参照说明、查询分析等文档进行调整。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有