详细设计结构化编程结构化程序控制结构(三种节点)正规程序基本程序封闭结构化定理人机界面设计问题设计流程设计工具流程图特征PAD图判定表PDL (伪代码)数据结构导向设计方法mldxhd图改进和层次图法例:统计文本中,每行的空间数目为:1.制作输入输出的两个独立的yxdkh地图,找出链接;2 .程序结构地图程序的复杂定量McCabe (流程图)范例的循环复杂度范例Halstead
结构化程序设计
结构化程序控制结构(三种节点) )。
正规手续
正规子程序:在正规程序中,还是正规程序的一部分
基本程序封闭结构
并行用; 串行用-
上述三种基本控制结构(顺序结构、选择结构、环路结构)和两种扩展控制结构(多分支结构、UNTIL环路结构)都是基本程序。
复合程序由基本程序构成,因此满足一体化结构,这种程序称为结构化程序。
结构化定理
人机界面设计问题1 .用户响应时间
2 .用户帮助(集成的实时提示、附加的用户手册) )。
3 .错误处理(友好程序、合法反馈、合理提示) ) )。
4 .命令交换(命令宏输入、一致性) ) ) ) ) ) ) ) )。
设计过程1 .常规交互指南(全局) ) ) ) ) ) )。
2 .信息显示指南(提示信息的不同显示方法)
3 .数据输入指南
工艺设计工具的程序流程图1 .易于理解
2 .忽视全局控制,不符合阶段性精益思想
3 .控制流程不受约束
4 .难以表示数据结构
盒子图像的特点1 .功能域(一个控制结构的范围)清晰,在一个盒子内。
2 .控制不能转移,只能逐步转移。
3 .从嵌套关系中可以看出全局数据和本地数据。
4 .嵌套关系和模块化容易表现。
PAD图1 .二维树结构图一定表示结构化程序。
2 .向右扩展的层次结构。 竖线的根数等于层数。
3 .易于表达数据结构和逻辑,支持自上而下,逐步细化。
4. 是面向高级程序语言的具有与每种高级语言相对应的符号,从而可以快速将PAD图转换为高级程序。
判定表的左上为变量集合,左下为行为集合,右上为变量的组合,右下为取的操作。
伪代码(PDL )适用于简单的逻辑结构,不像图形显示那么直观。
面向数据结构的设计方法mldxhd图
为了解决迁移和判定条件未显示在图中的问题而进行改善。
与层次图的区别1 .层次图的块表示模块,mldxhd图的块只有几个句子。
2 .整个层次结构图表示调用关系,一个模块不仅调用下级模块,而且完成其他操作。 mldxhd图表示配置关系,一个框只由下层构成,这里需要在一张图、字符串空间中处理。
mldxhd方法1 .分析输入输出数据的逻辑、结构,绘制两个独立的mldxhd图。
2 .查找与输入和输出相关的数据结构,包括直接因果关系、可同时处理的(数据结构相同,周期数和条件相同)。
3 .利用三条规则从数据结构mldxhd图导出程序mldxhd图。
针对具有对应关系的每一对数据单元,A:根据数据结构图中的层次在相应的程序结构图层中描绘处理框;
B:C:在输入/输出结构中剩下的数据单元所在的层次中,绘制与结构图对应的框。
4 .列出所有操作、条件,填写程序结构图。
示例:统计文本中每行的空格数要求
1 .绘制输入输出两个独立的yxdkh图,找出联系
2 .导出程序结构图
1 .正文文件输出表单=统计空间(程序) ) ) ) ) )。
2 .表体=程序体
3 .接受(打印)字符串的字符串信息=处理字符串
4 .调整输出格式和顺序,over。
程序的复杂定量McCabe (流程图) ) ) ) )。
1 .流图中的圆表示节点,汇也表示节点(因为流图的边必须终止于节点)。
2 .判定条件可以与操作合并,序列操作可以合并。
范例
循环复杂度等于区域数,等于边数-节点数2,等于判定节点数1
范例
Halstead方法