06章 详细设计

在这里插入图片描述

6.1 结构程序设计

在这里插入图片描述
实际上用顺序结构和循环结构(又称DO-WHILE结构)完全可以实现选择结构(又称IF-THEN-ELSE结构) ,因此,理论上最基本的控制结构只有两种。

1968年Dijkstra再次建议从一切高级语言中取消GO TO语句,只使用3种基本控制结构写程序。学界认识到不是简单地去掉GO TO 语句的问题,而是要创立一种新的程序设计思想、方法和风格。

1971年IBM公司在纽约时报信息库管理系统的设计中成功地使用了结构程序设计技术

1972年IBM公司的Mills进一步提出,程序应该只有一个入口和一个出口,补充了结构程序设计的规则。

结构程序设计经典定义:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。

结构程序设计更全面的定义:结构程序设计是尽可能少用GO TO语句的程序设计方法。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。
在这里插入图片描述
如果只允许使用顺序、IF-THEN-ELSE型分支和DO-WHILE型循环这3种基本控制结构,则称为经典的结构程序设计;

如果除了上述3种基本控制结构之外,还允许使用DO-CASE型多分支结构和DO-UNTIL型循环结构,则称为扩展的结构程序设计;

如果再允许使用LEAVE(或BREAK)结构,则称为修正的结构程序设计。

6.2 人机界面设计

6.2.1 设计问题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.2.2.设计过程

在这里插入图片描述
在这里插入图片描述

6.2.3 人机界面设计指南

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.3 过程设计的工具

6.3.1 程序流程图

在这里插入图片描述
总的趋势是越来越多的人不再使用程序流程图了。
程序流程图的主要缺点如下。
(1) 程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。
(2) 程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制。
(3) 程序流程图不易表示数据结构。

6.3.2 盒图

在这里插入图片描述
在这里插入图片描述

6.3.3 PAD图

在这里插入图片描述

PAD图的主要优点如下:
(1) 使用表示结构化控制结构的PAD符号所设计出来的程序
必然是结构化程序。
(2) PAD图所描绘的程序结构十分清晰。
(3) 用PAD图表现程序逻辑,易读、易懂、易记。
(4) 容易将PAD图转换成高级语言源程序,这种转换可 用软
件工具自动完成,从而可省去人工编码的工作,有利于提高
软件可靠性和软件生产率。
(5) 即可用于表示程序逻辑,也可用于描绘数据结构。
(6) PAD图的符号支持自顶向下、逐步求精方法的使用。

在这里插入图片描述

6.3.4 判定表

在这里插入图片描述
在这里插入图片描述

6.3.5 判定树

在这里插入图片描述

6.3.6 过程设计语言

过程设计语言(PDL)也称为伪码。是用正文形式表示数据和处理过程的设计工具。

PDL有下述特点:

(1)关键字的固定语法,它提供了结构化控制结构、数据说明和模块化的特点。如,if…fi(或endif)等
(2) 自然语言的自由语法,它描述处理特点。
(3) 数据说明的手段。应该既包括简单的数据结构(例如纯量和数组),又包括复杂的数据结构(例如,链表或层次的数据结构)。
(4) 模块定义和调用的技术,应该提供各种接口描述模式。

PDL有下述优点:

  • 可以作为注释直接插在源程序中间。
  • 可以使用普通的正文编辑程序或文字处理系统,很方便地完成PDL的书写和编辑工作。
  • 已经有自动处理PDL的程序存在,而且可以自动由PDL生成程序代码。

PDL的缺点是不如图形工具形象直观,描述复杂的条件组合与动作间的对应关系时,不如判定表清晰简单。

6.4 面向数据结构的设计方法

6.4.1 Jackson图

在这里插入图片描述

6.4.2 改进的Jackson图

在这里插入图片描述

6.4.3 Jackson法

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
下面结合一个具体例子进一步说明Jackson结构程序设计方法。
例:一个正文文件由若干个记录组成,每个记录是一个字符串。要求统计每个记录中空格字符的个数,以及文件中空格字符的总个数。要求的输出数据格式是,每复制一行输入字符串之后,另起一行印出这个字符串中的空格数,最后印出文件中空格的总个数。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.5 程序复杂程度的定量度量

