1、任何复杂的程序流程图都应由这五种基本控制结构组合或嵌套而成。作为上述五种控制结构相互组合和嵌 套的实例,图示给岀一个程序的流程图。图中增加了一些虚线构成的框,目的是便于理解控制结构的嵌套 关系。显然,这个流程图所描述的程序是结构化的。图4.4流程图的基本控制结构N-S图Nassi和Shneiderman提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图,也叫做 N-S图为表示五种基本控制结构,在 N-S图中规定了五种图形构件。参看图 4.5。为说明N-S图的使用,仍用图4.4给出的实例,将它用如图 4.6所示的N-S图表示。如前所述,任何一个N-S图,都是前面介绍的五种基本控制结构相互组
2、合与嵌套的结果。当问题很复杂时,N-S图可能很大。图4.5 N-S图WHILE蛍复型UWIL聲复型的五种基本控制结构图4.6 N-S图的实例PADPAD是 Problem Analysis Diagram 的缩写,它是日本日立公司提出,由程序流程图演化来的,用结构化程 序设计思想表现程序逻辑结构的图形工具。现在已为 ISO认可。PAD也设置了五种基本控制结构的图式,并允许递归使用。图 4.7 PAD做为PAD应用的实例,图4.8给出了图4.4程序的PAD表示。PAD所描述程序的层次关系表现在纵线上。 每条纵线表示了一个层次。把 PAD图从左到右展开。随着程序层次的增加, PAD逐渐向右展开。P
3、AD的执行顺序从最左主干线的上端的结点开始,自上而下依次执行。 每遇到判断或循环,就自左而右进入下一层,从表示下一层的纵线上端开始执行,直到该纵线下端,再返回上一层的纵线的转入处。如此继 续,直到执行到主干线的下端为止。a 1fb- 剥舌希丿 弊协啓事务/订触I5图 4.10盘存/销售系统工作流程图M罚吿慕境1曲Rflffi序 茯序 其障g B3W图 4.11盘存/销售系统的可视目录表2、IPO 图IPO图为层次图中每一功能框详细地指明输入、处理及输出。通常, IPO图有固定的格式,图中处理操作部分总是列在中间,输入和输出部分分别在其左边和右边。由于某些细节很难在一张 IPO图中表达清楚,常常
4、把IPO图又分为两部分,简单概括的称为概要 IPO图,细致具体一些的称为详细 IPO图。概要IPO图用于表达对一个系统,或对其中某一个子系统功能的概略表达,指明在完成某一功能框规定的功能时需要哪些输入,哪些操作和哪些输出。图4.12是表示销售/盘存系统第二层的对应于 H图上的1.1.0 框的概要IPO图。图 4.12对应H图上1.1.0框的概要IPO图 没有指明输入一处理一输出三者之间的关系,用它来在概要IPO图中,进行下一步的设计是不可能的。故需要使用详细 IPO图以指明输入一处理一输出三者之间的关系,其图形与概要 IPO图一样,但输入、输出最好用具体的介质和设备类型的图形表示。 图4.13
5、是销售/盘存系统中对应于(、到LL2惟去图4.13对1.1.2框的一张详细IPO图。应于H图1.1.2框的详细IPO图3、利用HIPO进行迭代式细化设计在软件设计时,解决设计问题通常需要经历一个认识逐步发展的过程,并且对一些问题还要经过反复的考虑才可能达到比较满意的设计效果。我们称此为迭代式细化设计。 HIPO能很好地适应这一要求。图 4.14是利用HIPO进行迭代式细化设计的示意图。从图中可看到, 把可视目录表和IPO图结合起来,反复交替地使用它们,可使得设计工作逐步深化,最终取得完满的设计结果。其实这正是自顶向下,逐步求精的结构 化程序设计思想。HIPO有自己的特点。首先,这一图形表达方法容易看懂。 其次,HIPO的适用范围很广,绝不限于详细设计。事实上,画可视目录表就是与概要设计密切相关的工作。如果利用它仅仅表达软件要达到的功能,则是需 求分析中描述需求的很好的工具。因为HIPO是在开发过程中的表达工具,所以它又是开发文档的编制工具。 开发完成后,HIP O图就是很好的文档,而不必在设计完成以后,专门补写文档。=1+ 0.0 - -ri1 1=1. 1 + U1=1. LII=I.Lfl = 1.2.01图4.14利用HIPO进行迭代式细化设计
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1