1、适当地为数据流、加工、数据存储、外部实体命名,名字反映该成分的实际含义,避免空洞的名字。
2、画数据流而不要画控制流。
3、每条数据流的输入或输出是加工。
4、一个加工的输出数据流不应与输入数据流同名,即使它们的组成成分相同。
5、允许一个加工有多条数据流流向另一个加工,也允许一个加工有两个相同的输出数据流流向两个不同的加工。
6、保持父图与子图的平衡。也就是说,父图中某加工的输入输出数据流必须与它的子图的输入输出数据流在数量和名字上相同。如果父图中的一个输入(输出)数据流对应于子图中几个输入(或输出)数据流,而子图中组成这些数据流的数据项全体正好是父图中的这一个数据流,那么它们仍然算是平衡的。
7、在自顶向下的分解过程中,若一个数据存储首次出现时只与一个加工有关,那么这个数据存储应作为这个加工的内部文件而不必画出。
8、保持数据守恒。也就是说,一个加工所有输出数据流中的数据必须影从该加工的输入数据流中直接获得或者是通过该加工能产生的数据。
9、每个加工必须既有输入数据流,又有输出数据流。
10、在整套数据流图中,每个数据存储必须既有读的数据流,又有写的数据流。但在某一张子图中可能只有读没有写,或者只有写没有读。