软件工程(十二)

 

过程设计的工具程序流程图(程序框图)程序流程图:是一种描述程序的控制结构流程和指令执行情况的有向图。历史...



过程设计的工具

程序流程图(程序框图)
程序流程图:是一种描述程序的控制结构流程和指令执行情况的有向图。
历史悠久、使用广泛、直观描绘控制流程、便于初学者掌握。

程序流程图的缺点:
1)程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。
2)程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制。
3)程序流程图不易表示数据结构。

盒图(N-S图)
N-S图特点:
(1)功能域明确,可从盒图一眼看出。
(2)不可能任意转移控制。
(3)很容易确定局部和全程数据的作用域。
(4)很容易表现嵌套关系,也可以表示模块的层次结构。





PAD图
PAD(Problem Analysis Diagram)是问题分析图。
日立公司发明和推广(1973)。
PAD图表示方法:
用二维树形结构的图来表示程序的控制流,将这种图翻译成程序代码比较容易。




PAD图的优点:
1)使用表示结构化控制结构的PAD符号所设计出来的程序必然是结构化程序;
2)PAD图所描绘的程序结构十分清晰。
图中最左面的竖线是程序的主线,即第一层结构。随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。PAD图中竖线的总条数就是程序的层次数;
3)用PAD图表现程序,通俗易懂,程序从图中最左竖线上端的结点开始执行,自上而下,从左向右顺序执行,遍历所有结点;
4)容易将PAD图转换成高级语言源程序,这种转换可以用软件工具自动完成;
5)可用于表示程序逻辑,也可用于描绘数据结构;
6)PAD图的符号支持自顶向下、逐步求精的方法。

判定表

当算法中包含多重嵌套的条件选择时,用程序流程图、盒图、PAD图等不易清楚描述,判定表可以清晰地表示复杂的条件组合与应作的动作之间的对应关系。
判定表由四部分组成:
左上部列出所有条件
左下部是所有可能做的动作
右上部表示各种条件组合
右下部是和每种条件组合相对应的动作

缺点:(1)不能同时清晰地表示顺序和重复等处理特性
(2)初次接触这种工具的人需简短的学习过程
(3)数据元素的值多于两个时,判定表的简洁程度也将下降。

判定树
判定树是判定表的变种。



优点:形式简单,无需任何说明,可直接看出其含义,易于掌握和使用。


    关注 初级IT圈


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册