结构化分析方法(StructuredMethod)是强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。结构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,它有结构化分析(SA)、结构化设计(SD)和结构化程序设计(SP)等方法。
结构化分析方法给出一组帮助系统分析人员产生功能规约的原理与技术。它一般利用图形表达用户需求,使用的手段主要有数据流图、数据字典、结构化语言、判定表以及判定树等。
结构化分析的步骤如下:
①分析当前的情况,做出反映当前物理模型的DFD;
②推导出等价的逻辑模型的DFD;
③设计新的逻辑系统,生成数据字典和基元描述;
④建立人机接口,提出可供选择的目标系统物理模型的DFD;
⑤确定各种方案的成本和风险等级,据此对各种方案进行分析;
⑥选择一种方案;
⑦建立完整的需求规约。
结构化设计方法给出一组帮助设计人员在模块层次上区分设计质量的原理与技术。它通常与结构化分析方法衔接起来使用,以数据流图为基础得到软件的模块结构。SD方法尤其适用于变换型结构和事务型结构的目标系统。在设计过程中,它从整个程序的结构出发,利用模块结构图表述程序模块之间的关系。结构化设计的步骤如下:
①评审和细化数据流图;
②确定数据流图的类型;
③把数据流图映射到软件模块结构,设计出模块结构的上层;
④基于数据流图逐步分解高层模块,设计中下层模块;
⑤对模块结构进行优化,得到更为合理的软件结构;
⑥描述模块接口。
结构化程序设计原则和方法
在结构化程序设计的具体实施中,要注意把握以下原则和方法:
1.使用程序设计语言中的顺序、选择、循环等有限的控制结构表示程序的控制逻辑;
2.选用的控制结构只允许有一个入口和一个出口;
3.程序语句组成容易识别的语句序列块,每块只允许有一个入口和一个出口;
4.复杂结构的程序设计时,仅用嵌套的基本控制结构进行组合嵌套来实现;
5.严格控制GOTO语句的使用。其意思是指:
(1)用一个非结构化的语言去实现一个结构化的构造,既虽然有些高级语言有GOTO语句,但编程时不使用;
(2)若不使用GOTO语句会使功能模糊时,慎重地使用GOTO语句;
(3)在某种可以改善而不是损害程序可读性的情况下,慎重地使用GOTO语句。