1、2.DFD2.DFD各成分的作用和命名注意事项各成分的作用和命名注意事项FDFDDFD图是软件工程师可以同时开图是软件工程师可以同时开发信息域和功能域的模型发信息域和功能域的模型,因此因此正确使用正确使用DFDDFD中的各元素是保证中的各元素是保证系统设计的根本系统设计的根本创建DFD图指南:F第第0 0层的层的DFDDFD图应将软件图应将软件/系统描述为一个整系统描述为一个整体处理项体处理项.F应仔细的标记主要的输入和输出应仔细的标记主要的输入和输出F通过隔离要表示在下一层的候选加工通过隔离要表示在下一层的候选加工,数据数据对象和存储而开始精划过程对象和存储而开始精划过程F所有的箭头和处理使
2、用有意义的名称标记所有的箭头和处理使用有意义的名称标记F当从一个级到下一级时要维护当从一个级到下一级时要维护“信息流的连信息流的连续性续性”F一次精化一个处理一次精化一个处理,经常存在一种使经常存在一种使DFDDFD过份过份复杂的自然趋势复杂的自然趋势.数据流数据流表示数据和数据流向表示数据和数据流向三个重要属性三个重要属性:F流向流向(从加工出发或流向加工从加工出发或流向加工)F数据组成数据组成F数据流名字数据流名字数据流命名方法和注意事项数据流命名方法和注意事项(讲义讲义P27)P27)F用名词或名词词组用名词或名词词组 不要使用意不要使用意义空洞的名词义空洞的名词F尽量使用现实系统已有名
3、字尽量使用现实系统已有名字,当当命名出现困难,考虑是否数据流命名出现困难,考虑是否数据流划分不恰当。划分不恰当。F不要把控制流作为数据流不要把控制流作为数据流加工的命名原则加工的命名原则(讲义讲义P28)P28)数据存储数据存储F分层数据流图中,数据存储分层数据流图中,数据存储 一般局限在某一层或某几层一般局限在某一层或某几层F命名方法与数据流相似命名方法与数据流相似举例:举例:数据源数据源数据池数据池没有输出!没有输出!没有输入!没有输入!数据源数据源数据池数据池数据源数据源数据存储数据存储数据源数据源数据存储数据存储数据存储数据存储数据存储数据存储数据流必须数据流必须起于且起于且/或或止于
4、加工止于加工加工至少有加工至少有一个输入数一个输入数据流和一个据流和一个输出数据流输出数据流DFDDFD的性质的性质与程序流程图的区别与程序流程图的区别(不同用途不同用途):):DFDDFD可以用来表示一个系统或软可以用来表示一个系统或软件在任何层次上的抽象。件在任何层次上的抽象。较大较大型软件系统型软件系统DFDDFD分成多层分成多层(子图、子图、父图概念父图概念),),可以表示数据流和功可以表示数据流和功能的进一步的细节。能的进一步的细节。怎样画怎样画DFDDFD(1)(1)先画出顶层先画出顶层DFDDFD。(2)(2)自顶向下画出各层自顶向下画出各层DFDDFD 分解原则:分解原则:分解
5、后的软件成分有相对独立功能分解后的软件成分有相对独立功能 一次分解不要加入细节过多一次分解不要加入细节过多 由外向里画由外向里画DFDDFD送货单送货单配送中心配送中心管理信息管理信息系系 统统配送中心管理信息系统的顶层配送中心管理信息系统的顶层DFDDFD供应商供应商领书单领书单路单路单门店销门店销售信息售信息连锁连锁门店门店订单订单发票发票订货单订货单库存管库存管 理理财务管财务管 理理1 1配送中心管理信息系统的零层配送中心管理信息系统的零层DFDDFD订货单表订货单表供供应应商商D1D1门门店店发票发票订货单订货单送货单送货单出库单、入库单出库单、入库单订货单表订货单表D3D3门门店店
6、商品编码商品编码2 2商品价商品价 格表格表D4D4订单表订单表D5D5采购管采购管 理理4 4销售管销售管 理理5 5配送管配送管 理理3 3路单路单门店销门店销售信息售信息缺货单表缺货单表D2D2订单订单商品商品价格价格记录记录正确正确订单订单销售预销售预测信息测信息缺货单缺货单缺货单缺货单入库入库1.11.1库存管理子系统的库存管理子系统的DFDDFD(第一层)(第一层)订货单表订货单表供供应应商商D1D1送货单送货单出货单表出货单表D3D3门门店店出库单出库单库存表库存表D2D2在库在库1.21.2出库出库1.31.3入库单号入库单号库存记录库存记录制作路单制作路单3.23.2配送管理
7、子系统的配送管理子系统的DFDDFD(第一层)(第一层)订货单表订货单表D1D1路单记录路单记录门店信息表门店信息表D2D2门门店店路单表路单表D3D3路单执行路单执行情况跟踪情况跟踪3.43.4确定配送确定配送 路线路线3.33.3配送计划配送计划门店信息门店信息拣货单表拣货单表D4D4制定配送制定配送 计划计划3.13.1门店信息门店信息路单路单配送计划配送计划路单路单分配货分配货 位号位号1.1.21.1.2入库子系统的入库子系统的DFDDFD(第二层)(第二层)货位文件货位文件DS2DS2订单文件订单文件DS1DS1入库单入库单库存商库存商品文件品文件DS4DS4修改库存修改库存商品信
8、息商品信息1.1.41.1.4记录入记录入 库单库单1.1.31.1.3货位信息货位信息合格合格商品商品检验送检验送 货单货单1.1.11.1.1入库单文件入库单文件DS3DS3货位号货位号货位号货位号新库存新库存信信 息息旧库存信息旧库存信息合格合格商品商品送送货货单单画分层画分层DFDDFD的指导原则的指导原则(1)(1)父图与子图的父图与子图的平衡平衡 模型细化时必须保持数据流的连模型细化时必须保持数据流的连续性,即每个细化部分的输入和输出续性,即每个细化部分的输入和输出必须保持不变必须保持不变(父图和子图输入数据父图和子图输入数据和输出数据应一致和输出数据应一致)。A1 14 4父图和
9、子图的平衡父图和子图的平衡2 23 3BFEGCDC3.13.1父图和子图的平衡父图和子图的平衡ED3.33.33.23.2购书单购书单教材购教材购销系统销系统教材购销系统的顶层教材购销系统的顶层DFDDFD学生学生领书单领书单缺书单缺书单进书通知进书通知书库保书库保管员管员购书单购书单缺书缺书单单销售销售教材教材采购采购教材教材1 12 2第二层第二层DFD(DFD(层层)教材购销系统教材购销系统教材存量表教材存量表学学生生F1F1缺书登记表缺书登记表F2F2书书库库保保管管员员进书通知进书通知教材入教材入库信息库信息领书单领书单 按书号按书号汇总缺书汇总缺书2.12.12.32.3第三层第
10、三层DFD(1DFD(1层层)采购子系统采购子系统(2.0)(2.0)待购教材表待购教材表F5F5教材一览表教材一览表F6F6书书库库保保管管员员进书通知进书通知教材存量表教材存量表F1F12.22.2按出版社按出版社统计缺书统计缺书修改教材库修改教材库存和待购量存和待购量F2F2缺书登记表缺书登记表缺缺书书单单教材入库信息教材入库信息购书单购书单缺书缺书单单销售销售采购采购1 12 2第二层第二层DFD(DFD(层层)教材购销系统教材购销系统教材存量表教材存量表学学生生F1F1缺书登记表缺书登记表F2F2书书库库保保管管员员进书通知进书通知领书单领书单教材入教材入库信息库信息1.21.2第三
11、层第三层DFD(1DFD(1层层)销售子系统销售子系统(1.0)(1.0)无效无效书单书单教材存量表教材存量表F1F1开发票开发票F2F2缺书登记表缺书登记表学学生生各班学生用书表各班学生用书表F3F3售书登记表售书登记表F4F41.11.1 审查审查有效性有效性1.31.3 登记并登记并开领书单开领书单学学生生1.51.5补售补售教材教材1.41.4登记登记缺书缺书购书单购书单发票发票领书领书 单单 有效有效购书单购书单教材入库信息教材入库信息父图与子图平衡的特例父图与子图平衡的特例领领书书单单1.31.3发票发票1.3.31.3.31.3.21.3.2教材教材1.3.11.3.1学生学生领
12、领书书单单父图父图子图子图发票学生教材发票学生教材画分层画分层DFDDFD的指导原则的指导原则F(2)(2)区分局部文件和局部外部项区分局部文件和局部外部项.1.1.2.2.3.31 1父图父图子图子图购书单购书单缺书缺书单单销售销售教材教材采购采购教材教材1 12 2第二层第二层DFD(DFD(层层)教材购销系统教材购销系统教材存量表教材存量表学学生生F1F1缺书登记表缺书登记表F2F2书书库库保保管管员员进书通知进书通知教材入教材入库信息库信息领书单领书单 按书号按书号汇总缺书汇总缺书2.12.12.32.3第三层第三层DFD(1DFD(1层层)采购子系统采购子系统(2.0)(2.0)待购
13、教材表待购教材表F5F5教材一览表教材一览表F6F6书书库库保保管管员员进书通知进书通知教材入库信息教材入库信息教材存量表教材存量表F1F12.22.2按出版社按出版社统计缺书统计缺书修改教材库修改教材库存和待购量存和待购量F2F2缺书登记表缺书登记表缺缺书书单单画分层画分层DFDDFD的指导原则的指导原则(3)(3)遵守加工的编号原则遵守加工的编号原则子图图号为分解的父图中的加工号子图图号为分解的父图中的加工号,同级子图在最后数字以序号区别。同级子图在最后数字以序号区别。画分层画分层DFDDFD的指导原则的指导原则(4)(4)分解的深度与层次分解的深度与层次F 按功能情况定,一般设深度按功能
14、情况定,一般设深度为为3-53-5F 如超过如超过5 5最好分解画,否则容最好分解画,否则容易出错易出错 实例实例图书馆管理系统功能:图书馆管理系统功能:F 购入新书购入新书F 读者借书读者借书F 读者还书读者还书F 图书注销图书注销F 查询统计查询统计购入新书:购入新书:F新书编卡片新书编卡片(包括包括:分类目录号、分类目录号、流水号流水号(唯一唯一)、书名、书名、作者、内容摘要、价作者、内容摘要、价 格、购书日期等信息格、购书日期等信息)F写入图书目录文件写入图书目录文件读者借书:读者借书:F 填借书单填借书单(包括:读者号、欲借图包括:读者号、欲借图 书分类目录号书分类目录号)F 检查读
15、者号有效性,无效,拒借检查读者号有效性,无效,拒借F 读者号有效,检查借书是否超数读者号有效,检查借书是否超数?已达已达5 5本,拒绝借;本,拒绝借;F 未超,可借,登记图书分类目录未超,可借,登记图书分类目录 号、读者号、借阅日期等,写回号、读者号、借阅日期等,写回 借书文件中。借书文件中。读者还书:读者还书:根据图书流水号,从借书文件根据图书流水号,从借书文件中读出与该书相关的借阅记录中读出与该书相关的借阅记录,查明借书日期,还书日期,求查明借书日期,还书日期,求借书时间,再重写回借书文件借书时间,再重写回借书文件中,超过期限罚款。中,超过期限罚款。图书注销:图书注销:F 从借阅图书文件中
16、删除从借阅图书文件中删除相关记录相关记录F 丢失图书时从图书文件丢失图书时从图书文件中删除相关记录中删除相关记录查询统计查询统计:F 查询某读者情况查询某读者情况F 查询某图书借阅情况查询某图书借阅情况F 统计图书借阅情况统计图书借阅情况顶层数据流图顶层数据流图图图书书管管理理人人员员图书管图书管理系统理系统系统时系统时钟钟读者读者图书管理要求图书管理要求查询要求查询要求统计表统计表图书情况图书情况读者情况读者情况罚款单罚款单当前日期当前日期检检 查查有效性有效性图书管图书管理要理要求求查询查询要求要求无效输入无效输入1 1处理处理查询查询3 3处理处理要求要求2 2有效查有效查询要求询要求有
17、效图书有效图书管理要求管理要求当前日期当前日期罚款单罚款单统计表统计表图书情况图书情况读读者者情情况况0 0层数据流图层数据流图要求类要求类型处型处理理有效图书有效图书管理要求管理要求当前当前日期日期无效输入无效输入2.12.1新书入库新书入库2.22.2借借入库单入库单罚款单罚款单一层数据流图一层数据流图(a)(a)借书借书2.32.3注销图书注销图书2.52.5借书借书2.42.4目目录录文文件件借书单借书单书书单单注销单注销单查询类查询类别处理别处理有效有效查询查询要求要求3.13.1读者查询读者查询3.23.2统统查询读查询读者情况者情况统计表统计表一层数据流图一层数据流图 (b)(b)图书查询图书查询借借书书文文件件要要查询图查询图书情况书情况3.33.3图书统计图书统计3.43.4计计求求读者文件读者文件目目录录文文件件读者情况读者情况图书情况图书情况