1. 数据守恒原则
- 1.输入与输出的对应关系:每个加工环节的输入数据流和输出数据流之间必须存在明确的对应关系。输出数据流中的数据应该是对输入数据流中数据进行某种加工或处理后的结果。
- 2.数据量的守恒:在数据流图中,数据的数量(或称为数据量)在加工过程中应该保持不变。也就是说,加工环节不会增加或减少数据的数量,只会改变数据的形态或内容。
- 3.数据的可追溯性:数据流图中的每个数据项都应该能够被追溯到其来源,并且每个输出数据项都应该能够清3晰地说明其去向。这样可以确保数据的流动和变换过程是可理解和可验证的。
2. 守恒加工原则
- 1.对于同一个加工来说,输入与输出的名字必须不相同,即使它们的组成成分相同。这一规定有助于在数据流图中清晰地标识和区分不同的数据流,避免混淆和误解。
- 2.对于每一个加工而言,必须既有输入数据流,又有输出数据流。这确保了每个加工环节都有其明确的数据来源和输出目标,使得数据的流动和变换过程更加清晰和可控。
3. 外部实体与外部实体之间不存在数据流
- 1.个外部实体可以通过系统向另一个外部实体发送数据,但这需要经过系统内部的加工和转换过程。
4. 外部实体与外部存储之间不存在数据流
- 1.外部实体与外部存储之间的交互应该是通过系统内部的处理过程来间接实现的。
- 2.外部实体可以通过向系统提供数据,然后由系统将这些数据写入外部存储;同样地,系统也可以从外部存储中读取数据,并经过处理后提供给外部实体。
5. 数据存储与数据存储之间不存在数据流
- 1.在数据流图中,数据存储与数据存储之间不应该有直接的数据流,因为数据存储本身只是数据的静态存储点,并不对数据进行主动的处理或转换。
- 2.数据流应该发生在加工环节与数据存储之间,表示数据的读取(从数据存储到加工)或写入(从加工到数据存储)操作。
- 3.如果需要在两个数据存储之间进行数据的传递或转换,那么这种操作应该通过系统内部的加工环节来实现。也就是说,数据从一个数据存储中读取出来,经过加工环节的处理后,再写入到另一个数据存储中。
6. 父图与子图的平衡原则
- 1.输入输出的一致性:在分层数据流图中,父图中的某个加工的输入输出数据流必须与它的子图的输入输出数据流在数量和名字上保持一致。这意味着子图必须准确地反映父图中对应加工的所有数据流动情况,不得有遗漏或增加。
- 2.加工的对应性:父图中的每个加工在子图中都应有对应的表示,且子图中对这些加工的描述和定义应与父图保持一致。这有助于确保数据流图在不同层级之间的连贯性和一致性。
- 3.数据流的连续性:在数据流图中,数据流应连续不断地从父图流向子图,或从子图流回父图。任何数据流的中断或消失都可能导致数据流图的不完整或错误。
7. 数据流与加工有关,且必须经过加工
- 1.数据流是加工的前提:在数据流图中,数据流是数据从一处传递到另一处的表示。这些数据流通常是加工的输入或输出。没有数据流,加工环节就没有数据可处理,因此数据流是加工进行的前提条件。
- 2.加工是对数据流的转换:加工环节在数据流图中代表对数据的处理或转换。当数据流经过加工时,它可能会经历某种形式的变换,比如数据的筛选、计算、格式化或组合等。加工环节确保了数据流在系统中的有效处理和利用。
- 3.数据流必须经过加工:在数据流图中,数据流不应该直接从一个存储或外部实体流向另一个存储或外部实体,而应该通过至少一个加工环节。这是因为数据流图的主要目的是展示数据如何在系统中被处理和转换而不是仅仅展示数据的流动路径。如果数据流没有经过任何加工,那么它在系统中的存在就没有实际的意义。
- 4.加工与数据流的匹配:在绘制数据流图时,需要确保每个加工环节都有相应的输入和输出数据流。这有助于清晰地展示数据如何在系统中流动,以及每个加工环节如何对数据进行处理。
8.例题
8.1 例题1
在如下所示的数据流图中,共存在()个错误
A.4
B.6
C.8
D.9
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/94c02f384a52d454c86c7d476ad76e80.png)
1.E表示外部实体(Entity),P表示加工(Processing),DF表示数据流(Data Flow),
DS表示数据存储文件(Data Storage)。
2.E1->E2:违反外部实体与外部存储之间不存在数据流的原则,
外部实体与外部存储之间的交互应该是通过系统内部的处理过程来间接实现的。
3.E2->DS1:违反数据流与加工有关,且必须经过加工的原则,
E2的数据DF6必须经过加工才能到DS1。
4.P1:违反守恒加工原则,对于每一个加工而言,必须既有输入数据流,
又有输出数据流。P1只有输出没有输入。
5.P3:违反守恒加工原则,对于每一个加工而言,必须既有输入数据流,
又有输出数据流。P3只有输入没有输出。
6.P4->DS1:违反守恒加工原则,对于同一个加工来说,输入与输出的名字必须不相同,
即使它们的组成成分相同,DF4在输入和输出的名字重复了
7.DF7:违反数据存储与数据存储之间不存在数据流原则,数据存储与数据存储之间不应该
有直接的数据流,因为数据存储本身只是数据的静态存储点,
并不对数据进行主动的处理或转换。
8.因此有6处错误。