软件工程 系统设计

本文探讨了软件工程中的模块化设计,强调模块的接口、功能、逻辑和状态。模块化有助于降低复杂性,提升软件的可维护性和可扩展性。模块独立性是关键,分为耦合性和内聚性两个方面。耦合性衡量模块间的相互依赖,而内聚性则反映模块内部元素的紧密程度。理想的模块设计应追求高内聚、低耦合,以增强系统的整体稳定性。
摘要由CSDN通过智能技术生成

1.模块化

模块在程序中是数据说明可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数、子程序等。

模块具有以下基本属性:

接口:指模块的输入与输出

功能:指模块要实现的功能

逻辑:描述内部如何实现要求的功能及所需数据

状态:该模块的运行环境,即模块的调用与被调用关系

模块化是解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。在划分模块时,模块的规模应当取决于它的功能和用途,同时减少接口的代价,提高模块独立性。


特性:抽象(用层次的方式构造和分析复杂系统)、信息隐蔽(只对特定或者需要的模块进行访问)、局部化

2.模块的独立性

指每个模块只完成系统要求独立的子功能,并且与其他模块的联系最少且接口简单。

衡量标准:

A.耦合性,也称块间耦合。指软件系统结构中各模块间相互联系的紧密程度的一种度量。


无直接耦合:模块间没有联系,不相互传递信息。

数据耦合:指传递简单的数据值。

标记耦合:指两个模块传递的是数据结构的地址(传址)

控制耦合:两个模块传递的是控制变量(如开关、标志)该模块通过控制变量的值有选择的执行块某一功能。

公共耦合:指通过一个公共数据环境相互作用的某些模块间的耦合,公共数据环境可以是全局变量或者数据结构共享的通信区,内存的公共覆盖区以及任何存储介质上的文件、物理设备等

内容耦合:一个模块直接访问另一个模块的内部数据;一个模块不通过正常的入口转入到另

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值