第二周 思考题
1.采用自顶向下,逐层分解的方法求解复杂问题。
2.数据流图的建模元素有:外部实体,加工,数据存储,数据流。
数据流图的构建步骤:
(1)构建顶层数据流图
顶层数据流图体现系统的应用领域及系统与外界的主要接口。主要有以下三部分组成:
a.一个加工,标识被开发的系统
b.与系统有关的全部外部实体(及数据源点、终点)
c.与外部实体相关的系统主要输入、输出数据流。
(2)构建0层数据流图
0层数据流图体现系统主体功能及各项功能与外部的接口情况,主体功能体现系统框架。由四部分组成:
a.加工。每个主体功能用一个加工表示。
b.主体功能相关的输入、输出数据流。
c.外部实体。这些外部实体分别通过输入数据流引发各主体功能执行,并接收执行后的输出结果。
d.数据存储。
(3)逐层细化数据流图
首先细化0层图,将一个主体加工分解为不同的加工,每个操作环节分别由一个加工表示,如果主体功能复杂,难于在1层图中全部细化完成,则可以再次细化,产生2层图。以此类推,知道内部的执行逻辑十分简明、不能再细化为止。
注意事项:
1) 适当地为数据流、加工、数据存储、外部实体命名,名字应该反应该成分的实际含义,避免空洞的名字。
2) 画数据流而不画控制流
3) 一个加工的输出数据流不应与输入数据流同名,即使他们的组成成分相同。
4) 允许一个加工有多条数据流流向另外一个加工,也允许一个加工有两个相同的输出数据流流向另外两个不同的加工。
5) 保持父图和子图平衡。也就是说,父图中某加工的输入、输出必须与它的子图的输入、输出数据流在数量和名字上相同。值得注意的是,如果父图的一个输入(或输出)数据流对应于子图中几个输入或输出数据流,而子图中组成这些数据流的数据项全体正好是父图中的这一个数据流,那么它们仍然算是平衡的。
6) 在自顶向下的分解过程中,若一个数据存储首次出现时只与一个加工有关,那么这个数据存储应作为这个加工的内部文件而不必画出。
7) 保持数据守恒。也就是说,一个加工所有输出数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。
8) 每隔加工必须既有输入数据流也有输出数据流。
9) 在整套数据流图中,每隔数据存储必须既又读的数据流,又有写的数据流。但在某一张子图中可能只有读没有写,或者只有写没有读。
3.数据字典中应包含:数据流条目、数据存储条目、数据项条目、加工条目
浙公网安备 33010602011771号