软件工程基础.ppt

* * 隐蔽意味着有效的模块化可以通过定义一组独立的模块而实现,这些独立的模块彼此之间仅仅交换那些为了完成系统功能而必须交换的信息。 * * 一个模块访问另一个模块的内部数据 一个模块不通过正常入口而转入到另一个模块内部 两个模块有一部分程序代码重迭(只可能出现在汇编程序中) 一个模块有多个入口(这意味着一个模块有多个功能) * * 人们在开发计算机软件的长期实践中总结了丰富的经验,得出了一些启发是规则。这些规则虽然不向基本原理和概念那样普遍适用,但是在许多场合仍然能给软件工程师以有益的启示,往往能帮助他们找到改进软件设计和提高软件质量的途径。 * * 深度往往能粗略的标志一个系统的大小和复杂程度,深度和程序长度之间应该有粗略的对应关系,当然这个对应关系是在一定范围内变化的,如果层数过多则应该考虑是否有许多管理模块过分简单了,能否适当合并。 一般来说宽度越大系统越复杂,对宽度影响最大的因素是模块的扇出。 扇出过大意味着模块过分复杂,需要控制和协调过多的下级模块;扇出过小(例如总是一)也不好。经验表明,一个设计好的典型系统的平均扇出通常是3或4(扇出的上限通常是5-9)。扇出太大一般是因为缺乏中间层次,应该适当增加中间层次的控制模块。扇出太小时可以把下级模块进一步分解成若干个子模块,或者合并到他的上级模块中去。当然分解和合并模块必须符合问题结构,不能违背模块的独立原理。 扇入表明有多

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档