定量度量程序复杂程度的方法很有价值:

  • 把程序的复杂程度乘以适当常数即可估算出软件中错误的数量以及软件开发需要用的工作量,
  • 定量度量的结果可以用来比较两个不同的设计或两个不同算法的优劣;
  • 程序的定量的复杂程度可以作为模块规模的精确限度。

6.5.1 McCabe方法

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2. Halstead方法

根据程序中运算符和操作数的总数来度量程序的复杂程度。 令N1为程序中运算符出现的总次数,N2为操作数出现的总次数,程序长度N定义为

N=N1+N2

程序中使用的不同运算符(包括关键字)的个数n1,以及不同操作数(变量和常数)的个数n2。Halstead给出预测程序长度的公式如下:

H=n1 log2 n1+n2 log2n2

多次验证都表明,预测的长度H与实际长度N非常接近。
Halstead还给出了预测程序中包含错误的个数的公式如下:

E=N log2 (n1+n2)/3000

本章小结

1.结构程序设计技术是进行详细设计的逻辑基础。
2.人机界面设计必须重视。
3.过程设计是详细设计阶段完成的主要工作。
4.在开发有清楚的层次结构时可采用面向数据结构的设计方法完成设计过程设计。
5.使用环形复杂度可以定量度量程序的复杂程度。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 电气设计标准图集(CAD版)是一份涵盖了电气设计和应用领域的重要资源。这个图集包含了八内容,分别是电气设计基础、电气图符号、电气元器件、接线和接地、电气图纸、电气设备安装、电力系统及信号与仪表控制。 这些节都包含了电气工程师所需用到的图纸和相关资料。总共有843张不同类型和不同用途的图纸。这些图纸的制作和收集都是为电气工程设计提供方便和规范。 其中,电气图符号节包括了电气工程中涉及到的电子元器件和电路符号等重要内容。这些图符号的标准化可以避免不同专业工程师之间的沟通问题,保证了电气工程的一致性和标准化。 此外,电气图纸节包含了设计过程中的各类图表、系统图、接线图等,可以为电气工程师提供基本的设计信息,并且在未来的维护和故障排除中起到重要作用。 总之,电气设计标准图集(CAD版)是一份不可或缺的电气工程资源,能够为电气工程师提供标准化、规范化的设计流程和设计标准。同时,这些图纸可以帮助工程师完善工作,提高工作效率,为电气工程设计提供便利。 ### 回答2: 电气设计标准图集(CAD版)是一套电力设计标准,共分为八个节,涵盖了电气设计的各个方面。其中第一为绪论,介绍了标准图集的编制依据和适用范围。第二为用电负荷计算设计,包括用电负荷计算的方法和相关计算公式。第三是变电站设计,包括变电站主要构件的选型、参数计算和配合设计。第四是配电装置设计,涉及到配电柜、断路器、变压器等设计要求。第五是供电系统设计,包括供电系统的设计基础和电网规划。第六为接地设计,介绍了接地的基本概念和设计要求。第七为安全工程设计,涉及到电气设备的安全性能和人员防护措施。最后一为电气自动化设计,包括PLC、SCADA系统的设计和应用。该标准图集共包括843张图纸,每个节都提供了详尽的设计要求和示意图,方便工程师在设计过程中进行参考。该标准图集适用于各种电力工程设计,是电气设计师们必备的参考工具之一。 ### 回答3: 电气设计标准图集(CAD版)是一部非常重要的电气工程设计资料,它包含了8个节和843张图纸。这些图纸详细地描述了电气设计的各个方面,包括电气系统的基本构成、电网的线路、开关设备、变压器、发电机、电缆和接线等重要内容。 通过电气设计标准图集(CAD版),设计师可以方便地进行电气系统的设计和规划,确保电气系统的可靠性和安全性。此外,这些图纸也可以用于电气设备的选择、安装、调试和维护,为电气系统的管理带来了很大的便利。 电气设计标准图集(CAD版)的8个节分别是:基本电气系统、低电压配电系统、高压配电系统、发电机系统、电力变压器系统、电缆系统、接地系统和保护系统。每个节都包含大量的图纸和详细的说明,非常有助于读者理解电气工程的各个方面。 总之,电气设计标准图集(CAD版)是一部非常重要的电气工程设计资料,它包含了丰富的内容和详细的图纸,为电气工程领域的设计、建设和管理提供了有力的支持和帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值