在软件详细设计阶段有四个要点:N-S图,PAD图,程序流程图,PDL语言
对于程序流程图的绘制较简单,想详细了解可以看:
程序流程图详解(六大部分) (zhihu.com)
对于PDL语言这里也不是重点,我们只需要知道以下几种结构:
1.顺序型:顺序型由几个连续的处理步骤依次排列构成。
2.选择型:选择型是指由某个逻辑判断式的取值决定选择两个处理中的一个。
3.while型:while型循环是先判定型循环在循环控制条件成立时,重复执行特定的处理。
4.until型:until型循环是后判定型循环,重复执行某些特定的处理,直到控制条件成立为止。
5.多情况选择型:多情况型选择列举多种处理情况,根据控制变量的取值,选择执行其一。
一般的题型中会给出一段PDL语言,根据PDL语言绘制PAD图和N-S图,以以下这段PDL语言为例,来看一看详细绘制步骤:
N-S图:
也叫盒图,由美国学者I.Nassi 和 B.Shneiderman提出,所以又称N-S图,可以清晰的表示程序的结构以及流程,其主要特征为“矩形框”。
对于N-S图,通过以下画法表示语言的结构:
1.首先划分代码块,该段代码有三段代码块:
2.根据代码块绘制相应模块,并且用until包裹:
3.绘制第一个模块的具体内容:
if x>0 then x1
else x2
endif;
4.绘制第二个模块:
S1;
5.绘制第三个模块,在第三个模块中,"if" 包裹着"if",先绘制大的"if"的框架:
if y>0 then y1
if z>0 then z1else z2
endif;
S2;
else y2;
endif;
6.填充小的"if"中的内容:
if z>0 then z1
else z2
endif;
PAD图:
全称为Problem Analysis Diagram,即问题分析图表,利用二维树形结构表示程序的控制流,也就是将程序功能的路线图给画出来,既可以表示程序的逻辑,也可以表示程序的结构,区分它的方法是程序的最左端有一条“竖线”,表示程序的“主线”。
对于PAD图,通过以下画法表示语言的结构:
PAD图有两种画法,如果该流程不是很复杂,可以画为一张图,如果很复杂就可以画多张子图,只要代码段的功能能够完整的描述出来
1.首先通过多张子图绘制,这一代码段有3个模块构成:
2.再画A的具体内容:
3.画B的具体内容:
其中C的具体结构为:
而对应的画在一张图的效果如下: