今天,为了应对软考,我特意学习了数据流图的相关知识。
正方形(或立方体)表示数据的源点或终点;
圆角矩形(或圆形)代表变换数据的处理;
开口矩形(或两条平行横线)代表数据存储;
箭头表示数据流,即特定数据的流动方向。
数据流图有4种成分:源点和终点、处理、数据存储和数据流。画出上述定货系统的数据流图可采用以下步骤。
首先考虑数据的源点和终点,从上面对系统的描述可以知道“采购部每天需要一张订货报表”,“通过放在仓库中的终端把事务报告给订货系统”,所以采购员是数据终点,而仓库管理员是数据源点。
接下来考虑处理。再一次阅读问题描述,“采购部需要报表”,显然他们还没有这种报表,因此必须有一个用于产生报表的处理。事务的后果是改变零件库存量,而任何改变数据的操作都是处理,因此,对事务进行的加工是另一个处理。注意,在问题描述中并没有明显地提到需要对事务进行处理,但是通过分析可以看出这种需要。
最后考虑数据流和数据存储。系统把订货报表送给采购部,因此订货报表是一个数据流;事务需要从仓库送到系统中,显然事务是另一个数据流。产生报表和处理事务这两个处理在时间上明显不匹配:每当有一个事务发生时立即处理它,然而每天只产生一次订货报表,因此,用来产生订货报表的数据必须存放一段时间,也就是应该有一个数据存储(存储着订货报表的数据,每当订货报表的数据有更新时,可以立即获取最新的订货报表的数据,这样就可以实现每当有一个事务发生时立即处理它)。