软件工程第六章——详细设计

结构化程序设计

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

结构化程序

控制结构(三种节点)

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

正规程序

在这里插入图片描述
在这里插入图片描述
正规子程序:正规程序中,仍是正规程序的部分

基本程序

封闭结构

在这里插入图片描述
在这里插入图片描述
并行用;串行用-
在这里插入图片描述
前面提到的三种基本控制结构(顺序结构、选择结构、循环结构)和两个扩充控制结构(多分支结构、UNTIL循环结构)都是基本程序。
在这里插入图片描述
在这里插入图片描述
复合程序由基本程序组成,因此满足单入单出结构,这样的程序叫做结构化程序。
在这里插入图片描述

结构化定理

在这里插入图片描述

人机界面设计

设计问题

1.用户响应时间
2.用户帮助(集成的实时提示,附加的用户手册)
3.出错处理(友好程序,正当反馈,合理提示)
4.命令交互(命令宏输入,一致性)

设计过程

1.一般交互指南(全局性)
2.信息显示指南(提示信息的不同显示方法)
3.数据输入指南

过程设计工具

程序流程图

1.易于理解
2.忽略全局控制,不符合逐步求精思想
3.控制流不受约束
4.不易表示数据结构
在这里插入图片描述

盒图

特点

1.功能域(一个控制结构的作用域)明确,就是一个盒子内。
2.控制不可转移,只能逐步转化。
3.根据嵌套关系可以看出全局和局部数据。
4.嵌套关系和模块化易于表述。
在这里插入图片描述
在这里插入图片描述

PAD图

1.二维树形结构图,表示的一定是结构化程序。
2.向右扩展的层次结构,竖线条数等于层数。
3.易于表述数据结构和逻辑,支持自顶向下,逐步求精。
4.是面向高级程序语言的,每种高级语言有对应的符号,因此PAD图可以快速转化成高级程序。
在这里插入图片描述
在这里插入图片描述

判定表

左上是变量集合,左下是行为集合,右上是变量的组合,右下是采取的操作。
在这里插入图片描述

PDL(伪代码)

适合简单的逻辑结构,不如图形表示直观。

面向数据结构的设计方法

Jackson图

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

改进

为了解决转移和判定条件不能显示在图上的问题。
在这里插入图片描述

和层次图的区别

1.层次图的方框表示模块,Jackson图的方框只有几个语句。
2.层次图整体表示调用关系,一个模块不仅调用下层模块,还完成其他操作。Jackson图表示组成关系,一个方框仅由下层组成,这里需要一张图,字符串空格处理的。

Jackson方法

1.分析输入输出数据的逻辑,结构,描绘两个独立的Jackson图。
2.找输入与输出有关系的数据结构,包括有直接因果的,可以同时处理的(数据结构相同,循环次数和条件相同)。
3.利用三条规则从数据结构Jackson图导出程序Jackson图。
A:为每对有对应关系的数据单元,按照它们在数据结构图中的层次在程序结构图的相应层次画一个处理框;
B:C:在输入和输出结构中剩余数据单元所在的层次,在结构图中画一个相应的框。

4.列出所有操作,条件,填入程序结构图。

例子:统计文本中,每一行空格的个数

要求

在这里插入图片描述

1.画出输入输出两个独立的jackson图,并找出联系

在这里插入图片描述

2.导出程序结构图

在这里插入图片描述
1.正文文件+输出表格=统计空格(程序)
2.表格体=程序体
3.(接受)字符串+(打印)串信息=处理字符串
4.调整一下输出格式和顺序,over。
在这里插入图片描述
在这里插入图片描述

程序复杂定量

McCabe(流图)

在这里插入图片描述
1.流图的圆表示结点,汇点也表示结点(因为流图的一条边必须终止于一个节点)
2.判定条件可以和操作合并,顺序操作可以合并。

例子

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

环形复杂度

等于区域数,等于边数-结点数+2,等于判定节点数+1

例子

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

Halstead方法

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

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星辰的野望

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值