怎么用软件设计班旗_软件设计:如何理解模块和模块化开发?

模块

工程上,许多大的系统都是由一些较小的单元组成。例如,建筑工程中的砖瓦和构件,机械工程中的各种零部件等。这样做的优点是便于加工制造,便于维修,而且有些零部件可以标准化,为多个系统所用。同样,软件系统也可以根据其功能分解成许多较小的程序单元,它们就是模块。

一般把用一个名字就可调用的一段程序称为“模块”。模块具有如下3个基本属性。

功能:

指该模块要完成的任务。

逻辑:

描述模块为了完成任务,模块内部怎么做。

状态:

使用该模块时的环境和条件。

对于一个模块,还应该按模块的外部特性与内部特性分别进行描述。模块的外部特性是指模块的模块名、模块的输入/输出参数,以及它给程序乃至整个系统造成的影响。

而模块的内部特性则是指完成其功能的程序代码和仅供该模块内部使用的数据。对于其他模块来说,只需了解被调用模块的外部特性就足够了,不必了解它的内部特性。在软件设计时,通常是先确定模块的外部特性,然后再确定它的内部特性。前者是软件总体设计的任务,后者是详细设计的任务。

932225123cef28cca691d318dcf43015.png

模块化

是把整个系统划分成若干个模块,每个模块完成一个子功能,将多个模块组织起来实现整个系统的功能。模块化设计方法强调清楚地定义每个模块的功能和它的输入/输出参数,而模块的实现细节隐藏在各自的模块之中,与其他模块之间的关系可以是调用关系,因此模块化程序易于调试和修改。

随着模块规模的减小,模块的开发成本减少,但是模块之间的接口变得复杂起来,使得模块的集成成本增加。

那么模块的规模多大才合适呢?模块之间的关系可能密切到什么程度呢?软件工程用模块独立性来衡量。

d62cf6d7fdfed389eaeb527d7ae70318.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值