单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,数据流图,例题说明,定货系统数据流图,定货系统,仓库管理员,采购员,事务,定货报表,主要内容,数据流图中的成分,数据流图中的符号,画数据流图的方法,数据流的注意事项,举例,定货系统,患者监护系统,数据流图的作用,数据流图中的成分,数据流图是一种描述,数据变换,的图形工具,系统接受,输入,的数据,经过一系列的,变换,,最后,输出,结果数据。,数据流图有四个基本成分:加工 数据流 数据存储 数据源和数据终点,数据源和数据终点是系统与环境的接口,是系统之外的实体,可以是人物或其它软件。数据源是起点,数据终点是终点。,数据流图中的符号,组成元素,:四种成分,数据的源点,/,终点,变换数据的加工,数据存储,数据流,定货系统数据流图,定货系统,仓库管理员,采购员,事务,定货报表,数据源点,数据终点,加工,数据流,画数据流图的方法,第一步,,从问题描述中提取数据流图的四种成分;,源点和终点,加工,数据流和数据存储,第二步,,根据分离的四种成分,画基本系统模型;,第三步,,进一步对基本系统模型细化,得到功能 级数据流图;,第四步,,进一步对功能级数据流图进行细化,当 进一步分解将涉及如何具体实现一个功能 时就不应该再分解了。,软件系统,源点,终点,输入,数据流,输出,数据流,分层的数据流图,软件系统,源点,终点,1,源点,终点,3,2,源点,终点,1.1,1.3,1.2,2.1,2.3,2.2,3.1,3.3,3.2,2.4,注意事项,1.,并不是所有数据存储和数据流都能直接从问题描述中提取出来;,2.,在对数据流图分层细化时,必须保持,信息的连续性,。即,,分解前、后的输入,/,输出数据流必须相同,。,3.,在功能级数据流图中,可根据需要给处理和数据存储增加编号,便于引用和追踪。同时编号应反映处理的分解层次;,4.,一张数据流图中的包含的加工控制在,59,个,,因此数据流图应该,使用分层和画分图的方法,。,定货系统,某工厂有一个库房,存放该厂生产需要的物品,库房中的各种零件的数量及各种零件库存量临界值等数据记录在库存文件中,当库房中零件数量有变化时,应更新库存文件,若某种零件的库存量少于库存临界值,则报告采购部门以便订货,每天向采购部门送一份采购报告。,第一步:从问题描述中提取数据流图的四种成分,某工厂有一个库房,存放该厂生产需要的物品,库房中的各种零件的数量及各种物品库存量临界值等数据记录在库存文件中,当库房中零件数量有变化时,应更新库存文件,若某种零件的库存量少于库存临界值,则报告采购部门以便订货,每天向采购部门送一份采购报告。,第二步,:根据分离的四种成分,画基本系统模型,定货系统,仓库管理员,采购员,事务,定货报表,定货系统基本系统模型,第三步,:对基本系统模型细化,得到功能级数据流图,功能总结:,零件的入库和出库称为事务,通过,CRT,终端把事务报告给定货系统,当某种零件的库存数量少于库存量临界值时就应该再次定货。,第三步,定货系统功能:,处理事务、产生报表,“处理事务”有关的数据流:,事务(录入)、库存清单(保存、查询)、定货信息(缺货时产生),“产生报表”有关的数据流:,定货信息(报表数据来源)、定货报表(结果),处理,事务,仓库,管理员,采购员,事务,定货报表,产生,报表,定货信息,库存清单,库存清单,定货信息,定货信息,第四步,:进一步对功能级数据流图进行细化,定货信息:,源于对事务的处理,当该物品库存数量少于临界值时产生该信息。,“事务处理”功能包括三个子功能:,接受事务、更新库存清单、处理定货,更新,库存,清单,仓库,管理员,采购员,事务,定货报表,产生,报表,定货信息,库存清单,库存清单,定货信息,定货信息,接受,事务,处理,定货,事务,库存信息,完善,主要成分编号,编号反映处理和数据的层次关系,加工,:,处理事务,1,接受事务,1.1,更新库存清单,1.2,处理定货,1.3,产生报表,2,数据存储,:,库存清单,D1,定货信息,D2,1.2,更新,库存,清单,仓库,管理员,采购员,事务,定货报表,2,产生,报表,D2,定货信息,D1,库存清单,库存清单,定货信息,定货信息,1.1,接受,事务,1.3,处理,定货,事务,库存信息,数据流图的原则,1,每个加工,至少,有一个输入数据流和一个输出数据流。,2,允许一个加工有多个数据流流向另一个加工,也允许一个加工有两个相同的输出数据流流向两个不同的加工,.,3,保持父图与子图,平衡,:,父图某加工的输入输出数据流必须与子图的输入输出流在数量和名字上相同,.,4,保持数据守恒,易混淆的知识,数据流是在处理、数据存贮和源点,/,终点之间传递的,动态数据,,不是控制的转移流向。,数据流图只能表示软件对数据的,处理动作,,而不反映处理的执行顺序。,在数据流图中应描绘,所有可能,的数据流向,而不应该描绘出现某个数据流的条件。,找错误,模型加工子系统,2,Database,门诊病历子系统,1,进货管理子系统,3,帐目管理子系统,4,系统管理子系统,5,牙科诊所管理系统,图,a,3.1,3.2,3.3,客户,帐号,数量,提货单,子 图,图,b,显然,图,a,中子图与父图不平衡,如果有如下数据条目:,定货单,=,客户,+,账号,+,数量,则子、父图平衡,父 图,1,3,A,n,T,B,C,M,2,2,子 图,2.1,2.2,2.3,N,P,S,T,Q,3,1,2,4,3,6,5,定货单,提货单,父 图,3,例 考察下图中子父图的平衡,患者监护系统,医院对患者监护系统的基本要求是随时接受每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统打印出某个指定病人的病情报告。,第一步:从问题描述中提取数据流图的四种成分,医院对患者监护系统的基本要求是随时接受每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统打印出某个指定病人的病情报告。,第二步,:根据分离的四种成分,画基本系统模型,监护系统,病人,护士,生理信号,病情报告,监护系统基本系统模型,警告信息,时钟,日期,时间,护士,要求报告,患者日志,安全范围,第三步,:对基本系统模型细化,得到功能级数据流图,功能总结:,随时接受病人生理信号,分析信号,产生警告信息,定时取样生理信号,更新日志,产生病情报告,第三步,监护系统功能:,接受信号,:接受病人生理信号,分析信号:,产生危急病人信息,产生警告:,发出警告信息,定时取样:,产生定时的生理信号,更新日志,:生成日志数据,更新患者日志,产生报告,:产生指定患者的病情报告,“接受信号”有关的数据流:,病人基本情况、生理信号,“分析信号”有关的数据流:,生理信号、安全范围、危急病人信息,“产生警告”有关的数据流:,危急病人信息、警告信息,“定时取样”有关的数据流:,日期、时间、定时的生理信号,“更新日志”有关的数据流:,生理信号、日志数据、患者日志,“产生报告”有关的数据流:,护士要求、日志数据、病情报告,数据流图的作用,作为,交流信息,的工具,描绘系统分析员对系统的设想,供审查,作为,分析和设计,的工具,描绘系统所完成的功能,有助于更详细的,设计步骤,面向数据流的设计方法,