流程图ns图pad图pdlhipo.docx

上传人:b****5 文档编号:4495944 上传时间:2022-12-01 格式:DOCX 页数:11 大小:272.76KB
下载 相关 举报
流程图ns图pad图pdlhipo.docx_第1页
第1页 / 共11页
流程图ns图pad图pdlhipo.docx_第2页
第2页 / 共11页
流程图ns图pad图pdlhipo.docx_第3页
第3页 / 共11页
流程图ns图pad图pdlhipo.docx_第4页
第4页 / 共11页
流程图ns图pad图pdlhipo.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

流程图ns图pad图pdlhipo.docx

《流程图ns图pad图pdlhipo.docx》由会员分享,可在线阅读,更多相关《流程图ns图pad图pdlhipo.docx(11页珍藏版)》请在冰豆网上搜索。

流程图ns图pad图pdlhipo.docx

流程图ns图pad图pdlhipo

流程图、N-S图、PAD图、判定表、PDL、

HIPO图

程序流程图

程序流程图独立于任何一种程序设计语言,比较直观、清晰,易于学习掌握。

但流程图也存在一些严重的缺点。

例如流程图所使用的符号不够规范,常常使用一些习惯性用法。

特别是表示程序控制流程的箭头可以不受任何约束,随意转移控制。

这些现象显然是与软件工程化的要求相背离的。

为了消除这些缺点,应对流程图所使用的符号做出严格的定义,不允许人们随心所欲地画出各种不规范的流程图。

例如,为使用流程图描述结构化程序,必须限制流程图只能使用图3.25

所给出的五种基本控制结构。

 

2选悴吧

 

图4.3流程图

辿光判定璽谓坏

(DO-WHILE)

④后判老型碼环

的基本控制结构

任何复杂的程序流程图都应由这五种基本控制结构组合或嵌套而成。

作为上述五种控制结构相互组合和嵌套的实例,图示给岀一个程序的流程图。

图中增加了一些虚线构成的框,目的是便于理解控制结构的嵌套关系。

显然,这个流程图所描述的程序是结构化的。

图4.4流程图的基本控制结构

N-S图

Nassi和Shneiderman提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图,也叫做N-S图

为表示五种基本控制结构,在N-S图中规定了五种图形构件。

参看图4.5。

为说明N-S图的使用,仍用图4.4给出的实例,将它用如图4.6所示的N-S图表示。

如前所述,任何一个N-S图,都是前面介绍的五种基本控制结构相互组合与嵌套的结果。

当问题很复杂时,

N-S图可能很大。

图4.5N-S图

③WHILE蛍复型④UWIL聲复型

的五种基本控制结构

图4.6N-S图的实例

PAD

PAD是ProblemAnalysisDiagram的缩写,它是日本日立公司提出,由程序流程图演化来的,用结构化程序设计思想表现程序逻辑结构的图形工具。

现在已为ISO认可。

PAD也设置了五种基本控制结构的图式,并允许递归使用。

图4.7PAD

的基本控制结构

做为PAD应用的实例,图4.8给出了图4.4程序的PAD表示。

PAD所描述程序的层次关系表现在纵线上。

每条纵线表示了一个层次。

把PAD图从左到右展开。

随着程序层次的增加,PAD逐渐向右展开。

PAD的执行顺序从最左主干线的上端的结点开始,自上而下依次执行。

每遇到判断或循环,就自左而右进

入下一层,从表示下一层的纵线上端开始执行,直到该纵线下端,再返回上一层的纵线的转入处。

如此继续,直到执行到主干线的下端为止。

a1

f

b

-<5-r

i1

戶"SwxrHc|

IWTILXd'—冥4匚

图4.8PAD实例

判定表

当算法中包含多重嵌套的条件选择时,用程序流程图、N-S图或PAD都不易清楚地描述。

然而,判定表却

能清晰地表达复杂的条件组合与应做动作之间的对应关系。

仍然使用图4.4的例子。

为了能适应判定表条

件取值只能是"T"和"F"的情形,对原图稍微做了些改动,把多分支判断改为两分支判断,但整个图逻辑没有改变。

见图4.9。

与图3.31表示的流程图对应的判定表如图3.32所示。

在表的右上半部分中列出所有条件,"T"表示该条

件取值为真,"F"表示该条件取值为假,空白表示这个条件无论取何值对动作的选择不产生影响。

在判定表右下半部分中列岀所有的处理,画"Y"表示要做这个动作,空白表示不做这个动作。

判定表右半部的每

一列实质上是一条规则,规定了与特定条件取值组合相对应的动作。

图4.9不包含多分支结构的流程图实例

PDL(ProgramDesignLanguage)

PDL是一种用于描述功能模块的算法设计和加工细节的语言。

称为设计程序用语言。

它是一种伪码。

一般地,伪码的语法规则分为”外语法”和"内语法”。

外语法应当符合一般程序设计语言常用语句的语法规则;而内语法可以用英语中一些简单的句子、短语和通用的数学符号,来描述程序应执行的功能。

使用PDL语言,可以做到逐步求精:

从比较概括和抽象的PDL程序起,逐步写出更详细的更精确的描述。

PDL就是这样一种伪码。

它具有严格的关键字外语法,用于定义控制结构和数据结构,同时它的表示实际操作和条件的内语法又是灵活自由的,可使用自然语言的词汇。

下面举一个例子,来看PDL的使用。

