软件工程讲义-数据流图

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

泉州师范学院数计学院计算机科学与技术专业软件工程讲义数据流图泉州师范学院数计学院计算机科学与技术专业软件工程讲义本次课要解决的问题•什么是数据流图?•数据流图有什么用?•怎么画数据流图?•使用数据流图时应该注意哪些问题?泉州师范学院数计学院计算机科学与技术专业软件工程讲义仓库管理员采购员图2:定货系统的功能级数据流图(1层)产生报表处理事务D1库存清单D2定货信息12订货信息订货信息出入库事务定货报表库存清单数据流图示例泉州师范学院数计学院计算机科学与技术专业软件工程讲义一、数据流图的概念•数据流图(DataFlowDiagram,DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。它与数据字典一起用来构成系统的逻辑模型。泉州师范学院数计学院计算机科学与技术专业软件工程讲义二、数据流图的用途•数据流图是分析员与用户之间极好的交流工具。•数据流图的另一个主要用途是作为分析和设计的工具,是软件项目开发人员之间的通信工具。•数据流图也是软件测试时的重要文档。•不仅传统生命周期方法学使用数据流图,在面向对象方法学中也可使用数据流图。泉州师范学院数计学院计算机科学与技术专业软件工程讲义三、数据流图的构成及符号1、数据流图的构成与基本符号•源点与终点:通常指外部对象,用长方形或长方体表示。•处理(加工):可以代表一系列程序、单个程序或者程序的一个模块,还可代表人工过程等,用圆形或圆角矩形表示。•数据存储:指处于静止状态的数据,用平行线或开口矩形表示。•数据流:指处理运行中的数据,用箭头表示。源点/终点源点/终点处理处理数据存储数据存储数据流泉州师范学院数计学院计算机科学与技术专业软件工程讲义仓库管理员采购员图2:定货系统的功能级数据流图(1层)产生报表处理事务D1库存清单D2定货信息12订货信息订货信息出入库事务定货报表库存清单源点终点数据流数据存储处理处理数据存储数据流泉州师范学院数计学院计算机科学与技术专业软件工程讲义三、数据流图的构成及符号2、数据流图的附加符号T*ABC数据A和B同时输入才能变换成数据CATBC*数据A变换成B和C*:表示数据流之间的“与关系”,实际使用时*常可省略泉州师范学院数计学院计算机科学与技术专业软件工程讲义三、数据流图的构成及符号2、数据流图的附加符号+:表示数据流之间的“或关系”T+ABC数据A或B,或A和B同时输入变换CATBC+数据A变换成B或C,或B和C泉州师范学院数计学院计算机科学与技术专业软件工程讲义三、数据流图的构成及符号2、数据流图的附加符号+:表示数据流之间的“异或关系”+TABC只有数据A或只有数据B(但不能A、B同时)输入时变换成CATBC+数据A变换成B或C,但不能变换成B和C泉州师范学院数计学院计算机科学与技术专业软件工程讲义三、数据流图的构成及符号3、附加符号的若干例子成绩处理*学生档案学生成绩成绩通知单工资处理工资数据工资表银行工资明细表职工*泉州师范学院数计学院计算机科学与技术专业软件工程讲义三、数据流图的构成及符号3、附加符号的若干例子导弹袭击本·拉登位置信息本·拉登被消灭报告本·拉登侥幸逃脱报告+导弹袭击恐怖分子藏身地信息恐怖分子伤亡报告平民伤亡报告+泉州师范学院数计学院计算机科学与技术专业软件工程讲义四、画数据流图的步骤1、理解问题描述。2、分析问题描述,提取数据流图的4种成分。3、画顶层数据流图,即系统的基本模型。4、把基本模型细化,画各级明细数据流图。5、检查分层细化时是否保持信息的连续性,即当把一个处理分解为一系列处理时,分解前和分解后的输入输出数据流必须相同。这条规则也称为数据流图的数据平衡原则。泉州师范学院数计学院计算机科学与技术专业软件工程讲义五、数据流图实例——定货系统1、问题描述:假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。泉州师范学院数计学院计算机科学与技术专业软件工程讲义五、数据流图实例——定货系统2、分析问题描述,提取数据流图的4种成分。源点/终点:采购员(终点),仓库管理员(源点)。处理:产生报表,处理事务数据流:(1)定货报表(零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者)(2)出入库事务(零件编号,事务类型,数量)数据存储:(1)定货信息(零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者)(2)库存清单(零件编号,库存量,库存量临界值)泉州师范学院数计学院计算机科学与技术专业软件工程讲义系统的基本模型由若干个数据源点/终点以及一个处理组成,这个处理代表了系统对数据加工变换的基本功能。五、数据流图实例——定货系统3、画顶层数据流图,即系统的基本模型。仓库管理员定货系统采购员定货报表图1:定货系统的顶层数据流图(0层)出入库事务泉州师范学院数计学院计算机科学与技术专业软件工程讲义五、数据流图实例——定货系统4、把基本模型细化,画各级明细数据流图。第一次细化,画出功能级数据流图,图中有对处理及数据存储进行编号。数据存储和数据流只不过是同样数据的两种不同形式。仓库管理员采购员图2:定货系统的功能级数据流图(1层)产生报表处理事务D1库存清单D2定货信息12定货信息定货信息出入库事务定货报表库存清单泉州师范学院数计学院计算机科学与技术专业软件工程讲义五、数据流图实例——定货系统4、把基本模型细化,画各级明细数据流图。第二次细化,把处理事务的功能进一步分解后的数据流图。仓库管理员接收事务出入库事务图3:把处理事务的功能进一步分解后的数据流图(2层)更新库存清单处理定货D1库存清单出入库事务D2定货信息采购员产生报表1.11.2库存清单库存信息定货信息定货信息1.32定货报表当进一步分解将涉及如何具体地实现一个功能时就不应该再分解了。泉州师范学院数计学院计算机科学与技术专业软件工程讲义五、数据流图实例——定货系统5、检查分层细化时是否保持信息的连续性。仓库管理员定货系统采购员定货报表图1:定货系统的顶层数据流图(0层)出入库事务仓库管理员采购员图2:定货系统的功能级数据流图(1层)产生报表处理事务D1库存清单D2定货信息12定货信息定货信息出入库事务定货报表库存清单泉州师范学院数计学院计算机科学与技术专业软件工程讲义五、数据流图实例——定货系统5、检查分层细化时是否保持信息的连续性。仓库管理员采购员图2:定货系统的功能级数据流图(1层)产生报表处理事务D1库存清单D2定货信息12定货信息定货信息出入库事务定货报表库存清单仓库管理员接收事务出入库事务图3:把处理事务的功能进一步分解后的数据流图(2层)更新库存清单处理定货D1库存清单出入库事务D2定货信息采购员产生报表1.11.2库存清单库存信息定货信息定货信息1.32定货报表泉州师范学院数计学院计算机科学与技术专业软件工程讲义六、使用数据流图的几点说明1、各个成分的命名数据流与数据存储的命名•名字应代表整个数据流(或数据存储)的内容,不能仅仅反映它的某些成分。•不要使用空洞的、缺乏具体含义的名字。•如果命名时遇到了困难,很可能是对数据流图分解不当造成的,应试试重新分解。处理的命名•名字应该反映整个处理的功能,而不是它的部分功能。•最好由一个具体及物动词加一个宾语组成。避免使用空洞的词。•如果命名遇到困难,可能是分解不当造成,应考虑重新分解。数据源点/终点的命名•不属于数据流图的核心内容,通常是目标系统的外围环境部分。通常采用它们在问题域中习惯使用的名字。泉州师范学院数计学院计算机科学与技术专业软件工程讲义六、使用数据流图的几点说明2、在分析下层的数据流图时,有时没有给出源点与终点。3、从一个数据存储中取出来的或放进去的数据通常和原来存储的数据相同,即数据存储和数据流只不过是同样数据的两种不同形式。这时候,与数据存储同名的数据流经常被省略。4、当进一步分解将涉及如何具体地实现一个功能时就不应该再分解了。5、当对数据流图分层细化时必须保持信息的连续性,即当把一个处理分解为一系列处理时,分解前和分解后的输入输出数据流必须相同。这条规则也称为数据流图的平衡原则。泉州师范学院数计学院计算机科学与技术专业软件工程讲义六、使用数据流图的几点说明6、对处理进行编号应该分级进行。7、如果代表同一个事物的同样符号在图中出现在n个地方,则在这个符号的一个角上画n-1条短斜线做标记。仓库管理员仓库管理员采购员采购员泉州师范学院数计学院计算机科学与技术专业软件工程讲义六、使用数据流图的几点说明8、当用数据流图辅助物理系统的设计时,可在数据流图上画出许多组自动化边界,每组自动化边界可能意味着一个不同的物理系统,因此相同的逻辑模型可能导致不同的物理实现。泉州师范学院数计学院计算机科学与技术专业软件工程讲义六、使用数据流图的几点说明仓库管理员接收事务出入库事务更新库存清单处理定货D1库存清单出入库事务D2定货信息采购员产生报表1.11.2库存清单库存信息定货信息定货信息1.32定货报表图4:以联机方式更新库存清单泉州师范学院数计学院计算机科学与技术专业软件工程讲义六、使用数据流图的几点说明仓库管理员接收事务出入库事务更新库存清单处理定货D1库存清单D2定货信息采购员产生报表1.11.2库存清单库存信息定货信息定货信息1.32定货报表图5:以批量方式更新库存清单D3出入库事务出入库事务出入库事务泉州师范学院数计学院计算机科学与技术专业软件工程讲义七、小结•数据流图描绘信息流和数据从输入移动到输出的过程中所经受的变换,它用来构造系统的逻辑模型。•数据流图可以用来与用户沟通及软件项目开发人员之间也用它来进行交流。•数据流图是可用在系统分析、设计及测试之中。•数据流图由源点与终点、处理、数据流、数据存储4种成分组成。•画数据流图时要分层进行,要遵循数据平衡原则。泉州师范学院数计学院计算机科学与技术专业软件工程讲义作业:考务处理系统•题目:某考务处理系统的数据流图如图A-D所示。该系统有如下功能:(1)对考生送来的报名单进行检查。(2)对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站。(3)对阅卷站送来的成绩清单进行检查,并根据考试中心制订的合格标准审定合格者。(4)制作考生通知单送给考生。(5)进行成绩分类统计(按地区、年龄、文化程度、职业、考试级别等分类)和试题难度分析,产生统计分析表。ABCD泉州师范学院数计学院计算机科学与技术专业软件工程讲义作业:考务处理系统•部分数据流的组成如下所示:报名单=地区+序号+姓名+性别+年龄+文化程度+职业+考试级别+通信地址正式报名单=报名单+准考证号准考证=地区+序号+姓名+准考证号+考试级别考生名单={准考证号+考试级别}(其中{w}表示w重复多次)统计分析表=分类统计表+难度分析表考生通知单=考试级别十准考证号+姓名+合格标志+通信地址ABCD泉州师范学院数计学院计算机科学与技术专业软件工程讲义作业:考务处理系统[问题1]指出图C的数据流图中①,②,③的数据流名。[问题2]指出图B数据流图中有哪些错误,另外有什么成分可删去。[问题3]指出图D的数据流图中在哪些位置遗漏哪些数据流;也就是说,要求给出漏掉了哪个加工的输入或输出数据流的名字。例如,加工2.5的输出数据流“难度分析表”。ABCD泉州师范学院数计学院计算机科学与技术专业软件工程讲义1登记报名单2统计成绩考生名册试题得分清单报名单不合格报名单准考证考生名单合格标准成绩清单错误成绩单统计分析表图B考生通知单1.1检查报名单1.2编准考证号1.3登记考生考生名册①合格报名单正式报名单②③不合格报名单图CABCD泉州师范学院数计学院计算机科学与技术专业软件工程讲义1登记报

1 / 37
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功