结构化设计方法:伪程序的程序流程图与盒图绘制

需积分: 50 1 下载量 198 浏览量 更新于2024-08-22 收藏 5.61MB PPT 举报
"软件工程第四章练习,涉及程序流程图和盒图的绘制,以及结构化设计的相关概念,包括模块独立性、耦合和内聚的度量标准。" 在软件工程中,结构化设计是一种重要的设计方法,尤其在第四章所讨论的结构化设计概述中,它强调了自顶向下、逐步求精和模块化的开发过程。结构化设计基于数据流,以分析阶段的文档(如数据流图、数据字典和软件需求说明书)为输入。设计过程分为总体设计和详细设计两部分。总体设计关注软件的宏观结构,确定模块划分、功能、接口以及模块间的调用关系;详细设计则专注于每个模块的具体实现。 结构化设计的原则包括抽象、模块化、信息隐藏和模块独立性。模块独立性是衡量软件质量的重要指标,它通过耦合和内聚来评估。耦合度量模块间的相互依赖,而内聚度量模块内部元素的紧密结合程度。高内聚、低耦合的模块更有利于维护和扩展。 模块是软件的基本构建单元,可以是程序、子程序或程序语句,它们有输入、输出、处理功能和内部数据四个要素。模块的外部特性(输入和输出)定义了模块的功能,而内部特性(处理和数据)则涉及其实现细节。在设计阶段,重点在于明确模块的外部行为,内部实现则留待后续阶段完成。 模块结构图是表达系统模块结构的图形表示,它由模块、调用关系、数据、控制和转接等元素组成,清晰地展示模块间的层次关系和通信方式。例如,方框代表模块,连线表示调用关系,箭头则指示数据流动的方向。 对于题目中的伪程序,我们需要将其转化为程序流程图和盒图。程序流程图是一种流程性的图表,用于直观表示程序的控制流;盒图(N-S图)则通过矩形框来表示程序的开始、结束、判断和循环,更注重逻辑结构的表示。在这个例子中,首先从START开始,然后进行条件判断(IF),如果条件p成立,则进入一个WHILE循环,循环执行F直到q不再满足条件;如果不满足p,则进入一个BLOCK(盒图中的顺序执行区),执行G和N,最后END BLOCK,然后程序结束。 这个练习旨在检验对结构化设计的理解和应用,包括如何将伪代码转换为图形表示,以及如何理解和应用模块化原则来设计软件结构。通过这样的练习,开发者可以更好地掌握软件设计的逻辑和规范,提高软件的质量和可维护性。