从上例可以

看到,PDL语言具有正文格式,很像一个高级语言。

人们可以很方便地使用计算机完成PDL的书写和编辑工作。

PROCEDUREspellcheckIS查找错拼的单词BEGINsplitdocumentintosinglewords把整个文档分离成单词loodupwordsindictionary在

字典中查这些单词displaywordswhicharenotindictionary显示

字典中查不到的单词createanewdictionary造一新字典END

spellcheck

PDL作为一种用于描述程序逻辑设计的语言,具有以下特点:

•有固定的

关键字外语法,提供全部结构化控制结构、数据说明和模块特征。

属于外

语法的关键字是有限的词汇集,它们能对PDL正文进行结构分割,使之变

得易于理解。

为了区别关键字,规定关键字一律大写,其它单词一律小写。

•内语法使用自然语言来描述处理特性。

内语法比较灵活,只要写清楚就

可以,不必考虑语法错,以利于人们可把主要精力放在描述算法的逻辑上。

•有数据说明机制,包括简单的(如标量和数组)与复杂的(如链表和层次结构)的数据结构。

•有子程序定义与调用机制,用以表达各种方式的接口说明。

HIPO图(HierarchyplusInputProcessOutput)

HIPO最初只用做文档编写的格式要求,随后发展成比较有名的软件设计手段。

HIP0图采用功能框图和PDL

来描述程序逻辑,它由两部分组成:

可视目录表和IPO图。

可视目录表给出程序的层次关系,IPO图则为

程序各部分提供具体的工作细节。

1、可视目录表

可视目录表由体系框图、图例、描述说明三部分组成。

(1)体系框图

又称层次图(H图),是可视目录表的主体,用它表明各个功能的隶属关系。

它是自顶向下逐层分解得到的,是一个树形结构。

它的顶层是整个系统的名称和系统的概括功能说明;第二层把系统的功能展开,

分成了几个框;第二层功能进一步分解,就得到了第三层、第四层,…,直到最后一层。

每个框内都应有一个名字,用以标识它的功能。

还应有一个编号,以记录它所在的层次及在该层次的位置。

(2)图例

每一套HIPO图都应当有一个图例,即图形符号说明。

附上图例,不管人们在什么时侯阅读它都能对其符号的意义一目了然。

(3)描述说明

它是对层次图中每一框的补充说明,在必须说明时才用,所以它是可选的。

描述说明可以使用自然语言。

例如,应用HIPO法对盘存/销售系统进行分析。

得到如图4.10所示的工作流程图。

分析此工作流程图,可得如图3.34所示的可视目录表。

图4.11(a)是系统的层次图,图4.11(b)是后面IPO图的图例,图4.11(c)是描述说明。

、工柞>剥舌希丿>△弊'

■协啓事务

/

订触I

5

图4.10

盘存/销售系统工作流程图

M罚吿慕境

1曲

Rflffi序茯序其障

gB3W

图4.11

盘存/销售系统的可视目录表

2、IPO图

IPO图为层次图中每一功能框详细地指明输入、处理及输出。

通常,IPO图有固定的格式,图中处理操作部

分总是列在中间,输入和输出部分分别在其左边和右边。

由于某些细节很难在一张IPO图中表达清楚,常

常把IPO图又分为两部分,简单概括的称为概要IPO图,细致具体一些的称为详细IPO图。

概要IPO图用于表达对一个系统,或对其中某一个子系统功能的概略表达,指明在完成某一功能框规定的

功能时需要哪些输入,哪些操作和哪些输出。

图4.12是表示销售/盘存系统第二层的对应于H图上的1.1.0框的概要IPO图。

图4.12

对应H图上1.1.0框的概要IPO图没有指明输入一处理一输出三者之间的关系,

用它来

在概要IPO图中,

进行下一步的设计是不可能的。

故需要使用详细IPO图以指明输入一处

理一输出三者之间的关系,其图形与概要IPO图一样,但输入、输出最好

用具体的介质和设备类型的图形表示。

图4.13是销售/盘存系统中对应于

(、到LL2惟去

图4.13对

1.1.2框的一张详细IPO图。

应于H图1.1.2框的详细IPO图

3、利用HIPO进行迭代式细化设计

在软件设计时,解决设计问题通常需要经历一个认识逐步发展的过程,并且对一些问题还要经过反复的考

虑才可能达到比较满意的设计效果。

我们称此为迭代式细化设计。

HIPO能很好地适应这一要求。

图4.14

是利用HIPO进行迭代式细化设计的示意图。

从图中可看到,把可视目录表和IPO图结合起来,反复交替地

使用它们,可使得设计工作逐步深化,最终取得完满的设计结果。

其实这正是自顶向下,逐步求精的结构化程序设计思想。

HIPO有自己的特点。

首先,这一图形表达方法容易看懂。

其次,HIPO的适用范围很广,绝不限于详细设计。

事实上,画可视目录表就是与概要设计密切相关的工作。

如果利用它仅仅表达软件要达到的功能,则是需求分析中描述需求的很好的工具。

因为HIPO是在开发过程中的表达工具,所以它又是开发文档的编制工具。

开发完成后,HIPO图就是很好的文档,而不必在设计完成以后,专门补写文档。

=1+0.0-"■-

ri

11

11

=1.1+U

[1

=1.LII

=I.Lfl=1.2.0

'1

图4.14利用HIPO进行迭代式细化设计

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1