软件工程:第四章:概要设计与详细设计


第四章:概要设计与详细设计

1、概要设计阶段的主要任务;

确定系统的整体模块结构,即系统实现所需要的软件模块以及这些模块之间的调用关系


2、概要设计的基本思路:理解即可;MSD不考;

  1. 引入了模块、调用
  2. 引入了模块结构图
  3. 过程指导(将DFD转化成MSD)
    初始设计–》精化设计–》设计复审

3、模块和模块化的概念,为什么要模块化设计;不需死记硬背,理解即可;

模块: 执行一个特殊任务的一组历程和数据结构
模块化: 把系统分解成若干模块的过程
为什么要模块化, 相当于把困难问题分解成简单问题来降低复杂度提高效率。


4、何为模块独立性;何为耦合与内聚,图示说明;

模块独立性: 指软件系统中每个模块只涉及软件要求的具体的子功能, 而和软件系统中其它的模块的接口是简单的;
耦合: 不同模块之间相互依赖的度量
在这里插入图片描述在这里插入图片描述

内聚: 一个模块之内各成分之间相互依赖程度的度量
在这里插入图片描述
在这里插入图片描述


5、耦合的几种类型,理解基本含义,不需背概念;

在这里插入图片描述
其他的见4


6、内聚的类型,了解基本的强弱;

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


7、模块的作用域与控制域,关系;

在这里插入图片描述


8、详细设计的目标和任务(理解);

目标: 给出软件模块结构中各个模块的内部过程描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言表达的程序。


程序复杂性度量:理解控制流程图和环形复杂度;(计算,大题)

第1步:将程序流程图转化为控制流程图(Control Flow Graph)
在这里插入图片描述第2步:计算CFG的环形复杂度(Cyclomatic Complexity)
已知公式:V(G) = m - n + p, 其中:

  • V(G) 为强连通有向图G中线性无关环(independent paths)的个数(称为cyclomatic number of G);
  • m 是边数 (number of edges) ; n 是 节 点 数(number of nodes);
  • p是G中连通集的数目(number of connected components),即被分离出的数目。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值