博客作业(第七章)

1.软件设计的目标及主要任务有哪些?

软件设计的基本目标:构造系统“怎么做”的模型描述。主要任务包括:总体设计和软件详细设计

 

2.什么是模块(构件)化设计思想?

把一个大型软件系统的全部功能,按照一定的原则合理地划分为若干个模块,每个模块完成一个特定子功能,所有的这些模块以某种结构形式组成一个整体,这就是软件的模块化设计(Modular Design)。分解、抽象、逐步求精、信息隐蔽和模块独立性,是软件模块化设计的指导思想。

 

3.模块独立性的两个度量标准是什么?

模块自身的内聚(Cohesion),也称为块内联系,指一个模块内部元素彼此结合的紧密程度。
模块之间的耦合(Coupling),也称为块间联系。

 

4.内聚和耦合的含义是什么?各有那些种类?请举例说明每一类型。

内聚性:是从功能的角度对模块内部聚合能力的量度。

其中包括功能性内聚、顺序性内聚、通信性内聚、过程性内聚、时间性内聚、逻辑性内聚和偶然性内聚。

过程性内聚:模块内的各个任务必须按照某一特定次序执行。在函数级别的模块比较常见。例如:读/写文件操作:判断文件是否存在、判断文件是否有相应权限、打开文件、读(或写)文件

耦合性:是对一个软件结构内不同模块之间互连程度的度量

其中包括非直接耦合、数据耦合、特征耦合、外部耦合、公告耦合和内容耦合。

公共耦合:若允许一组模块访问同一个全局性的数据结构,则称它们为公共耦合。全局性的数据结构可以是共享的通信区、公共的内存区域、任何存储介质文件、物理设备等

 

5.为什么要高内聚和低耦合?高内聚低耦合是否意味着内聚越高越好,耦合越低越好呢?

一般来说,在系统较高层次上的模块功能复杂,内聚要低一些;而较低层次上的模块内聚程度较高,达到功能内聚的可能性比较大。耦合性是对一个软件结构内不同模块之间互连程度的度量。耦合性的强弱取决于模块间接口的复杂程度,以及通过接口的数据类型和数目。

posted @ 2021-06-25 22:11  IDCDZ  阅读(37)  评论(0)    收藏  举报