首页 百科知识 数据流图分析过程中可能出现的问题

数据流图分析过程中可能出现的问题

时间:2022-10-09 百科知识 版权反馈
【摘要】:由于数据流图的分层特点以及软件问题的复杂性,数据流图在实际的绘制过程中极易出现诸多问题。这些问题的出现导致需求分析得到的数据流图不能较好地体现用户的需求,最终使得软件的开发工作不能顺利进行。可想而知,没有平衡的数据流图存在上下需求不一致的重大错误,这也是数据流图在分层以及回溯之后需要重点考虑的问题。仍以“订货系统”为例,来说明上述几点数据流图分析过程中需要注意的问题。

3.2.4 数据流图分析过程中可能出现的问题

由于数据流图的分层特点以及软件问题的复杂性,数据流图在实际的绘制过程中极易出现诸多问题。这些问题的出现导致需求分析得到的数据流图不能较好地体现用户的需求,最终使得软件的开发工作不能顺利进行。故在数据流图的分析过程中需注意如下几点:

(1)数据流图仅由数据处理、外部实体、数据流及数据存储四大元素构成,其图形符号见第2章。因为,数据流图是逻辑模型,非物理模型,故它仅考虑数据在逻辑上的变换流程,无需考虑数据变换的各种物理实现细节,所以,它不同于系统流程图,它只需四种符号就可描述复杂软件系统的逻辑模型。

(2)任何数据流必须封闭在外部实体之间。软件的本质是将数据引入计算机,对其进行加工,然后再以外部世界的形式导出数据,提交给数据的消费者,所以,系统级的数据流应该能够封闭在数据源点和数据终点之间,对于任何不能封闭的数据流,分析人员应该考虑其存在的必要性。

(3)每个处理至少有一条输入数据流和一条输出数据流。处理的本质是对输入其中的数据进行加工、计算,并生成相应的输出提交给数据消费者。如果一个处理无需输入数据流即可变换出输出数据流,则分析人员需考虑该处理的真实性;如果一个处理仅接收数据,而不能生成任何输出结果,则分析人员需考虑该处理存在的必要性。

(4)任何数据流图子图必须与它上一层的一个处理(父处理)对应,即两者的输入数据流和输出数据流必须在数量和内容上保持一致,这就是数据流图父图与数据流图子图的平衡。可想而知,没有平衡的数据流图存在上下需求不一致的重大错误,这也是数据流图在分层以及回溯之后需要重点考虑的问题。

(5)可加入一些物质流帮助分析人员理解数据变换的过程,但在分析完成之后,需将这些物质流清除。

仍以“订货系统”为例,来说明上述几点数据流图分析过程中需要注意的问题。下图是一个没有封闭的数据流图。经过第2章数据流图的学习可以发现,数据流在生成之后只有3个最终归宿,即数据流可以流向数据处理、数据存储文件、数据终点,而对于系统级的数据流,它们却只能流向数据终点。所以,下图中的“订货报表”是一个系统级的输出数据流,应该由数据终点接收,却未表达出来,是一个非常明显的错误。

img25

图3.10 没有封闭数据流的数据流图

再如下图,a图只有输入数据流,而b图只有输出数据流,均是非常明显的错误。

img26

图3.11

最后,下面的a图是顶层流图,b图是L1层流图,非常明显,在b图中增加了缺货通知输出数据流,但其父图却未发现,故该父图和子图不平衡,是一个严重错误。

img27

图3.12-a 顶层数据流图

img28

图3.12-b L1层数据流图

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